@mhmo91/schmancy 0.7.6 → 0.8.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (549) hide show
  1. package/ai/audio.md +241 -0
  2. package/ai/content-drawer.md +163 -70
  3. package/ai/details.md +309 -44
  4. package/ai/lightbox.md +381 -0
  5. package/ai/typography.md +75 -49
  6. package/dist/ai/audio.md +241 -0
  7. package/dist/ai/content-drawer.md +163 -70
  8. package/dist/ai/details.md +309 -44
  9. package/dist/ai/lightbox.md +381 -0
  10. package/dist/ai/typography.md +75 -49
  11. package/dist/{animated-text-1FDC-OTA.cjs → animated-text-Bc3qyXjp.cjs} +2 -2
  12. package/dist/{animated-text-1FDC-OTA.cjs.map → animated-text-Bc3qyXjp.cjs.map} +1 -1
  13. package/dist/{animated-text-1_latidd.js → animated-text-CNx6Pmlo.js} +3 -3
  14. package/dist/{animated-text-1_latidd.js.map → animated-text-CNx6Pmlo.js.map} +1 -1
  15. package/dist/animated-text.cjs +1 -1
  16. package/dist/animated-text.js +1 -1
  17. package/dist/area.cjs +1 -1
  18. package/dist/{area.component-CQq-Mh0Z.js → area.component-7mWxekxE.js} +104 -98
  19. package/dist/area.component-7mWxekxE.js.map +1 -0
  20. package/dist/area.component-CS_gSutH.cjs +12 -0
  21. package/dist/area.component-CS_gSutH.cjs.map +1 -0
  22. package/dist/area.js +1 -1
  23. package/dist/audio.cjs +2 -0
  24. package/dist/audio.cjs.map +1 -0
  25. package/dist/audio.js +9 -0
  26. package/dist/audio.js.map +1 -0
  27. package/dist/{autocomplete-DT9MFPEG.js → autocomplete-Ci4jo3Ur.js} +4 -4
  28. package/dist/{autocomplete-DT9MFPEG.js.map → autocomplete-Ci4jo3Ur.js.map} +1 -1
  29. package/dist/{autocomplete-auTO_M_w.cjs → autocomplete-y-IyzH4r.cjs} +2 -2
  30. package/dist/{autocomplete-auTO_M_w.cjs.map → autocomplete-y-IyzH4r.cjs.map} +1 -1
  31. package/dist/autocomplete.cjs +1 -1
  32. package/dist/autocomplete.js +1 -1
  33. package/dist/{avatar-Dm_qg-n1.js → avatar-BdyuuIk7.js} +243 -258
  34. package/dist/avatar-BdyuuIk7.js.map +1 -0
  35. package/dist/avatar-DBfJucB9.cjs +273 -0
  36. package/dist/avatar-DBfJucB9.cjs.map +1 -0
  37. package/dist/badge.cjs +1 -1
  38. package/dist/badge.js +1 -1
  39. package/dist/{boat-RNCKlx8b.js → boat-CowHieO2.js} +6 -6
  40. package/dist/{boat-RNCKlx8b.js.map → boat-CowHieO2.js.map} +1 -1
  41. package/dist/{boat-98He5-K8.cjs → boat-DkNUc1UO.cjs} +5 -5
  42. package/dist/{boat-98He5-K8.cjs.map → boat-DkNUc1UO.cjs.map} +1 -1
  43. package/dist/boat.cjs +1 -1
  44. package/dist/boat.js +1 -1
  45. package/dist/busy.cjs +1 -1
  46. package/dist/busy.js +1 -1
  47. package/dist/button.cjs +1 -1
  48. package/dist/button.js +1 -1
  49. package/dist/card.cjs +1 -1
  50. package/dist/card.js +1 -1
  51. package/dist/charts.cjs +2 -0
  52. package/dist/charts.cjs.map +1 -0
  53. package/dist/charts.js +9 -0
  54. package/dist/charts.js.map +1 -0
  55. package/dist/{checkbox-Bdn1_WJg.js → checkbox-BY4Sn8F2.js} +6 -6
  56. package/dist/{checkbox-Bdn1_WJg.js.map → checkbox-BY4Sn8F2.js.map} +1 -1
  57. package/dist/{checkbox-Dj06r6MD.cjs → checkbox-BvWcABPr.cjs} +2 -2
  58. package/dist/{checkbox-Dj06r6MD.cjs.map → checkbox-BvWcABPr.cjs.map} +1 -1
  59. package/dist/checkbox.cjs +1 -1
  60. package/dist/checkbox.js +1 -1
  61. package/dist/chips.cjs +1 -1
  62. package/dist/chips.js +2 -2
  63. package/dist/code-highlight.cjs +1 -1
  64. package/dist/code-highlight.js +1 -1
  65. package/dist/{code-preview-ByxcwPma.cjs → code-preview-BIFIJigy.cjs} +2 -2
  66. package/dist/{code-preview-ByxcwPma.cjs.map → code-preview-BIFIJigy.cjs.map} +1 -1
  67. package/dist/{code-preview-Br7zBkyM.js → code-preview-CYjmAxfs.js} +3 -3
  68. package/dist/{code-preview-Br7zBkyM.js.map → code-preview-CYjmAxfs.js.map} +1 -1
  69. package/dist/components.cjs +1 -1
  70. package/dist/components.js +1 -1
  71. package/dist/content-drawer.cjs +1 -1
  72. package/dist/content-drawer.js +1 -1
  73. package/dist/{context-create-BvxbWTgj.js → context-create-B_S-sD5B.js} +69 -57
  74. package/dist/context-create-B_S-sD5B.js.map +1 -0
  75. package/dist/context-create-DTybDbZp.cjs +2 -0
  76. package/dist/context-create-DTybDbZp.cjs.map +1 -0
  77. package/dist/date-range-B80Ummtv.cjs +119 -0
  78. package/dist/date-range-B80Ummtv.cjs.map +1 -0
  79. package/dist/date-range-BdIqI7LC.js +639 -0
  80. package/dist/date-range-BdIqI7LC.js.map +1 -0
  81. package/dist/{date-range-inline-l2G48xTX.js → date-range-inline-Cnhs9atd.js} +3 -3
  82. package/dist/{date-range-inline-l2G48xTX.js.map → date-range-inline-Cnhs9atd.js.map} +1 -1
  83. package/dist/{date-range-inline-kbokz03Z.cjs → date-range-inline-Df8u6Ecy.cjs} +2 -2
  84. package/dist/{date-range-inline-kbokz03Z.cjs.map → date-range-inline-Df8u6Ecy.cjs.map} +1 -1
  85. package/dist/date-range-inline.cjs +1 -1
  86. package/dist/date-range-inline.js +1 -1
  87. package/dist/date-range.cjs +1 -1
  88. package/dist/date-range.js +1 -1
  89. package/dist/{delay-CCreUpYu.cjs → delay-BWsVHQib.cjs} +2 -2
  90. package/dist/delay-BWsVHQib.cjs.map +1 -0
  91. package/dist/{delay-Nu7RVtYd.js → delay-CCa9nN4A.js} +45 -45
  92. package/dist/delay-CCa9nN4A.js.map +1 -0
  93. package/dist/delay.cjs +1 -1
  94. package/dist/delay.js +1 -1
  95. package/dist/details-Bee5ya0L.js +100 -0
  96. package/dist/details-Bee5ya0L.js.map +1 -0
  97. package/dist/details-oaVHXU7U.cjs +55 -0
  98. package/dist/details-oaVHXU7U.cjs.map +1 -0
  99. package/dist/details.cjs +1 -1
  100. package/dist/details.js +1 -1
  101. package/dist/dialog-service-C86xTS8q.cjs +2 -0
  102. package/dist/dialog-service-C86xTS8q.cjs.map +1 -0
  103. package/dist/dialog-service-D9E3jLAR.js +118 -0
  104. package/dist/dialog-service-D9E3jLAR.js.map +1 -0
  105. package/dist/dialog.cjs +1 -1
  106. package/dist/dialog.component-BriB-kFi.cjs +48 -0
  107. package/dist/dialog.component-BriB-kFi.cjs.map +1 -0
  108. package/dist/dialog.component-CMUoCC7O.js +145 -0
  109. package/dist/dialog.component-CMUoCC7O.js.map +1 -0
  110. package/dist/dialog.js +7 -7
  111. package/dist/directives.cjs +1 -1
  112. package/dist/directives.js +11 -10
  113. package/dist/directives.js.map +1 -1
  114. package/dist/{divider-CqyzFfn1.js → divider-B7DBbYFI.js} +3 -3
  115. package/dist/{divider-CqyzFfn1.js.map → divider-B7DBbYFI.js.map} +1 -1
  116. package/dist/{divider-0yHQS8kR.cjs → divider-Dl4TToQZ.cjs} +2 -2
  117. package/dist/{divider-0yHQS8kR.cjs.map → divider-Dl4TToQZ.cjs.map} +1 -1
  118. package/dist/divider.cjs +1 -1
  119. package/dist/divider.js +1 -1
  120. package/dist/{dropdown-content-BmHQE5-P.cjs → dropdown-content-C2W7OttQ.cjs} +2 -2
  121. package/dist/{dropdown-content-BmHQE5-P.cjs.map → dropdown-content-C2W7OttQ.cjs.map} +1 -1
  122. package/dist/{dropdown-content-iFlLupVo.js → dropdown-content-DzhOtilY.js} +3 -3
  123. package/dist/{dropdown-content-iFlLupVo.js.map → dropdown-content-DzhOtilY.js.map} +1 -1
  124. package/dist/dropdown.cjs +1 -1
  125. package/dist/dropdown.js +1 -1
  126. package/dist/{email-recipients-CmAEJDMC.js → email-recipients-BWqZKo3m.js} +8 -7
  127. package/dist/{email-recipients-CmAEJDMC.js.map → email-recipients-BWqZKo3m.js.map} +1 -1
  128. package/dist/{email-recipients-Cioc3U0Z.cjs → email-recipients-Bh5VC0rc.cjs} +2 -2
  129. package/dist/{email-recipients-Cioc3U0Z.cjs.map → email-recipients-Bh5VC0rc.cjs.map} +1 -1
  130. package/dist/emotional-sounds-BRnFhww6.js +234 -0
  131. package/dist/emotional-sounds-BRnFhww6.js.map +1 -0
  132. package/dist/emotional-sounds-DVGhmoZf.cjs +2 -0
  133. package/dist/emotional-sounds-DVGhmoZf.cjs.map +1 -0
  134. package/dist/extra.cjs +1 -1
  135. package/dist/extra.js +1 -1
  136. package/dist/flex-53G-PJx7.js +183 -0
  137. package/dist/flex-53G-PJx7.js.map +1 -0
  138. package/dist/flex-DFSIy0t4.cjs +18 -0
  139. package/dist/flex-DFSIy0t4.cjs.map +1 -0
  140. package/dist/{form-CxrvY530.js → form-BtRK9bnp.js} +2 -2
  141. package/dist/{form-CxrvY530.js.map → form-BtRK9bnp.js.map} +1 -1
  142. package/dist/{form-DFDTspmH.cjs → form-Zq7g2JS8.cjs} +2 -2
  143. package/dist/{form-DFDTspmH.cjs.map → form-Zq7g2JS8.cjs.map} +1 -1
  144. package/dist/form.cjs +1 -1
  145. package/dist/form.js +1 -1
  146. package/dist/{formField.mixin-hZ2qP4iG.js → formField.mixin-2jSL7WF_.js} +2 -2
  147. package/dist/{formField.mixin-hZ2qP4iG.js.map → formField.mixin-2jSL7WF_.js.map} +1 -1
  148. package/dist/{formField.mixin-C7H5DaEl.cjs → formField.mixin-DkN2ufR_.cjs} +2 -2
  149. package/dist/{formField.mixin-C7H5DaEl.cjs.map → formField.mixin-DkN2ufR_.cjs.map} +1 -1
  150. package/dist/height-CfECBO2j.js +44 -0
  151. package/dist/height-CfECBO2j.js.map +1 -0
  152. package/dist/height-Z70qJYJK.cjs +2 -0
  153. package/dist/height-Z70qJYJK.cjs.map +1 -0
  154. package/dist/{icon-D0FAI5uJ.js → icon-B5qeYrDu.js} +17 -17
  155. package/dist/icon-B5qeYrDu.js.map +1 -0
  156. package/dist/icon-button-BpmGFjaR.cjs +70 -0
  157. package/dist/icon-button-BpmGFjaR.cjs.map +1 -0
  158. package/dist/icon-button-HSYaQBNF.js +164 -0
  159. package/dist/icon-button-HSYaQBNF.js.map +1 -0
  160. package/dist/icon-pU_cfmpD.cjs +49 -0
  161. package/dist/icon-pU_cfmpD.cjs.map +1 -0
  162. package/dist/icons.cjs +1 -1
  163. package/dist/icons.js +1 -1
  164. package/dist/index.cjs +1 -1
  165. package/dist/index.js +275 -250
  166. package/dist/index.js.map +1 -1
  167. package/dist/input-8G9YY9qv.cjs +51 -0
  168. package/dist/input-8G9YY9qv.cjs.map +1 -0
  169. package/dist/{input-DLnKAj3B.js → input-BJMF5Fyk.js} +35 -31
  170. package/dist/input-BJMF5Fyk.js.map +1 -0
  171. package/dist/{input-chip-C3EPsHcP.cjs → input-chip-CocdqTzr.cjs} +2 -2
  172. package/dist/{input-chip-C3EPsHcP.cjs.map → input-chip-CocdqTzr.cjs.map} +1 -1
  173. package/dist/{input-chip-dmqYCExV.js → input-chip-tbrw56ix.js} +2 -2
  174. package/dist/{input-chip-dmqYCExV.js.map → input-chip-tbrw56ix.js.map} +1 -1
  175. package/dist/input.cjs +1 -1
  176. package/dist/input.js +1 -1
  177. package/dist/json-CvcloKQv.js +51 -0
  178. package/dist/json-CvcloKQv.js.map +1 -0
  179. package/dist/json-DPnyOA3K.cjs +12 -0
  180. package/dist/json-DPnyOA3K.cjs.map +1 -0
  181. package/dist/json.cjs +2 -0
  182. package/dist/json.cjs.map +1 -0
  183. package/dist/json.js +5 -0
  184. package/dist/json.js.map +1 -0
  185. package/dist/layout.cjs +1 -1
  186. package/dist/layout.js +4 -3
  187. package/dist/layout.js.map +1 -1
  188. package/dist/lightbox-service-3mHqBKEh.cjs +202 -0
  189. package/dist/lightbox-service-3mHqBKEh.cjs.map +1 -0
  190. package/dist/lightbox-service-DxbYZAuv.js +458 -0
  191. package/dist/lightbox-service-DxbYZAuv.js.map +1 -0
  192. package/dist/lightbox.cjs +2 -0
  193. package/dist/lightbox.cjs.map +1 -0
  194. package/dist/lightbox.js +8 -0
  195. package/dist/lightbox.js.map +1 -0
  196. package/dist/{list-BegNkhOn.js → list-FWXmY-eQ.js} +2 -2
  197. package/dist/{list-BegNkhOn.js.map → list-FWXmY-eQ.js.map} +1 -1
  198. package/dist/{list-CLKiZ6lk.cjs → list-JjR7WOrd.cjs} +2 -2
  199. package/dist/{list-CLKiZ6lk.cjs.map → list-JjR7WOrd.cjs.map} +1 -1
  200. package/dist/list.cjs +1 -1
  201. package/dist/list.js +1 -1
  202. package/dist/{litElement.mixin-CPQYJnK_.cjs → litElement.mixin-BVBdv0GP.cjs} +2 -2
  203. package/dist/{litElement.mixin-CPQYJnK_.cjs.map → litElement.mixin-BVBdv0GP.cjs.map} +1 -1
  204. package/dist/{litElement.mixin-DWDPaNoc.js → litElement.mixin-Wcu4yIIs.js} +2 -2
  205. package/dist/{litElement.mixin-DWDPaNoc.js.map → litElement.mixin-Wcu4yIIs.js.map} +1 -1
  206. package/dist/mailbox.cjs +1 -1
  207. package/dist/mailbox.js +1 -1
  208. package/dist/{map-CUKZ6LrR.js → map-Br6xJFxG.js} +2 -2
  209. package/dist/{map-CUKZ6LrR.js.map → map-Br6xJFxG.js.map} +1 -1
  210. package/dist/{map-w4Kdtycx.cjs → map-D9R3OCne.cjs} +2 -2
  211. package/dist/{map-w4Kdtycx.cjs.map → map-D9R3OCne.cjs.map} +1 -1
  212. package/dist/map.cjs +1 -1
  213. package/dist/map.js +1 -1
  214. package/dist/{media-CjdCchz8.js → media-BV_1DfcW.js} +2 -2
  215. package/dist/{media-CjdCchz8.js.map → media-BV_1DfcW.js.map} +1 -1
  216. package/dist/{media-DDNmuoV0.cjs → media-DibPwAjJ.cjs} +2 -2
  217. package/dist/{media-DDNmuoV0.cjs.map → media-DibPwAjJ.cjs.map} +1 -1
  218. package/dist/menu-HKqlq99V.js +60 -0
  219. package/dist/{menu-ofiPDY2a.js.map → menu-HKqlq99V.js.map} +1 -1
  220. package/dist/{menu-D9-9vipn.cjs → menu-vNrV-Nuq.cjs} +4 -6
  221. package/dist/{menu-D9-9vipn.cjs.map → menu-vNrV-Nuq.cjs.map} +1 -1
  222. package/dist/menu.cjs +1 -1
  223. package/dist/menu.js +1 -1
  224. package/dist/mixins.cjs +1 -1
  225. package/dist/mixins.js +3 -3
  226. package/dist/nav-drawer.cjs +1 -1
  227. package/dist/nav-drawer.js +1 -1
  228. package/dist/navigation-bar.cjs +1 -1
  229. package/dist/navigation-bar.js +1 -1
  230. package/dist/{navigation-rail-CEDLJTrH.cjs → navigation-rail-D1o3qDe_.cjs} +15 -17
  231. package/dist/navigation-rail-D1o3qDe_.cjs.map +1 -0
  232. package/dist/{navigation-rail-weSW6BCv.js → navigation-rail-DKXumnmt.js} +30 -32
  233. package/dist/navigation-rail-DKXumnmt.js.map +1 -0
  234. package/dist/navigation-rail.cjs +1 -1
  235. package/dist/navigation-rail.js +1 -1
  236. package/dist/notification-service-B5ljba4P.js +155 -0
  237. package/dist/notification-service-B5ljba4P.js.map +1 -0
  238. package/dist/notification-service-ICRT05L0.cjs +19 -0
  239. package/dist/notification-service-ICRT05L0.cjs.map +1 -0
  240. package/dist/notification.cjs +1 -1
  241. package/dist/notification.js +6 -8
  242. package/dist/{notify-Ci0HrUIo.js → notify-B9CpO1Ru.js} +2 -2
  243. package/dist/notify-B9CpO1Ru.js.map +1 -0
  244. package/dist/{notify-aasSKQGA.cjs → notify-NX-dl60E.cjs} +2 -2
  245. package/dist/notify-NX-dl60E.cjs.map +1 -0
  246. package/dist/{option-Cs4e3CzF.js → option-B4JKMrLg.js} +2 -2
  247. package/dist/{option-Cs4e3CzF.js.map → option-B4JKMrLg.js.map} +1 -1
  248. package/dist/{option-Uze_q9Ef.cjs → option-epyXLWoY.cjs} +2 -2
  249. package/dist/{option-Uze_q9Ef.cjs.map → option-epyXLWoY.cjs.map} +1 -1
  250. package/dist/option.cjs +1 -1
  251. package/dist/option.js +1 -1
  252. package/dist/page-Bmi1QHtq.cjs +20 -0
  253. package/dist/page-Bmi1QHtq.cjs.map +1 -0
  254. package/dist/page-BpygEntU.js +48 -0
  255. package/dist/page-BpygEntU.js.map +1 -0
  256. package/dist/page.cjs +2 -0
  257. package/dist/page.cjs.map +1 -0
  258. package/dist/page.js +5 -0
  259. package/dist/page.js.map +1 -0
  260. package/dist/{payment-card-form-rJCPUtWE.cjs → payment-card-form-3kAXDbXf.cjs} +2 -2
  261. package/dist/{payment-card-form-rJCPUtWE.cjs.map → payment-card-form-3kAXDbXf.cjs.map} +1 -1
  262. package/dist/{payment-card-form-BLoUTYiB.js → payment-card-form-BxkHuSls.js} +3 -3
  263. package/dist/{payment-card-form-BLoUTYiB.js.map → payment-card-form-BxkHuSls.js.map} +1 -1
  264. package/dist/pills-C3fIvfn8.js +346 -0
  265. package/dist/pills-C3fIvfn8.js.map +1 -0
  266. package/dist/pills-MmHyBGQu.cjs +113 -0
  267. package/dist/pills-MmHyBGQu.cjs.map +1 -0
  268. package/dist/progress-0POmJs5o.js +59 -0
  269. package/dist/progress-0POmJs5o.js.map +1 -0
  270. package/dist/progress-qx8jtrOA.cjs +35 -0
  271. package/dist/progress-qx8jtrOA.cjs.map +1 -0
  272. package/dist/progress.cjs +1 -1
  273. package/dist/progress.js +1 -1
  274. package/dist/qr-scanner-DQq-WLyo.cjs +29 -0
  275. package/dist/qr-scanner-DQq-WLyo.cjs.map +1 -0
  276. package/dist/qr-scanner-jwOSrD0N.js +743 -0
  277. package/dist/qr-scanner-jwOSrD0N.js.map +1 -0
  278. package/dist/qr-scanner.cjs +2 -0
  279. package/dist/qr-scanner.cjs.map +1 -0
  280. package/dist/qr-scanner.js +5 -0
  281. package/dist/qr-scanner.js.map +1 -0
  282. package/dist/{radio-button-CaDaw5VH.js → radio-button-B0EUK_wg.js} +3 -3
  283. package/dist/{radio-button-CaDaw5VH.js.map → radio-button-B0EUK_wg.js.map} +1 -1
  284. package/dist/{radio-button-BAS7gKmA.cjs → radio-button-DraEYR2R.cjs} +2 -2
  285. package/dist/{radio-button-BAS7gKmA.cjs.map → radio-button-DraEYR2R.cjs.map} +1 -1
  286. package/dist/radio-group.cjs +1 -1
  287. package/dist/radio-group.js +1 -1
  288. package/dist/ripple-BgJXbNSP.js +124 -0
  289. package/dist/ripple-BgJXbNSP.js.map +1 -0
  290. package/dist/ripple-x6sTX02K.cjs +16 -0
  291. package/dist/ripple-x6sTX02K.cjs.map +1 -0
  292. package/dist/{schmancy-steps-container-wQsksygx.cjs → schmancy-steps-container-B5aiqgMA.cjs} +2 -2
  293. package/dist/{schmancy-steps-container-wQsksygx.cjs.map → schmancy-steps-container-B5aiqgMA.cjs.map} +1 -1
  294. package/dist/{schmancy-steps-container-BInNput3.js → schmancy-steps-container-C2StAA5K.js} +3 -3
  295. package/dist/{schmancy-steps-container-BInNput3.js.map → schmancy-steps-container-C2StAA5K.js.map} +1 -1
  296. package/dist/scroll-BqT7bvhu.cjs +27 -0
  297. package/dist/scroll-BqT7bvhu.cjs.map +1 -0
  298. package/dist/scroll-Bu-vAg3d.js +87 -0
  299. package/dist/scroll-Bu-vAg3d.js.map +1 -0
  300. package/dist/{select-_2Ag_znm.cjs → select-HiEGJvOX.cjs} +2 -2
  301. package/dist/select-HiEGJvOX.cjs.map +1 -0
  302. package/dist/{select-ApLZefMf.js → select-i-uKur-W.js} +5 -4
  303. package/dist/select-i-uKur-W.js.map +1 -0
  304. package/dist/select.cjs +1 -1
  305. package/dist/select.js +1 -1
  306. package/dist/{selector-hook-Cok22ifx.cjs → selector-hook-9w2auh2O.cjs} +2 -2
  307. package/dist/{selector-hook-Cok22ifx.cjs.map → selector-hook-9w2auh2O.cjs.map} +1 -1
  308. package/dist/{selector-hook-l2fe2UO5.js → selector-hook-CHV4kDMd.js} +3 -3
  309. package/dist/{selector-hook-l2fe2UO5.js.map → selector-hook-CHV4kDMd.js.map} +1 -1
  310. package/dist/{sheet-DovyNsok.js → sheet-B1g7E4dQ.js} +5 -5
  311. package/dist/{sheet-DovyNsok.js.map → sheet-B1g7E4dQ.js.map} +1 -1
  312. package/dist/{sheet-wjDOQ8Hs.cjs → sheet-BbrRW0S5.cjs} +2 -2
  313. package/dist/{sheet-wjDOQ8Hs.cjs.map → sheet-BbrRW0S5.cjs.map} +1 -1
  314. package/dist/sheet.cjs +1 -1
  315. package/dist/sheet.js +2 -2
  316. package/dist/{sheet.service-BvOiOFMm.js → sheet.service-4etIM-p6.js} +20 -18
  317. package/dist/sheet.service-4etIM-p6.js.map +1 -0
  318. package/dist/sheet.service-BiRZjCdN.cjs +2 -0
  319. package/dist/sheet.service-BiRZjCdN.cjs.map +1 -0
  320. package/dist/{slider-CeVgx4pL.js → slider-8E3Wad0t.js} +3 -3
  321. package/dist/{slider-CeVgx4pL.js.map → slider-8E3Wad0t.js.map} +1 -1
  322. package/dist/{slider-BgJccHrg.cjs → slider-VYnbIRH2.cjs} +2 -2
  323. package/dist/{slider-BgJccHrg.cjs.map → slider-VYnbIRH2.cjs.map} +1 -1
  324. package/dist/slider.cjs +1 -1
  325. package/dist/slider.js +1 -1
  326. package/dist/sound.service-Nza4c6wv.js +102 -0
  327. package/dist/sound.service-Nza4c6wv.js.map +1 -0
  328. package/dist/sound.service-eRirZw59.cjs +2 -0
  329. package/dist/sound.service-eRirZw59.cjs.map +1 -0
  330. package/dist/{spinner-Brq1TenP.js → spinner-CKm13CKN.js} +15 -12
  331. package/dist/spinner-CKm13CKN.js.map +1 -0
  332. package/dist/{spinner-BKeA2bdB.cjs → spinner-DJgcI5wr.cjs} +9 -9
  333. package/dist/spinner-DJgcI5wr.cjs.map +1 -0
  334. package/dist/steps.cjs +1 -1
  335. package/dist/steps.js +1 -1
  336. package/dist/store.cjs +1 -1
  337. package/dist/store.js +2 -2
  338. package/dist/{suggestion-chip-CWBSzu7C.js → suggestion-chip-6njXvvHm.js} +50 -46
  339. package/dist/suggestion-chip-6njXvvHm.js.map +1 -0
  340. package/dist/{suggestion-chip-dq20NKWy.cjs → suggestion-chip-DdLfqk7o.cjs} +18 -23
  341. package/dist/suggestion-chip-DdLfqk7o.cjs.map +1 -0
  342. package/dist/{surface-Bf8pvmdG.js → surface-BYU3l_Q2.js} +12 -11
  343. package/dist/surface-BYU3l_Q2.js.map +1 -0
  344. package/dist/{surface-fEPJ-cuu.cjs → surface-DcqbWGub.cjs} +5 -4
  345. package/dist/surface-DcqbWGub.cjs.map +1 -0
  346. package/dist/surface.cjs +1 -1
  347. package/dist/surface.js +1 -1
  348. package/dist/{table-DEnB9_Rf.cjs → table-C9fzDjjk.cjs} +2 -2
  349. package/dist/{table-DEnB9_Rf.cjs.map → table-C9fzDjjk.cjs.map} +1 -1
  350. package/dist/{table-MLd3oXm6.js → table-Dq12ollZ.js} +3 -3
  351. package/dist/{table-MLd3oXm6.js.map → table-Dq12ollZ.js.map} +1 -1
  352. package/dist/table.cjs +1 -1
  353. package/dist/table.js +1 -1
  354. package/dist/{tabs-compatibility-CXVHOR5X.cjs → tabs-compatibility-Dwtjfkcf.cjs} +2 -2
  355. package/dist/{tabs-compatibility-CXVHOR5X.cjs.map → tabs-compatibility-Dwtjfkcf.cjs.map} +1 -1
  356. package/dist/{tabs-compatibility-KWKzYolX.js → tabs-compatibility-wnzlHtln.js} +2 -2
  357. package/dist/{tabs-compatibility-KWKzYolX.js.map → tabs-compatibility-wnzlHtln.js.map} +1 -1
  358. package/dist/tabs.cjs +1 -1
  359. package/dist/tabs.js +1 -1
  360. package/dist/tailwind.mixin-Ddt05Frc.js +67 -0
  361. package/dist/{tailwind.mixin-DIW0B_of.js.map → tailwind.mixin-Ddt05Frc.js.map} +1 -1
  362. package/dist/tailwind.mixin-UijsBrYW.cjs +2 -0
  363. package/dist/{tailwind.mixin-3TPVvhYf.cjs.map → tailwind.mixin-UijsBrYW.cjs.map} +1 -1
  364. package/dist/teleport.cjs +1 -1
  365. package/dist/teleport.js +1 -1
  366. package/dist/textarea-DGmsw1B_.cjs +44 -0
  367. package/dist/{textarea-B7arkA7y.cjs.map → textarea-DGmsw1B_.cjs.map} +1 -1
  368. package/dist/{textarea-BK1m_CFR.js → textarea-Vd3zayJZ.js} +4 -3
  369. package/dist/{textarea-BK1m_CFR.js.map → textarea-Vd3zayJZ.js.map} +1 -1
  370. package/dist/textarea.cjs +1 -1
  371. package/dist/textarea.js +1 -1
  372. package/dist/{theme-button-BTKwL3oC.cjs → theme-button-DG_Xwg9H.cjs} +2 -2
  373. package/dist/{theme-button-BTKwL3oC.cjs.map → theme-button-DG_Xwg9H.cjs.map} +1 -1
  374. package/dist/{theme-button-C6kk8bay.js → theme-button-rGpEW_xS.js} +2 -2
  375. package/dist/{theme-button-C6kk8bay.js.map → theme-button-rGpEW_xS.js.map} +1 -1
  376. package/dist/theme-button.cjs +1 -1
  377. package/dist/theme-button.js +1 -1
  378. package/dist/{theme-controller-boat-BK59LqH9.js → theme-controller-boat-B1fjcqJI.js} +420 -228
  379. package/dist/theme-controller-boat-B1fjcqJI.js.map +1 -0
  380. package/dist/theme-controller-boat-pLzK5zxL.cjs +178 -0
  381. package/dist/theme-controller-boat-pLzK5zxL.cjs.map +1 -0
  382. package/dist/theme.cjs +1 -1
  383. package/dist/theme.js +13 -11
  384. package/dist/{timezone-nbn0o5GC.cjs → timezone-BhUaIAV7.cjs} +2 -2
  385. package/dist/{timezone-nbn0o5GC.cjs.map → timezone-BhUaIAV7.cjs.map} +1 -1
  386. package/dist/{timezone-D_skWX6Z.js → timezone-IQkwr6Oh.js} +3 -3
  387. package/dist/{timezone-D_skWX6Z.js.map → timezone-IQkwr6Oh.js.map} +1 -1
  388. package/dist/{tooltip-Btl0IKYC.js → tooltip-CwaiZC8f.js} +2 -2
  389. package/dist/{tooltip-Btl0IKYC.js.map → tooltip-CwaiZC8f.js.map} +1 -1
  390. package/dist/{tooltip-DyuMJEjL.cjs → tooltip-iEvxKg8g.cjs} +2 -2
  391. package/dist/{tooltip-DyuMJEjL.cjs.map → tooltip-iEvxKg8g.cjs.map} +1 -1
  392. package/dist/tooltip.cjs +1 -1
  393. package/dist/tooltip.js +1 -1
  394. package/dist/{tree-N4Y6MoQe.cjs → tree-Bclu6uvv.cjs} +2 -2
  395. package/dist/{tree-N4Y6MoQe.cjs.map → tree-Bclu6uvv.cjs.map} +1 -1
  396. package/dist/{tree-B_2eIFQi.js → tree-D9EbEsxn.js} +2 -2
  397. package/dist/{tree-B_2eIFQi.js.map → tree-D9EbEsxn.js.map} +1 -1
  398. package/dist/tree.cjs +1 -1
  399. package/dist/tree.js +1 -1
  400. package/dist/{typewriter-Blyrk_4c.js → typewriter-BjDPgRlj.js} +5 -5
  401. package/dist/{typewriter-Blyrk_4c.js.map → typewriter-BjDPgRlj.js.map} +1 -1
  402. package/dist/{typewriter-CFQAeOaw.cjs → typewriter-Bscwd-36.cjs} +4 -4
  403. package/dist/{typewriter-CFQAeOaw.cjs.map → typewriter-Bscwd-36.cjs.map} +1 -1
  404. package/dist/typewriter.cjs +1 -1
  405. package/dist/typewriter.js +1 -1
  406. package/dist/{typography-DjGWK58I.js → typography-CConBBFH.js} +13 -53
  407. package/dist/typography-CConBBFH.js.map +1 -0
  408. package/dist/{typography-DsIU0TGe.cjs → typography-DLGT3DGz.cjs} +3 -46
  409. package/dist/typography-DLGT3DGz.cjs.map +1 -0
  410. package/dist/typography.cjs +1 -1
  411. package/dist/typography.js +1 -1
  412. package/mixins/tailwind.css +37 -6
  413. package/package.json +21 -20
  414. package/types/src/area/area.service.d.ts +1 -1
  415. package/types/src/area/router.types.d.ts +1 -0
  416. package/types/src/audio/emotional-sounds.d.ts +122 -0
  417. package/types/src/audio/index.d.ts +30 -0
  418. package/types/src/audio/sound.service.d.ts +111 -0
  419. package/types/src/avatar.d.ts +10 -1
  420. package/types/src/busy/spinner.d.ts +6 -1
  421. package/types/src/button/button.d.ts +15 -2
  422. package/types/src/button/icon-button.d.ts +1 -1
  423. package/types/src/charts/area-chart.d.ts +58 -0
  424. package/types/src/charts/index.d.ts +4 -0
  425. package/types/src/charts/pills.d.ts +51 -0
  426. package/types/src/charts/types.d.ts +62 -0
  427. package/types/src/charts/utils.d.ts +28 -0
  428. package/types/src/checkbox/checkbox.d.ts +3 -2
  429. package/types/src/chips/chips.d.ts +2 -0
  430. package/types/src/content-drawer/drawer.service.d.ts +1 -7
  431. package/types/src/date-range/date-range-dialog.d.ts +16 -0
  432. package/types/src/date-range/date-range.d.ts +1 -1
  433. package/types/src/details/details.d.ts +8 -3
  434. package/types/src/dialog/dailog.d.ts +1 -5
  435. package/types/src/dialog/dialog-base.mixin.d.ts +26 -0
  436. package/types/src/dialog/dialog-service.d.ts +3 -66
  437. package/types/src/dialog/dialog.component.d.ts +63 -30
  438. package/types/src/dialog/index.d.ts +1 -3
  439. package/types/src/directives/height.d.ts +11 -6
  440. package/types/src/icons/icon.d.ts +17 -0
  441. package/types/src/index.d.ts +6 -0
  442. package/types/src/input/input.d.ts +13 -9
  443. package/types/src/json/index.d.ts +1 -0
  444. package/types/src/json/json.d.ts +15 -0
  445. package/types/src/lightbox/flip-directive.d.ts +29 -0
  446. package/types/src/lightbox/flip.directive.d.ts +22 -0
  447. package/types/src/lightbox/index.d.ts +4 -0
  448. package/types/src/lightbox/lightbox-service.d.ts +24 -0
  449. package/types/src/lightbox/lightbox.d.ts +34 -0
  450. package/types/src/lightbox/lightbox.directive.d.ts +30 -0
  451. package/types/src/nav-drawer/appbar.d.ts +0 -5
  452. package/types/src/nav-drawer/drawer.d.ts +1 -32
  453. package/types/src/notification/index.d.ts +1 -3
  454. package/types/src/notification/notification-service.d.ts +13 -1
  455. package/types/src/notification/notification.d.ts +13 -12
  456. package/types/src/notification/notify.d.ts +1 -1
  457. package/types/src/page/index.d.ts +1 -0
  458. package/types/src/page/page.d.ts +31 -0
  459. package/types/src/progress/progress.d.ts +2 -2
  460. package/types/src/qr-scanner/index.d.ts +1 -0
  461. package/types/src/qr-scanner/qr-scanner.d.ts +26 -0
  462. package/types/src/select/select.d.ts +1 -1
  463. package/types/src/theme/index.d.ts +1 -0
  464. package/types/src/theme/theme-audio-player.d.ts +100 -0
  465. package/types/src/theme/theme-controller-boat.d.ts +1 -0
  466. package/types/src/theme/theme.component.d.ts +1 -1
  467. package/types/src/types/index.d.ts +1 -0
  468. package/types/src/types/mood-audio.types.d.ts +173 -0
  469. package/types/src/typography/typography.d.ts +1 -0
  470. package/dist/area.component-CQq-Mh0Z.js.map +0 -1
  471. package/dist/area.component-Ciw7vGsx.cjs +0 -12
  472. package/dist/area.component-Ciw7vGsx.cjs.map +0 -1
  473. package/dist/avatar-Bo8kRnA-.cjs +0 -288
  474. package/dist/avatar-Bo8kRnA-.cjs.map +0 -1
  475. package/dist/avatar-Dm_qg-n1.js.map +0 -1
  476. package/dist/context-create-BJkkLr1D.cjs +0 -2
  477. package/dist/context-create-BJkkLr1D.cjs.map +0 -1
  478. package/dist/context-create-BvxbWTgj.js.map +0 -1
  479. package/dist/date-range-VkIMcQdT.js +0 -664
  480. package/dist/date-range-VkIMcQdT.js.map +0 -1
  481. package/dist/date-range-xYUr_KKx.cjs +0 -134
  482. package/dist/date-range-xYUr_KKx.cjs.map +0 -1
  483. package/dist/delay-CCreUpYu.cjs.map +0 -1
  484. package/dist/delay-Nu7RVtYd.js.map +0 -1
  485. package/dist/details-CjQrqBli.cjs +0 -98
  486. package/dist/details-CjQrqBli.cjs.map +0 -1
  487. package/dist/details-DVIWpEsI.js +0 -137
  488. package/dist/details-DVIWpEsI.js.map +0 -1
  489. package/dist/dialog-content-BgxKi73O.js +0 -256
  490. package/dist/dialog-content-BgxKi73O.js.map +0 -1
  491. package/dist/dialog-content-CM3-RXQQ.cjs +0 -85
  492. package/dist/dialog-content-CM3-RXQQ.cjs.map +0 -1
  493. package/dist/dialog-service-B4nR8Em5.cjs +0 -2
  494. package/dist/dialog-service-B4nR8Em5.cjs.map +0 -1
  495. package/dist/dialog-service-Bege4HF4.js +0 -140
  496. package/dist/dialog-service-Bege4HF4.js.map +0 -1
  497. package/dist/flex-BEB1yuMF.cjs +0 -43
  498. package/dist/flex-BEB1yuMF.cjs.map +0 -1
  499. package/dist/flex-BgcbHlPo.js +0 -260
  500. package/dist/flex-BgcbHlPo.js.map +0 -1
  501. package/dist/icon-D0FAI5uJ.js.map +0 -1
  502. package/dist/icon-DJnGMAQ2.cjs +0 -49
  503. package/dist/icon-DJnGMAQ2.cjs.map +0 -1
  504. package/dist/icon-button-CSZtSmOy.cjs +0 -65
  505. package/dist/icon-button-CSZtSmOy.cjs.map +0 -1
  506. package/dist/icon-button-CbgQp3AL.js +0 -156
  507. package/dist/icon-button-CbgQp3AL.js.map +0 -1
  508. package/dist/input-DLnKAj3B.js.map +0 -1
  509. package/dist/input-wZ6ORWru.cjs +0 -51
  510. package/dist/input-wZ6ORWru.cjs.map +0 -1
  511. package/dist/menu-ofiPDY2a.js +0 -61
  512. package/dist/navigation-rail-CEDLJTrH.cjs.map +0 -1
  513. package/dist/navigation-rail-weSW6BCv.js.map +0 -1
  514. package/dist/notification-service-B4nvP2Jc.js +0 -532
  515. package/dist/notification-service-B4nvP2Jc.js.map +0 -1
  516. package/dist/notification-service-B_pa74hl.cjs +0 -143
  517. package/dist/notification-service-B_pa74hl.cjs.map +0 -1
  518. package/dist/notify-Ci0HrUIo.js.map +0 -1
  519. package/dist/notify-aasSKQGA.cjs.map +0 -1
  520. package/dist/progress-B1f3y-Mf.js +0 -58
  521. package/dist/progress-B1f3y-Mf.js.map +0 -1
  522. package/dist/progress-DdBHNIMT.cjs +0 -35
  523. package/dist/progress-DdBHNIMT.cjs.map +0 -1
  524. package/dist/ripple-QoNZUUw_.js +0 -148
  525. package/dist/ripple-QoNZUUw_.js.map +0 -1
  526. package/dist/ripple-Ujq_REH4.cjs +0 -16
  527. package/dist/ripple-Ujq_REH4.cjs.map +0 -1
  528. package/dist/select-ApLZefMf.js.map +0 -1
  529. package/dist/select-_2Ag_znm.cjs.map +0 -1
  530. package/dist/sheet.service-BvOiOFMm.js.map +0 -1
  531. package/dist/sheet.service-DfHrOxyc.cjs +0 -2
  532. package/dist/sheet.service-DfHrOxyc.cjs.map +0 -1
  533. package/dist/spinner-BKeA2bdB.cjs.map +0 -1
  534. package/dist/spinner-Brq1TenP.js.map +0 -1
  535. package/dist/suggestion-chip-CWBSzu7C.js.map +0 -1
  536. package/dist/suggestion-chip-dq20NKWy.cjs.map +0 -1
  537. package/dist/surface-Bf8pvmdG.js.map +0 -1
  538. package/dist/surface-fEPJ-cuu.cjs.map +0 -1
  539. package/dist/tailwind.mixin-3TPVvhYf.cjs +0 -2
  540. package/dist/tailwind.mixin-DIW0B_of.js +0 -67
  541. package/dist/textarea-B7arkA7y.cjs +0 -44
  542. package/dist/theme-controller-boat-BK59LqH9.js.map +0 -1
  543. package/dist/theme-controller-boat-Y5QXwJxW.cjs +0 -64
  544. package/dist/theme-controller-boat-Y5QXwJxW.cjs.map +0 -1
  545. package/dist/typography-DjGWK58I.js.map +0 -1
  546. package/dist/typography-DsIU0TGe.cjs.map +0 -1
  547. package/types/src/notification/notification-audio-generator.d.ts +0 -45
  548. package/types/src/notification/notification-audio.d.ts +0 -79
  549. package/types/src/notification/notification-container.d.ts +0 -48
