smoothly 1.0.0-alpha.21 → 1.0.0-alpha.210

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/dist/cjs/{Listenable-63ea2d90.js → Data-ae713814.js} +523 -6
  2. package/dist/cjs/Data-ae713814.js.map +1 -0
  3. package/dist/cjs/Observers-6450f075.js +25 -0
  4. package/dist/cjs/Observers-6450f075.js.map +1 -0
  5. package/dist/cjs/TimeZone-016ac7b0.js +6181 -0
  6. package/dist/cjs/TimeZone-016ac7b0.js.map +1 -0
  7. package/dist/cjs/getLanguage-49a534df.js +6118 -0
  8. package/dist/cjs/getLanguage-49a534df.js.map +1 -0
  9. package/dist/cjs/{index-8adc5c1b.js → index-43af753b.js} +55 -2
  10. package/dist/cjs/index-43af753b.js.map +1 -0
  11. package/dist/cjs/index.cjs.js +22 -17
  12. package/dist/cjs/index.cjs.js.map +1 -1
  13. package/dist/cjs/loader.cjs.js +4 -3
  14. package/dist/cjs/loader.cjs.js.map +1 -1
  15. package/dist/cjs/{Notice-88ba4c70.js → redirect-2e5d4524.js} +11 -2
  16. package/dist/cjs/redirect-2e5d4524.js.map +1 -0
  17. package/dist/cjs/smoothly-accordion-item.cjs.entry.js +61 -0
  18. package/dist/cjs/smoothly-accordion-item.cjs.entry.js.map +1 -0
  19. package/dist/cjs/smoothly-accordion.cjs.entry.js +58 -0
  20. package/dist/cjs/smoothly-accordion.cjs.entry.js.map +1 -0
  21. package/dist/cjs/smoothly-address-display.cjs.entry.js +1 -1
  22. package/dist/cjs/smoothly-address.cjs.entry.js +1 -1
  23. package/dist/cjs/smoothly-addresses.cjs.entry.js +1 -1
  24. package/dist/cjs/smoothly-app_80.cjs.entry.js +10872 -0
  25. package/dist/cjs/smoothly-app_80.cjs.entry.js.map +1 -0
  26. package/dist/cjs/smoothly-checkbox.cjs.entry.js +102 -0
  27. package/dist/cjs/smoothly-checkbox.cjs.entry.js.map +1 -0
  28. package/dist/cjs/smoothly-color.cjs.entry.js +1 -1
  29. package/dist/cjs/smoothly-country.cjs.entry.js +56 -55
  30. package/dist/cjs/smoothly-country.cjs.entry.js.map +1 -1
  31. package/dist/cjs/smoothly-display-date-time.cjs.entry.js +26 -0
  32. package/dist/cjs/smoothly-display-date-time.cjs.entry.js.map +1 -0
  33. package/dist/cjs/smoothly-google-font.cjs.entry.js +1 -1
  34. package/dist/cjs/smoothly-reorder.cjs.entry.js +1 -1
  35. package/dist/cjs/smoothly-trigger-sink.cjs.entry.js +4 -4
  36. package/dist/cjs/smoothly-trigger-sink.cjs.entry.js.map +1 -1
  37. package/dist/cjs/smoothly-trigger-source.cjs.entry.js +6 -6
  38. package/dist/cjs/smoothly-trigger-source.cjs.entry.js.map +1 -1
  39. package/dist/cjs/smoothly.cjs.js +4 -3
  40. package/dist/cjs/smoothly.cjs.js.map +1 -1
  41. package/dist/collection/collection-manifest.json +37 -15
  42. package/dist/collection/components/Button.js +16 -2
  43. package/dist/collection/components/Button.js.map +1 -1
  44. package/dist/collection/components/accordion/index.js +32 -12
  45. package/dist/collection/components/accordion/index.js.map +1 -1
  46. package/dist/collection/components/accordion-item/index.js +18 -25
  47. package/dist/collection/components/accordion-item/index.js.map +1 -1
  48. package/dist/collection/components/app/index.js +99 -29
  49. package/dist/collection/components/app/index.js.map +1 -1
  50. package/dist/collection/components/app/room/index.js +134 -25
  51. package/dist/collection/components/app/room/index.js.map +1 -1
  52. package/dist/collection/components/app/room/style.css +39 -10
  53. package/dist/collection/components/app/style.css +104 -39
  54. package/dist/collection/components/app-demo/index.js +1 -1
  55. package/dist/collection/components/app-demo/index.js.map +1 -1
  56. package/dist/collection/components/backtotop/index.js +3 -3
  57. package/dist/collection/components/backtotop/index.js.map +1 -1
  58. package/dist/collection/components/burger/index.js +60 -14
  59. package/dist/collection/components/burger/index.js.map +1 -1
  60. package/dist/collection/components/burger/style.css +2 -2
  61. package/dist/collection/components/button/index.js +10 -23
  62. package/dist/collection/components/button/index.js.map +1 -1
  63. package/dist/collection/components/button/style.css +33 -35
  64. package/dist/collection/components/button-demo/index.js +4 -2
  65. package/dist/collection/components/button-demo/index.js.map +1 -1
  66. package/dist/collection/components/button-demo/style.css +1 -0
  67. package/dist/collection/components/calendar/generate.js +1 -1
  68. package/dist/collection/components/calendar/generate.js.map +1 -1
  69. package/dist/collection/components/calendar/index.js +16 -16
  70. package/dist/collection/components/calendar/index.js.map +1 -1
  71. package/dist/collection/components/checkbox/index.js +82 -29
  72. package/dist/collection/components/checkbox/index.js.map +1 -1
  73. package/dist/collection/components/checkbox/style.css +39 -42
  74. package/dist/collection/components/confirm/index.js +261 -0
  75. package/dist/collection/components/confirm/index.js.map +1 -0
  76. package/dist/collection/components/confirm/style.css +15 -0
  77. package/dist/collection/components/country/index.js +1 -1
  78. package/dist/collection/components/display/index.js +6 -3
  79. package/dist/collection/components/display/index.js.map +1 -1
  80. package/dist/collection/components/display-amount/index.js +1 -1
  81. package/dist/collection/components/display-demo/index.js +16 -1
  82. package/dist/collection/components/display-demo/index.js.map +1 -1
  83. package/dist/collection/components/filter/Filter.js +17 -0
  84. package/dist/collection/components/filter/Filter.js.map +1 -0
  85. package/dist/collection/components/filter/field/index.js +105 -0
  86. package/dist/collection/components/filter/field/index.js.map +1 -0
  87. package/dist/collection/components/filter/field/style.css +4 -0
  88. package/dist/collection/components/filter/index.js +55 -132
  89. package/dist/collection/components/filter/index.js.map +1 -1
  90. package/dist/collection/components/filter/input/index.js +64 -302
  91. package/dist/collection/components/filter/input/index.js.map +1 -1
  92. package/dist/collection/components/filter/picker/index.js +174 -0
  93. package/dist/collection/components/filter/picker/index.js.map +1 -0
  94. package/dist/collection/components/filter/picker/style.css +7 -0
  95. package/dist/collection/components/filter/style.css +56 -71
  96. package/dist/collection/components/filter/toggle/index.js +248 -0
  97. package/dist/collection/components/filter/toggle/index.js.map +1 -0
  98. package/dist/collection/components/filter/toggle/style.css +8 -0
  99. package/dist/collection/components/form/index.js +302 -35
  100. package/dist/collection/components/form/index.js.map +1 -1
  101. package/dist/collection/components/form/style.css +11 -17
  102. package/dist/collection/components/icon/index.js +29 -38
  103. package/dist/collection/components/icon/index.js.map +1 -1
  104. package/dist/collection/components/icon-demo/index.js +1 -1
  105. package/dist/collection/components/icon-demo/index.js.map +1 -1
  106. package/dist/collection/components/icon-demo/style.css +5 -6
  107. package/dist/collection/components/input/Clearable.js.map +1 -0
  108. package/dist/collection/components/input/Editable.js +18 -0
  109. package/dist/collection/components/input/Editable.js.map +1 -0
  110. package/dist/collection/components/input/Input.js +23 -0
  111. package/dist/collection/components/input/Input.js.map +1 -0
  112. package/dist/collection/components/input/Looks.js +8 -0
  113. package/dist/collection/components/input/Looks.js.map +1 -0
  114. package/dist/collection/components/input/Submittable.js +8 -0
  115. package/dist/collection/components/input/Submittable.js.map +1 -0
  116. package/dist/collection/components/input/checkbox/index.js +235 -0
  117. package/dist/collection/components/input/checkbox/index.js.map +1 -0
  118. package/dist/collection/components/input/checkbox/style.css +31 -0
  119. package/dist/collection/components/input/clear/index.js +242 -0
  120. package/dist/collection/components/input/clear/index.js.map +1 -0
  121. package/dist/collection/components/input/clear/style.css +256 -0
  122. package/dist/collection/components/input/color/index.js +226 -0
  123. package/dist/collection/components/input/color/index.js.map +1 -0
  124. package/dist/collection/components/input/color/style.css +15 -0
  125. package/dist/collection/components/{input-date-range → input/date}/index.js +153 -99
  126. package/dist/collection/components/input/date/index.js.map +1 -0
  127. package/dist/collection/components/input/date/range/index.js +443 -0
  128. package/dist/collection/components/input/date/range/index.js.map +1 -0
  129. package/dist/collection/components/input/date/range/style.css +94 -0
  130. package/dist/collection/components/input/date/style.css +83 -0
  131. package/dist/collection/components/input/demo/index.js +47 -0
  132. package/dist/collection/components/input/demo/index.js.map +1 -0
  133. package/dist/collection/components/input/demo/style.css +15 -0
  134. package/dist/collection/components/input/edit/index.js +231 -0
  135. package/dist/collection/components/input/edit/index.js.map +1 -0
  136. package/dist/collection/components/input/edit/style.css +239 -0
  137. package/dist/collection/components/input/file/index.js +305 -0
  138. package/dist/collection/components/input/file/index.js.map +1 -0
  139. package/dist/collection/components/input/file/style.css +107 -0
  140. package/dist/collection/components/input/index.js +329 -104
  141. package/dist/collection/components/input/index.js.map +1 -1
  142. package/dist/collection/components/{input-month → input/month}/index.js +8 -8
  143. package/dist/collection/components/input/month/index.js.map +1 -0
  144. package/dist/collection/components/input/radio/Selected.js +11 -0
  145. package/dist/collection/components/input/radio/Selected.js.map +1 -0
  146. package/dist/collection/components/input/radio/index.js +404 -0
  147. package/dist/collection/components/input/radio/index.js.map +1 -0
  148. package/dist/collection/components/input/radio/item/index.js +150 -0
  149. package/dist/collection/components/input/radio/item/index.js.map +1 -0
  150. package/dist/collection/components/input/radio/item/style.css +28 -0
  151. package/dist/collection/components/input/radio/style.css +66 -0
  152. package/dist/collection/components/input/range/index.js +305 -0
  153. package/dist/collection/components/input/range/index.js.map +1 -0
  154. package/dist/collection/components/input/range/style.css +154 -0
  155. package/dist/collection/components/input/reset/index.js +241 -0
  156. package/dist/collection/components/input/reset/index.js.map +1 -0
  157. package/dist/collection/components/input/reset/style.css +259 -0
  158. package/dist/collection/components/input/select/index.js +452 -0
  159. package/dist/collection/components/input/select/index.js.map +1 -0
  160. package/dist/collection/components/input/select/style.css +104 -0
  161. package/dist/collection/components/input/style.css +47 -10
  162. package/dist/collection/components/input/submit/index.js +232 -0
  163. package/dist/collection/components/input/submit/index.js.map +1 -0
  164. package/dist/collection/components/input/submit/style.css +236 -0
  165. package/dist/collection/components/item/index.js +5 -5
  166. package/dist/collection/components/item/index.js.map +1 -1
  167. package/dist/collection/components/label/index.js +81 -0
  168. package/dist/collection/components/label/index.js.map +1 -0
  169. package/dist/collection/components/label/style.css +15 -0
  170. package/dist/collection/components/lazy/index.js +73 -0
  171. package/dist/collection/components/lazy/index.js.map +1 -0
  172. package/dist/collection/components/{radio → load-more}/index.js +35 -46
  173. package/dist/collection/components/load-more/index.js.map +1 -0
  174. package/dist/collection/components/load-more/style.css +5 -0
  175. package/dist/collection/components/notification/index.js +45 -8
  176. package/dist/collection/components/notification/index.js.map +1 -1
  177. package/dist/collection/components/notification/style.css +25 -1
  178. package/dist/collection/components/notifier/style.css +1 -3
  179. package/dist/collection/components/picker/demo/index.js +91 -0
  180. package/dist/collection/components/picker/demo/index.js.map +1 -0
  181. package/dist/collection/components/picker/demo/style.css +30 -0
  182. package/dist/collection/components/picker/index.js +197 -396
  183. package/dist/collection/components/picker/index.js.map +1 -1
  184. package/dist/collection/components/picker/menu/index.js +429 -0
  185. package/dist/collection/components/picker/menu/index.js.map +1 -0
  186. package/dist/collection/components/picker/menu/style.css +44 -0
  187. package/dist/collection/components/picker/option/index.js +298 -0
  188. package/dist/collection/components/picker/option/index.js.map +1 -0
  189. package/dist/collection/components/picker/option/style.css +30 -0
  190. package/dist/collection/components/picker/slot-elements/index.js +109 -0
  191. package/dist/collection/components/picker/slot-elements/index.js.map +1 -0
  192. package/dist/collection/components/picker/slot-elements/style.css +3 -0
  193. package/dist/collection/components/picker/slotted-elements/index.js +84 -0
  194. package/dist/collection/components/picker/slotted-elements/index.js.map +1 -0
  195. package/dist/collection/components/picker/slotted-elements/style.css +3 -0
  196. package/dist/collection/components/picker/style.css +76 -136
  197. package/dist/collection/components/popup/index.js +5 -5
  198. package/dist/collection/components/popup/index.js.map +1 -1
  199. package/dist/collection/components/popup/style.css +4 -4
  200. package/dist/collection/components/select-demo/index.js +0 -87
  201. package/dist/collection/components/select-demo/index.js.map +1 -1
  202. package/dist/collection/components/spinner/style.css +1 -0
  203. package/dist/collection/components/submit/index.js +64 -5
  204. package/dist/collection/components/submit/index.js.map +1 -1
  205. package/dist/collection/components/submit/style.css +226 -0
  206. package/dist/collection/components/summary/index.js +46 -4
  207. package/dist/collection/components/summary/index.js.map +1 -1
  208. package/dist/collection/components/summary/style.css +25 -16
  209. package/dist/collection/components/svg/style.css +2 -2
  210. package/dist/collection/components/table/cell/index.js +1 -1
  211. package/dist/collection/components/table/cell/index.js.map +1 -1
  212. package/dist/collection/components/table/cell/style.css +18 -11
  213. package/dist/collection/components/table/demo/filtered/Root.js.map +1 -1
  214. package/dist/collection/components/table/demo/filtered/index.js +18 -18
  215. package/dist/collection/components/table/demo/filtered/index.js.map +1 -1
  216. package/dist/collection/components/table/demo/filtered/style.css +9 -0
  217. package/dist/collection/components/table/demo/index.js +2 -9
  218. package/dist/collection/components/table/demo/index.js.map +1 -1
  219. package/dist/collection/components/table/demo/style.css +7 -0
  220. package/dist/collection/components/table/demo/testing/data.js +28 -0
  221. package/dist/collection/components/table/demo/testing/data.js.map +1 -0
  222. package/dist/collection/components/table/demo/testing/index.js +28 -0
  223. package/dist/collection/components/table/demo/testing/index.js.map +1 -0
  224. package/dist/collection/components/table/demo/testing/style.css +32 -0
  225. package/dist/collection/components/table/expandable/cell/index.js +14 -33
  226. package/dist/collection/components/table/expandable/cell/index.js.map +1 -1
  227. package/dist/collection/components/table/expandable/cell/style.css +32 -25
  228. package/dist/collection/components/table/expandable/row/index.js +9 -51
  229. package/dist/collection/components/table/expandable/row/index.js.map +1 -1
  230. package/dist/collection/components/table/expandable/row/style.css +32 -29
  231. package/dist/collection/components/table/footer/index.js +19 -0
  232. package/dist/collection/components/table/footer/index.js.map +1 -0
  233. package/dist/collection/components/table/footer/style.css +10 -0
  234. package/dist/collection/components/table/header/style.css +2 -3
  235. package/dist/collection/components/table/index.js +55 -12
  236. package/dist/collection/components/table/index.js.map +1 -1
  237. package/dist/collection/components/table/row/index.js +37 -5
  238. package/dist/collection/components/table/row/index.js.map +1 -1
  239. package/dist/collection/components/table/row/style.css +4 -1
  240. package/dist/collection/components/table/style.css +0 -2
  241. package/dist/collection/components/theme/color/index.js +48 -0
  242. package/dist/collection/components/theme/color/index.js.map +1 -0
  243. package/dist/collection/components/theme/color/style.css +8 -0
  244. package/dist/collection/components/theme/color/variant/index.js +66 -0
  245. package/dist/collection/components/theme/color/variant/index.js.map +1 -0
  246. package/dist/collection/components/theme/color/variant/style.css +18 -0
  247. package/dist/collection/components/theme/colors/index.js +30 -0
  248. package/dist/collection/components/theme/colors/index.js.map +1 -0
  249. package/dist/collection/components/theme/colors/style.css +7 -0
  250. package/dist/collection/components/theme/picker/index.js +48 -0
  251. package/dist/collection/components/theme/picker/index.js.map +1 -0
  252. package/dist/collection/components/theme/picker/style.css +0 -0
  253. package/dist/collection/components/toggle-switch/index.js +69 -17
  254. package/dist/collection/components/toggle-switch/index.js.map +1 -1
  255. package/dist/collection/components/toggle-switch/style.css +19 -12
  256. package/dist/collection/components/trigger-source/index.js +3 -3
  257. package/dist/collection/components/trigger-source/index.js.map +1 -1
  258. package/dist/collection/global/Observers.js +22 -0
  259. package/dist/collection/global/Observers.js.map +1 -0
  260. package/dist/collection/global/index.js +5 -0
  261. package/dist/collection/global/index.js.map +1 -0
  262. package/dist/collection/index.js +2 -2
  263. package/dist/collection/index.js.map +1 -1
  264. package/dist/collection/model/Color.js +18 -1
  265. package/dist/collection/model/Color.js.map +1 -1
  266. package/dist/collection/{components/form → model}/Data.js +8 -1
  267. package/dist/collection/model/Data.js.map +1 -0
  268. package/dist/collection/model/Icon.js +23 -0
  269. package/dist/collection/model/Icon.js.map +1 -0
  270. package/dist/collection/model/Listenable.js +17 -4
  271. package/dist/collection/model/Listenable.js.map +1 -1
  272. package/dist/collection/model/Notice.js +1 -1
  273. package/dist/collection/model/Notice.js.map +1 -1
  274. package/dist/collection/model/Option.js.map +1 -1
  275. package/dist/collection/model/index.js +4 -0
  276. package/dist/collection/model/index.js.map +1 -1
  277. package/dist/collection/model/redirect.js +8 -0
  278. package/dist/collection/model/redirect.js.map +1 -0
  279. package/dist/collection/smoothly.js +3 -0
  280. package/dist/collection/smoothly.js.map +1 -0
  281. package/dist/custom-elements/index.d.ts +176 -50
  282. package/dist/custom-elements/index.js +13369 -29834
  283. package/dist/custom-elements/index.js.map +1 -1
  284. package/dist/esm/{Listenable-fb6f4723.js → Data-0390d600.js} +518 -7
  285. package/dist/esm/Data-0390d600.js.map +1 -0
  286. package/dist/esm/Observers-5f08e828.js +25 -0
  287. package/dist/esm/Observers-5f08e828.js.map +1 -0
  288. package/dist/esm/TimeZone-c8df4905.js +6181 -0
  289. package/dist/esm/TimeZone-c8df4905.js.map +1 -0
  290. package/dist/esm/getLanguage-1e9ec036.js +6116 -0
  291. package/dist/esm/getLanguage-1e9ec036.js.map +1 -0
  292. package/dist/esm/{index-6ac4212d.js → index-258984d3.js} +55 -2
  293. package/dist/esm/index-258984d3.js.map +1 -0
  294. package/dist/esm/index.js +20 -5
  295. package/dist/esm/index.js.map +1 -1
  296. package/dist/esm/loader.js +5 -4
  297. package/dist/esm/loader.js.map +1 -1
  298. package/dist/esm/{Notice-1fa17794.js → redirect-b0f87e88.js} +11 -3
  299. package/dist/esm/redirect-b0f87e88.js.map +1 -0
  300. package/dist/esm/smoothly-accordion-item.entry.js +57 -0
  301. package/dist/esm/smoothly-accordion-item.entry.js.map +1 -0
  302. package/dist/esm/smoothly-accordion.entry.js +54 -0
  303. package/dist/esm/smoothly-accordion.entry.js.map +1 -0
  304. package/dist/esm/smoothly-address-display.entry.js +1 -1
  305. package/dist/esm/smoothly-address.entry.js +1 -1
  306. package/dist/esm/smoothly-addresses.entry.js +1 -1
  307. package/dist/esm/smoothly-app_80.entry.js +10789 -0
  308. package/dist/esm/smoothly-app_80.entry.js.map +1 -0
  309. package/dist/esm/smoothly-checkbox.entry.js +98 -0
  310. package/dist/esm/smoothly-checkbox.entry.js.map +1 -0
  311. package/dist/esm/smoothly-color.entry.js +1 -1
  312. package/dist/esm/smoothly-country.entry.js +10 -9
  313. package/dist/esm/smoothly-country.entry.js.map +1 -1
  314. package/dist/esm/smoothly-display-date-time.entry.js +22 -0
  315. package/dist/esm/smoothly-display-date-time.entry.js.map +1 -0
  316. package/dist/esm/smoothly-google-font.entry.js +1 -1
  317. package/dist/esm/smoothly-reorder.entry.js +1 -1
  318. package/dist/esm/smoothly-trigger-sink.entry.js +2 -2
  319. package/dist/esm/smoothly-trigger-source.entry.js +4 -4
  320. package/dist/esm/smoothly-trigger-source.entry.js.map +1 -1
  321. package/dist/esm/smoothly.js +5 -4
  322. package/dist/esm/smoothly.js.map +1 -1
  323. package/dist/smoothly/index.esm.js +1 -1
  324. package/dist/smoothly/index.esm.js.map +1 -1
  325. package/dist/smoothly/{p-04fb45e1.entry.js → p-12182a73.entry.js} +2 -2
  326. package/dist/smoothly/{p-5629e452.entry.js → p-127dcc56.entry.js} +2 -2
  327. package/dist/smoothly/p-21905b32.entry.js +2 -0
  328. package/dist/smoothly/p-21905b32.entry.js.map +1 -0
  329. package/dist/smoothly/p-312ef066.js +2 -0
  330. package/dist/smoothly/p-312ef066.js.map +1 -0
  331. package/dist/smoothly/p-36a1aa35.entry.js +2 -0
  332. package/dist/smoothly/p-36a1aa35.entry.js.map +1 -0
  333. package/dist/smoothly/p-47151a53.entry.js +2 -0
  334. package/dist/smoothly/p-5e387578.js +3 -0
  335. package/dist/smoothly/p-5e387578.js.map +1 -0
  336. package/dist/smoothly/{p-0fec28cc.entry.js → p-6aebb818.entry.js} +2 -2
  337. package/dist/smoothly/p-6e9aca2e.entry.js +2 -0
  338. package/dist/smoothly/p-6e9aca2e.entry.js.map +1 -0
  339. package/dist/smoothly/{p-ae467192.entry.js → p-7bf147bf.entry.js} +2 -2
  340. package/dist/smoothly/p-823e02b0.entry.js +2 -0
  341. package/dist/smoothly/p-823e02b0.entry.js.map +1 -0
  342. package/dist/smoothly/p-9b828bde.js +2 -0
  343. package/dist/smoothly/p-9b828bde.js.map +1 -0
  344. package/dist/smoothly/p-a0ebd646.entry.js +2 -0
  345. package/dist/smoothly/p-a0ebd646.entry.js.map +1 -0
  346. package/dist/smoothly/{p-b3eef141.entry.js → p-b3eac6af.entry.js} +2 -2
  347. package/dist/smoothly/p-c833c402.js +2 -0
  348. package/dist/smoothly/p-c833c402.js.map +1 -0
  349. package/dist/smoothly/{p-3a6873ed.entry.js → p-cb493516.entry.js} +2 -2
  350. package/dist/smoothly/p-ede93d69.js +2 -0
  351. package/dist/smoothly/p-ede93d69.js.map +1 -0
  352. package/dist/smoothly/p-eef1c80b.entry.js +2 -0
  353. package/dist/smoothly/p-eef1c80b.entry.js.map +1 -0
  354. package/dist/smoothly/p-f125610c.entry.js +2 -0
  355. package/dist/smoothly/p-f125610c.entry.js.map +1 -0
  356. package/dist/smoothly/p-fa664317.js +2 -0
  357. package/dist/smoothly/p-fa664317.js.map +1 -0
  358. package/dist/smoothly/smoothly.esm.js +1 -1
  359. package/dist/smoothly/smoothly.esm.js.map +1 -1
  360. package/dist/types/components/Button.d.ts +1 -2
  361. package/dist/types/components/accordion/index.d.ts +1 -1
  362. package/dist/types/components/accordion-item/index.d.ts +5 -4
  363. package/dist/types/components/app/index.d.ts +23 -10
  364. package/dist/types/components/app/room/index.d.ts +21 -7
  365. package/dist/types/components/app-demo/index.d.ts +1 -0
  366. package/dist/types/components/backtotop/index.d.ts +1 -1
  367. package/dist/types/components/burger/index.d.ts +7 -2
  368. package/dist/types/components/button/index.d.ts +2 -2
  369. package/dist/types/components/calendar/index.d.ts +5 -5
  370. package/dist/types/components/checkbox/index.d.ts +7 -3
  371. package/dist/types/components/confirm/index.d.ts +19 -0
  372. package/dist/types/components/filter/Filter.d.ts +21 -0
  373. package/dist/types/components/filter/field/index.d.ts +10 -0
  374. package/dist/types/components/filter/index.d.ts +13 -12
  375. package/dist/types/components/filter/input/index.d.ts +15 -23
  376. package/dist/types/components/filter/picker/index.d.ts +22 -0
  377. package/dist/types/components/filter/toggle/index.d.ts +22 -0
  378. package/dist/types/components/form/index.d.ts +23 -7
  379. package/dist/types/components/icon/index.d.ts +3 -9
  380. package/dist/types/components/input/Editable.d.ts +20 -0
  381. package/dist/types/components/input/Input.d.ts +22 -0
  382. package/dist/types/components/input/Looks.d.ts +7 -0
  383. package/dist/types/components/input/Submittable.d.ts +6 -0
  384. package/dist/types/components/input/checkbox/index.d.ts +20 -0
  385. package/dist/types/components/input/clear/index.d.ts +17 -0
  386. package/dist/types/components/input/color/index.d.ts +24 -0
  387. package/dist/types/components/input/date/index.d.ts +28 -0
  388. package/dist/types/components/input/date/range/index.d.ts +33 -0
  389. package/dist/types/components/input/demo/index.d.ts +6 -0
  390. package/dist/types/components/input/edit/index.d.ts +17 -0
  391. package/dist/types/components/input/file/index.d.ts +24 -0
  392. package/dist/types/components/input/index.d.ts +30 -11
  393. package/dist/types/components/{input-month → input/month}/index.d.ts +2 -2
  394. package/dist/types/components/input/radio/Selected.d.ts +10 -0
  395. package/dist/types/components/input/radio/index.d.ts +35 -0
  396. package/dist/types/components/input/radio/item/index.d.ts +15 -0
  397. package/dist/types/components/input/range/index.d.ts +24 -0
  398. package/dist/types/components/input/reset/index.d.ts +18 -0
  399. package/dist/types/components/input/select/index.d.ts +36 -0
  400. package/dist/types/components/input/submit/index.d.ts +17 -0
  401. package/dist/types/components/item/index.d.ts +1 -1
  402. package/dist/types/components/label/index.d.ts +6 -0
  403. package/dist/types/components/lazy/index.d.ts +7 -0
  404. package/dist/types/components/load-more/index.d.ts +11 -0
  405. package/dist/types/components/notification/index.d.ts +3 -1
  406. package/dist/types/components/picker/demo/index.d.ts +22 -0
  407. package/dist/types/components/picker/index.d.ts +33 -45
  408. package/dist/types/components/picker/menu/index.d.ts +54 -0
  409. package/dist/types/components/picker/option/index.d.ts +23 -0
  410. package/dist/types/components/picker/slot-elements/index.d.ts +15 -0
  411. package/dist/types/components/picker/slotted-elements/index.d.ts +8 -0
  412. package/dist/types/components/popup/index.d.ts +1 -1
  413. package/dist/types/components/select-demo/index.d.ts +0 -9
  414. package/dist/types/components/submit/index.d.ts +6 -1
  415. package/dist/types/components/summary/index.d.ts +4 -0
  416. package/dist/types/components/table/demo/filtered/Root.d.ts +1 -0
  417. package/dist/types/components/table/demo/filtered/index.d.ts +7 -7
  418. package/dist/types/components/table/demo/index.d.ts +1 -1
  419. package/dist/types/components/table/demo/testing/data.d.ts +5 -0
  420. package/dist/types/components/table/demo/testing/index.d.ts +4 -0
  421. package/dist/types/components/table/expandable/cell/index.d.ts +4 -5
  422. package/dist/types/components/table/expandable/row/index.d.ts +3 -8
  423. package/dist/types/components/table/footer/index.d.ts +3 -0
  424. package/dist/types/components/table/index.d.ts +6 -3
  425. package/dist/types/components/table/row/index.d.ts +3 -1
  426. package/dist/types/components/theme/color/index.d.ts +5 -0
  427. package/dist/types/components/theme/color/variant/index.d.ts +6 -0
  428. package/dist/types/components/theme/colors/index.d.ts +3 -0
  429. package/dist/types/components/theme/picker/index.d.ts +4 -0
  430. package/dist/types/components/toggle-switch/index.d.ts +7 -2
  431. package/dist/types/components/trigger-source/index.d.ts +1 -1
  432. package/dist/types/components.d.ts +912 -347
  433. package/dist/types/global/Observers.d.ts +8 -0
  434. package/dist/types/global/index.d.ts +4 -0
  435. package/dist/types/index.d.ts +1 -3
  436. package/dist/types/model/Color.d.ts +7 -1
  437. package/dist/types/{components/form → model}/Data.d.ts +4 -0
  438. package/dist/types/model/Icon.d.ts +8 -0
  439. package/dist/types/model/Listenable.d.ts +10 -1
  440. package/dist/types/model/Notice.d.ts +1 -1
  441. package/dist/types/model/Option.d.ts +24 -6
  442. package/dist/types/model/index.d.ts +3 -0
  443. package/dist/types/model/redirect.d.ts +1 -0
  444. package/dist/types/smoothly.d.ts +3 -0
  445. package/package.json +7 -6
  446. package/dist/cjs/Listenable-63ea2d90.js.map +0 -1
  447. package/dist/cjs/Notice-88ba4c70.js.map +0 -1
  448. package/dist/cjs/getLanguage-4f0a45d5.js +0 -12227
  449. package/dist/cjs/getLanguage-4f0a45d5.js.map +0 -1
  450. package/dist/cjs/index-8adc5c1b.js.map +0 -1
  451. package/dist/cjs/index-d16d46f4.js +0 -1224
  452. package/dist/cjs/index-d16d46f4.js.map +0 -1
  453. package/dist/cjs/smoothly-accordion_62.cjs.entry.js +0 -28199
  454. package/dist/cjs/smoothly-accordion_62.cjs.entry.js.map +0 -1
  455. package/dist/cjs/smoothly-radio-group.cjs.entry.js +0 -22
  456. package/dist/cjs/smoothly-radio-group.cjs.entry.js.map +0 -1
  457. package/dist/collection/components/filter/Clearable.js.map +0 -1
  458. package/dist/collection/components/form/Clearable.js +0 -8
  459. package/dist/collection/components/form/Clearable.js.map +0 -1
  460. package/dist/collection/components/form/Data.js.map +0 -1
  461. package/dist/collection/components/input-date/index.js +0 -206
  462. package/dist/collection/components/input-date/index.js.map +0 -1
  463. package/dist/collection/components/input-date/style.css +0 -40
  464. package/dist/collection/components/input-date-range/index.js.map +0 -1
  465. package/dist/collection/components/input-date-range/style.css +0 -51
  466. package/dist/collection/components/input-demo/index.js +0 -45
  467. package/dist/collection/components/input-demo/index.js.map +0 -1
  468. package/dist/collection/components/input-demo/style.css +0 -4
  469. package/dist/collection/components/input-month/index.js.map +0 -1
  470. package/dist/collection/components/menu-options/index.js +0 -413
  471. package/dist/collection/components/menu-options/index.js.map +0 -1
  472. package/dist/collection/components/menu-options/style.css +0 -18
  473. package/dist/collection/components/option/index.js +0 -270
  474. package/dist/collection/components/option/index.js.map +0 -1
  475. package/dist/collection/components/option/style.css +0 -42
  476. package/dist/collection/components/radio/index.js.map +0 -1
  477. package/dist/collection/components/radio/style.css +0 -31
  478. package/dist/collection/components/radio-button/Selected.js +0 -2
  479. package/dist/collection/components/radio-button/Selected.js.map +0 -1
  480. package/dist/collection/components/radio-button/index.js +0 -137
  481. package/dist/collection/components/radio-button/index.js.map +0 -1
  482. package/dist/collection/components/radio-button/item/index.js +0 -117
  483. package/dist/collection/components/radio-button/item/index.js.map +0 -1
  484. package/dist/collection/components/radio-button/item/style.css +0 -85
  485. package/dist/collection/components/radio-group/index.js +0 -43
  486. package/dist/collection/components/radio-group/index.js.map +0 -1
  487. package/dist/collection/components/radio-group/style.css +0 -36
  488. package/dist/collection/components/select/index.js +0 -108
  489. package/dist/collection/components/select/index.js.map +0 -1
  490. package/dist/collection/components/select/style.css +0 -20
  491. package/dist/collection/components/selector/index.js +0 -234
  492. package/dist/collection/components/selector/index.js.map +0 -1
  493. package/dist/collection/components/selector/style.css +0 -46
  494. package/dist/custom-elements/index2.js +0 -1222
  495. package/dist/custom-elements/index2.js.map +0 -1
  496. package/dist/esm/Listenable-fb6f4723.js.map +0 -1
  497. package/dist/esm/Notice-1fa17794.js.map +0 -1
  498. package/dist/esm/getLanguage-ffacd7b7.js +0 -12225
  499. package/dist/esm/getLanguage-ffacd7b7.js.map +0 -1
  500. package/dist/esm/index-6ac4212d.js.map +0 -1
  501. package/dist/esm/index-d5330059.js +0 -1222
  502. package/dist/esm/index-d5330059.js.map +0 -1
  503. package/dist/esm/smoothly-accordion_62.entry.js +0 -28134
  504. package/dist/esm/smoothly-accordion_62.entry.js.map +0 -1
  505. package/dist/esm/smoothly-radio-group.entry.js +0 -18
  506. package/dist/esm/smoothly-radio-group.entry.js.map +0 -1
  507. package/dist/smoothly/p-06337b89.js +0 -2
  508. package/dist/smoothly/p-06337b89.js.map +0 -1
  509. package/dist/smoothly/p-16cba662.entry.js +0 -2
  510. package/dist/smoothly/p-16cba662.entry.js.map +0 -1
  511. package/dist/smoothly/p-3ad51805.entry.js +0 -2
  512. package/dist/smoothly/p-3ad51805.entry.js.map +0 -1
  513. package/dist/smoothly/p-5e34795b.js +0 -2
  514. package/dist/smoothly/p-5e34795b.js.map +0 -1
  515. package/dist/smoothly/p-75373584.js +0 -2
  516. package/dist/smoothly/p-75373584.js.map +0 -1
  517. package/dist/smoothly/p-75452eb8.js +0 -2
  518. package/dist/smoothly/p-75452eb8.js.map +0 -1
  519. package/dist/smoothly/p-ae33d7e1.entry.js +0 -2
  520. package/dist/smoothly/p-ae33d7e1.entry.js.map +0 -1
  521. package/dist/smoothly/p-b98cd447.js +0 -3
  522. package/dist/smoothly/p-b98cd447.js.map +0 -1
  523. package/dist/smoothly/p-c109fc66.entry.js +0 -2
  524. package/dist/smoothly/p-c109fc66.entry.js.map +0 -1
  525. package/dist/smoothly/p-f29cc9ff.entry.js +0 -2
  526. package/dist/types/components/form/Clearable.d.ts +0 -6
  527. package/dist/types/components/input-date/index.d.ts +0 -14
  528. package/dist/types/components/input-date-range/index.d.ts +0 -23
  529. package/dist/types/components/input-demo/index.d.ts +0 -3
  530. package/dist/types/components/menu-options/index.d.ts +0 -35
  531. package/dist/types/components/option/index.d.ts +0 -32
  532. package/dist/types/components/radio/index.d.ts +0 -13
  533. package/dist/types/components/radio-button/Selected.d.ts +0 -5
  534. package/dist/types/components/radio-button/index.d.ts +0 -15
  535. package/dist/types/components/radio-button/item/index.d.ts +0 -12
  536. package/dist/types/components/radio-group/index.d.ts +0 -4
  537. package/dist/types/components/select/index.d.ts +0 -14
  538. package/dist/types/components/selector/index.d.ts +0 -23
  539. /package/dist/collection/components/{filter → input}/Clearable.js +0 -0
  540. /package/dist/collection/components/{input-month → input/month}/style.css +0 -0
  541. /package/dist/collection/components/{radio-button → lazy}/style.css +0 -0
  542. /package/dist/smoothly/{p-04fb45e1.entry.js.map → p-12182a73.entry.js.map} +0 -0
  543. /package/dist/smoothly/{p-5629e452.entry.js.map → p-127dcc56.entry.js.map} +0 -0
  544. /package/dist/smoothly/{p-f29cc9ff.entry.js.map → p-47151a53.entry.js.map} +0 -0
  545. /package/dist/smoothly/{p-0fec28cc.entry.js.map → p-6aebb818.entry.js.map} +0 -0
  546. /package/dist/smoothly/{p-ae467192.entry.js.map → p-7bf147bf.entry.js.map} +0 -0
  547. /package/dist/smoothly/{p-b3eef141.entry.js.map → p-b3eac6af.entry.js.map} +0 -0
  548. /package/dist/smoothly/{p-3a6873ed.entry.js.map → p-cb493516.entry.js.map} +0 -0
  549. /package/dist/types/components/{filter → input}/Clearable.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/accordion-item/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAgB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAOvF,MAAM,OAAO,qBAAqB;;;;;;EAUjC,WAAW,CAAC,SAAkB;IAC7B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;IACrB,IAAI,SAAS,EAAE;MACd,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACtB,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,IAAI,CAAC,IAAI;OACf,CAAC,CAAA;KACF;EACF,CAAC;EACD,gBAAgB;IACf,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;IACvD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;MACvB,MAAM,OAAO,GAAG,CAAC,CAAU,EAAE,EAAE;QAC9B,IAAI,IAAI,CAAC,IAAI;UACZ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;;UAE7D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACjB,CAAC,CAAC,cAAc,EAAE,CAAA;MACnB,CAAC,CAAA;MACD,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;MAC7C,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;KAC7C;IACD,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,CAAA;EACzC,CAAC;EACD,oBAAoB;IACnB,IAAI,CAAC,8BAA8B,CAAC,IAAI,EAAE,CAAA;EAC3C,CAAC;EACD,MAAM;IACL,OAAO,CACN,eAAS,IAAI,EAAE,IAAI,CAAC,IAAI;MACvB;QACE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACZ,WAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,aAAa;UAC5D,YAAM,CAAC,EAAC,oKAAoK,GAAG,CAC1K,CACN,CAAC,CAAC,CAAC,CACH,WAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,aAAa;UAC5D,YAAM,CAAC,EAAC,6NAA6N,GAAG,CACnO,CACN;QACA,IAAI,CAAC,IAAI;QACT,OAAO,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,CAChC,YAAM,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAG,IAAI,CAAC,KAAK,CAAQ,CAC1D,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,YAAM,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,IAAG,CAAC,CAAQ,CAAC,CAC7D,CAAC,CAAC,CAAC,CACH,EAAE,CACF,CACQ;MACV,gBAAU,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI;QAC9C,eAAQ,CACE,CACF,CACV,CAAA;EACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Prop, Watch } from \"@stencil/core\"\n\n@Component({\n\ttag: \"smoothly-accordion-item\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyAccordionItem {\n\t@Prop() name: string\n\t@Prop() brand?: string | string[]\n\t@Prop({ mutable: true, reflect: true }) open?: boolean\n\t@Element() me: HTMLElement\n\t@Event() smoothlyAccordionItemDidLoad!: EventEmitter<void>\n\t@Event() smoothlyAccordionItemDidUnload!: EventEmitter<void>\n\t@Event() smoothlyOpen!: EventEmitter<{ name: string; open: boolean }>\n\t@Event() smoothlyClose!: EventEmitter<{ name: string; open: boolean }>\n\t@Watch(\"open\")\n\topenChanged(isChecked: boolean) {\n\t\tthis.open = isChecked\n\t\tif (isChecked) {\n\t\t\tthis.smoothlyOpen.emit({\n\t\t\t\topen: true,\n\t\t\t\tname: this.name,\n\t\t\t})\n\t\t}\n\t}\n\tcomponentDidLoad() {\n\t\tconst summary = this.me.getElementsByTagName(\"summary\")\n\t\tif (summary.length > 0) {\n\t\t\tconst onClick = (e: UIEvent) => {\n\t\t\t\tif (this.open)\n\t\t\t\t\tthis.smoothlyClose.emit({ open: this.open, name: this.name })\n\t\t\t\telse\n\t\t\t\t\tthis.open = true\n\t\t\t\te.preventDefault()\n\t\t\t}\n\t\t\tsummary[0].addEventListener(\"click\", onClick)\n\t\t\tsummary[0].addEventListener(\"touch\", onClick)\n\t\t}\n\t\tthis.smoothlyAccordionItemDidLoad.emit()\n\t}\n\tdisconnectedCallback() {\n\t\tthis.smoothlyAccordionItemDidUnload.emit()\n\t}\n\trender() {\n\t\treturn (\n\t\t\t<details open={this.open}>\n\t\t\t\t<summary>\n\t\t\t\t\t{this.open ? (\n\t\t\t\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\">\n\t\t\t\t\t\t\t<path d=\"M256 48C141.6 48 48 141.6 48 256s93.6 208 208 208 208-93.6 208-208S370.4 48 256 48zm-42.7 318.9L106.7 260.3l29.9-29.9 76.8 76.8 162.1-162.1 29.9 29.9-192.1 191.9z\" />\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\">\n\t\t\t\t\t\t\t<path d=\"M256 48C141.601 48 48 141.601 48 256s93.601 208 208 208 208-93.601 208-208S370.399 48 256 48zm0 374.399c-91.518 0-166.399-74.882-166.399-166.399S164.482 89.6 256 89.6 422.4 164.482 422.4 256 347.518 422.399 256 422.399z\" />\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t)}\n\t\t\t\t\t{this.name}\n\t\t\t\t\t{typeof this.brand == \"string\" ? (\n\t\t\t\t\t\t<span class={this.brand.toLowerCase()}>{this.brand}</span>\n\t\t\t\t\t) : Array.isArray(this.brand) ? (\n\t\t\t\t\t\tthis.brand.map(b => <span class={b.toLowerCase()}>{b}</span>)\n\t\t\t\t\t) : (\n\t\t\t\t\t\t[]\n\t\t\t\t\t)}\n\t\t\t\t</summary>\n\t\t\t\t<fieldset disabled={!this.open} name={this.name}>\n\t\t\t\t\t<slot />\n\t\t\t\t</fieldset>\n\t\t\t</details>\n\t\t)\n\t}\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/accordion-item/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAgB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAQvF,MAAM,OAAO,qBAAqB;;;;;;EAUjC,WAAW,CAAC,SAAkB;IAC7B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAA;IACrB,IAAI,SAAS,EAAE;MACd,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACtB,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,IAAI,CAAC,IAAI;OACf,CAAC,CAAA;KACF;EACF,CAAC;EACD,iBAAiB;IAChB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;IAC5D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;MACvB,MAAM,OAAO,GAAG,CAAC,CAAU,EAAE,EAAE;QAC9B,IAAI,IAAI,CAAC,IAAI;UACZ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;;UAE7D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACjB,CAAC,CAAC,cAAc,EAAE,CAAA;MACnB,CAAC,CAAA;MACD,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;MAC7C,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;KAC7C;IACD,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;MAChD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACrB,CAAC,CAAC,CAAA;EACH,CAAC;EACD,oBAAoB;;IACnB,MAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;EACtC,CAAC;EACD,MAAM;IACL,OAAO,CACN,eAAS,IAAI,EAAE,IAAI,CAAC,IAAI;MACvB;QACE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACZ,WAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,aAAa;UAC5D,YAAM,CAAC,EAAC,oKAAoK,GAAG,CAC1K,CACN,CAAC,CAAC,CAAC,CACH,WAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,aAAa;UAC5D,YAAM,CAAC,EAAC,6NAA6N,GAAG,CACnO,CACN;QACA,IAAI,CAAC,IAAI;QACT,OAAO,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,CAChC,YAAM,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAG,IAAI,CAAC,KAAK,CAAQ,CAC1D,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,YAAM,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,IAAG,CAAC,CAAQ,CAAC,CAC7D,CAAC,CAAC,CAAC,CACH,EAAE,CACF,CACQ;MACV,gBAAU,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI;QAC9C,eAAQ,CACE,CACF,CACV,CAAA;EACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Prop, Watch } from \"@stencil/core\"\nimport { SmoothlyAccordion } from \"../accordion\"\n\n@Component({\n\ttag: \"smoothly-accordion-item\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyAccordionItem {\n\t@Prop() name: string\n\t@Prop() brand?: string | string[]\n\t@Prop({ mutable: true, reflect: true }) open?: boolean\n\t@Element() element: HTMLSmoothlyAccordionItemElement\n\t@Event() smoothlyAccordionItemWillLoad!: EventEmitter<(parent: SmoothlyAccordion) => void>\n\t@Event() smoothlyOpen!: EventEmitter<{ name: string; open: boolean }>\n\t@Event() smoothlyClose!: EventEmitter<{ name: string; open: boolean }>\n\tprivate parent?: SmoothlyAccordion\n\t@Watch(\"open\")\n\topenChanged(isChecked: boolean) {\n\t\tthis.open = isChecked\n\t\tif (isChecked) {\n\t\t\tthis.smoothlyOpen.emit({\n\t\t\t\topen: true,\n\t\t\t\tname: this.name,\n\t\t\t})\n\t\t}\n\t}\n\tcomponentWillLoad() {\n\t\tconst summary = this.element.getElementsByTagName(\"summary\")\n\t\tif (summary.length > 0) {\n\t\t\tconst onClick = (e: UIEvent) => {\n\t\t\t\tif (this.open)\n\t\t\t\t\tthis.smoothlyClose.emit({ open: this.open, name: this.name })\n\t\t\t\telse\n\t\t\t\t\tthis.open = true\n\t\t\t\te.preventDefault()\n\t\t\t}\n\t\t\tsummary[0].addEventListener(\"click\", onClick)\n\t\t\tsummary[0].addEventListener(\"touch\", onClick)\n\t\t}\n\t\tthis.smoothlyAccordionItemWillLoad.emit(parent => {\n\t\t\tthis.parent = parent\n\t\t})\n\t}\n\tdisconnectedCallback() {\n\t\tthis.parent?.removeItem(this.element)\n\t}\n\trender() {\n\t\treturn (\n\t\t\t<details open={this.open}>\n\t\t\t\t<summary>\n\t\t\t\t\t{this.open ? (\n\t\t\t\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\">\n\t\t\t\t\t\t\t<path d=\"M256 48C141.6 48 48 141.6 48 256s93.6 208 208 208 208-93.6 208-208S370.4 48 256 48zm-42.7 318.9L106.7 260.3l29.9-29.9 76.8 76.8 162.1-162.1 29.9 29.9-192.1 191.9z\" />\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\">\n\t\t\t\t\t\t\t<path d=\"M256 48C141.601 48 48 141.601 48 256s93.601 208 208 208 208-93.601 208-208S370.399 48 256 48zm0 374.399c-91.518 0-166.399-74.882-166.399-166.399S164.482 89.6 256 89.6 422.4 164.482 422.4 256 347.518 422.399 256 422.399z\" />\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t)}\n\t\t\t\t\t{this.name}\n\t\t\t\t\t{typeof this.brand == \"string\" ? (\n\t\t\t\t\t\t<span class={this.brand.toLowerCase()}>{this.brand}</span>\n\t\t\t\t\t) : Array.isArray(this.brand) ? (\n\t\t\t\t\t\tthis.brand.map(b => <span class={b.toLowerCase()}>{b}</span>)\n\t\t\t\t\t) : (\n\t\t\t\t\t\t[]\n\t\t\t\t\t)}\n\t\t\t\t</summary>\n\t\t\t\t<fieldset disabled={!this.open} name={this.name}>\n\t\t\t\t\t<slot />\n\t\t\t\t</fieldset>\n\t\t\t</details>\n\t\t)\n\t}\n}\n"]}
@@ -4,44 +4,68 @@ export class SmoothlyApp {
4
4
  this.rooms = {};
5
5
  this.label = "App";
6
6
  this.color = undefined;
7
+ this.home = undefined;
7
8
  this.menuOpen = false;
8
9
  this.selected = undefined;
9
10
  }
10
- selectedChanged(value, previous) {
11
+ async componentDidRender() {
11
12
  var _a;
12
- if (previous) {
13
- previous.room.selected = false;
14
- }
15
- if (value) {
16
- value.room.selected = true;
17
- const path = value.room.path.toString();
18
- this.rooms[path] = value;
19
- history.pushState({ smoothlyPath: path }, (_a = value.room.label) !== null && _a !== void 0 ? _a : "", path);
20
- if (this.mainElement) {
21
- this.mainElement.innerHTML = "";
22
- this.mainElement.appendChild(value.content);
23
- }
13
+ if (!this.selected && !window.location.search)
14
+ (_a = (this.home && this.rooms[this.home]
15
+ ? this.rooms[this.home]
16
+ : Object.values(this.rooms).find(room => !(room === null || room === void 0 ? void 0 : room.element.disabled)))) === null || _a === void 0 ? void 0 : _a.element.setSelected(true);
17
+ }
18
+ async selectRoom(path) {
19
+ var _a;
20
+ (_a = this.rooms[path]) === null || _a === void 0 ? void 0 : _a.element.setSelected(true);
21
+ }
22
+ async selectedChanged() {
23
+ var _a;
24
+ Object.values(this.rooms).forEach(room => { var _a; return (room === null || room === void 0 ? void 0 : room.element.path) != ((_a = this.selected) === null || _a === void 0 ? void 0 : _a.element.path) && (room === null || room === void 0 ? void 0 : room.element.setSelected(false)); });
25
+ const content = await ((_a = this.selected) === null || _a === void 0 ? void 0 : _a.element.getContent());
26
+ if (this.mainElement && content) {
27
+ this.mainElement.innerHTML = "";
28
+ this.mainElement.appendChild(content);
24
29
  }
25
30
  }
31
+ burgerVisibilityHandler(event) {
32
+ this.burgerVisibility = event.detail;
33
+ }
26
34
  burgerStatusHandler(event) {
27
35
  event.stopPropagation();
28
- this.menuOpen = event.detail ? true : false;
36
+ this.menuOpen = event.detail;
29
37
  }
30
- locationChangeHandler(event) {
38
+ async locationChangeHandler(event) {
31
39
  var _a;
32
- if (typeof event.state.smoothlyPath != "string" && event.state.smoothlyPath !== ((_a = this.selected) === null || _a === void 0 ? void 0 : _a.room.path)) {
33
- this.selected = this.rooms[event.state.smoothlyPath];
40
+ (_a = this.rooms[event.state.smoothlyPath]) === null || _a === void 0 ? void 0 : _a.element.setSelected(true, { history: true });
41
+ }
42
+ roomSelectedHandler(event) {
43
+ this.selected = { element: event.target };
44
+ if (this.burgerVisibility)
45
+ this.menuOpen = false;
46
+ if (!event.detail.history) {
47
+ const path = this.selected.element.path.toString();
48
+ const location = new URL(window.location.pathname == path ? window.location.href : window.location.origin);
49
+ location.pathname = path;
50
+ window.history.pushState({ smoothlyPath: path }, "", location.href);
34
51
  }
35
- if (this.mainElement) {
36
- this.mainElement.innerHTML = "";
37
- this.mainElement.appendChild(this.rooms[event.state.smoothlyPath].content);
52
+ }
53
+ roomLoadedHandler(event) {
54
+ const room = (this.rooms[event.target.path.toString()] = { element: event.target });
55
+ if (room.element.selected) {
56
+ this.selected = room;
57
+ window.history.replaceState({ smoothlyPath: room.element.path }, "", window.location.href);
38
58
  }
39
59
  }
40
- roomSelectedHandler(event) {
41
- this.selected = { room: event.target, content: event.detail };
60
+ clickHandler(event) {
61
+ if (this.burgerVisibility)
62
+ if (event.composedPath().some(e => e == this.burgerElement || e == this.navElement))
63
+ !this.menuOpen;
64
+ else
65
+ this.menuOpen = false;
42
66
  }
43
67
  render() {
44
- return (h("smoothly-notifier", null, h("header", { color: this.color }, h("h1", null, h("a", { href: "" }, this.label)), h("slot", { name: "header" }), h("nav", null, h("ul", { class: this.menuOpen.toString() }, h("slot", { name: "nav-start" }), h("slot", null, " "), h("slot", { name: "nav-end" }))), h("smoothly-burger", null)), h("main", { ref: e => (this.mainElement = e) })));
68
+ return (h("smoothly-notifier", null, h("header", { color: this.color }, h("h1", null, h("a", { href: "" }, this.label)), h("slot", { name: "header" }), h("nav", { ref: e => (this.navElement = e), class: { "menu-open": this.menuOpen } }, h("ul", null, h("div", { class: "nav-start-container" }, h("slot", { name: "nav-start" })), h("slot", null, " "), h("div", { class: "nav-end-container" }, h("slot", { name: "nav-end" })))), h("smoothly-burger", { ref: e => (this.burgerElement = e), open: this.menuOpen, onSmoothlyNavStatus: e => this.burgerStatusHandler(e), onSmoothlyVisibleStatus: e => this.burgerVisibilityHandler(e) })), h("main", { ref: e => (this.mainElement = e) })));
45
69
  }
46
70
  static get is() { return "smoothly-app"; }
47
71
  static get originalStyleUrls() {
@@ -96,6 +120,23 @@ export class SmoothlyApp {
96
120
  "attribute": "color",
97
121
  "reflect": false
98
122
  },
123
+ "home": {
124
+ "type": "string",
125
+ "mutable": false,
126
+ "complexType": {
127
+ "original": "string",
128
+ "resolved": "string | undefined",
129
+ "references": {}
130
+ },
131
+ "required": false,
132
+ "optional": true,
133
+ "docs": {
134
+ "tags": [],
135
+ "text": ""
136
+ },
137
+ "attribute": "home",
138
+ "reflect": false
139
+ },
99
140
  "menuOpen": {
100
141
  "type": "boolean",
101
142
  "mutable": true,
@@ -121,6 +162,29 @@ export class SmoothlyApp {
121
162
  "selected": {}
122
163
  };
123
164
  }
165
+ static get methods() {
166
+ return {
167
+ "selectRoom": {
168
+ "complexType": {
169
+ "signature": "(path: string) => Promise<void>",
170
+ "parameters": [{
171
+ "tags": [],
172
+ "text": ""
173
+ }],
174
+ "references": {
175
+ "Promise": {
176
+ "location": "global"
177
+ }
178
+ },
179
+ "return": "Promise<void>"
180
+ },
181
+ "docs": {
182
+ "text": "",
183
+ "tags": []
184
+ }
185
+ }
186
+ };
187
+ }
124
188
  static get watchers() {
125
189
  return [{
126
190
  "propName": "selected",
@@ -129,12 +193,6 @@ export class SmoothlyApp {
129
193
  }
130
194
  static get listeners() {
131
195
  return [{
132
- "name": "burgerStatus",
133
- "method": "burgerStatusHandler",
134
- "target": undefined,
135
- "capture": false,
136
- "passive": false
137
- }, {
138
196
  "name": "popstate",
139
197
  "method": "locationChangeHandler",
140
198
  "target": "window",
@@ -146,6 +204,18 @@ export class SmoothlyApp {
146
204
  "target": undefined,
147
205
  "capture": false,
148
206
  "passive": false
207
+ }, {
208
+ "name": "smoothlyRoomLoaded",
209
+ "method": "roomLoadedHandler",
210
+ "target": undefined,
211
+ "capture": false,
212
+ "passive": false
213
+ }, {
214
+ "name": "click",
215
+ "method": "clickHandler",
216
+ "target": "window",
217
+ "capture": false,
218
+ "passive": false
149
219
  }];
150
220
  }
151
221
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/app/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAaxE,MAAM,OAAO,WAAW;;IAMvB,UAAK,GAA6B,EAAE,CAAA;iBALpB,KAAK;;oBAE8B,KAAK;;;EAMxD,eAAe,CAAC,KAA2B,EAAE,QAA8B;;IAC1E,IAAI,QAAQ,EAAE;MACb,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;KAC9B;IACD,IAAI,KAAK,EAAE;MACV,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;MAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;MACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;MAExB,OAAO,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,MAAA,KAAK,CAAC,IAAI,CAAC,KAAK,mCAAI,EAAE,EAAE,IAAI,CAAC,CAAA;MAEvE,IAAI,IAAI,CAAC,WAAW,EAAE;QACrB,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,EAAE,CAAA;QAC/B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;OAC3C;KACD;EACF,CAAC;EAGD,mBAAmB,CAAC,KAAkB;IACrC,KAAK,CAAC,eAAe,EAAE,CAAA;IACvB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;EAC5C,CAAC;EAGD,qBAAqB,CAAC,KAAoB;;IACzC,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,MAAK,MAAA,IAAI,CAAC,QAAQ,0CAAE,IAAI,CAAC,IAAI,CAAA,EAAE;MACzG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;KACpD;IACD,IAAI,IAAI,CAAC,WAAW,EAAE;MACrB,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,EAAE,CAAA;MAC/B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAA;KAC1E;EACF,CAAC;EAGD,mBAAmB,CAAC,KAA+B;IAClD,IAAI,CAAC,QAAQ,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,MAAoC,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;EAC5F,CAAC;EAED,MAAM;IACL,OAAO,CACN;MACC,cAAQ,KAAK,EAAE,IAAI,CAAC,KAAK;QACxB;UACC,SAAG,IAAI,EAAE,EAAE,IAAG,IAAI,CAAC,KAAK,CAAK,CACzB;QACL,YAAM,IAAI,EAAC,QAAQ,GAAQ;QAC3B;UACC,UAAI,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAClC,YAAM,IAAI,EAAC,WAAW,GAAQ;YAC9B,oBAAc;YACd,YAAM,IAAI,EAAC,SAAS,GAAQ,CACxB,CACA;QACN,0BAAmC,CAC3B;MACT,YAAM,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,GAAS,CAC5B,CACpB,CAAA;EACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, h, Listen, Prop, State, Watch } from \"@stencil/core\"\nimport { Color } from \"../../model\"\n\ninterface Selected {\n\troom: HTMLSmoothlyAppRoomElement\n\tcontent: HTMLElement\n}\n\n@Component({\n\ttag: \"smoothly-app\",\n\tstyleUrl: \"style.css\",\n\tscoped: false,\n})\nexport class SmoothlyApp {\n\t@Prop() label = \"App\"\n\t@Prop() color: Color\n\t@Prop({ mutable: true, reflect: true }) menuOpen = false\n\t@State() selected?: Selected\n\tmainElement?: HTMLElement\n\trooms: Record<string, Selected> = {}\n\n\t@Watch(\"selected\")\n\tselectedChanged(value: Selected | undefined, previous: Selected | undefined) {\n\t\tif (previous) {\n\t\t\tprevious.room.selected = false\n\t\t}\n\t\tif (value) {\n\t\t\tvalue.room.selected = true\n\t\t\tconst path = value.room.path.toString()\n\t\t\tthis.rooms[path] = value\n\n\t\t\thistory.pushState({ smoothlyPath: path }, value.room.label ?? \"\", path)\n\n\t\t\tif (this.mainElement) {\n\t\t\t\tthis.mainElement.innerHTML = \"\"\n\t\t\t\tthis.mainElement.appendChild(value.content)\n\t\t\t}\n\t\t}\n\t}\n\n\t@Listen(\"burgerStatus\")\n\tburgerStatusHandler(event: CustomEvent) {\n\t\tevent.stopPropagation()\n\t\tthis.menuOpen = event.detail ? true : false\n\t}\n\n\t@Listen(\"popstate\", { target: \"window\" })\n\tlocationChangeHandler(event: PopStateEvent) {\n\t\tif (typeof event.state.smoothlyPath != \"string\" && event.state.smoothlyPath !== this.selected?.room.path) {\n\t\t\tthis.selected = this.rooms[event.state.smoothlyPath]\n\t\t}\n\t\tif (this.mainElement) {\n\t\t\tthis.mainElement.innerHTML = \"\"\n\t\t\tthis.mainElement.appendChild(this.rooms[event.state.smoothlyPath].content)\n\t\t}\n\t}\n\n\t@Listen(\"smoothlyRoomSelected\")\n\troomSelectedHandler(event: CustomEvent<HTMLElement>) {\n\t\tthis.selected = { room: event.target as HTMLSmoothlyAppRoomElement, content: event.detail }\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<smoothly-notifier>\n\t\t\t\t<header color={this.color}>\n\t\t\t\t\t<h1>\n\t\t\t\t\t\t<a href={\"\"}>{this.label}</a>\n\t\t\t\t\t</h1>\n\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t<nav>\n\t\t\t\t\t\t<ul class={this.menuOpen.toString()}>\n\t\t\t\t\t\t\t<slot name=\"nav-start\"></slot>\n\t\t\t\t\t\t\t<slot> </slot>\n\t\t\t\t\t\t\t<slot name=\"nav-end\"></slot>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</nav>\n\t\t\t\t\t<smoothly-burger></smoothly-burger>\n\t\t\t\t</header>\n\t\t\t\t<main ref={e => (this.mainElement = e)}></main>\n\t\t\t</smoothly-notifier>\n\t\t)\n\t}\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/app/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Listen, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { SmoothlyAppRoomCustomEvent } from \"../../components\"\nimport { Color } from \"../../model\"\n\ntype Room = {\n\telement: HTMLSmoothlyAppRoomElement\n}\n@Component({\n\ttag: \"smoothly-app\",\n\tstyleUrl: \"style.css\",\n\tscoped: false,\n})\nexport class SmoothlyApp {\n\t@Prop() label = \"App\"\n\t@Prop() color: Color\n\t@Prop() home?: string\n\t@Prop({ mutable: true, reflect: true }) menuOpen = false\n\t@State() selected?: Room\n\tprivate burgerVisibility: boolean\n\tprivate burgerElement?: HTMLElement\n\tprivate navElement?: HTMLElement\n\tmainElement?: HTMLElement\n\trooms: Record<string, Room | undefined> = {}\n\tasync componentDidRender() {\n\t\tif (!this.selected && !window.location.search)\n\t\t\t(this.home && this.rooms[this.home]\n\t\t\t\t? this.rooms[this.home]\n\t\t\t\t: Object.values(this.rooms).find(room => !room?.element.disabled)\n\t\t\t)?.element.setSelected(true)\n\t}\n\t@Method()\n\tasync selectRoom(path: string) {\n\t\tthis.rooms[path]?.element.setSelected(true)\n\t}\n\t@Watch(\"selected\")\n\tasync selectedChanged() {\n\t\tObject.values(this.rooms).forEach(\n\t\t\troom => room?.element.path != this.selected?.element.path && room?.element.setSelected(false)\n\t\t)\n\t\tconst content = await this.selected?.element.getContent()\n\t\tif (this.mainElement && content) {\n\t\t\tthis.mainElement.innerHTML = \"\"\n\t\t\tthis.mainElement.appendChild(content)\n\t\t}\n\t}\n\tburgerVisibilityHandler(event: CustomEvent<boolean>) {\n\t\tthis.burgerVisibility = event.detail\n\t}\n\tburgerStatusHandler(event: CustomEvent<boolean>) {\n\t\tevent.stopPropagation()\n\t\tthis.menuOpen = event.detail\n\t}\n\t@Listen(\"popstate\", { target: \"window\" })\n\tasync locationChangeHandler(event: PopStateEvent) {\n\t\tthis.rooms[event.state.smoothlyPath]?.element.setSelected(true, { history: true })\n\t}\n\t@Listen(\"smoothlyRoomSelected\")\n\troomSelectedHandler(event: SmoothlyAppRoomCustomEvent<{ history: boolean }>) {\n\t\tthis.selected = { element: event.target }\n\t\tif (this.burgerVisibility)\n\t\t\tthis.menuOpen = false\n\t\tif (!event.detail.history) {\n\t\t\tconst path = this.selected.element.path.toString()\n\t\t\tconst location = new URL(window.location.pathname == path ? window.location.href : window.location.origin)\n\t\t\tlocation.pathname = path\n\t\t\twindow.history.pushState({ smoothlyPath: path }, \"\", location.href)\n\t\t}\n\t}\n\t@Listen(\"smoothlyRoomLoaded\")\n\troomLoadedHandler(event: SmoothlyAppRoomCustomEvent<{ selected: boolean }>) {\n\t\tconst room = (this.rooms[event.target.path.toString()] = { element: event.target })\n\t\tif (room.element.selected) {\n\t\t\tthis.selected = room\n\t\t\twindow.history.replaceState({ smoothlyPath: room.element.path }, \"\", window.location.href)\n\t\t}\n\t}\n\t@Listen(\"click\", { target: \"window\" })\n\tclickHandler(event: MouseEvent) {\n\t\tif (this.burgerVisibility)\n\t\t\tif (event.composedPath().some(e => e == this.burgerElement || e == this.navElement))\n\t\t\t\t!this.menuOpen\n\t\t\telse\n\t\t\t\tthis.menuOpen = false\n\t}\n\trender() {\n\t\treturn (\n\t\t\t<smoothly-notifier>\n\t\t\t\t<header color={this.color}>\n\t\t\t\t\t<h1>\n\t\t\t\t\t\t<a href={\"\"}>{this.label}</a>\n\t\t\t\t\t</h1>\n\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t<nav ref={e => (this.navElement = e)} class={{ \"menu-open\": this.menuOpen }}>\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t<div class={\"nav-start-container\"}>\n\t\t\t\t\t\t\t\t<slot name=\"nav-start\"></slot>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<slot> </slot>\n\t\t\t\t\t\t\t<div class={\"nav-end-container\"}>\n\t\t\t\t\t\t\t\t<slot name=\"nav-end\"></slot>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</nav>\n\t\t\t\t\t<smoothly-burger\n\t\t\t\t\t\tref={e => (this.burgerElement = e)}\n\t\t\t\t\t\topen={this.menuOpen}\n\t\t\t\t\t\tonSmoothlyNavStatus={e => this.burgerStatusHandler(e)}\n\t\t\t\t\t\tonSmoothlyVisibleStatus={e => this.burgerVisibilityHandler(e)}\n\t\t\t\t\t/>\n\t\t\t\t</header>\n\t\t\t\t<main ref={e => (this.mainElement = e)}></main>\n\t\t\t</smoothly-notifier>\n\t\t)\n\t}\n}\n"]}
@@ -1,28 +1,35 @@
1
- import { h } from "@stencil/core";
2
- if (!globalThis.URLPattern)
3
- (async () => await import("urlpattern-polyfill"))();
1
+ import { h, Host } from "@stencil/core";
2
+ import "urlpattern-polyfill";
4
3
  export class SmoothlyAppRoom {
5
4
  constructor() {
6
5
  this.label = undefined;
7
6
  this.icon = undefined;
7
+ this.disabled = undefined;
8
8
  this.path = "";
9
9
  this.to = undefined;
10
10
  this.selected = undefined;
11
+ this.content = undefined;
11
12
  }
12
- componentDidLoad() {
13
- if ((typeof this.path == "string" ? new URLPattern({ pathname: this.path }) : this.path).test(window.location))
14
- this.smoothlyRoomSelected.emit(this.contentElement);
13
+ componentWillLoad() {
14
+ this.selected = (typeof this.path == "string" ? new URLPattern({ pathname: this.path }) : this.path).test(window.location);
15
+ this.smoothlyRoomLoaded.emit({ selected: this.selected });
16
+ }
17
+ async getContent() {
18
+ return this.contentElement;
19
+ }
20
+ async setSelected(selected, options) {
21
+ this.selected = selected;
22
+ if (selected)
23
+ this.smoothlyRoomSelected.emit({ history: !!(options === null || options === void 0 ? void 0 : options.history) });
24
+ }
25
+ clickHandler(event) {
26
+ if (!event.metaKey && !event.ctrlKey && event.which != 2 && event.button != 1) {
27
+ event.preventDefault();
28
+ this.setSelected(true);
29
+ }
15
30
  }
16
31
  render() {
17
- return [
18
- h("li", null, h("a", { href: typeof this.path == "string" ? this.path : this.path.pathname, onClick: (event) => {
19
- if (!event.metaKey && !event.ctrlKey && event.which != 2 && event.button != 1) {
20
- event.preventDefault();
21
- this.smoothlyRoomSelected.emit(this.contentElement);
22
- }
23
- } }, this.icon ? h("smoothly-icon", { name: this.icon, toolTip: this.label }) : this.label)),
24
- h("main", { ref: (e) => (this.contentElement = e) }, h("slot", null)),
25
- ];
32
+ return (h(Host, null, h("li", null, h("a", { href: typeof this.path == "string" ? this.path : this.path.pathname, onClick: e => this.clickHandler(e) }, this.icon ? h("smoothly-icon", { name: this.icon, toolTip: this.label }) : this.label)), h("main", { ref: e => (this.contentElement = e) }, this.content && h("smoothly-lazy", { content: this.content }), h("slot", null))));
26
33
  }
27
34
  static get is() { return "smoothly-app-room"; }
28
35
  static get encapsulation() { return "scoped"; }
@@ -53,15 +60,20 @@ export class SmoothlyAppRoom {
53
60
  "text": ""
54
61
  },
55
62
  "attribute": "label",
56
- "reflect": false
63
+ "reflect": true
57
64
  },
58
65
  "icon": {
59
66
  "type": "string",
60
67
  "mutable": false,
61
68
  "complexType": {
62
- "original": "string",
63
- "resolved": "string | undefined",
64
- "references": {}
69
+ "original": "Icon",
70
+ "resolved": "Icon | undefined",
71
+ "references": {
72
+ "Icon": {
73
+ "location": "import",
74
+ "path": "../../../model"
75
+ }
76
+ }
65
77
  },
66
78
  "required": false,
67
79
  "optional": true,
@@ -70,7 +82,24 @@ export class SmoothlyAppRoom {
70
82
  "text": ""
71
83
  },
72
84
  "attribute": "icon",
73
- "reflect": false
85
+ "reflect": true
86
+ },
87
+ "disabled": {
88
+ "type": "boolean",
89
+ "mutable": false,
90
+ "complexType": {
91
+ "original": "boolean",
92
+ "resolved": "boolean",
93
+ "references": {}
94
+ },
95
+ "required": false,
96
+ "optional": false,
97
+ "docs": {
98
+ "tags": [],
99
+ "text": ""
100
+ },
101
+ "attribute": "disabled",
102
+ "reflect": true
74
103
  },
75
104
  "path": {
76
105
  "type": "string",
@@ -113,7 +142,7 @@ export class SmoothlyAppRoom {
113
142
  },
114
143
  "selected": {
115
144
  "type": "boolean",
116
- "mutable": false,
145
+ "mutable": true,
117
146
  "complexType": {
118
147
  "original": "boolean",
119
148
  "resolved": "boolean | undefined",
@@ -127,6 +156,30 @@ export class SmoothlyAppRoom {
127
156
  },
128
157
  "attribute": "selected",
129
158
  "reflect": true
159
+ },
160
+ "content": {
161
+ "type": "unknown",
162
+ "mutable": false,
163
+ "complexType": {
164
+ "original": "JSX.Element | FunctionalComponent",
165
+ "resolved": "Element | FunctionalComponent<{}> | undefined",
166
+ "references": {
167
+ "JSX": {
168
+ "location": "import",
169
+ "path": "@stencil/core"
170
+ },
171
+ "FunctionalComponent": {
172
+ "location": "import",
173
+ "path": "@stencil/core"
174
+ }
175
+ }
176
+ },
177
+ "required": false,
178
+ "optional": true,
179
+ "docs": {
180
+ "tags": [],
181
+ "text": ""
182
+ }
130
183
  }
131
184
  };
132
185
  }
@@ -142,15 +195,71 @@ export class SmoothlyAppRoom {
142
195
  "text": ""
143
196
  },
144
197
  "complexType": {
145
- "original": "HTMLElement",
146
- "resolved": "HTMLElement",
198
+ "original": "{ history: boolean }",
199
+ "resolved": "{ history: boolean; }",
200
+ "references": {}
201
+ }
202
+ }, {
203
+ "method": "smoothlyRoomLoaded",
204
+ "name": "smoothlyRoomLoaded",
205
+ "bubbles": true,
206
+ "cancelable": true,
207
+ "composed": true,
208
+ "docs": {
209
+ "tags": [],
210
+ "text": ""
211
+ },
212
+ "complexType": {
213
+ "original": "{ selected: boolean }",
214
+ "resolved": "{ selected: boolean; }",
215
+ "references": {}
216
+ }
217
+ }];
218
+ }
219
+ static get methods() {
220
+ return {
221
+ "getContent": {
222
+ "complexType": {
223
+ "signature": "() => Promise<HTMLElement | undefined>",
224
+ "parameters": [],
147
225
  "references": {
226
+ "Promise": {
227
+ "location": "global"
228
+ },
148
229
  "HTMLElement": {
149
230
  "location": "global"
150
231
  }
151
- }
232
+ },
233
+ "return": "Promise<HTMLElement | undefined>"
234
+ },
235
+ "docs": {
236
+ "text": "",
237
+ "tags": []
152
238
  }
153
- }];
239
+ },
240
+ "setSelected": {
241
+ "complexType": {
242
+ "signature": "(selected: boolean, options?: { history?: boolean; }) => Promise<void>",
243
+ "parameters": [{
244
+ "tags": [],
245
+ "text": ""
246
+ }, {
247
+ "tags": [],
248
+ "text": ""
249
+ }],
250
+ "references": {
251
+ "Promise": {
252
+ "location": "global"
253
+ }
254
+ },
255
+ "return": "Promise<void>"
256
+ },
257
+ "docs": {
258
+ "text": "",
259
+ "tags": []
260
+ }
261
+ }
262
+ };
154
263
  }
155
264
  }
156
265
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/app/room/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoB,KAAK,EAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACzF,IAAI,CAAE,UAAkB,CAAC,UAAU;EAClC,CAAC,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAA;AAOpD,MAAM,OAAO,eAAe;;;;gBAGS,EAAE;;;;EAMtC,gBAAgB;IACf,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;MAC7G,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;EACrD,CAAC;EACD,MAAM;IACL,OAAO;MACN;QACC,SACC,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EACnE,OAAO,EAAE,CAAC,KAAmB,EAAE,EAAE;YAChC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;cAC9E,KAAK,CAAC,cAAc,EAAE,CAAA;cACtB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;aACnD;UACF,CAAC,IACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,qBAAe,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,GAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAC5F,CACA;MACL,YAAM,GAAG,EAAE,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACvD,eAAa,CACP;KACP,CAAA;EACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, ComponentDidLoad, Event, EventEmitter, h, Prop } from \"@stencil/core\"\nif (!(globalThis as any).URLPattern)\n\t(async () => await import(\"urlpattern-polyfill\"))()\n\n@Component({\n\ttag: \"smoothly-app-room\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyAppRoom implements ComponentDidLoad {\n\t@Prop() label?: string\n\t@Prop() icon?: string\n\t@Prop() path: string | URLPattern = \"\"\n\t@Prop() to?: string\n\t@Prop({ reflect: true }) selected?: boolean\n\t@Event() smoothlyRoomSelected: EventEmitter<HTMLElement>\n\tcontentElement: HTMLElement\n\n\tcomponentDidLoad(): void | Promise<void> {\n\t\tif ((typeof this.path == \"string\" ? new URLPattern({ pathname: this.path }) : this.path).test(window.location))\n\t\t\tthis.smoothlyRoomSelected.emit(this.contentElement)\n\t}\n\trender() {\n\t\treturn [\n\t\t\t<li>\n\t\t\t\t<a\n\t\t\t\t\thref={typeof this.path == \"string\" ? this.path : this.path.pathname}\n\t\t\t\t\tonClick={(event: PointerEvent) => {\n\t\t\t\t\t\tif (!event.metaKey && !event.ctrlKey && event.which != 2 && event.button != 1) {\n\t\t\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\t\t\tthis.smoothlyRoomSelected.emit(this.contentElement)\n\t\t\t\t\t\t}\n\t\t\t\t\t}}>\n\t\t\t\t\t{this.icon ? <smoothly-icon name={this.icon} toolTip={this.label}></smoothly-icon> : this.label}\n\t\t\t\t</a>\n\t\t\t</li>,\n\t\t\t<main ref={(e: HTMLElement) => (this.contentElement = e)}>\n\t\t\t\t<slot></slot>\n\t\t\t</main>,\n\t\t]\n\t}\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/app/room/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqC,CAAC,EAAE,IAAI,EAAO,MAAM,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAC/G,OAAO,qBAAqB,CAAA;AAQ5B,MAAM,OAAO,eAAe;;;;;gBAIS,EAAE;;;;;EAQtC,iBAAiB;IAChB,IAAI,CAAC,QAAQ,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CACxG,MAAM,CAAC,QAAQ,CACf,CAAA;IACD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;EAC1D,CAAC;EAGD,KAAK,CAAC,UAAU;IACf,OAAO,IAAI,CAAC,cAAc,CAAA;EAC3B,CAAC;EAED,KAAK,CAAC,WAAW,CAAC,QAAiB,EAAE,OAA+B;IACnE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IACxB,IAAI,QAAQ;MACX,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC,CAAA;EACjE,CAAC;EAED,YAAY,CAAC,KAAiB;IAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;MAC9E,KAAK,CAAC,cAAc,EAAE,CAAA;MACtB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;KACtB;EACF,CAAC;EAED,MAAM;IACL,OAAO,CACN,EAAC,IAAI;MACJ;QACC,SAAG,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IACxG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,qBAAe,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,GAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAC5F,CACA;MACL,YAAM,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,IAAI,qBAAe,OAAO,EAAE,IAAI,CAAC,OAAO,GAAI;QACzD,eAAa,CACP,CACD,CACP,CAAA;EACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import { Component, Event, EventEmitter, FunctionalComponent, h, Host, JSX, Method, Prop } from \"@stencil/core\"\nimport \"urlpattern-polyfill\"\nimport { Icon } from \"../../../model\"\n\n@Component({\n\ttag: \"smoothly-app-room\",\n\tstyleUrl: \"style.css\",\n\tscoped: true,\n})\nexport class SmoothlyAppRoom {\n\t@Prop({ reflect: true }) label?: string\n\t@Prop({ reflect: true }) icon?: Icon\n\t@Prop({ reflect: true }) disabled: boolean\n\t@Prop() path: string | URLPattern = \"\"\n\t@Prop() to?: string\n\t@Prop({ reflect: true, mutable: true }) selected?: boolean\n\t@Prop() content?: JSX.Element | FunctionalComponent\n\t@Event() smoothlyRoomSelected: EventEmitter<{ history: boolean }>\n\t@Event() smoothlyRoomLoaded: EventEmitter<{ selected: boolean }>\n\tprivate contentElement?: HTMLElement\n\n\tcomponentWillLoad() {\n\t\tthis.selected = (typeof this.path == \"string\" ? new URLPattern({ pathname: this.path }) : this.path).test(\n\t\t\twindow.location\n\t\t)\n\t\tthis.smoothlyRoomLoaded.emit({ selected: this.selected })\n\t}\n\n\t@Method()\n\tasync getContent(): Promise<HTMLElement | undefined> {\n\t\treturn this.contentElement\n\t}\n\t@Method()\n\tasync setSelected(selected: boolean, options?: { history?: boolean }): Promise<void> {\n\t\tthis.selected = selected\n\t\tif (selected)\n\t\t\tthis.smoothlyRoomSelected.emit({ history: !!options?.history })\n\t}\n\n\tclickHandler(event: MouseEvent) {\n\t\tif (!event.metaKey && !event.ctrlKey && event.which != 2 && event.button != 1) {\n\t\t\tevent.preventDefault()\n\t\t\tthis.setSelected(true)\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<li>\n\t\t\t\t\t<a href={typeof this.path == \"string\" ? this.path : this.path.pathname} onClick={e => this.clickHandler(e)}>\n\t\t\t\t\t\t{this.icon ? <smoothly-icon name={this.icon} toolTip={this.label}></smoothly-icon> : this.label}\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t\t<main ref={e => (this.contentElement = e)}>\n\t\t\t\t\t{this.content && <smoothly-lazy content={this.content} />}\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</main>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
@@ -4,27 +4,56 @@
4
4
  text-align: center;
5
5
  cursor: pointer;
6
6
  }