@@ -0,0 +1,2 @@
1
+ "use strict";const a=require("rxjs"),q=require("./context-create-DTybDbZp.cjs");require("lit/decorators.js"),require("rxjs/operators");const i=q.createContext({theme:null,volume:.15,muted:!1},"local","schmancy-sound-settings"),p={joyful:{puffs:[{startTime:0,duration:.08,frequency:3e3,volume:.3},{startTime:.06,duration:.1,frequency:3500,volume:.35}],tones:[{startTime:.02,duration:.15,frequency:784,volume:.25,type:"sine"},{startTime:.1,duration:.2,frequency:988,volume:.3,type:"sine"},{startTime:.18,duration:.25,frequency:1175,volume:.25,type:"sine"}]},content:{puffs:[{startTime:0,duration:.2,frequency:1500,volume:.25}],tones:[{startTime:.05,duration:.3,frequency:523,volume:.2,type:"sine",filterFrequency:800},{startTime:.15,duration:.35,frequency:659,volume:.15,type:"sine",filterFrequency:800}]},excited:{puffs:[{startTime:0,duration:.06,frequency:2500,volume:.25},{startTime:.05,duration:.06,frequency:3e3,volume:.3},{startTime:.1,duration:.08,frequency:3500,volume:.35}],tones:[{startTime:.02,duration:.12,frequency:880,volume:.2,type:"sine"},{startTime:.08,duration:.12,frequency:1047,volume:.25,type:"sine"},{startTime:.14,duration:.15,frequency:1319,volume:.3,type:"sine"}]},proud:{puffs:[{startTime:0,duration:.15,frequency:1800,volume:.3}],tones:[{startTime:.05,duration:.25,frequency:523,volume:.25,type:"sine"},{startTime:.08,duration:.25,frequency:659,volume:.2,type:"sine"},{startTime:.11,duration:.3,frequency:784,volume:.25,type:"sine"}]},hopeful:{puffs:[{startTime:0,duration:.12,frequency:2200,volume:.2}],tones:[{startTime:.03,duration:.3,frequency:659,volume:.2,type:"sine",frequencyEnd:880}]},relieved:{puffs:[{startTime:0,duration:.25,frequency:1200,volume:.35}],tones:[{startTime:.1,duration:.35,frequency:659,volume:.2,type:"sine",filterFrequency:800},{startTime:.25,duration:.4,frequency:523,volume:.15,type:"sine",filterFrequency:800}]},grateful:{puffs:[{startTime:0,duration:.15,frequency:1500,volume:.25}],tones:[{startTime:.05,duration:.3,frequency:440,volume:.2,type:"sine",filterFrequency:800},{startTime:.15,duration:.35,frequency:523,volume:.2,type:"sine",filterFrequency:800},{startTime:.25,duration:.4,frequency:659,volume:.15,type:"sine",filterFrequency:800}]},peaceful:{puffs:[{startTime:0,duration:.3,frequency:800,volume:.15}],tones:[{startTime:.1,duration:.5,frequency:392,volume:.12,type:"sine",filterFrequency:500}]},playful:{puffs:[{startTime:0,duration:.05,frequency:2800,volume:.2},{startTime:.08,duration:.05,frequency:3200,volume:.25},{startTime:.14,duration:.06,frequency:2800,volume:.2}],tones:[{startTime:.03,duration:.1,frequency:784,volume:.2,type:"sine"},{startTime:.1,duration:.08,frequency:988,volume:.25,type:"sine"},{startTime:.16,duration:.12,frequency:784,volume:.2,type:"sine"}]},amused:{puffs:[{startTime:0,duration:.04,frequency:2500,volume:.2},{startTime:.06,duration:.04,frequency:2800,volume:.22},{startTime:.11,duration:.05,frequency:2600,volume:.18}],tones:[{startTime:.05,duration:.15,frequency:880,volume:.15,type:"sine"}]},curious:{puffs:[{startTime:0,duration:.1,frequency:2e3,volume:.2}],tones:[{startTime:.03,duration:.2,frequency:659,volume:.2,type:"sine",frequencyEnd:880}]},inspired:{puffs:[{startTime:0,duration:.1,frequency:2500,volume:.25}],tones:[{startTime:.05,duration:.3,frequency:523,volume:.2,type:"sine"},{startTime:.07,duration:.28,frequency:784.5,volume:.16,type:"sine"},{startTime:.09,duration:.26,frequency:1046,volume:.12,type:"sine"}]},confident:{puffs:[{startTime:0,duration:.12,frequency:1500,volume:.3}],tones:[{startTime:.04,duration:.2,frequency:523,volume:.25,type:"sine"},{startTime:.06,duration:.22,frequency:659,volume:.2,type:"sine"}]},loved:{puffs:[{startTime:0,duration:.2,frequency:1e3,volume:.2}],tones:[{startTime:.08,duration:.4,frequency:392,volume:.18,type:"sine",filterFrequency:600},{startTime:.2,duration:.45,frequency:494,volume:.15,type:"sine",filterFrequency:600}]},comforted:{puffs:[{startTime:0,duration:.25,frequency:900,volume:.18}],tones:[{startTime:.1,duration:.35,frequency:523,volume:.15,type:"sine",filterFrequency:800},{startTime:.25,duration:.4,frequency:440,volume:.12,type:"sine",filterFrequency:800}]},energized:{puffs:[{startTime:0,duration:.05,frequency:3e3,volume:.25},{startTime:.04,duration:.05,frequency:3500,volume:.28}],tones:[{startTime:.02,duration:.1,frequency:784,volume:.2,type:"sine"},{startTime:.08,duration:.12,frequency:988,volume:.25,type:"sine"},{startTime:.14,duration:.15,frequency:1175,volume:.22,type:"sine"}]},celebrated:{puffs:[{startTime:0,duration:.08,frequency:2500,volume:.2}],tones:[{startTime:.02,duration:.18,frequency:523,volume:.22,type:"sine"},{startTime:.08,duration:.18,frequency:659,volume:.24,type:"sine"},{startTime:.14,duration:.2,frequency:784,volume:.26,type:"sine"},{startTime:.22,duration:.3,frequency:1047,volume:.22,type:"sine"}]},sad:{puffs:[{startTime:0,duration:.3,frequency:600,volume:.25}],tones:[{startTime:.1,duration:.4,frequency:392,volume:.2,type:"sine",filterFrequency:400},{startTime:.3,duration:.45,frequency:294,volume:.15,type:"sine",filterFrequency:350}]},lonely:{puffs:[{startTime:0,duration:.2,frequency:700,volume:.2}],tones:[{startTime:.15,duration:.5,frequency:330,volume:.12,type:"sine",filterFrequency:450}]},disappointed:{puffs:[{startTime:0,duration:.25,frequency:800,volume:.25}],tones:[{startTime:.08,duration:.3,frequency:523,volume:.18,type:"sine",frequencyEnd:349}]},heartbroken:{puffs:[{startTime:0,duration:.3,frequency:600,volume:.25}],tones:[{startTime:.1,duration:.4,frequency:392,volume:.2,type:"sine",filterFrequency:400},{startTime:.3,duration:.45,frequency:294,volume:.15,type:"sine",filterFrequency:350}]},grieving:{puffs:[{startTime:0,duration:.3,frequency:600,volume:.25}],tones:[{startTime:.1,duration:.4,frequency:392,volume:.2,type:"sine",filterFrequency:400},{startTime:.3,duration:.45,frequency:294,volume:.15,type:"sine",filterFrequency:350}]},hopeless:{puffs:[{startTime:0,duration:.2,frequency:700,volume:.2}],tones:[{startTime:.15,duration:.5,frequency:330,volume:.12,type:"sine",filterFrequency:450}]},empty:{puffs:[{startTime:0,duration:.2,frequency:700,volume:.2}],tones:[{startTime:.15,duration:.5,frequency:330,volume:.12,type:"sine",filterFrequency:450}]},discouraged:{puffs:[{startTime:0,duration:.25,frequency:800,volume:.25}],tones:[{startTime:.08,duration:.3,frequency:523,volume:.18,type:"sine",frequencyEnd:349}]},melancholic:{puffs:[{startTime:0,duration:.3,frequency:700,volume:.18}],tones:[{startTime:.1,duration:.45,frequency:440,volume:.15,type:"sine",filterFrequency:500},{startTime:.3,duration:.5,frequency:392,volume:.12,type:"sine",filterFrequency:450}]},homesick:{puffs:[{startTime:0,duration:.25,frequency:800,volume:.15}],tones:[{startTime:.1,duration:.4,frequency:440,volume:.12,type:"sine",filterFrequency:500},{startTime:.3,duration:.45,frequency:392,volume:.1,type:"sine",filterFrequency:450}]},hurt:{puffs:[{startTime:0,duration:.3,frequency:600,volume:.25}],tones:[{startTime:.1,duration:.4,frequency:392,volume:.2,type:"sine",filterFrequency:400},{startTime:.3,duration:.45,frequency:294,volume:.15,type:"sine",filterFrequency:350}]},miserable:{puffs:[{startTime:0,duration:.3,frequency:600,volume:.25}],tones:[{startTime:.1,duration:.4,frequency:392,volume:.2,type:"sine",filterFrequency:400},{startTime:.3,duration:.45,frequency:294,volume:.15,type:"sine",filterFrequency:350}]},regretful:{puffs:[{startTime:0,duration:.3,frequency:700,volume:.18}],tones:[{startTime:.1,duration:.45,frequency:440,volume:.15,type:"sine",filterFrequency:500},{startTime:.3,duration:.5,frequency:392,volume:.12,type:"sine",filterFrequency:450}]},ashamed:{puffs:[{startTime:0,duration:.25,frequency:800,volume:.25}],tones:[{startTime:.08,duration:.3,frequency:523,volume:.18,type:"sine",frequencyEnd:349}]},inferior:{puffs:[{startTime:0,duration:.25,frequency:800,volume:.25}],tones:[{startTime:.08,duration:.3,frequency:523,volume:.18,type:"sine",frequencyEnd:349}]},anxious:{puffs:[{startTime:0,duration:.08,frequency:1800,volume:.2},{startTime:.12,duration:.08,frequency:1900,volume:.22}],tones:[{startTime:.03,duration:.25,frequency:440,volume:.15,type:"sine"}],description:"Tight, quick puffs with uncertain wobble"},worried:{puffs:[{startTime:0,duration:.15,frequency:1200,volume:.2}],tones:[{startTime:.05,duration:.25,frequency:349,volume:.15,type:"sine",frequencyEnd:392}]},afraid:{puffs:[{startTime:0,duration:.08,frequency:1800,volume:.2},{startTime:.12,duration:.08,frequency:1900,volume:.22}],tones:[{startTime:.03,duration:.25,frequency:440,volume:.15,type:"sine"}]},terrified:{puffs:[{startTime:0,duration:.04,frequency:3500,volume:.3}],tones:[{startTime:0,duration:.08,frequency:1047,volume:.25,type:"sine"},{startTime:.05,duration:.15,frequency:880,volume:.15,type:"sine"}]},panicked:{puffs:[{startTime:0,duration:.04,frequency:3500,volume:.3}],tones:[{startTime:0,duration:.08,frequency:1047,volume:.25,type:"sine"},{startTime:.05,duration:.15,frequency:880,volume:.15,type:"sine"}]},nervous:{puffs:[{startTime:0,duration:.05,frequency:2e3,volume:.18},{startTime:.08,duration:.05,frequency:2100,volume:.18},{startTime:.15,duration:.06,frequency:2e3,volume:.16}],tones:[{startTime:.04,duration:.2,frequency:494,volume:.12,type:"sine"}]},uneasy:{puffs:[{startTime:0,duration:.15,frequency:1200,volume:.2}],tones:[{startTime:.05,duration:.25,frequency:349,volume:.15,type:"sine",frequencyEnd:392}]},insecure:{puffs:[{startTime:0,duration:.05,frequency:2e3,volume:.18},{startTime:.08,duration:.05,frequency:2100,volume:.18},{startTime:.15,duration:.06,frequency:2e3,volume:.16}],tones:[{startTime:.04,duration:.2,frequency:494,volume:.12,type:"sine"}]},overwhelmed:{puffs:[{startTime:0,duration:.08,frequency:1800,volume:.2},{startTime:.12,duration:.08,frequency:1900,volume:.22}],tones:[{startTime:.03,duration:.25,frequency:440,volume:.15,type:"sine"}]},stressed:{puffs:[{startTime:0,duration:.08,frequency:1800,volume:.2},{startTime:.12,duration:.08,frequency:1900,volume:.22}],tones:[{startTime:.03,duration:.25,frequency:440,volume:.15,type:"sine"}]},tense:{puffs:[{startTime:0,duration:.08,frequency:1800,volume:.2},{startTime:.12,duration:.08,frequency:1900,volume:.22}],tones:[{startTime:.03,duration:.25,frequency:440,volume:.15,type:"sine"}]},apprehensive:{puffs:[{startTime:0,duration:.15,frequency:1200,volume:.2}],tones:[{startTime:.05,duration:.25,frequency:349,volume:.15,type:"sine",frequencyEnd:392}]},startled:{puffs:[{startTime:0,duration:.04,frequency:3500,volume:.3}],tones:[{startTime:0,duration:.08,frequency:1047,volume:.25,type:"sine"},{startTime:.05,duration:.15,frequency:880,volume:.15,type:"sine"}]},suspicious:{puffs:[{startTime:0,duration:.15,frequency:1200,volume:.2}],tones:[{startTime:.05,duration:.25,frequency:349,volume:.15,type:"sine",frequencyEnd:392}]},vulnerable:{puffs:[{startTime:0,duration:.05,frequency:2e3,volume:.18},{startTime:.08,duration:.05,frequency:2100,volume:.18},{startTime:.15,duration:.06,frequency:2e3,volume:.16}],tones:[{startTime:.04,duration:.2,frequency:494,volume:.12,type:"sine"}]},annoyed:{puffs:[{startTime:0,duration:.1,frequency:1e3,volume:.25}],tones:[{startTime:.03,duration:.2,frequency:294,volume:.18,type:"sine",filterFrequency:400}]},irritated:{puffs:[{startTime:0,duration:.1,frequency:1e3,volume:.25}],tones:[{startTime:.03,duration:.2,frequency:294,volume:.18,type:"sine",filterFrequency:400}]},frustrated:{puffs:[{startTime:0,duration:.12,frequency:900,volume:.28}],tones:[{startTime:.04,duration:.15,frequency:349,volume:.2,type:"sine"},{startTime:.12,duration:.12,frequency:330,volume:.18,type:"sine"}]},angry:{puffs:[{startTime:0,duration:.12,frequency:900,volume:.28}],tones:[{startTime:.04,duration:.15,frequency:349,volume:.2,type:"sine"},{startTime:.12,duration:.12,frequency:330,volume:.18,type:"sine"}]},enraged:{puffs:[{startTime:0,duration:.12,frequency:900,volume:.28}],tones:[{startTime:.04,duration:.15,frequency:349,volume:.2,type:"sine"},{startTime:.12,duration:.12,frequency:330,volume:.18,type:"sine"}]},bitter:{puffs:[{startTime:0,duration:.12,frequency:900,volume:.28}],tones:[{startTime:.04,duration:.15,frequency:349,volume:.2,type:"sine"},{startTime:.12,duration:.12,frequency:330,volume:.18,type:"sine"}]},resentful:{puffs:[{startTime:0,duration:.1,frequency:1e3,volume:.25}],tones:[{startTime:.03,duration:.2,frequency:294,volume:.18,type:"sine",filterFrequency:400}]},jealous:{puffs:[{startTime:0,duration:.1,frequency:1e3,volume:.25}],tones:[{startTime:.03,duration:.2,frequency:294,volume:.18,type:"sine",filterFrequency:400}]},envious:{puffs:[{startTime:0,duration:.1,frequency:1e3,volume:.25}],tones:[{startTime:.03,duration:.2,frequency:294,volume:.18,type:"sine",filterFrequency:400}]},indignant:{puffs:[{startTime:0,duration:.12,frequency:900,volume:.28}],tones:[{startTime:.04,duration:.15,frequency:349,volume:.2,type:"sine"},{startTime:.12,duration:.12,frequency:330,volume:.18,type:"sine"}]},impatient:{puffs:[{startTime:0,duration:.04,frequency:1500,volume:.2},{startTime:.08,duration:.04,frequency:1500,volume:.2},{startTime:.16,duration:.04,frequency:1500,volume:.22}],tones:[{startTime:.06,duration:.1,frequency:523,volume:.15,type:"sine"}]},hostile:{puffs:[{startTime:0,duration:.12,frequency:900,volume:.28}],tones:[{startTime:.04,duration:.15,frequency:349,volume:.2,type:"sine"},{startTime:.12,duration:.12,frequency:330,volume:.18,type:"sine"}]},contemptuous:{puffs:[{startTime:0,duration:.1,frequency:1e3,volume:.25}],tones:[{startTime:.03,duration:.2,frequency:294,volume:.18,type:"sine",filterFrequency:400}]},tired:{puffs:[{startTime:0,duration:.35,frequency:500,volume:.2}],tones:[{startTime:.1,duration:.4,frequency:330,volume:.12,type:"sine",filterFrequency:350}]},exhausted:{puffs:[{startTime:0,duration:.45,frequency:400,volume:.18}],tones:[{startTime:.15,duration:.5,frequency:294,volume:.1,type:"sine",filterFrequency:300}]},drained:{puffs:[{startTime:0,duration:.45,frequency:400,volume:.18}],tones:[{startTime:.15,duration:.5,frequency:294,volume:.1,type:"sine",filterFrequency:300}]},burnedOut:{puffs:[{startTime:0,duration:.45,frequency:400,volume:.18}],tones:[{startTime:.15,duration:.5,frequency:294,volume:.1,type:"sine",filterFrequency:300}]},numb:{puffs:[{startTime:0,duration:.45,frequency:400,volume:.18}],tones:[{startTime:.15,duration:.5,frequency:294,volume:.1,type:"sine",filterFrequency:300}]},bored:{puffs:[{startTime:0,duration:.25,frequency:600,volume:.15}],tones:[{startTime:.1,duration:.3,frequency:349,volume:.1,type:"sine",filterFrequency:400}]},unmotivated:{puffs:[{startTime:0,duration:.25,frequency:600,volume:.15}],tones:[{startTime:.1,duration:.3,frequency:349,volume:.1,type:"sine",filterFrequency:400}]},apathetic:{puffs:[{startTime:0,duration:.25,frequency:600,volume:.15}],tones:[{startTime:.1,duration:.3,frequency:349,volume:.1,type:"sine",filterFrequency:400}]},restless:{puffs:[{startTime:0,duration:.35,frequency:500,volume:.2}],tones:[{startTime:.1,duration:.4,frequency:330,volume:.12,type:"sine",filterFrequency:350}]},calm:{puffs:[{startTime:0,duration:.3,frequency:600,volume:.12}],tones:[{startTime:.1,duration:.5,frequency:392,volume:.1,type:"sine",filterFrequency:500}]},relaxed:{puffs:[{startTime:0,duration:.35,frequency:700,volume:.15}],tones:[{startTime:.15,duration:.45,frequency:440,volume:.1,type:"sine",filterFrequency:800},{startTime:.35,duration:.5,frequency:392,volume:.08,type:"sine",filterFrequency:800}]},atEase:{puffs:[{startTime:0,duration:.35,frequency:700,volume:.15}],tones:[{startTime:.15,duration:.45,frequency:440,volume:.1,type:"sine",filterFrequency:800},{startTime:.35,duration:.5,frequency:392,volume:.08,type:"sine",filterFrequency:800}]},balanced:{puffs:[{startTime:0,duration:.3,frequency:600,volume:.12}],tones:[{startTime:.1,duration:.5,frequency:392,volume:.1,type:"sine",filterFrequency:500}]},stable:{puffs:[{startTime:0,duration:.25,frequency:500,volume:.2}],tones:[{startTime:.1,duration:.4,frequency:262,volume:.15,type:"sine",filterFrequency:350}]},secure:{puffs:[{startTime:0,duration:.3,frequency:700,volume:.15}],tones:[{startTime:.1,duration:.4,frequency:349,volume:.12,type:"sine",filterFrequency:800},{startTime:.25,duration:.45,frequency:440,volume:.1,type:"sine",filterFrequency:800}]},safe:{puffs:[{startTime:0,duration:.3,frequency:700,volume:.15}],tones:[{startTime:.1,duration:.4,frequency:349,volume:.12,type:"sine",filterFrequency:800},{startTime:.25,duration:.45,frequency:440,volume:.1,type:"sine",filterFrequency:800}]},centered:{puffs:[{startTime:0,duration:.25,frequency:500,volume:.2}],tones:[{startTime:.1,duration:.4,frequency:262,volume:.15,type:"sine",filterFrequency:350}]},grounded:{puffs:[{startTime:0,duration:.25,frequency:500,volume:.2}],tones:[{startTime:.1,duration:.4,frequency:262,volume:.15,type:"sine",filterFrequency:350}]},accepting:{puffs:[{startTime:0,duration:.3,frequency:600,volume:.12}],tones:[{startTime:.1,duration:.5,frequency:392,volume:.1,type:"sine",filterFrequency:500}]},connected:{puffs:[{startTime:0,duration:.2,frequency:1200,volume:.18}],tones:[{startTime:.08,duration:.3,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.12,duration:.32,frequency:523,volume:.12,type:"sine",filterFrequency:800}]},accepted:{puffs:[{startTime:0,duration:.15,frequency:1500,volume:.2}],tones:[{startTime:.05,duration:.25,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.15,duration:.3,frequency:523,volume:.18,type:"sine",filterFrequency:800}]},included:{puffs:[{startTime:0,duration:.2,frequency:1200,volume:.18}],tones:[{startTime:.08,duration:.3,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.12,duration:.32,frequency:523,volume:.12,type:"sine",filterFrequency:800}]},belonging:{puffs:[{startTime:0,duration:.2,frequency:1200,volume:.18}],tones:[{startTime:.08,duration:.3,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.12,duration:.32,frequency:523,volume:.12,type:"sine",filterFrequency:800}]},appreciated:{puffs:[{startTime:0,duration:.15,frequency:1500,volume:.2}],tones:[{startTime:.05,duration:.25,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.15,duration:.3,frequency:523,volume:.18,type:"sine",filterFrequency:800}]},valued:{puffs:[{startTime:0,duration:.15,frequency:1500,volume:.2}],tones:[{startTime:.05,duration:.25,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.15,duration:.3,frequency:523,volume:.18,type:"sine",filterFrequency:800}]},respected:{puffs:[{startTime:0,duration:.15,frequency:1500,volume:.2}],tones:[{startTime:.05,duration:.25,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.15,duration:.3,frequency:523,volume:.18,type:"sine",filterFrequency:800}]},supported:{puffs:[{startTime:0,duration:.25,frequency:900,volume:.18}],tones:[{startTime:.1,duration:.35,frequency:349,volume:.12,type:"sine",filterFrequency:800},{startTime:.15,duration:.4,frequency:440,volume:.1,type:"sine",filterFrequency:800}]},protective:{puffs:[{startTime:0,duration:.25,frequency:900,volume:.18}],tones:[{startTime:.1,duration:.35,frequency:349,volume:.12,type:"sine",filterFrequency:800},{startTime:.15,duration:.4,frequency:440,volume:.1,type:"sine",filterFrequency:800}]},compassionate:{puffs:[{startTime:0,duration:.2,frequency:1200,volume:.18}],tones:[{startTime:.08,duration:.3,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.12,duration:.32,frequency:523,volume:.12,type:"sine",filterFrequency:800}]},empathetic:{puffs:[{startTime:0,duration:.2,frequency:1200,volume:.18}],tones:[{startTime:.08,duration:.3,frequency:440,volume:.15,type:"sine",filterFrequency:800},{startTime:.12,duration:.32,frequency:523,volume:.12,type:"sine",filterFrequency:800}]},conflicted:{puffs:[{startTime:0,duration:.12,frequency:1200,volume:.18}],tones:[{startTime:.04,duration:.2,frequency:440,volume:.12,type:"sine",frequencyEnd:494},{startTime:.15,duration:.15,frequency:466,volume:.1,type:"sine"}]},confused:{puffs:[{startTime:0,duration:.12,frequency:1200,volume:.18}],tones:[{startTime:.04,duration:.2,frequency:440,volume:.12,type:"sine",frequencyEnd:494},{startTime:.15,duration:.15,frequency:466,volume:.1,type:"sine"}]},ambivalent:{puffs:[{startTime:0,duration:.12,frequency:1200,volume:.18}],tones:[{startTime:.04,duration:.2,frequency:440,volume:.12,type:"sine",frequencyEnd:494},{startTime:.15,duration:.15,frequency:466,volume:.1,type:"sine"}]},nostalgic:{puffs:[{startTime:0,duration:.25,frequency:800,volume:.15}],tones:[{startTime:.1,duration:.4,frequency:440,volume:.12,type:"sine",filterFrequency:500},{startTime:.3,duration:.45,frequency:392,volume:.1,type:"sine",filterFrequency:450}]},guilty:{puffs:[{startTime:0,duration:.25,frequency:800,volume:.25}],tones:[{startTime:.08,duration:.3,frequency:523,volume:.18,type:"sine",frequencyEnd:349}]},embarrassed:{puffs:[{startTime:0,duration:.05,frequency:2e3,volume:.18},{startTime:.08,duration:.05,frequency:2100,volume:.18},{startTime:.15,duration:.06,frequency:2e3,volume:.16}],tones:[{startTime:.04,duration:.2,frequency:494,volume:.12,type:"sine"}]},surprised:{puffs:[{startTime:0,duration:.06,frequency:2800,volume:.25}],tones:[{startTime:.02,duration:.15,frequency:659,volume:.2,type:"sine",frequencyEnd:988}]},shocked:{puffs:[{startTime:0,duration:.04,frequency:3500,volume:.3}],tones:[{startTime:0,duration:.08,frequency:1047,volume:.25,type:"sine"},{startTime:.05,duration:.15,frequency:880,volume:.15,type:"sine"}]},awestruck:{puffs:[{startTime:0,duration:.2,frequency:1500,volume:.2}],tones:[{startTime:.08,duration:.4,frequency:440,volume:.15,type:"sine"},{startTime:.1,duration:.38,frequency:660,volume:.12,type:"sine"},{startTime:.12,duration:.36,frequency:880,volume:.09,type:"sine"}]},skeptical:{puffs:[{startTime:0,duration:.12,frequency:1200,volume:.18}],tones:[{startTime:.04,duration:.2,frequency:440,volume:.12,type:"sine",frequencyEnd:494},{startTime:.15,duration:.15,frequency:466,volume:.1,type:"sine"}]}};class m{constructor(){this.audioContext=null,this.theme$=i.$.pipe(a.map(e=>e.theme),a.shareReplay(1)),this.volume$=i.$.pipe(a.map(e=>e.volume),a.distinctUntilChanged(),a.shareReplay(1)),this.muted$=i.$.pipe(a.map(e=>e.muted),a.distinctUntilChanged(),a.shareReplay(1)),this._themeName$=new a.BehaviorSubject("default"),this.themeName$=this._themeName$.asObservable(),this.theme$.subscribe(e=>{this._themeName$.next(e?.name??"default")})}get theme(){return i.value.theme}get volume(){return i.value.volume}get muted(){return i.value.muted}get themeName(){return this.theme?.name??"default"}getContext(){if(!this.audioContext){const e=window.AudioContext||window.webkitAudioContext;this.audioContext=new e}return this.audioContext.state==="suspended"&&this.audioContext.resume(),this.audioContext}playPuff(e,t,s){const u=this.getContext(),r=Math.floor(u.sampleRate*t.duration),n=u.createBuffer(1,r,u.sampleRate),f=n.getChannelData(0);for(let l=0;l<r;l++)f[l]=2*Math.random()-1;const o=u.createBufferSource();o.buffer=n;const y=u.createBiquadFilter();y.type="bandpass",y.frequency.value=t.frequency,y.Q.value=.7;const c=u.createGain();c.gain.setValueAtTime(0,e),c.gain.linearRampToValueAtTime(t.volume*s,e+.015),c.gain.exponentialRampToValueAtTime(.001,e+t.duration),o.connect(y).connect(c).connect(u.destination),o.start(e),o.stop(e+t.duration)}playTone(e,t,s){const u=this.getContext(),r=u.createOscillator(),n=u.createGain();r.type=t.type,r.frequency.setValueAtTime(t.frequency,e),t.frequencyEnd&&r.frequency.exponentialRampToValueAtTime(t.frequencyEnd,e+.8*t.duration);let f=r;if(t.filterFrequency){const o=u.createBiquadFilter();o.type="lowpass",o.frequency.value=t.filterFrequency,r.connect(o),f=o}n.gain.setValueAtTime(0,e),n.gain.linearRampToValueAtTime(t.volume*s,e+.02),n.gain.exponentialRampToValueAtTime(.001,e+t.duration),f.connect(n).connect(u.destination),r.start(e),r.stop(e+t.duration)}setTheme(e){i.set({theme:e})}resetTheme(){i.set({theme:null})}setVolume(e){i.set({volume:Math.max(0,Math.min(1,e))})}mute(){i.set({muted:!0})}unmute(){i.set({muted:!1})}toggleMute(){i.set({muted:!this.muted})}getSoundForFeeling(e){const t=this.theme;if(t?.feelings?.[e])return t.feelings[e];if(t?.categoryDefaults){const s=this.getCategoryForFeeling(e);if(t.categoryDefaults[s])return t.categoryDefaults[s]}return p[e]}getCategoryForFeeling(e){return["joyful","content","excited","proud","hopeful","relieved","grateful","peaceful","playful","amused","curious","inspired","confident","loved","comforted","energized","celebrated"].includes(e)?"happy":["sad","lonely","disappointed","heartbroken","grieving","hopeless","empty","discouraged","melancholic","homesick","hurt","miserable","regretful","ashamed","inferior"].includes(e)?"sad":["anxious","worried","afraid","terrified","panicked","nervous","uneasy","insecure","overwhelmed","stressed","tense","apprehensive","startled","suspicious","vulnerable"].includes(e)?"anxious":["annoyed","irritated","frustrated","angry","enraged","bitter","resentful","jealous","envious","indignant","impatient","hostile","contemptuous"].includes(e)?"angry":["tired","exhausted","drained","burnedOut","numb","bored","unmotivated","apathetic","restless"].includes(e)?"tired":["calm","relaxed","atEase","balanced","stable","secure","safe","centered","grounded","accepting"].includes(e)?"calm":["connected","accepted","included","belonging","appreciated","valued","respected","supported","protective","compassionate","empathetic"].includes(e)?"connected":"mixed"}play(e){if(this.muted)return;const t=this.getSoundForFeeling(e),s=this.getContext().currentTime,u=this.theme?.masterVolume??1,r=this.volume*u;t.puffs.forEach(n=>{this.playPuff(s+n.startTime,n,r)}),t.tones.forEach(n=>{this.playTone(s+n.startTime,n,r)})}dispose(){this.audioContext&&(this.audioContext.close(),this.audioContext=null)}static getInstance(){return m.instance||(m.instance=new m),m.instance}}const d=m.getInstance(),v=d;exports.schmancySound=v,exports.sound=d;
2
+ //# sourceMappingURL=sound.service-eRirZw59.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sound.service-eRirZw59.cjs","sources":["../src/audio/sound.service.ts"],"sourcesContent":["/**\n * Schmancy Sound Service\n *\n * Centralized sound management following the theme service pattern.\n * Provides reactive observables for sound state and methods to control sounds.\n *\n * @example\n * ```typescript\n * import { sound } from '@schmancy/audio'\n *\n * // Play a feeling sound\n * sound.play('joyful')\n *\n * // Set volume\n * sound.setVolume(0.2)\n *\n * // Apply AI-generated sound theme\n * sound.setTheme(aiGeneratedTheme)\n *\n * // Reset to defaults\n * sound.resetTheme()\n *\n * // Subscribe to theme changes\n * sound.theme$.subscribe(theme => {\n * console.log('Current theme:', theme?.name ?? 'default')\n * })\n * ```\n */\n\nimport { BehaviorSubject, distinctUntilChanged, map, shareReplay } from 'rxjs'\nimport { createContext } from '../store'\nimport type {\n\tFeeling,\n\tFeelingCategory,\n\tFeelingSound,\n\tPuffParams,\n\tSoundTheme,\n\tSoundThemeSettings,\n\tToneParams,\n} from '../types/mood-audio.types'\n\n// ============================================================================\n// CONTEXT\n// ============================================================================\n\n/** Sound settings context - persists to local storage */\nconst SoundContext = createContext<SoundThemeSettings>(\n\t{\n\t\ttheme: null,\n\t\tvolume: 0.15,\n\t\tmuted: false,\n\t},\n\t'local',\n\t'schmancy-sound-settings'\n)\n\n// ============================================================================\n// DEFAULT SOUND THEME\n// ============================================================================\n\n/**\n * Default sound definitions for all feelings\n * These are used when no custom theme is applied\n */\nconst DEFAULT_SOUNDS: Record<Feeling, FeelingSound> = {\n\t// ========== HAPPY / PLEASANT ==========\n\tjoyful: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 3000, volume: 0.3 },\n\t\t\t{ startTime: 0.06, duration: 0.1, frequency: 3500, volume: 0.35 },\n\t\t],\n\t\ttones: [\n\t\t\t{ startTime: 0.02, duration: 0.15, frequency: 784, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.1, duration: 0.2, frequency: 988, volume: 0.3, type: 'sine' },\n\t\t\t{ startTime: 0.18, duration: 0.25, frequency: 1175, volume: 0.25, type: 'sine' },\n\t\t],\n\t},\n\tcontent: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 1500, volume: 0.25 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.05, duration: 0.3, frequency: 523, volume: 0.2, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.15, duration: 0.35, frequency: 659, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\texcited: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.06, frequency: 2500, volume: 0.25 },\n\t\t\t{ startTime: 0.05, duration: 0.06, frequency: 3000, volume: 0.3 },\n\t\t\t{ startTime: 0.1, duration: 0.08, frequency: 3500, volume: 0.35 },\n\t\t],\n\t\ttones: [\n\t\t\t{ startTime: 0.02, duration: 0.12, frequency: 880, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.08, duration: 0.12, frequency: 1047, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.14, duration: 0.15, frequency: 1319, volume: 0.3, type: 'sine' },\n\t\t],\n\t},\n\tproud: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1800, volume: 0.3 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.05, duration: 0.25, frequency: 523, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.08, duration: 0.25, frequency: 659, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.11, duration: 0.3, frequency: 784, volume: 0.25, type: 'sine' },\n\t\t],\n\t},\n\thopeful: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 2200, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.03, duration: 0.3, frequency: 659, volume: 0.2, type: 'sine', frequencyEnd: 880 }],\n\t},\n\trelieved: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 1200, volume: 0.35 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.35, frequency: 659, volume: 0.2, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.25, duration: 0.4, frequency: 523, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tgrateful: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1500, volume: 0.25 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.05, duration: 0.3, frequency: 440, volume: 0.2, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.15, duration: 0.35, frequency: 523, volume: 0.2, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.25, duration: 0.4, frequency: 659, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tpeaceful: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 800, volume: 0.15 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.5, frequency: 392, volume: 0.12, type: 'sine', filterFrequency: 500 }],\n\t},\n\tplayful: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.05, frequency: 2800, volume: 0.2 },\n\t\t\t{ startTime: 0.08, duration: 0.05, frequency: 3200, volume: 0.25 },\n\t\t\t{ startTime: 0.14, duration: 0.06, frequency: 2800, volume: 0.2 },\n\t\t],\n\t\ttones: [\n\t\t\t{ startTime: 0.03, duration: 0.1, frequency: 784, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.1, duration: 0.08, frequency: 988, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.16, duration: 0.12, frequency: 784, volume: 0.2, type: 'sine' },\n\t\t],\n\t},\n\tamused: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.04, frequency: 2500, volume: 0.2 },\n\t\t\t{ startTime: 0.06, duration: 0.04, frequency: 2800, volume: 0.22 },\n\t\t\t{ startTime: 0.11, duration: 0.05, frequency: 2600, volume: 0.18 },\n\t\t],\n\t\ttones: [{ startTime: 0.05, duration: 0.15, frequency: 880, volume: 0.15, type: 'sine' }],\n\t},\n\tcurious: {\n\t\tpuffs: [{ startTime: 0, duration: 0.1, frequency: 2000, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.03, duration: 0.2, frequency: 659, volume: 0.2, type: 'sine', frequencyEnd: 880 }],\n\t},\n\tinspired: {\n\t\tpuffs: [{ startTime: 0, duration: 0.1, frequency: 2500, volume: 0.25 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.05, duration: 0.3, frequency: 523, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.07, duration: 0.28, frequency: 784.5, volume: 0.16, type: 'sine' },\n\t\t\t{ startTime: 0.09, duration: 0.26, frequency: 1046, volume: 0.12, type: 'sine' },\n\t\t],\n\t},\n\tconfident: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 1500, volume: 0.3 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.2, frequency: 523, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.06, duration: 0.22, frequency: 659, volume: 0.2, type: 'sine' },\n\t\t],\n\t},\n\tloved: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 1000, volume: 0.2 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.08, duration: 0.4, frequency: 392, volume: 0.18, type: 'sine', filterFrequency: 600 },\n\t\t\t{ startTime: 0.2, duration: 0.45, frequency: 494, volume: 0.15, type: 'sine', filterFrequency: 600 },\n\t\t],\n\t},\n\tcomforted: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 900, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.35, frequency: 523, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.25, duration: 0.4, frequency: 440, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tenergized: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.05, frequency: 3000, volume: 0.25 },\n\t\t\t{ startTime: 0.04, duration: 0.05, frequency: 3500, volume: 0.28 },\n\t\t],\n\t\ttones: [\n\t\t\t{ startTime: 0.02, duration: 0.1, frequency: 784, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.08, duration: 0.12, frequency: 988, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.14, duration: 0.15, frequency: 1175, volume: 0.22, type: 'sine' },\n\t\t],\n\t},\n\tcelebrated: {\n\t\tpuffs: [{ startTime: 0, duration: 0.08, frequency: 2500, volume: 0.2 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.02, duration: 0.18, frequency: 523, volume: 0.22, type: 'sine' },\n\t\t\t{ startTime: 0.08, duration: 0.18, frequency: 659, volume: 0.24, type: 'sine' },\n\t\t\t{ startTime: 0.14, duration: 0.2, frequency: 784, volume: 0.26, type: 'sine' },\n\t\t\t{ startTime: 0.22, duration: 0.3, frequency: 1047, volume: 0.22, type: 'sine' },\n\t\t],\n\t},\n\n\t// ========== SAD / LOW ==========\n\tsad: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 600, volume: 0.25 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 392, volume: 0.2, type: 'sine', filterFrequency: 400 },\n\t\t\t{ startTime: 0.3, duration: 0.45, frequency: 294, volume: 0.15, type: 'sine', filterFrequency: 350 },\n\t\t],\n\t},\n\tlonely: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 700, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.15, duration: 0.5, frequency: 330, volume: 0.12, type: 'sine', filterFrequency: 450 }],\n\t},\n\tdisappointed: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 800, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.08, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', frequencyEnd: 349 }],\n\t},\n\theartbroken: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 600, volume: 0.25 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 392, volume: 0.2, type: 'sine', filterFrequency: 400 },\n\t\t\t{ startTime: 0.3, duration: 0.45, frequency: 294, volume: 0.15, type: 'sine', filterFrequency: 350 },\n\t\t],\n\t},\n\tgrieving: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 600, volume: 0.25 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 392, volume: 0.2, type: 'sine', filterFrequency: 400 },\n\t\t\t{ startTime: 0.3, duration: 0.45, frequency: 294, volume: 0.15, type: 'sine', filterFrequency: 350 },\n\t\t],\n\t},\n\thopeless: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 700, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.15, duration: 0.5, frequency: 330, volume: 0.12, type: 'sine', filterFrequency: 450 }],\n\t},\n\tempty: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 700, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.15, duration: 0.5, frequency: 330, volume: 0.12, type: 'sine', filterFrequency: 450 }],\n\t},\n\tdiscouraged: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 800, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.08, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', frequencyEnd: 349 }],\n\t},\n\tmelancholic: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 700, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.45, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 500 },\n\t\t\t{ startTime: 0.3, duration: 0.5, frequency: 392, volume: 0.12, type: 'sine', filterFrequency: 450 },\n\t\t],\n\t},\n\thomesick: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 800, volume: 0.15 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 440, volume: 0.12, type: 'sine', filterFrequency: 500 },\n\t\t\t{ startTime: 0.3, duration: 0.45, frequency: 392, volume: 0.1, type: 'sine', filterFrequency: 450 },\n\t\t],\n\t},\n\thurt: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 600, volume: 0.25 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 392, volume: 0.2, type: 'sine', filterFrequency: 400 },\n\t\t\t{ startTime: 0.3, duration: 0.45, frequency: 294, volume: 0.15, type: 'sine', filterFrequency: 350 },\n\t\t],\n\t},\n\tmiserable: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 600, volume: 0.25 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 392, volume: 0.2, type: 'sine', filterFrequency: 400 },\n\t\t\t{ startTime: 0.3, duration: 0.45, frequency: 294, volume: 0.15, type: 'sine', filterFrequency: 350 },\n\t\t],\n\t},\n\tregretful: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 700, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.45, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 500 },\n\t\t\t{ startTime: 0.3, duration: 0.5, frequency: 392, volume: 0.12, type: 'sine', filterFrequency: 450 },\n\t\t],\n\t},\n\tashamed: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 800, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.08, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', frequencyEnd: 349 }],\n\t},\n\tinferior: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 800, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.08, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', frequencyEnd: 349 }],\n\t},\n\n\t// ========== ANXIOUS / FEARFUL ==========\n\tanxious: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1800, volume: 0.2 },\n\t\t\t{ startTime: 0.12, duration: 0.08, frequency: 1900, volume: 0.22 },\n\t\t],\n\t\ttones: [{ startTime: 0.03, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine' }],\n\t\tdescription: 'Tight, quick puffs with uncertain wobble',\n\t},\n\tworried: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1200, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.05, duration: 0.25, frequency: 349, volume: 0.15, type: 'sine', frequencyEnd: 392 }],\n\t},\n\tafraid: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1800, volume: 0.2 },\n\t\t\t{ startTime: 0.12, duration: 0.08, frequency: 1900, volume: 0.22 },\n\t\t],\n\t\ttones: [{ startTime: 0.03, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine' }],\n\t},\n\tterrified: {\n\t\tpuffs: [{ startTime: 0, duration: 0.04, frequency: 3500, volume: 0.3 }],\n\t\ttones: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1047, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.05, duration: 0.15, frequency: 880, volume: 0.15, type: 'sine' },\n\t\t],\n\t},\n\tpanicked: {\n\t\tpuffs: [{ startTime: 0, duration: 0.04, frequency: 3500, volume: 0.3 }],\n\t\ttones: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1047, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.05, duration: 0.15, frequency: 880, volume: 0.15, type: 'sine' },\n\t\t],\n\t},\n\tnervous: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.05, frequency: 2000, volume: 0.18 },\n\t\t\t{ startTime: 0.08, duration: 0.05, frequency: 2100, volume: 0.18 },\n\t\t\t{ startTime: 0.15, duration: 0.06, frequency: 2000, volume: 0.16 },\n\t\t],\n\t\ttones: [{ startTime: 0.04, duration: 0.2, frequency: 494, volume: 0.12, type: 'sine' }],\n\t},\n\tuneasy: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1200, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.05, duration: 0.25, frequency: 349, volume: 0.15, type: 'sine', frequencyEnd: 392 }],\n\t},\n\tinsecure: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.05, frequency: 2000, volume: 0.18 },\n\t\t\t{ startTime: 0.08, duration: 0.05, frequency: 2100, volume: 0.18 },\n\t\t\t{ startTime: 0.15, duration: 0.06, frequency: 2000, volume: 0.16 },\n\t\t],\n\t\ttones: [{ startTime: 0.04, duration: 0.2, frequency: 494, volume: 0.12, type: 'sine' }],\n\t},\n\toverwhelmed: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1800, volume: 0.2 },\n\t\t\t{ startTime: 0.12, duration: 0.08, frequency: 1900, volume: 0.22 },\n\t\t],\n\t\ttones: [{ startTime: 0.03, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine' }],\n\t},\n\tstressed: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1800, volume: 0.2 },\n\t\t\t{ startTime: 0.12, duration: 0.08, frequency: 1900, volume: 0.22 },\n\t\t],\n\t\ttones: [{ startTime: 0.03, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine' }],\n\t},\n\ttense: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1800, volume: 0.2 },\n\t\t\t{ startTime: 0.12, duration: 0.08, frequency: 1900, volume: 0.22 },\n\t\t],\n\t\ttones: [{ startTime: 0.03, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine' }],\n\t},\n\tapprehensive: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1200, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.05, duration: 0.25, frequency: 349, volume: 0.15, type: 'sine', frequencyEnd: 392 }],\n\t},\n\tstartled: {\n\t\tpuffs: [{ startTime: 0, duration: 0.04, frequency: 3500, volume: 0.3 }],\n\t\ttones: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1047, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.05, duration: 0.15, frequency: 880, volume: 0.15, type: 'sine' },\n\t\t],\n\t},\n\tsuspicious: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1200, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.05, duration: 0.25, frequency: 349, volume: 0.15, type: 'sine', frequencyEnd: 392 }],\n\t},\n\tvulnerable: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.05, frequency: 2000, volume: 0.18 },\n\t\t\t{ startTime: 0.08, duration: 0.05, frequency: 2100, volume: 0.18 },\n\t\t\t{ startTime: 0.15, duration: 0.06, frequency: 2000, volume: 0.16 },\n\t\t],\n\t\ttones: [{ startTime: 0.04, duration: 0.2, frequency: 494, volume: 0.12, type: 'sine' }],\n\t},\n\n\t// ========== ANGRY / FRUSTRATED ==========\n\tannoyed: {\n\t\tpuffs: [{ startTime: 0, duration: 0.1, frequency: 1000, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.03, duration: 0.2, frequency: 294, volume: 0.18, type: 'sine', filterFrequency: 400 }],\n\t},\n\tirritated: {\n\t\tpuffs: [{ startTime: 0, duration: 0.1, frequency: 1000, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.03, duration: 0.2, frequency: 294, volume: 0.18, type: 'sine', filterFrequency: 400 }],\n\t},\n\tfrustrated: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 900, volume: 0.28 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.15, frequency: 349, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.12, duration: 0.12, frequency: 330, volume: 0.18, type: 'sine' },\n\t\t],\n\t},\n\tangry: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 900, volume: 0.28 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.15, frequency: 349, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.12, duration: 0.12, frequency: 330, volume: 0.18, type: 'sine' },\n\t\t],\n\t},\n\tenraged: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 900, volume: 0.28 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.15, frequency: 349, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.12, duration: 0.12, frequency: 330, volume: 0.18, type: 'sine' },\n\t\t],\n\t},\n\tbitter: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 900, volume: 0.28 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.15, frequency: 349, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.12, duration: 0.12, frequency: 330, volume: 0.18, type: 'sine' },\n\t\t],\n\t},\n\tresentful: {\n\t\tpuffs: [{ startTime: 0, duration: 0.1, frequency: 1000, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.03, duration: 0.2, frequency: 294, volume: 0.18, type: 'sine', filterFrequency: 400 }],\n\t},\n\tjealous: {\n\t\tpuffs: [{ startTime: 0, duration: 0.1, frequency: 1000, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.03, duration: 0.2, frequency: 294, volume: 0.18, type: 'sine', filterFrequency: 400 }],\n\t},\n\tenvious: {\n\t\tpuffs: [{ startTime: 0, duration: 0.1, frequency: 1000, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.03, duration: 0.2, frequency: 294, volume: 0.18, type: 'sine', filterFrequency: 400 }],\n\t},\n\tindignant: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 900, volume: 0.28 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.15, frequency: 349, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.12, duration: 0.12, frequency: 330, volume: 0.18, type: 'sine' },\n\t\t],\n\t},\n\timpatient: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.04, frequency: 1500, volume: 0.2 },\n\t\t\t{ startTime: 0.08, duration: 0.04, frequency: 1500, volume: 0.2 },\n\t\t\t{ startTime: 0.16, duration: 0.04, frequency: 1500, volume: 0.22 },\n\t\t],\n\t\ttones: [{ startTime: 0.06, duration: 0.1, frequency: 523, volume: 0.15, type: 'sine' }],\n\t},\n\thostile: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 900, volume: 0.28 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.15, frequency: 349, volume: 0.2, type: 'sine' },\n\t\t\t{ startTime: 0.12, duration: 0.12, frequency: 330, volume: 0.18, type: 'sine' },\n\t\t],\n\t},\n\tcontemptuous: {\n\t\tpuffs: [{ startTime: 0, duration: 0.1, frequency: 1000, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.03, duration: 0.2, frequency: 294, volume: 0.18, type: 'sine', filterFrequency: 400 }],\n\t},\n\n\t// ========== TIRED / DRAINED ==========\n\ttired: {\n\t\tpuffs: [{ startTime: 0, duration: 0.35, frequency: 500, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.4, frequency: 330, volume: 0.12, type: 'sine', filterFrequency: 350 }],\n\t},\n\texhausted: {\n\t\tpuffs: [{ startTime: 0, duration: 0.45, frequency: 400, volume: 0.18 }],\n\t\ttones: [{ startTime: 0.15, duration: 0.5, frequency: 294, volume: 0.1, type: 'sine', filterFrequency: 300 }],\n\t},\n\tdrained: {\n\t\tpuffs: [{ startTime: 0, duration: 0.45, frequency: 400, volume: 0.18 }],\n\t\ttones: [{ startTime: 0.15, duration: 0.5, frequency: 294, volume: 0.1, type: 'sine', filterFrequency: 300 }],\n\t},\n\tburnedOut: {\n\t\tpuffs: [{ startTime: 0, duration: 0.45, frequency: 400, volume: 0.18 }],\n\t\ttones: [{ startTime: 0.15, duration: 0.5, frequency: 294, volume: 0.1, type: 'sine', filterFrequency: 300 }],\n\t},\n\tnumb: {\n\t\tpuffs: [{ startTime: 0, duration: 0.45, frequency: 400, volume: 0.18 }],\n\t\ttones: [{ startTime: 0.15, duration: 0.5, frequency: 294, volume: 0.1, type: 'sine', filterFrequency: 300 }],\n\t},\n\tbored: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 600, volume: 0.15 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.3, frequency: 349, volume: 0.1, type: 'sine', filterFrequency: 400 }],\n\t},\n\tunmotivated: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 600, volume: 0.15 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.3, frequency: 349, volume: 0.1, type: 'sine', filterFrequency: 400 }],\n\t},\n\tapathetic: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 600, volume: 0.15 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.3, frequency: 349, volume: 0.1, type: 'sine', filterFrequency: 400 }],\n\t},\n\trestless: {\n\t\tpuffs: [{ startTime: 0, duration: 0.35, frequency: 500, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.4, frequency: 330, volume: 0.12, type: 'sine', filterFrequency: 350 }],\n\t},\n\n\t// ========== CALM / GROUNDED ==========\n\tcalm: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 600, volume: 0.12 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.5, frequency: 392, volume: 0.1, type: 'sine', filterFrequency: 500 }],\n\t},\n\trelaxed: {\n\t\tpuffs: [{ startTime: 0, duration: 0.35, frequency: 700, volume: 0.15 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.15, duration: 0.45, frequency: 440, volume: 0.1, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.35, duration: 0.5, frequency: 392, volume: 0.08, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tatEase: {\n\t\tpuffs: [{ startTime: 0, duration: 0.35, frequency: 700, volume: 0.15 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.15, duration: 0.45, frequency: 440, volume: 0.1, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.35, duration: 0.5, frequency: 392, volume: 0.08, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tbalanced: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 600, volume: 0.12 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.5, frequency: 392, volume: 0.1, type: 'sine', filterFrequency: 500 }],\n\t},\n\tstable: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 500, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.4, frequency: 262, volume: 0.15, type: 'sine', filterFrequency: 350 }],\n\t},\n\tsecure: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 700, volume: 0.15 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 349, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.25, duration: 0.45, frequency: 440, volume: 0.1, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tsafe: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 700, volume: 0.15 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 349, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.25, duration: 0.45, frequency: 440, volume: 0.1, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tcentered: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 500, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.4, frequency: 262, volume: 0.15, type: 'sine', filterFrequency: 350 }],\n\t},\n\tgrounded: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 500, volume: 0.2 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.4, frequency: 262, volume: 0.15, type: 'sine', filterFrequency: 350 }],\n\t},\n\taccepting: {\n\t\tpuffs: [{ startTime: 0, duration: 0.3, frequency: 600, volume: 0.12 }],\n\t\ttones: [{ startTime: 0.1, duration: 0.5, frequency: 392, volume: 0.1, type: 'sine', filterFrequency: 500 }],\n\t},\n\n\t// ========== CONNECTED / SOCIAL ==========\n\tconnected: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.08, duration: 0.3, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.12, duration: 0.32, frequency: 523, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\taccepted: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1500, volume: 0.2 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.05, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.15, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tincluded: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.08, duration: 0.3, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.12, duration: 0.32, frequency: 523, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tbelonging: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.08, duration: 0.3, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.12, duration: 0.32, frequency: 523, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tappreciated: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1500, volume: 0.2 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.05, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.15, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tvalued: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1500, volume: 0.2 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.05, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.15, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\trespected: {\n\t\tpuffs: [{ startTime: 0, duration: 0.15, frequency: 1500, volume: 0.2 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.05, duration: 0.25, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.15, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tsupported: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 900, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.35, frequency: 349, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.15, duration: 0.4, frequency: 440, volume: 0.1, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tprotective: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 900, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.35, frequency: 349, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.15, duration: 0.4, frequency: 440, volume: 0.1, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tcompassionate: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.08, duration: 0.3, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.12, duration: 0.32, frequency: 523, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\tempathetic: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.08, duration: 0.3, frequency: 440, volume: 0.15, type: 'sine', filterFrequency: 800 },\n\t\t\t{ startTime: 0.12, duration: 0.32, frequency: 523, volume: 0.12, type: 'sine', filterFrequency: 800 },\n\t\t],\n\t},\n\n\t// ========== MIXED / COMPLICATED ==========\n\tconflicted: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.2, frequency: 440, volume: 0.12, type: 'sine', frequencyEnd: 494 },\n\t\t\t{ startTime: 0.15, duration: 0.15, frequency: 466, volume: 0.1, type: 'sine' },\n\t\t],\n\t},\n\tconfused: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.2, frequency: 440, volume: 0.12, type: 'sine', frequencyEnd: 494 },\n\t\t\t{ startTime: 0.15, duration: 0.15, frequency: 466, volume: 0.1, type: 'sine' },\n\t\t],\n\t},\n\tambivalent: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.2, frequency: 440, volume: 0.12, type: 'sine', frequencyEnd: 494 },\n\t\t\t{ startTime: 0.15, duration: 0.15, frequency: 466, volume: 0.1, type: 'sine' },\n\t\t],\n\t},\n\tnostalgic: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 800, volume: 0.15 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.1, duration: 0.4, frequency: 440, volume: 0.12, type: 'sine', filterFrequency: 500 },\n\t\t\t{ startTime: 0.3, duration: 0.45, frequency: 392, volume: 0.1, type: 'sine', filterFrequency: 450 },\n\t\t],\n\t},\n\tguilty: {\n\t\tpuffs: [{ startTime: 0, duration: 0.25, frequency: 800, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.08, duration: 0.3, frequency: 523, volume: 0.18, type: 'sine', frequencyEnd: 349 }],\n\t},\n\tembarrassed: {\n\t\tpuffs: [\n\t\t\t{ startTime: 0, duration: 0.05, frequency: 2000, volume: 0.18 },\n\t\t\t{ startTime: 0.08, duration: 0.05, frequency: 2100, volume: 0.18 },\n\t\t\t{ startTime: 0.15, duration: 0.06, frequency: 2000, volume: 0.16 },\n\t\t],\n\t\ttones: [{ startTime: 0.04, duration: 0.2, frequency: 494, volume: 0.12, type: 'sine' }],\n\t},\n\tsurprised: {\n\t\tpuffs: [{ startTime: 0, duration: 0.06, frequency: 2800, volume: 0.25 }],\n\t\ttones: [{ startTime: 0.02, duration: 0.15, frequency: 659, volume: 0.2, type: 'sine', frequencyEnd: 988 }],\n\t},\n\tshocked: {\n\t\tpuffs: [{ startTime: 0, duration: 0.04, frequency: 3500, volume: 0.3 }],\n\t\ttones: [\n\t\t\t{ startTime: 0, duration: 0.08, frequency: 1047, volume: 0.25, type: 'sine' },\n\t\t\t{ startTime: 0.05, duration: 0.15, frequency: 880, volume: 0.15, type: 'sine' },\n\t\t],\n\t},\n\tawestruck: {\n\t\tpuffs: [{ startTime: 0, duration: 0.2, frequency: 1500, volume: 0.2 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.08, duration: 0.4, frequency: 440, volume: 0.15, type: 'sine' },\n\t\t\t{ startTime: 0.1, duration: 0.38, frequency: 660, volume: 0.12, type: 'sine' },\n\t\t\t{ startTime: 0.12, duration: 0.36, frequency: 880, volume: 0.09, type: 'sine' },\n\t\t],\n\t},\n\tskeptical: {\n\t\tpuffs: [{ startTime: 0, duration: 0.12, frequency: 1200, volume: 0.18 }],\n\t\ttones: [\n\t\t\t{ startTime: 0.04, duration: 0.2, frequency: 440, volume: 0.12, type: 'sine', frequencyEnd: 494 },\n\t\t\t{ startTime: 0.15, duration: 0.15, frequency: 466, volume: 0.1, type: 'sine' },\n\t\t],\n\t},\n}\n\n// ============================================================================\n// SOUND SERVICE\n// ============================================================================\n\n/**\n * Sound Service - Provides centralized sound management for Schmancy components\n *\n * Following the theme service pattern:\n * - Has default sounds as fallback\n * - Can receive custom sound theme from AI\n * - Reactive observables for state changes\n * - Persists settings to session storage\n */\nclass SoundService {\n\tprivate static instance: SoundService\n\n\t/** Audio context for Web Audio API */\n\tprivate audioContext: AudioContext | null = null\n\n\t// Public observables derived from context\n\t// Don't use distinctUntilChanged for theme - we need all emissions including storage loads\n\tpublic readonly theme$ = SoundContext.$.pipe(\n\t\tmap(settings => settings.theme),\n\t\tshareReplay(1)\n\t)\n\n\tpublic readonly volume$ = SoundContext.$.pipe(\n\t\tmap(settings => settings.volume),\n\t\tdistinctUntilChanged(),\n\t\tshareReplay(1)\n\t)\n\n\tpublic readonly muted$ = SoundContext.$.pipe(\n\t\tmap(settings => settings.muted),\n\t\tdistinctUntilChanged(),\n\t\tshareReplay(1)\n\t)\n\n\t/** BehaviorSubject for current theme name (for debugging/display) */\n\tprivate readonly _themeName$ = new BehaviorSubject<string>('default')\n\tpublic readonly themeName$ = this._themeName$.asObservable()\n\n\t// Getters for synchronous access\n\tget theme(): SoundTheme | null {\n\t\treturn SoundContext.value.theme\n\t}\n\n\tget volume(): number {\n\t\treturn SoundContext.value.volume\n\t}\n\n\tget muted(): boolean {\n\t\treturn SoundContext.value.muted\n\t}\n\n\tget themeName(): string {\n\t\treturn this.theme?.name ?? 'default'\n\t}\n\n\tprivate constructor() {\n\t\t// Subscribe to theme changes to update theme name\n\t\tthis.theme$.subscribe(theme => {\n\t\t\tthis._themeName$.next(theme?.name ?? 'default')\n\t\t})\n\t}\n\n\t// ==========================================================================\n\t// AUDIO CONTEXT MANAGEMENT\n\t// ==========================================================================\n\n\tprivate getContext(): AudioContext {\n\t\tif (!this.audioContext) {\n\t\t\tconst AudioContextClass =\n\t\t\t\twindow.AudioContext || (window as unknown as { webkitAudioContext: typeof AudioContext }).webkitAudioContext\n\t\t\tthis.audioContext = new AudioContextClass()\n\t\t}\n\t\tif (this.audioContext.state === 'suspended') {\n\t\t\tthis.audioContext.resume()\n\t\t}\n\t\treturn this.audioContext\n\t}\n\n\t// ==========================================================================\n\t// SOUND PRIMITIVES\n\t// ==========================================================================\n\n\t/** Play a puff (breath/air) sound */\n\tprivate playPuff(startTime: number, params: PuffParams, masterVolume: number): void {\n\t\tconst ctx = this.getContext()\n\t\tconst bufferSize = Math.floor(ctx.sampleRate * params.duration)\n\t\tconst buffer = ctx.createBuffer(1, bufferSize, ctx.sampleRate)\n\t\tconst data = buffer.getChannelData(0)\n\n\t\tfor (let i = 0; i < bufferSize; i++) {\n\t\t\tdata[i] = Math.random() * 2 - 1\n\t\t}\n\n\t\tconst noise = ctx.createBufferSource()\n\t\tnoise.buffer = buffer\n\n\t\tconst filter = ctx.createBiquadFilter()\n\t\tfilter.type = 'bandpass'\n\t\tfilter.frequency.value = params.frequency\n\t\tfilter.Q.value = 0.7\n\n\t\tconst gain = ctx.createGain()\n\t\tgain.gain.setValueAtTime(0, startTime)\n\t\tgain.gain.linearRampToValueAtTime(params.volume * masterVolume, startTime + 0.015)\n\t\tgain.gain.exponentialRampToValueAtTime(0.001, startTime + params.duration)\n\n\t\tnoise.connect(filter).connect(gain).connect(ctx.destination)\n\t\tnoise.start(startTime)\n\t\tnoise.stop(startTime + params.duration)\n\t}\n\n\t/** Play a tone (musical) sound */\n\tprivate playTone(startTime: number, params: ToneParams, masterVolume: number): void {\n\t\tconst ctx = this.getContext()\n\t\tconst osc = ctx.createOscillator()\n\t\tconst gain = ctx.createGain()\n\n\t\tosc.type = params.type\n\t\tosc.frequency.setValueAtTime(params.frequency, startTime)\n\n\t\tif (params.frequencyEnd) {\n\t\t\tosc.frequency.exponentialRampToValueAtTime(params.frequencyEnd, startTime + params.duration * 0.8)\n\t\t}\n\n\t\t// Apply filter if specified\n\t\tlet lastNode: AudioNode = osc\n\t\tif (params.filterFrequency) {\n\t\t\tconst filter = ctx.createBiquadFilter()\n\t\t\tfilter.type = 'lowpass'\n\t\t\tfilter.frequency.value = params.filterFrequency\n\t\t\tosc.connect(filter)\n\t\t\tlastNode = filter\n\t\t}\n\n\t\tgain.gain.setValueAtTime(0, startTime)\n\t\tgain.gain.linearRampToValueAtTime(params.volume * masterVolume, startTime + 0.02)\n\t\tgain.gain.exponentialRampToValueAtTime(0.001, startTime + params.duration)\n\n\t\tlastNode.connect(gain).connect(ctx.destination)\n\t\tosc.start(startTime)\n\t\tosc.stop(startTime + params.duration)\n\t}\n\n\t// ==========================================================================\n\t// PUBLIC API - THEME MANAGEMENT\n\t// ==========================================================================\n\n\t/**\n\t * Set a custom sound theme (e.g., from AI generation)\n\t * @param theme The sound theme to apply\n\t */\n\tpublic setTheme(theme: SoundTheme): void {\n\t\tSoundContext.set({ theme })\n\t}\n\n\t/**\n\t * Reset to default sounds (removes custom theme)\n\t */\n\tpublic resetTheme(): void {\n\t\tSoundContext.set({ theme: null })\n\t}\n\n\t/**\n\t * Set volume level (0.0 - 1.0)\n\t * @param volume Volume level\n\t */\n\tpublic setVolume(volume: number): void {\n\t\tSoundContext.set({ volume: Math.max(0, Math.min(1, volume)) })\n\t}\n\n\t/**\n\t * Mute all sounds\n\t */\n\tpublic mute(): void {\n\t\tSoundContext.set({ muted: true })\n\t}\n\n\t/**\n\t * Unmute sounds\n\t */\n\tpublic unmute(): void {\n\t\tSoundContext.set({ muted: false })\n\t}\n\n\t/**\n\t * Toggle mute state\n\t */\n\tpublic toggleMute(): void {\n\t\tSoundContext.set({ muted: !this.muted })\n\t}\n\n\t// ==========================================================================\n\t// PUBLIC API - SOUND PLAYBACK\n\t// ==========================================================================\n\n\t/**\n\t * Get the sound definition for a feeling\n\t * Uses custom theme if available, falls back to defaults\n\t */\n\tpublic getSoundForFeeling(feeling: Feeling): FeelingSound {\n\t\tconst customTheme = this.theme\n\n\t\t// Try custom theme first\n\t\tif (customTheme?.feelings?.[feeling]) {\n\t\t\treturn customTheme.feelings[feeling]!\n\t\t}\n\n\t\t// Try category default from custom theme\n\t\tif (customTheme?.categoryDefaults) {\n\t\t\tconst category = this.getCategoryForFeeling(feeling)\n\t\t\tif (customTheme.categoryDefaults[category]) {\n\t\t\t\treturn customTheme.categoryDefaults[category]!\n\t\t\t}\n\t\t}\n\n\t\t// Fall back to defaults\n\t\treturn DEFAULT_SOUNDS[feeling]\n\t}\n\n\t/**\n\t * Get the category for a feeling\n\t */\n\tprivate getCategoryForFeeling(feeling: Feeling): FeelingCategory {\n\t\tconst happyFeelings: Feeling[] = [\n\t\t\t'joyful',\n\t\t\t'content',\n\t\t\t'excited',\n\t\t\t'proud',\n\t\t\t'hopeful',\n\t\t\t'relieved',\n\t\t\t'grateful',\n\t\t\t'peaceful',\n\t\t\t'playful',\n\t\t\t'amused',\n\t\t\t'curious',\n\t\t\t'inspired',\n\t\t\t'confident',\n\t\t\t'loved',\n\t\t\t'comforted',\n\t\t\t'energized',\n\t\t\t'celebrated',\n\t\t]\n\t\tconst sadFeelings: Feeling[] = [\n\t\t\t'sad',\n\t\t\t'lonely',\n\t\t\t'disappointed',\n\t\t\t'heartbroken',\n\t\t\t'grieving',\n\t\t\t'hopeless',\n\t\t\t'empty',\n\t\t\t'discouraged',\n\t\t\t'melancholic',\n\t\t\t'homesick',\n\t\t\t'hurt',\n\t\t\t'miserable',\n\t\t\t'regretful',\n\t\t\t'ashamed',\n\t\t\t'inferior',\n\t\t]\n\t\tconst anxiousFeelings: Feeling[] = [\n\t\t\t'anxious',\n\t\t\t'worried',\n\t\t\t'afraid',\n\t\t\t'terrified',\n\t\t\t'panicked',\n\t\t\t'nervous',\n\t\t\t'uneasy',\n\t\t\t'insecure',\n\t\t\t'overwhelmed',\n\t\t\t'stressed',\n\t\t\t'tense',\n\t\t\t'apprehensive',\n\t\t\t'startled',\n\t\t\t'suspicious',\n\t\t\t'vulnerable',\n\t\t]\n\t\tconst angryFeelings: Feeling[] = [\n\t\t\t'annoyed',\n\t\t\t'irritated',\n\t\t\t'frustrated',\n\t\t\t'angry',\n\t\t\t'enraged',\n\t\t\t'bitter',\n\t\t\t'resentful',\n\t\t\t'jealous',\n\t\t\t'envious',\n\t\t\t'indignant',\n\t\t\t'impatient',\n\t\t\t'hostile',\n\t\t\t'contemptuous',\n\t\t]\n\t\tconst tiredFeelings: Feeling[] = ['tired', 'exhausted', 'drained', 'burnedOut', 'numb', 'bored', 'unmotivated', 'apathetic', 'restless']\n\t\tconst calmFeelings: Feeling[] = ['calm', 'relaxed', 'atEase', 'balanced', 'stable', 'secure', 'safe', 'centered', 'grounded', 'accepting']\n\t\tconst connectedFeelings: Feeling[] = [\n\t\t\t'connected',\n\t\t\t'accepted',\n\t\t\t'included',\n\t\t\t'belonging',\n\t\t\t'appreciated',\n\t\t\t'valued',\n\t\t\t'respected',\n\t\t\t'supported',\n\t\t\t'protective',\n\t\t\t'compassionate',\n\t\t\t'empathetic',\n\t\t]\n\n\t\tif (happyFeelings.includes(feeling)) return 'happy'\n\t\tif (sadFeelings.includes(feeling)) return 'sad'\n\t\tif (anxiousFeelings.includes(feeling)) return 'anxious'\n\t\tif (angryFeelings.includes(feeling)) return 'angry'\n\t\tif (tiredFeelings.includes(feeling)) return 'tired'\n\t\tif (calmFeelings.includes(feeling)) return 'calm'\n\t\tif (connectedFeelings.includes(feeling)) return 'connected'\n\t\treturn 'mixed'\n\t}\n\n\t/**\n\t * Play a feeling sound\n\t * @param feeling The feeling to play\n\t */\n\tpublic play(feeling: Feeling): void {\n\t\tif (this.muted) return\n\n\t\tconst sound = this.getSoundForFeeling(feeling)\n\t\tconst ctx = this.getContext()\n\t\tconst now = ctx.currentTime\n\n\t\t// Calculate master volume (theme + user setting)\n\t\tconst themeMasterVolume = this.theme?.masterVolume ?? 1\n\t\tconst masterVolume = this.volume * themeMasterVolume\n\n\t\t// Play puffs\n\t\tsound.puffs.forEach(puff => {\n\t\t\tthis.playPuff(now + puff.startTime, puff, masterVolume)\n\t\t})\n\n\t\t// Play tones\n\t\tsound.tones.forEach(tone => {\n\t\t\tthis.playTone(now + tone.startTime, tone, masterVolume)\n\t\t})\n\t}\n\n\t/**\n\t * Dispose audio context\n\t */\n\tpublic dispose(): void {\n\t\tif (this.audioContext) {\n\t\t\tthis.audioContext.close()\n\t\t\tthis.audioContext = null\n\t\t}\n\t}\n\n\t/**\n\t * Get singleton instance\n\t */\n\tstatic getInstance(): SoundService {\n\t\tif (!SoundService.instance) {\n\t\t\tSoundService.instance = new SoundService()\n\t\t}\n\t\treturn SoundService.instance\n\t}\n}\n\n// ============================================================================\n// EXPORTS\n// ============================================================================\n\n/** Global sound service singleton */\nexport const sound = SoundService.getInstance()\nexport const schmancySound = sound // Alias for consistency with theme\n\nexport default sound\n"],"names":["SoundContext","createContext","theme","volume","muted","DEFAULT_SOUNDS","joyful","puffs","startTime","duration","frequency","tones","type","content","filterFrequency","excited","proud","hopeful","frequencyEnd","relieved","grateful","peaceful","playful","amused","curious","inspired","confident","loved","comforted","energized","celebrated","sad","lonely","disappointed","heartbroken","grieving","hopeless","empty","discouraged","melancholic","homesick","hurt","miserable","regretful","ashamed","inferior","anxious","description","worried","afraid","terrified","panicked","nervous","uneasy","insecure","overwhelmed","stressed","tense","apprehensive","startled","suspicious","vulnerable","annoyed","irritated","frustrated","angry","enraged","bitter","resentful","jealous","envious","indignant","impatient","hostile","contemptuous","tired","exhausted","drained","burnedOut","numb","bored","unmotivated","apathetic","restless","calm","relaxed","atEase","balanced","stable","secure","safe","centered","grounded","accepting","connected","accepted","included","belonging","appreciated","valued","respected","supported","protective","compassionate","empathetic","conflicted","confused","ambivalent","nostalgic","guilty","embarrassed","surprised","shocked","awestruck","skeptical","SoundService","constructor","this","audioContext","theme$","$","pipe","map","settings","shareReplay","volume$","distinctUntilChanged","muted$","_themeName$","BehaviorSubject","themeName$","asObservable","subscribe","next","name","value","themeName","getContext","AudioContextClass","window","AudioContext","webkitAudioContext","state","resume","params","masterVolume","ctx","bufferSize","Math","floor","sampleRate","buffer","createBuffer","data","getChannelData","i","random","noise","createBufferSource","filter","createBiquadFilter","Q","gain","createGain","setValueAtTime","linearRampToValueAtTime","exponentialRampToValueAtTime","connect","destination","start","stop","osc","createOscillator","lastNode","set","resetTheme","max","min","mute","unmute","toggleMute","feeling","customTheme","feelings","categoryDefaults","category","getCategoryForFeeling","includes","sound","getSoundForFeeling","now","currentTime","themeMasterVolume","forEach","puff","playPuff","tone","playTone","dispose","close","getInstance","instance","schmancySound"],"mappings":"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"}
@@ -3,7 +3,7 @@ import "rxjs/operators";
3
3
  import "lit/directives/class-map.js";