7
- :host > main {
7
+
8
+ main {
9
+ overflow-y: auto;
10
+ }
11
+
12
+ :not(:host[label], :host[icon]),
13
+ :host[disabled] {
14
+ display: none;
15
+ }
16
+
17
+ :host>main {
8
18
  display: none;
9
19
  }
10
- :host > li {
20
+
21
+ :host>li {
11
22
  height: 100%;
12
23
  list-style: none;
13
24
  }
14
- :host > li > a {
15
- margin: 0em 1.5em;
25
+
26
+ :host>li>a {
27
+ padding: 0 1.5em;
16
28
  height: 100%;
17
29
  }
18
- :host[selected] > li {
30
+
31
+ :host[selected]>li>a {
32
+ display: flex;
19
33
  color: rgb(var(--smoothly-color-contrast));
20
34
  background: rgb(var(--smoothly-color-shade));
21
35
  }
22
- :host:hover > li {
23
- color:rgb(var(--smoothly-color-contrast));
36
+
37
+ :host:hover>li>a {
38
+ color: rgb(var(--smoothly-color-contrast));
24
39
  background-color: rgb(var(--smoothly-color-tint));
25
- transition: 0.2s;
40
+ transition: 0.2s;
26
41
  }
27
- :host > li > a > smoothly-icon{
28
- align-self:inherit;
42
+
43
+ :host>li>a>smoothly-icon {
44
+ align-self: inherit;
29
45
  margin-bottom: 1em;
30
46
  }
47
+
48
+ @media screen and (max-width: 900px) {
49
+ :host>li>a {
50
+ padding: 0;
51
+ }
52
+
53
+ :host>li>a {
54
+ margin-left: -1.5rem;
55
+ margin-right: -1.5rem;
56
+ padding-left: 1.5rem;
57
+ padding-right: 1.5rem;
58
+ }
59
+ }