4
4
  import "lit/directives/style-map.js";
5
5
  import { customElement as y, property as l } from "lit/decorators.js";
6
- import { T as d } from "./tailwind.mixin-DIW0B_of.js";
6
+ import { T as d } from "./tailwind.mixin-Ddt05Frc.js";
7
7
  import { css as u, html as h } from "lit";
8
8
  var v = Object.getOwnPropertyDescriptor;
9
9
  let p = class extends d(u`
@@ -34,13 +34,13 @@ let p = class extends d(u`
34
34
  `;
35
35
  }
36
36
  };
37
- p = ((e, o, c, s) => {
38
- for (var a, r = s > 1 ? void 0 : s ? v(o, c) : o, t = e.length - 1; t >= 0; t--) (a = e[t]) && (r = a(r) || r);
37
+ p = ((s, o, t, e) => {
38
+ for (var c, r = e > 1 ? void 0 : e ? v(o, t) : o, a = s.length - 1; a >= 0; a--) (c = s[a]) && (r = c(r) || r);
39
39
  return r;
40
40
  })([y("schmancy-busy")], p);
41
- var m = Object.defineProperty, f = Object.getOwnPropertyDescriptor, i = (e, o, c, s) => {
42
- for (var a, r = s > 1 ? void 0 : s ? f(o, c) : o, t = e.length - 1; t >= 0; t--) (a = e[t]) && (r = (s ? a(o, c, r) : a(r)) || r);
43
- return s && r && m(o, c, r), r;
41
+ var m = Object.defineProperty, f = Object.getOwnPropertyDescriptor, i = (s, o, t, e) => {
42
+ for (var c, r = e > 1 ? void 0 : e ? f(o, t) : o, a = s.length - 1; a >= 0; a--) (c = s[a]) && (r = (e ? c(o, t, r) : c(r)) || r);
43
+ return e && r && m(o, t, r), r;
44
44
  };
45
45
  let n = class extends d(u`
46
46
  :host {
@@ -120,12 +120,15 @@ let n = class extends d(u`
120
120
  }
121
121
  `) {
122
122
  constructor() {
123
- super(...arguments), this.size = 6, this.glass = !1;
123
+ super(...arguments), this.size = "md", this.glass = !1;
124
124
  }
125
125
  render() {
126
- const e = 0.25 * (typeof this.size != "number" || isNaN(this.size) ? 6 : this.size) + "rem", o = { width: e, height: e };
126
+ const s = { xxs: 12, xs: 16, sm: 20, md: 24, lg: 32 };
127
+ let o;
128
+ o = typeof this.size == "string" && this.size in s ? s[this.size] : typeof this.size != "number" || isNaN(this.size) ? 24 : 4 * this.size;
129
+ const t = { width: `${o}px`, height: `${o}px` };
127
130
  return this.glass ? h`
128
- <div class="spinner relative" style=${this.styleMap(o)}>
131
+ <div class="spinner relative" style=${this.styleMap(t)}>
129
132
  <!-- Glass container with Apple-style effect -->
130
133
  <div class="absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150
131
134
  bg-surface-container/20
@@ -146,7 +149,7 @@ let n = class extends d(u`
146
149
  </svg>
147
150
  </div>
148
151
  ` : h`
149
- <div class="spinner" style=${this.styleMap(o)}>
152
+ <div class="spinner" style=${this.styleMap(t)}>
150
153
  <svg fill="none" viewBox="0 0 16 16" aria-hidden="true" role="img" style="width: 100%; height: 100%;">
151
154
  <path
152
155
  opacity=".5"
@@ -161,5 +164,5 @@ let n = class extends d(u`
161
164
  `;
162
165
  }
163
166
  };
164
- i([l({ type: String, reflect: !0 })], n.prototype, "color", 2), i([l({ type: Number })], n.prototype, "size", 2), i([l({ type: Boolean })], n.prototype, "glass", 2), n = i([y("schmancy-spinner")], n);
165
- //# sourceMappingURL=spinner-Brq1TenP.js.map
167
+ i([l({ type: String, reflect: !0 })], n.prototype, "color", 2), i([l()], n.prototype, "size", 2), i([l({ type: Boolean })], n.prototype, "glass", 2), n = i([y("schmancy-spinner")], n);
168
+ //# sourceMappingURL=spinner-CKm13CKN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner-CKm13CKN.js","sources":["../src/busy/busy.ts","../src/busy/spinner.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-busy')\nexport default class SchmancyBusy extends TailwindElement(css`\n\t:host {\n\t\tdisplay: inline;\n\t\tposition: absolute;\n\t\tinset: 0;\n\t\tpointer-events: all;\n\t\tz-index: 50;\n\t}\n`) {\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<!-- Clean overlay with subtle backdrop -->\n\t\t\t<div class=\"absolute inset-0 flex items-center justify-center bg-surface-container/10 backdrop-blur-xs rounded-[inherit]\">\n\t\t\t\t<!-- Content container with clean surface -->\n\t\t\t\t<div class=\"relative flex items-center justify-center p-4\">\n\t\t\t\t\t\n\t\t\t\t\t<!-- Content slot -->\n\t\t\t\t\t<div class=\"relative z-10\">\n\t\t\t\t\t\t<slot>\n\t\t\t\t\t\t\t<!-- Default spinner if no content provided -->\n\t\t\t\t\t\t\t<schmancy-spinner ></schmancy-spinner>\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-busy': SchmancyBusy\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-spinner')\nexport default class SchmnacySpinner extends TailwindElement(css`\n\t:host {\n\t\tdisplay: inline-block;\n\t\tcolor: inherit; /* Inherit from parent by default */\n\t}\n\n\t/* Explicit color options when needed */\n\t:host([color=\"primary\"]) {\n\t\tcolor: var(--schmancy-sys-color-primary-default);\n\t}\n\n\t:host([color=\"on-primary\"]) {\n\t\tcolor: var(--schmancy-sys-color-primary-on);\n\t}\n\n\t:host([color=\"secondary\"]) {\n\t\tcolor: var(--schmancy-sys-color-secondary-default);\n\t}\n\n\t:host([color=\"on-secondary\"]) {\n\t\tcolor: var(--schmancy-sys-color-secondary-on);\n\t}\n\n\t:host([color=\"tertiary\"]) {\n\t\tcolor: var(--schmancy-sys-color-tertiary-default);\n\t}\n\n\t:host([color=\"on-tertiary\"]) {\n\t\tcolor: var(--schmancy-sys-color-tertiary-on);\n\t}\n\n\t:host([color=\"error\"]) {\n\t\tcolor: var(--schmancy-sys-color-error-default);\n\t}\n\n\t:host([color=\"on-error\"]) {\n\t\tcolor: var(--schmancy-sys-color-error-on);\n\t}\n\n\t:host([color=\"success\"]) {\n\t\tcolor: var(--schmancy-sys-color-success-default);\n\t}\n\n\t:host([color=\"on-success\"]) {\n\t\tcolor: var(--schmancy-sys-color-success-on);\n\t}\n\n\t:host([color=\"surface\"]) {\n\t\tcolor: var(--schmancy-sys-color-surface-default);\n\t}\n\n\t:host([color=\"on-surface\"]) {\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\n\t:host([color=\"surface-variant\"]) {\n\t\tcolor: var(--schmancy-sys-color-surface-variant-default);\n\t}\n\n\t:host([color=\"on-surface-variant\"]) {\n\t\tcolor: var(--schmancy-sys-color-surface-onVariant);\n\t}\n\n\t.spinner {\n\t\tanimation: spin 1s linear infinite;\n\t\tanimation-direction: reverse;\n\t}\n\n\t@keyframes spin {\n\t\tfrom {\n\t\t\ttransform: rotate(0deg);\n\t\t}\n\t\tto {\n\t\t\ttransform: rotate(360deg);\n\t\t}\n\t}\n`) {\n\t@property({ type: String, reflect: true })\n\tcolor?: 'primary' | 'on-primary' | 'secondary' | 'on-secondary' |\n\t 'tertiary' | 'on-tertiary' | 'error' | 'on-error' |\n\t 'success' | 'on-success' | 'surface' | 'on-surface' |\n\t 'surface-variant' | 'on-surface-variant'\n\n\t/**\n\t * Size of the spinner - M3 aligned tokens or numeric Tailwind units\n\t * Tokens: 'xxs' (12px), 'xs' (16px), 'sm' (20px), 'md' (24px), 'lg' (32px)\n\t * Numeric: Tailwind units where each unit = 4px (e.g., 6 = 24px)\n\t */\n\t@property() size: 'xxs' | 'xs' | 'sm' | 'md' | 'lg' | number = 'md'\n\t@property({ type: Boolean }) glass: boolean = false\n\n\tprotected render(): unknown {\n\t\t// M3 aligned token sizes (fit inside buttons of same token)\n\t\tconst tokenSizes: Record<string, number> = {\n\t\t\txxs: 12, // fits in 24px button (ultra-compact)\n\t\t\txs: 16, // fits in 32px button\n\t\t\tsm: 20, // fits in 40px button\n\t\t\tmd: 24, // fits in 48px button (default)\n\t\t\tlg: 32, // fits in 56px button\n\t\t}\n\n\t\t// Support both token and numeric sizes for backward compatibility\n\t\tlet sizeInPx: number\n\t\tif (typeof this.size === 'string' && this.size in tokenSizes) {\n\t\t\tsizeInPx = tokenSizes[this.size]\n\t\t} else if (typeof this.size === 'number' && !isNaN(this.size)) {\n\t\t\t// Legacy numeric: Tailwind units (each unit = 4px)\n\t\t\tsizeInPx = this.size * 4\n\t\t} else {\n\t\t\tsizeInPx = 24 // fallback to md\n\t\t}\n\n\t\tconst style = {\n\t\t\twidth: `${sizeInPx}px`,\n\t\t\theight: `${sizeInPx}px`,\n\t\t}\n\t\t\n\t\treturn this.glass ? html`\n\t\t\t<div class=\"spinner relative\" style=${this.styleMap(style)}>\n\t\t\t\t<!-- Glass container with Apple-style effect -->\n\t\t\t\t<div class=\"absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150\n\t\t\t\t\t\t\tbg-surface-container/20\n\t\t\t\t\t\t\tshadow-[inset_0_1px_1px_0_rgba(255,255,255,0.2)]\n\t\t\t\t\t\t\tborder border-outline-variant/30\"></div>\n\t\t\t\t\n\t\t\t\t<!-- Spinner SVG -->\n\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" \n\t\t\t\t\t style=\"width: 100%; height: 100%;\" class=\"relative z-10\">\n\t\t\t\t\t<path\n\t\t\t\t\t\topacity=\".7\"\n\t\t\t\t\t\td=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\"\n\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"currentColor\" opacity=\"0.8\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t` : html`\n\t\t\t<div class=\"spinner\" style=${this.styleMap(style)}>\n\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" style=\"width: 100%; height: 100%;\">\n\t\t\t\t\t<path\n\t\t\t\t\t\topacity=\".5\"\n\t\t\t\t\t\td=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\"\n\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"currentColor\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-spinner': SchmnacySpinner\n\t}\n}\n"],"names":["SchmancyBusy","TailwindElement","css","render","html","customElement","SchmnacySpinner","constructor","super","arguments","this","size","glass","tokenSizes","xxs","xs","sm","md","lg","sizeInPx","isNaN","style","width","height","styleMap","__decorateClass","property","type","String","reflect","prototype","Boolean"],"mappings":";;;;;;;;AAKA,IAAqBA,IAArB,cAA0CC,EAAgBC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;EAS/C,SAAAC;AACT,WAAOC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAgBR;AAAA;AA1BoBJ;;;GAArB,CADCK,EAAc,mBACML,CAAAA;;;;;ACArB,IAAqBM,IAArB,cAA6CL,EAAgBC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;EAA7D,cAAAK;AAAAC,UAAAA,GAAAC,SAAAA,GAwFaC,KAAAC,OAAmD,MAClCD,KAAAE,QAAAA;AAAAA,EAAiB;AAAA,EAEpC,SAAAT;AAET,UAAMU,IAAqC,EAC1CC,KAAK,IACLC,IAAI,IACJC,IAAI,IACJC,IAAI,IACJC,IAAI,GAAA;AAIL,QAAIC;AAEHA,QADwB,OAAdT,KAAKC,QAAS,YAAYD,KAAKC,QAAQE,IACtCA,EAAWH,KAAKC,IAAAA,IACI,OAAdD,KAAKC,QAAS,YAAaS,MAAMV,KAAKC,IAAAA,IAI5C,KAFY,IAAZD,KAAKC;AAKjB,UAAMU,IAAQ,EACbC,OAAO,GAAGH,CAAAA,MACVI,QAAQ,GAAGJ,CAAAA,KAAAA;AAGZ,WAAOT,KAAKE,QAAQR;AAAAA,yCACmBM,KAAKc,SAASH,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,MAoBjDjB;AAAAA,gCAC0BM,KAAKc,SAASH,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAa7C;AAAA;AA1EAI,EAAA,CADCC,EAAS,EAAEC,MAAMC,QAAQC,SAAAA,GAAS,CAAA,CAAA,GA7EfvB,EA8EpBwB,WAAA,SAAA,CAAA,GAUYL,EAAA,CAAXC,EAAAA,CAAAA,GAxFmBpB,EAwFRwB,WAAA,QAAA,CAAA,GACiBL,EAAA,CAA5BC,EAAS,EAAEC,MAAMI,QAAAA,CAAAA,CAAAA,GAzFEzB,EAyFSwB,WAAA,SAAA,CAAA,GAzFTxB,IAArBmB,EAAA,CADCpB,EAAc,kBAAA,CAAA,GACMC,CAAAA;"}
@@ -1,4 +1,4 @@
1
- "use strict";require("rxjs"),require("rxjs/operators"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const l=require("lit/decorators.js"),d=require("./tailwind.mixin-3TPVvhYf.cjs"),i=require("lit");var p=Object.getOwnPropertyDescriptor;let y=class extends d.TailwindElement(i.css`
1
+ "use strict";require("rxjs"),require("rxjs/operators"),require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const i=require("lit/decorators.js"),d=require("./tailwind.mixin-UijsBrYW.cjs"),l=require("lit");var p=Object.getOwnPropertyDescriptor;let y=class extends d.TailwindElement(l.css`
2
2
  :host {
3
3
  display: inline;
4
4
  position: absolute;
@@ -6,7 +6,7 @@
6
6
  pointer-events: all;
7
7
  z-index: 50;
8
8
  }
9
- `){render(){return i.html`
9
+ `){render(){return l.html`
10
10
  <!-- Clean overlay with subtle backdrop -->
11
11
  <div class="absolute inset-0 flex items-center justify-center bg-surface-container/10 backdrop-blur-xs rounded-[inherit]">
12
12
  <!-- Content container with clean surface -->
@@ -21,7 +21,7 @@
21
21
  </div>
22
22
  </div>
23
23
  </div>
24
- `}};y=((o,e,c,t)=>{for(var a,r=t>1?void 0:t?p(e,c):e,s=o.length-1;s>=0;s--)(a=o[s])&&(r=a(r)||r);return r})([l.customElement("schmancy-busy")],y);var u=Object.defineProperty,v=Object.getOwnPropertyDescriptor,h=(o,e,c,t)=>{for(var a,r=t>1?void 0:t?v(e,c):e,s=o.length-1;s>=0;s--)(a=o[s])&&(r=(t?a(e,c,r):a(r))||r);return t&&r&&u(e,c,r),r};let n=class extends d.TailwindElement(i.css`
24
+ `}};y=((o,e,s,t)=>{for(var c,r=t>1?void 0:t?p(e,s):e,a=o.length-1;a>=0;a--)(c=o[a])&&(r=c(r)||r);return r})([i.customElement("schmancy-busy")],y);var u=Object.defineProperty,v=Object.getOwnPropertyDescriptor,h=(o,e,s,t)=>{for(var c,r=t>1?void 0:t?v(e,s):e,a=o.length-1;a>=0;a--)(c=o[a])&&(r=(t?c(e,s,r):c(r))||r);return t&&r&&u(e,s,r),r};let n=class extends d.TailwindElement(l.css`
25
25
  :host {
26
26
  display: inline-block;
27
27
  color: inherit; /* Inherit from parent by default */
@@ -97,8 +97,8 @@
97
97
  transform: rotate(360deg);
98
98
  }
99
99
  }
100
- `){constructor(){super(...arguments),this.size=6,this.glass=!1}render(){const o=.25*(typeof this.size!="number"||isNaN(this.size)?6:this.size)+"rem",e={width:o,height:o};return this.glass?i.html`
101
- <div class="spinner relative" style=${this.styleMap(e)}>
100
+ `){constructor(){super(...arguments),this.size="md",this.glass=!1}render(){const o={xxs:12,xs:16,sm:20,md:24,lg:32};let e;e=typeof this.size=="string"&&this.size in o?o[this.size]:typeof this.size!="number"||isNaN(this.size)?24:4*this.size;const s={width:`${e}px`,height:`${e}px`};return this.glass?l.html`
101
+ <div class="spinner relative" style=${this.styleMap(s)}>
102
102
  <!-- Glass container with Apple-style effect -->
103
103
  <div class="absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150
104
104
  bg-surface-container/20
@@ -118,8 +118,8 @@
118
118
  <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="currentColor" opacity="0.8"></path>
119
119
  </svg>
120
120
  </div>
121
- `:i.html`
122
- <div class="spinner" style=${this.styleMap(e)}>
121
+ `:l.html`
122
+ <div class="spinner" style=${this.styleMap(s)}>
123
123
  <svg fill="none" viewBox="0 0 16 16" aria-hidden="true" role="img" style="width: 100%; height: 100%;">
124
124
  <path
125
125
  opacity=".5"
@@ -131,5 +131,5 @@
131
131
  <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="currentColor"></path>
132
132
  </svg>
133
133
  </div>
134
- `}};h([l.property({type:String,reflect:!0})],n.prototype,"color",2),h([l.property({type:Number})],n.prototype,"size",2),h([l.property({type:Boolean})],n.prototype,"glass",2),n=h([l.customElement("schmancy-spinner")],n);
135
- //# sourceMappingURL=spinner-BKeA2bdB.cjs.map
134
+ `}};h([i.property({type:String,reflect:!0})],n.prototype,"color",2),h([i.property()],n.prototype,"size",2),h([i.property({type:Boolean})],n.prototype,"glass",2),n=h([i.customElement("schmancy-spinner")],n);
135
+ //# sourceMappingURL=spinner-DJgcI5wr.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spinner-DJgcI5wr.cjs","sources":["../src/busy/busy.ts","../src/busy/spinner.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-busy')\nexport default class SchmancyBusy extends TailwindElement(css`\n\t:host {\n\t\tdisplay: inline;\n\t\tposition: absolute;\n\t\tinset: 0;\n\t\tpointer-events: all;\n\t\tz-index: 50;\n\t}\n`) {\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<!-- Clean overlay with subtle backdrop -->\n\t\t\t<div class=\"absolute inset-0 flex items-center justify-center bg-surface-container/10 backdrop-blur-xs rounded-[inherit]\">\n\t\t\t\t<!-- Content container with clean surface -->\n\t\t\t\t<div class=\"relative flex items-center justify-center p-4\">\n\t\t\t\t\t\n\t\t\t\t\t<!-- Content slot -->\n\t\t\t\t\t<div class=\"relative z-10\">\n\t\t\t\t\t\t<slot>\n\t\t\t\t\t\t\t<!-- Default spinner if no content provided -->\n\t\t\t\t\t\t\t<schmancy-spinner ></schmancy-spinner>\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-busy': SchmancyBusy\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-spinner')\nexport default class SchmnacySpinner extends TailwindElement(css`\n\t:host {\n\t\tdisplay: inline-block;\n\t\tcolor: inherit; /* Inherit from parent by default */\n\t}\n\n\t/* Explicit color options when needed */\n\t:host([color=\"primary\"]) {\n\t\tcolor: var(--schmancy-sys-color-primary-default);\n\t}\n\n\t:host([color=\"on-primary\"]) {\n\t\tcolor: var(--schmancy-sys-color-primary-on);\n\t}\n\n\t:host([color=\"secondary\"]) {\n\t\tcolor: var(--schmancy-sys-color-secondary-default);\n\t}\n\n\t:host([color=\"on-secondary\"]) {\n\t\tcolor: var(--schmancy-sys-color-secondary-on);\n\t}\n\n\t:host([color=\"tertiary\"]) {\n\t\tcolor: var(--schmancy-sys-color-tertiary-default);\n\t}\n\n\t:host([color=\"on-tertiary\"]) {\n\t\tcolor: var(--schmancy-sys-color-tertiary-on);\n\t}\n\n\t:host([color=\"error\"]) {\n\t\tcolor: var(--schmancy-sys-color-error-default);\n\t}\n\n\t:host([color=\"on-error\"]) {\n\t\tcolor: var(--schmancy-sys-color-error-on);\n\t}\n\n\t:host([color=\"success\"]) {\n\t\tcolor: var(--schmancy-sys-color-success-default);\n\t}\n\n\t:host([color=\"on-success\"]) {\n\t\tcolor: var(--schmancy-sys-color-success-on);\n\t}\n\n\t:host([color=\"surface\"]) {\n\t\tcolor: var(--schmancy-sys-color-surface-default);\n\t}\n\n\t:host([color=\"on-surface\"]) {\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\n\t:host([color=\"surface-variant\"]) {\n\t\tcolor: var(--schmancy-sys-color-surface-variant-default);\n\t}\n\n\t:host([color=\"on-surface-variant\"]) {\n\t\tcolor: var(--schmancy-sys-color-surface-onVariant);\n\t}\n\n\t.spinner {\n\t\tanimation: spin 1s linear infinite;\n\t\tanimation-direction: reverse;\n\t}\n\n\t@keyframes spin {\n\t\tfrom {\n\t\t\ttransform: rotate(0deg);\n\t\t}\n\t\tto {\n\t\t\ttransform: rotate(360deg);\n\t\t}\n\t}\n`) {\n\t@property({ type: String, reflect: true })\n\tcolor?: 'primary' | 'on-primary' | 'secondary' | 'on-secondary' |\n\t 'tertiary' | 'on-tertiary' | 'error' | 'on-error' |\n\t 'success' | 'on-success' | 'surface' | 'on-surface' |\n\t 'surface-variant' | 'on-surface-variant'\n\n\t/**\n\t * Size of the spinner - M3 aligned tokens or numeric Tailwind units\n\t * Tokens: 'xxs' (12px), 'xs' (16px), 'sm' (20px), 'md' (24px), 'lg' (32px)\n\t * Numeric: Tailwind units where each unit = 4px (e.g., 6 = 24px)\n\t */\n\t@property() size: 'xxs' | 'xs' | 'sm' | 'md' | 'lg' | number = 'md'\n\t@property({ type: Boolean }) glass: boolean = false\n\n\tprotected render(): unknown {\n\t\t// M3 aligned token sizes (fit inside buttons of same token)\n\t\tconst tokenSizes: Record<string, number> = {\n\t\t\txxs: 12, // fits in 24px button (ultra-compact)\n\t\t\txs: 16, // fits in 32px button\n\t\t\tsm: 20, // fits in 40px button\n\t\t\tmd: 24, // fits in 48px button (default)\n\t\t\tlg: 32, // fits in 56px button\n\t\t}\n\n\t\t// Support both token and numeric sizes for backward compatibility\n\t\tlet sizeInPx: number\n\t\tif (typeof this.size === 'string' && this.size in tokenSizes) {\n\t\t\tsizeInPx = tokenSizes[this.size]\n\t\t} else if (typeof this.size === 'number' && !isNaN(this.size)) {\n\t\t\t// Legacy numeric: Tailwind units (each unit = 4px)\n\t\t\tsizeInPx = this.size * 4\n\t\t} else {\n\t\t\tsizeInPx = 24 // fallback to md\n\t\t}\n\n\t\tconst style = {\n\t\t\twidth: `${sizeInPx}px`,\n\t\t\theight: `${sizeInPx}px`,\n\t\t}\n\t\t\n\t\treturn this.glass ? html`\n\t\t\t<div class=\"spinner relative\" style=${this.styleMap(style)}>\n\t\t\t\t<!-- Glass container with Apple-style effect -->\n\t\t\t\t<div class=\"absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150\n\t\t\t\t\t\t\tbg-surface-container/20\n\t\t\t\t\t\t\tshadow-[inset_0_1px_1px_0_rgba(255,255,255,0.2)]\n\t\t\t\t\t\t\tborder border-outline-variant/30\"></div>\n\t\t\t\t\n\t\t\t\t<!-- Spinner SVG -->\n\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" \n\t\t\t\t\t style=\"width: 100%; height: 100%;\" class=\"relative z-10\">\n\t\t\t\t\t<path\n\t\t\t\t\t\topacity=\".7\"\n\t\t\t\t\t\td=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\"\n\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"currentColor\" opacity=\"0.8\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t` : html`\n\t\t\t<div class=\"spinner\" style=${this.styleMap(style)}>\n\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" style=\"width: 100%; height: 100%;\">\n\t\t\t\t\t<path\n\t\t\t\t\t\topacity=\".5\"\n\t\t\t\t\t\td=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\"\n\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"currentColor\"></path>\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-spinner': SchmnacySpinner\n\t}\n}\n"],"names":["SchmancyBusy","TailwindElement","css","render","html","customElement","SchmnacySpinner","constructor","super","arguments","this","size","glass","tokenSizes","xxs","xs","sm","md","lg","sizeInPx","isNaN","style","width","height","styleMap","__decorateClass","property","type","String","reflect","prototype","Boolean"],"mappings":"4QAKA,IAAqBA,EAArB,cAA0CC,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAS/C,QAAAC,CACT,OAAOC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAgBR,CAAA,EA1BoBJ,wGAArB,CADCK,EAAAA,cAAc,eAAA,CAAA,EACML,mMCArB,IAAqBM,EAArB,cAA6CL,EAAAA,gBAAgBC,EAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA7D,CAAA,CAAA,aAAAK,CAAAC,MAAAA,GAAAC,SAAAA,EAwFaC,KAAAC,KAAmD,KAClCD,KAAAE,MAAAA,EAAiB,CAEpC,QAAAT,CAET,MAAMU,EAAqC,CAC1CC,IAAK,GACLC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,EAAA,EAIL,IAAIC,EAEHA,EADwB,OAAdT,KAAKC,MAAS,UAAYD,KAAKC,QAAQE,EACtCA,EAAWH,KAAKC,IAAAA,EACI,OAAdD,KAAKC,MAAS,UAAaS,MAAMV,KAAKC,IAAAA,EAI5C,GAFY,EAAZD,KAAKC,KAKjB,MAAMU,EAAQ,CACbC,MAAO,GAAGH,CAAAA,KACVI,OAAQ,GAAGJ,CAAAA,IAAAA,EAGZ,OAAOT,KAAKE,MAAQR,EAAAA;AAAAA,yCACmBM,KAAKc,SAASH,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,IAoBjDjB,EAAAA;AAAAA,gCAC0BM,KAAKc,SAASH,CAAAA,CAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,GAa7C,CAAA,EA1EAI,EAAA,CADCC,EAAAA,SAAS,CAAEC,KAAMC,OAAQC,QAAAA,EAAS,CAAA,CAAA,EA7EfvB,EA8EpBwB,UAAA,QAAA,CAAA,EAUYL,EAAA,CAAXC,EAAAA,SAAAA,CAAAA,EAxFmBpB,EAwFRwB,UAAA,OAAA,GACiBL,EAAA,CAA5BC,WAAS,CAAEC,KAAMI,OAAAA,CAAAA,CAAAA,EAzFEzB,EAyFSwB,UAAA,QAAA,CAAA,EAzFTxB,EAArBmB,EAAA,CADCpB,EAAAA,cAAc,kBAAA,CAAA,EACMC,CAAAA"}
package/dist/steps.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./schmancy-steps-container-wQsksygx.cjs");Object.defineProperty(exports,"SchmancyStep",{enumerable:!0,get:()=>e.SchmancyStep}),Object.defineProperty(exports,"SchmancyStepsContainer",{enumerable:!0,get:()=>e.SchmancyStepsContainer}),exports.StepsController=e.StepsController,exports.stepsContext=e.stepsContext;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./schmancy-steps-container-B5aiqgMA.cjs");Object.defineProperty(exports,"SchmancyStep",{enumerable:!0,get:()=>e.SchmancyStep}),Object.defineProperty(exports,"SchmancyStepsContainer",{enumerable:!0,get:()=>e.SchmancyStepsContainer}),exports.StepsController=e.StepsController,exports.stepsContext=e.stepsContext;
2
2
  //# sourceMappingURL=steps.cjs.map
package/dist/steps.js CHANGED
@@ -1,4 +1,4 @@
1
- import { S as a, a as e, b as n, s as o } from "./schmancy-steps-container-BInNput3.js";
1
+ import { S as a, a as e, b as n, s as o } from "./schmancy-steps-container-C2StAA5K.js";
2
2
  export {
3
3
  a as SchmancyStep,
4
4
  e as SchmancyStepsContainer,
package/dist/store.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./context-create-BJkkLr1D.cjs"),e=require("./selector-hook-Cok22ifx.cjs");exports.BaseStore=r.BaseStore,exports.IndexedDBStorageManager=r.IndexedDBStorageManager,exports.LocalStorageManager=r.LocalStorageManager,exports.MemoryStorageManager=r.MemoryStorageManager,exports.SchmancyArrayStore=r.SchmancyArrayStore,exports.SchmancyStoreObject=r.SchmancyStoreObject,exports.SessionStorageManager=r.SessionStorageManager,exports.StoreError=r.StoreError,exports.createArrayContext=r.createArrayContext,exports.createContext=r.createContext,exports.createStorageManager=r.createStorageManager,exports.createTestArrayContext=r.createTestArrayContext,exports.compareValues=e.compareValues,exports.createCollectionSelector=e.createCollectionSelector,exports.createCompoundSelector=e.createCompoundSelector,exports.createCountSelector=e.createCountSelector,exports.createEntriesSelector=e.createEntriesSelector,exports.createFilterSelector=e.createFilterSelector,exports.createFindSelector=e.createFindSelector,exports.createItemSelector=e.createItemSelector,exports.createItemsSelector=e.createItemsSelector,exports.createKeysSelector=e.createKeysSelector,exports.createMapSelector=e.createMapSelector,exports.createOptimizedSelector=e.createOptimizedSelector,exports.createSelector=e.createSelector,exports.createSortSelector=e.createSortSelector,exports.filterArray=e.filterArray,exports.filterArrayItems=e.filterArrayItems,exports.filterMap=e.filterMap,exports.filterMapItems=e.filterMapItems,exports.getFieldValue=e.getFieldValue,exports.isArray=e.isArray,exports.isDate=e.isDate,exports.isIterable=e.isIterable,exports.isMap=e.isMap,exports.isNil=e.isNil,exports.isNumber=e.isNumber,exports.isPlainObject=e.isPlainObject,exports.isSet=e.isSet,exports.isString=e.isString,exports.select=e.select,exports.selectItem=e.selectItem;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./context-create-DTybDbZp.cjs"),e=require("./selector-hook-9w2auh2O.cjs");exports.BaseStore=r.BaseStore,exports.IndexedDBStorageManager=r.IndexedDBStorageManager,exports.LocalStorageManager=r.LocalStorageManager,exports.MemoryStorageManager=r.MemoryStorageManager,exports.SchmancyArrayStore=r.SchmancyArrayStore,exports.SchmancyStoreObject=r.SchmancyStoreObject,exports.SessionStorageManager=r.SessionStorageManager,exports.StoreError=r.StoreError,exports.createArrayContext=r.createArrayContext,exports.createContext=r.createContext,exports.createStorageManager=r.createStorageManager,exports.createTestArrayContext=r.createTestArrayContext,exports.compareValues=e.compareValues,exports.createCollectionSelector=e.createCollectionSelector,exports.createCompoundSelector=e.createCompoundSelector,exports.createCountSelector=e.createCountSelector,exports.createEntriesSelector=e.createEntriesSelector,exports.createFilterSelector=e.createFilterSelector,exports.createFindSelector=e.createFindSelector,exports.createItemSelector=e.createItemSelector,exports.createItemsSelector=e.createItemsSelector,exports.createKeysSelector=e.createKeysSelector,exports.createMapSelector=e.createMapSelector,exports.createOptimizedSelector=e.createOptimizedSelector,exports.createSelector=e.createSelector,exports.createSortSelector=e.createSortSelector,exports.filterArray=e.filterArray,exports.filterArrayItems=e.filterArrayItems,exports.filterMap=e.filterMap,exports.filterMapItems=e.filterMapItems,exports.getFieldValue=e.getFieldValue,exports.isArray=e.isArray,exports.isDate=e.isDate,exports.isIterable=e.isIterable,exports.isMap=e.isMap,exports.isNil=e.isNil,exports.isNumber=e.isNumber,exports.isPlainObject=e.isPlainObject,exports.isSet=e.isSet,exports.isString=e.isString,exports.select=e.select,exports.selectItem=e.selectItem;
2
2
  //# sourceMappingURL=store.cjs.map
package/dist/store.js CHANGED
@@ -1,5 +1,5 @@
1
- import { B as r, I as t, L as s, M as c, S as o, d as l, e as S, g as i, a as n, c as m, f as g, b as y } from "./context-create-BvxbWTgj.js";
2
- import { m as p, r as d, D as f, B as I, w as x, z as A, y as C, u as b, t as u, v as B, A as h, C as j, q as D, x as F, o as O, a as z, n as E, f as L, g as N, i as V, d as k, e as q, h as v, l as w, c as K, k as P, j as T, b as G, s as H, p as J } from "./selector-hook-l2fe2UO5.js";
1
+ import { B as r, I as t, L as s, M as c, S as o, d as l, e as S, g as i, a as n, c as m, f as g, b as y } from "./context-create-B_S-sD5B.js";
2
+ import { m as p, r as d, D as f, B as I, w as x, z as A, y as C, u as b, t as u, v as B, A as h, C as j, q as D, x as F, o as O, a as z, n as E, f as L, g as N, i as V, d as k, e as q, h as v, l as w, c as K, k as P, j as T, b as G, s as H, p as J } from "./selector-hook-CHV4kDMd.js";
3
3
  export {
4
4
  r as BaseStore,
5
5
  t as IndexedDBStorageManager,