snice 2.5.4 → 3.1.0

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 (323) hide show
  1. package/README.md +501 -882
  2. package/bin/templates/base/src/components/counter-button.ts +13 -26
  3. package/bin/templates/base/src/controllers/counter-controller.ts +3 -3
  4. package/dist/components/accordion/snice-accordion-item.d.ts +4 -5
  5. package/dist/components/accordion/snice-accordion-item.js +37 -39
  6. package/dist/components/accordion/snice-accordion-item.js.map +1 -1
  7. package/dist/components/accordion/snice-accordion.d.ts +5 -11
  8. package/dist/components/accordion/snice-accordion.js +51 -52
  9. package/dist/components/accordion/snice-accordion.js.map +1 -1
  10. package/dist/components/alert/snice-alert.d.ts +2 -6
  11. package/dist/components/alert/snice-alert.js +41 -56
  12. package/dist/components/alert/snice-alert.js.map +1 -1
  13. package/dist/components/avatar/snice-avatar.d.ts +2 -6
  14. package/dist/components/avatar/snice-avatar.js +64 -71
  15. package/dist/components/avatar/snice-avatar.js.map +1 -1
  16. package/dist/components/badge/snice-badge.d.ts +2 -3
  17. package/dist/components/badge/snice-badge.js +22 -23
  18. package/dist/components/badge/snice-badge.js.map +1 -1
  19. package/dist/components/breadcrumbs/snice-breadcrumbs.d.ts +5 -12
  20. package/dist/components/breadcrumbs/snice-breadcrumbs.js +88 -89
  21. package/dist/components/breadcrumbs/snice-breadcrumbs.js.map +1 -1
  22. package/dist/components/button/snice-button.d.ts +3 -7
  23. package/dist/components/button/snice-button.js +37 -58
  24. package/dist/components/button/snice-button.js.map +1 -1
  25. package/dist/components/card/snice-card.d.ts +5 -8
  26. package/dist/components/card/snice-card.js +71 -56
  27. package/dist/components/card/snice-card.js.map +1 -1
  28. package/dist/components/checkbox/snice-checkbox.d.ts +4 -13
  29. package/dist/components/checkbox/snice-checkbox.js +66 -137
  30. package/dist/components/checkbox/snice-checkbox.js.map +1 -1
  31. package/dist/components/chip/snice-chip.d.ts +5 -11
  32. package/dist/components/chip/snice-chip.js +44 -47
  33. package/dist/components/chip/snice-chip.js.map +1 -1
  34. package/dist/components/date-picker/snice-date-picker.d.ts +11 -11
  35. package/dist/components/date-picker/snice-date-picker.js +134 -133
  36. package/dist/components/date-picker/snice-date-picker.js.map +1 -1
  37. package/dist/components/divider/snice-divider.d.ts +2 -4
  38. package/dist/components/divider/snice-divider.js +14 -22
  39. package/dist/components/divider/snice-divider.js.map +1 -1
  40. package/dist/components/drawer/snice-drawer.d.ts +4 -4
  41. package/dist/components/drawer/snice-drawer.js +25 -19
  42. package/dist/components/drawer/snice-drawer.js.map +1 -1
  43. package/dist/components/input/snice-input.d.ts +8 -6
  44. package/dist/components/input/snice-input.js +122 -105
  45. package/dist/components/input/snice-input.js.map +1 -1
  46. package/dist/components/layout/snice-layout-blog.d.ts +4 -4
  47. package/dist/components/layout/snice-layout-blog.js +21 -19
  48. package/dist/components/layout/snice-layout-blog.js.map +1 -1
  49. package/dist/components/layout/snice-layout-card.d.ts +2 -2
  50. package/dist/components/layout/snice-layout-card.js +16 -9
  51. package/dist/components/layout/snice-layout-card.js.map +1 -1
  52. package/dist/components/layout/snice-layout-centered.d.ts +2 -2
  53. package/dist/components/layout/snice-layout-centered.js +14 -7
  54. package/dist/components/layout/snice-layout-centered.js.map +1 -1
  55. package/dist/components/layout/snice-layout-dashboard.d.ts +5 -5
  56. package/dist/components/layout/snice-layout-dashboard.js +38 -30
  57. package/dist/components/layout/snice-layout-dashboard.js.map +1 -1
  58. package/dist/components/layout/snice-layout-fullscreen.d.ts +2 -2
  59. package/dist/components/layout/snice-layout-fullscreen.js +17 -10
  60. package/dist/components/layout/snice-layout-fullscreen.js.map +1 -1
  61. package/dist/components/layout/snice-layout-landing.d.ts +4 -4
  62. package/dist/components/layout/snice-layout-landing.js +21 -19
  63. package/dist/components/layout/snice-layout-landing.js.map +1 -1
  64. package/dist/components/layout/snice-layout-minimal.d.ts +2 -2
  65. package/dist/components/layout/snice-layout-minimal.js +17 -6
  66. package/dist/components/layout/snice-layout-minimal.js.map +1 -1
  67. package/dist/components/layout/snice-layout-sidebar.d.ts +5 -4
  68. package/dist/components/layout/snice-layout-sidebar.js +42 -20
  69. package/dist/components/layout/snice-layout-sidebar.js.map +1 -1
  70. package/dist/components/layout/snice-layout-split.d.ts +2 -2
  71. package/dist/components/layout/snice-layout-split.js +14 -7
  72. package/dist/components/layout/snice-layout-split.js.map +1 -1
  73. package/dist/components/layout/snice-layout.d.ts +4 -4
  74. package/dist/components/layout/snice-layout.js +16 -10
  75. package/dist/components/layout/snice-layout.js.map +1 -1
  76. package/dist/components/login/snice-login.d.ts +6 -11
  77. package/dist/components/login/snice-login.js +97 -71
  78. package/dist/components/login/snice-login.js.map +1 -1
  79. package/dist/components/modal/snice-modal.d.ts +5 -9
  80. package/dist/components/modal/snice-modal.js +47 -78
  81. package/dist/components/modal/snice-modal.js.map +1 -1
  82. package/dist/components/nav/snice-nav.d.ts +13 -7
  83. package/dist/components/nav/snice-nav.js +191 -100
  84. package/dist/components/nav/snice-nav.js.map +1 -1
  85. package/dist/components/nav/snice-nav.types.d.ts +3 -3
  86. package/dist/components/pagination/snice-pagination.d.ts +6 -7
  87. package/dist/components/pagination/snice-pagination.js +94 -81
  88. package/dist/components/pagination/snice-pagination.js.map +1 -1
  89. package/dist/components/progress/snice-progress.d.ts +2 -7
  90. package/dist/components/progress/snice-progress.js +41 -98
  91. package/dist/components/progress/snice-progress.js.map +1 -1
  92. package/dist/components/radio/snice-radio.d.ts +4 -4
  93. package/dist/components/radio/snice-radio.js +52 -44
  94. package/dist/components/radio/snice-radio.js.map +1 -1
  95. package/dist/components/select/snice-option.d.ts +2 -1
  96. package/dist/components/select/snice-option.js +12 -5
  97. package/dist/components/select/snice-option.js.map +1 -1
  98. package/dist/components/select/snice-select.d.ts +9 -21
  99. package/dist/components/select/snice-select.js +98 -170
  100. package/dist/components/select/snice-select.js.map +1 -1
  101. package/dist/components/skeleton/snice-skeleton.d.ts +2 -6
  102. package/dist/components/skeleton/snice-skeleton.js +18 -49
  103. package/dist/components/skeleton/snice-skeleton.js.map +1 -1
  104. package/dist/components/snice-cell-BLFVdxPp.js +4 -0
  105. package/dist/components/snice-cell-BLFVdxPp.js.map +1 -0
  106. package/dist/components/switch/snice-switch.d.ts +2 -2
  107. package/dist/components/switch/snice-switch.js +38 -26
  108. package/dist/components/switch/snice-switch.js.map +1 -1
  109. package/dist/components/table/snice-cell-actions.d.ts +24 -0
  110. package/dist/components/table/snice-cell-actions.js +149 -0
  111. package/dist/components/table/snice-cell-actions.js.map +1 -0
  112. package/dist/components/table/snice-cell-boolean.d.ts +2 -2
  113. package/dist/components/table/snice-cell-boolean.js +13 -7
  114. package/dist/components/table/snice-cell-boolean.js.map +1 -1
  115. package/dist/components/table/snice-cell-color.d.ts +18 -0
  116. package/dist/components/table/snice-cell-color.js +149 -0
  117. package/dist/components/table/snice-cell-color.js.map +1 -0
  118. package/dist/components/table/snice-cell-currency.d.ts +24 -0
  119. package/dist/components/table/snice-cell-currency.js +235 -0
  120. package/dist/components/table/snice-cell-currency.js.map +1 -0
  121. package/dist/components/table/snice-cell-date.d.ts +2 -2
  122. package/dist/components/table/snice-cell-date.js +14 -8
  123. package/dist/components/table/snice-cell-date.js.map +1 -1
  124. package/dist/components/table/snice-cell-duration.d.ts +2 -2
  125. package/dist/components/table/snice-cell-duration.js +12 -6
  126. package/dist/components/table/snice-cell-duration.js.map +1 -1
  127. package/dist/components/table/snice-cell-email.d.ts +15 -0
  128. package/dist/components/table/snice-cell-email.js +125 -0
  129. package/dist/components/table/snice-cell-email.js.map +1 -0
  130. package/dist/components/table/snice-cell-filesize.d.ts +2 -2
  131. package/dist/components/table/snice-cell-filesize.js +12 -6
  132. package/dist/components/table/snice-cell-filesize.js.map +1 -1
  133. package/dist/components/table/snice-cell-image.d.ts +20 -0
  134. package/dist/components/table/snice-cell-image.js +162 -0
  135. package/dist/components/table/snice-cell-image.js.map +1 -0
  136. package/dist/components/table/snice-cell-json.d.ts +20 -0
  137. package/dist/components/table/snice-cell-json.js +186 -0
  138. package/dist/components/table/snice-cell-json.js.map +1 -0
  139. package/dist/components/table/snice-cell-link.d.ts +17 -0
  140. package/dist/components/table/snice-cell-link.js +142 -0
  141. package/dist/components/table/snice-cell-link.js.map +1 -0
  142. package/dist/components/table/snice-cell-location.d.ts +19 -0
  143. package/dist/components/table/snice-cell-location.js +185 -0
  144. package/dist/components/table/snice-cell-location.js.map +1 -0
  145. package/dist/components/table/snice-cell-number.d.ts +2 -2
  146. package/dist/components/table/snice-cell-number.js +12 -6
  147. package/dist/components/table/snice-cell-number.js.map +1 -1
  148. package/dist/components/table/snice-cell-percentage.d.ts +22 -0
  149. package/dist/components/table/snice-cell-percentage.js +208 -0
  150. package/dist/components/table/snice-cell-percentage.js.map +1 -0
  151. package/dist/components/table/snice-cell-phone.d.ts +18 -0
  152. package/dist/components/table/snice-cell-phone.js +153 -0
  153. package/dist/components/table/snice-cell-phone.js.map +1 -0
  154. package/dist/components/table/snice-cell-progress.d.ts +2 -2
  155. package/dist/components/table/snice-cell-progress.js +12 -6
  156. package/dist/components/table/snice-cell-progress.js.map +1 -1
  157. package/dist/components/table/snice-cell-rating.d.ts +2 -2
  158. package/dist/components/table/snice-cell-rating.js +12 -6
  159. package/dist/components/table/snice-cell-rating.js.map +1 -1
  160. package/dist/components/table/snice-cell-sparkline.d.ts +2 -2
  161. package/dist/components/table/snice-cell-sparkline.js +13 -7
  162. package/dist/components/table/snice-cell-sparkline.js.map +1 -1
  163. package/dist/components/table/snice-cell-status.d.ts +17 -0
  164. package/dist/components/table/snice-cell-status.js +144 -0
  165. package/dist/components/table/snice-cell-status.js.map +1 -0
  166. package/dist/components/table/snice-cell-tag.d.ts +16 -0
  167. package/dist/components/table/snice-cell-tag.js +131 -0
  168. package/dist/components/table/snice-cell-tag.js.map +1 -0
  169. package/dist/components/table/snice-cell-text.d.ts +2 -2
  170. package/dist/components/table/snice-cell-text.js +14 -8
  171. package/dist/components/table/snice-cell-text.js.map +1 -1
  172. package/dist/components/table/snice-cell.d.ts +2 -2
  173. package/dist/components/table/snice-cell.js +12 -6
  174. package/dist/components/table/snice-cell.js.map +1 -1
  175. package/dist/components/table/snice-column.d.ts +1 -1
  176. package/dist/components/table/snice-column.js +6 -3
  177. package/dist/components/table/snice-column.js.map +1 -1
  178. package/dist/components/table/snice-header.d.ts +5 -5
  179. package/dist/components/table/snice-header.js +60 -50
  180. package/dist/components/table/snice-header.js.map +1 -1
  181. package/dist/components/table/snice-progress.d.ts +2 -2
  182. package/dist/components/table/snice-progress.js +18 -11
  183. package/dist/components/table/snice-progress.js.map +1 -1
  184. package/dist/components/table/snice-rating.d.ts +2 -2
  185. package/dist/components/table/snice-rating.js +15 -8
  186. package/dist/components/table/snice-rating.js.map +1 -1
  187. package/dist/components/table/snice-row.d.ts +17 -6
  188. package/dist/components/table/snice-row.js +95 -44
  189. package/dist/components/table/snice-row.js.map +1 -1
  190. package/dist/components/table/snice-table.d.ts +18 -10
  191. package/dist/components/table/snice-table.js +355 -173
  192. package/dist/components/table/snice-table.js.map +1 -1
  193. package/dist/components/table/snice-table.types.d.ts +101 -2
  194. package/dist/components/tabs/snice-tab-panel.d.ts +2 -2
  195. package/dist/components/tabs/snice-tab-panel.js +12 -6
  196. package/dist/components/tabs/snice-tab-panel.js.map +1 -1
  197. package/dist/components/tabs/snice-tab.d.ts +6 -5
  198. package/dist/components/tabs/snice-tab.js +36 -19
  199. package/dist/components/tabs/snice-tab.js.map +1 -1
  200. package/dist/components/tabs/snice-tabs.d.ts +5 -5
  201. package/dist/components/tabs/snice-tabs.js +38 -28
  202. package/dist/components/tabs/snice-tabs.js.map +1 -1
  203. package/dist/components/toast/snice-toast-container.d.ts +7 -7
  204. package/dist/components/toast/snice-toast-container.js +19 -12
  205. package/dist/components/toast/snice-toast-container.js.map +1 -1
  206. package/dist/components/toast/snice-toast.d.ts +3 -15
  207. package/dist/components/toast/snice-toast.js +49 -108
  208. package/dist/components/toast/snice-toast.js.map +1 -1
  209. package/dist/components/tooltip/snice-tooltip.d.ts +2 -2
  210. package/dist/components/tooltip/snice-tooltip.js +14 -7
  211. package/dist/components/tooltip/snice-tooltip.js.map +1 -1
  212. package/dist/context.d.ts +44 -0
  213. package/dist/element-ready.d.ts +40 -0
  214. package/dist/{types/element.d.ts → element.d.ts} +2 -8
  215. package/dist/{types/events.d.ts → events.d.ts} +0 -4
  216. package/dist/index.cjs +2589 -605
  217. package/dist/index.cjs.map +1 -1
  218. package/dist/index.d.ts +21 -0
  219. package/dist/index.esm.js +2568 -604
  220. package/dist/index.esm.js.map +1 -1
  221. package/dist/index.iife.js +2589 -605
  222. package/dist/index.iife.js.map +1 -1
  223. package/dist/method-decorators.d.ts +121 -0
  224. package/dist/on.d.ts +59 -0
  225. package/dist/parts.d.ts +159 -0
  226. package/dist/render-debug.d.ts +27 -0
  227. package/dist/render-tracker.d.ts +14 -0
  228. package/dist/render.d.ts +96 -0
  229. package/dist/symbols.cjs +163 -0
  230. package/dist/symbols.cjs.map +1 -1
  231. package/dist/{types/symbols.d.ts → symbols.d.ts} +22 -0
  232. package/dist/symbols.esm.js +27 -3
  233. package/dist/symbols.esm.js.map +1 -1
  234. package/dist/template.d.ts +100 -0
  235. package/dist/transitions.cjs +219 -0
  236. package/dist/transitions.esm.js +2 -2
  237. package/dist/types/context.d.ts +48 -0
  238. package/dist/types/element-options.d.ts +26 -0
  239. package/dist/types/index.d.ts +25 -9
  240. package/dist/types/nav-context.d.ts +19 -0
  241. package/dist/types/{types/on-options.d.ts → on-options.d.ts} +2 -0
  242. package/dist/types/{types/placard.d.ts → placard.d.ts} +0 -1
  243. package/docs/ai/README.md +17 -0
  244. package/docs/ai/api.md +175 -0
  245. package/docs/ai/architecture.md +160 -0
  246. package/docs/ai/components/accordion.md +174 -0
  247. package/docs/ai/components/alert.md +77 -0
  248. package/docs/ai/components/avatar.md +61 -0
  249. package/docs/ai/components/badge.md +69 -0
  250. package/docs/ai/components/breadcrumbs.md +74 -0
  251. package/docs/ai/components/button.md +75 -0
  252. package/docs/ai/components/card.md +61 -0
  253. package/docs/ai/components/checkbox.md +74 -0
  254. package/docs/ai/components/chip.md +73 -0
  255. package/docs/ai/components/date-picker.md +75 -0
  256. package/docs/ai/components/divider.md +66 -0
  257. package/docs/ai/components/drawer.md +80 -0
  258. package/docs/ai/components/input.md +111 -0
  259. package/docs/ai/components/login.md +109 -0
  260. package/docs/ai/components/modal.md +67 -0
  261. package/docs/ai/components/nav.md +76 -0
  262. package/docs/ai/components/pagination.md +55 -0
  263. package/docs/ai/components/progress.md +72 -0
  264. package/docs/ai/components/radio.md +79 -0
  265. package/docs/ai/components/select.md +92 -0
  266. package/docs/ai/components/skeleton.md +57 -0
  267. package/docs/ai/components/switch.md +53 -0
  268. package/docs/ai/components/table.md +227 -0
  269. package/docs/ai/components/tabs.md +83 -0
  270. package/docs/ai/components/toast.md +140 -0
  271. package/docs/ai/components/tooltip.md +146 -0
  272. package/docs/ai/patterns.md +244 -0
  273. package/docs/components/accordion.md +558 -0
  274. package/docs/components/drawer.md +602 -0
  275. package/docs/components/modal.md +558 -0
  276. package/docs/components/nav.md +239 -0
  277. package/docs/components/pagination.md +289 -0
  278. package/docs/components/select.md +599 -0
  279. package/docs/components/switch.md +354 -0
  280. package/docs/components/tabs.md +546 -0
  281. package/docs/components/toast.md +506 -0
  282. package/docs/components/tooltip.md +523 -0
  283. package/docs/controllers.md +744 -0
  284. package/docs/elements.md +855 -0
  285. package/docs/events.md +807 -0
  286. package/docs/migration-v2-to-v3.md +569 -0
  287. package/docs/observe.md +588 -0
  288. package/docs/placards.md +401 -0
  289. package/docs/request-response.md +852 -0
  290. package/docs/routing.md +1186 -0
  291. package/package.json +10 -11
  292. package/dist/components/snice-cell-C9N6yGxQ.js +0 -4
  293. package/dist/components/snice-cell-C9N6yGxQ.js.map +0 -1
  294. package/dist/types/types/index.d.ts +0 -23
  295. /package/dist/{types/controller.d.ts → controller.d.ts} +0 -0
  296. /package/dist/{types/global.d.ts → global.d.ts} +0 -0
  297. /package/dist/{types/observe.d.ts → observe.d.ts} +0 -0
  298. /package/dist/{types/request-response.d.ts → request-response.d.ts} +0 -0
  299. /package/dist/{types/router.d.ts → router.d.ts} +0 -0
  300. /package/dist/{types/testing.d.ts → testing.d.ts} +0 -0
  301. /package/dist/{types/transitions.d.ts → transitions.d.ts} +0 -0
  302. /package/dist/types/{types/adopted-options.d.ts → adopted-options.d.ts} +0 -0
  303. /package/dist/types/{types/app-context.d.ts → app-context.d.ts} +0 -0
  304. /package/dist/types/{types/dispatch-options.d.ts → dispatch-options.d.ts} +0 -0
  305. /package/dist/types/{types/guard.d.ts → guard.d.ts} +0 -0
  306. /package/dist/types/{types/i-controller.d.ts → i-controller.d.ts} +0 -0
  307. /package/dist/types/{types/moved-options.d.ts → moved-options.d.ts} +0 -0
  308. /package/dist/types/{types/observe-options.d.ts → observe-options.d.ts} +0 -0
  309. /package/dist/types/{types/page-options.d.ts → page-options.d.ts} +0 -0
  310. /package/dist/types/{types/part-options.d.ts → part-options.d.ts} +0 -0
  311. /package/dist/types/{types/property-converter.d.ts → property-converter.d.ts} +0 -0
  312. /package/dist/types/{types/property-options.d.ts → property-options.d.ts} +0 -0
  313. /package/dist/types/{types/query-options.d.ts → query-options.d.ts} +0 -0
  314. /package/dist/types/{types/request-options.d.ts → request-options.d.ts} +0 -0
  315. /package/dist/types/{types/respond-options.d.ts → respond-options.d.ts} +0 -0
  316. /package/dist/types/{types/route-params.d.ts → route-params.d.ts} +0 -0
  317. /package/dist/types/{types/router-instance.d.ts → router-instance.d.ts} +0 -0
  318. /package/dist/types/{types/router-options.d.ts → router-options.d.ts} +0 -0
  319. /package/dist/types/{types/simple-array.d.ts → simple-array.d.ts} +0 -0
  320. /package/dist/types/{types/snice-element.d.ts → snice-element.d.ts} +0 -0
  321. /package/dist/types/{types/snice-global.d.ts → snice-global.d.ts} +0 -0
  322. /package/dist/types/{types/transition.d.ts → transition.d.ts} +0 -0
  323. /package/dist/{types/utils.d.ts → utils.d.ts} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { __esDecorate, __runInitializers } from 'tslib';
2
- import { element, property, query, watch, part, ready } from 'snice';
2
+ import { element, property, query, render, styles, ready, watch, html, css } from 'snice';
3
3
 
4
- var css = ":host {\n display: inline-block;\n --badge-offset: 0px;\n}\n\n.badge-wrapper {\n position: relative;\n display: inline-block;\n width: fit-content;\n height: fit-content;\n}\n\n.badge {\n position: absolute;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 1.25rem; /* 20px */\n height: 1.25rem; /* 20px */\n padding: 0 0.375rem; /* 0 6px */\n border-radius: 10px;\n font-size: 0.75rem; /* 12px */\n font-weight: 600;\n line-height: 1;\n white-space: nowrap;\n z-index: 1;\n transition: opacity 0.2s ease;\n box-shadow: var(--snice-shadow-sm);\n border: 2px solid rgba(255, 255, 255, 0.9);\n box-sizing: border-box;\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5), 0 1px 1px rgba(0, 0, 0, 0.3);\n}\n\n.badge--dot {\n min-width: 0.5rem; /* 8px */\n height: 0.5rem; /* 8px */\n padding: 0;\n border-radius: 50%;\n border: none;\n}\n\n/* Sizes */\n:host([size=\"small\"]) .badge {\n min-width: 1rem; /* 16px */\n height: 1rem; /* 16px */\n padding: 0 0.25rem; /* 0 4px */\n font-size: 0.625rem; /* 10px */\n}\n\n:host([size=\"small\"]) .badge--dot {\n min-width: 0.375rem; /* 6px */\n height: 0.375rem; /* 6px */\n}\n\n:host([size=\"large\"]) .badge {\n min-width: 1.5rem; /* 24px */\n height: 1.5rem; /* 24px */\n padding: 0 0.5rem; /* 0 8px */\n font-size: 0.875rem; /* 14px */\n}\n\n:host([size=\"large\"]) .badge--dot {\n min-width: 0.625rem; /* 10px */\n height: 0.625rem; /* 10px */\n}\n\n/* Pulse animation */\n.badge--pulse {\n animation: pulse 2s infinite;\n}\n\n.badge--pulse.badge--dot::before {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: 50%;\n background: inherit;\n animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;\n}\n\n@keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.8;\n }\n}\n\n@keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}\n\n/* Positions */\n:host([position=\"top-right\"]) .badge,\n:host(:not([position])) .badge {\n top: var(--badge-offset);\n right: var(--badge-offset);\n transform: translate(50%, -50%);\n}\n\n:host([position=\"top-left\"]) .badge {\n top: var(--badge-offset);\n left: var(--badge-offset);\n transform: translate(-50%, -50%);\n}\n\n:host([position=\"bottom-right\"]) .badge {\n bottom: var(--badge-offset);\n right: var(--badge-offset);\n transform: translate(50%, 50%);\n}\n\n:host([position=\"bottom-left\"]) .badge {\n bottom: var(--badge-offset);\n left: var(--badge-offset);\n transform: translate(-50%, 50%);\n}\n\n/* Inline mode */\n:host([inline]) .badge {\n position: static;\n transform: none;\n margin-left: 0.5rem; /* 8px */\n vertical-align: middle;\n}\n\n/* Variants - using standard colors with emphasized borders */\n:host([variant=\"default\"]) .badge,\n:host(:not([variant])) .badge {\n background: rgb(var(--snice-color-gray-600));\n color: white;\n}\n\n:host([variant=\"primary\"]) .badge {\n background: rgb(var(--snice-color-blue-600));\n color: white;\n}\n\n:host([variant=\"success\"]) .badge {\n background: rgb(var(--snice-color-green-600));\n color: white;\n}\n\n:host([variant=\"warning\"]) .badge {\n background: rgb(var(--snice-color-yellow-600));\n color: white;\n}\n\n:host([variant=\"error\"]) .badge {\n background: rgb(var(--snice-color-red-600));\n color: white;\n}\n\n:host([variant=\"info\"]) .badge {\n background: rgb(var(--snice-color-blue-600));\n color: white;\n}";
4
+ var cssContent = ":host {\n display: inline-block;\n --badge-offset: 0px;\n}\n\n.badge-wrapper {\n position: relative;\n display: inline-block;\n width: fit-content;\n height: fit-content;\n}\n\n.badge {\n position: absolute;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 1.25rem; /* 20px */\n height: 1.25rem; /* 20px */\n padding: 0 0.375rem; /* 0 6px */\n border-radius: 10px;\n font-size: 0.75rem; /* 12px */\n font-weight: 600;\n line-height: 1;\n white-space: nowrap;\n z-index: 1;\n transition: opacity 0.2s ease;\n box-shadow: var(--snice-shadow-sm);\n border: 2px solid rgba(255, 255, 255, 0.9);\n box-sizing: border-box;\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5), 0 1px 1px rgba(0, 0, 0, 0.3);\n}\n\n.badge--dot {\n min-width: 0.5rem; /* 8px */\n height: 0.5rem; /* 8px */\n padding: 0;\n border-radius: 50%;\n border: none;\n}\n\n/* Sizes */\n:host([size=\"small\"]) .badge {\n min-width: 1rem; /* 16px */\n height: 1rem; /* 16px */\n padding: 0 0.25rem; /* 0 4px */\n font-size: 0.625rem; /* 10px */\n}\n\n:host([size=\"small\"]) .badge--dot {\n min-width: 0.375rem; /* 6px */\n height: 0.375rem; /* 6px */\n}\n\n:host([size=\"large\"]) .badge {\n min-width: 1.5rem; /* 24px */\n height: 1.5rem; /* 24px */\n padding: 0 0.5rem; /* 0 8px */\n font-size: 0.875rem; /* 14px */\n}\n\n:host([size=\"large\"]) .badge--dot {\n min-width: 0.625rem; /* 10px */\n height: 0.625rem; /* 10px */\n}\n\n/* Pulse animation */\n.badge--pulse {\n animation: pulse 2s infinite;\n}\n\n.badge--pulse.badge--dot::before {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: 50%;\n background: inherit;\n animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;\n}\n\n@keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.8;\n }\n}\n\n@keyframes ping {\n 75%, 100% {\n transform: scale(2);\n opacity: 0;\n }\n}\n\n/* Positions */\n:host([position=\"top-right\"]) .badge,\n:host(:not([position])) .badge {\n top: var(--badge-offset);\n right: var(--badge-offset);\n transform: translate(50%, -50%);\n}\n\n:host([position=\"top-left\"]) .badge {\n top: var(--badge-offset);\n left: var(--badge-offset);\n transform: translate(-50%, -50%);\n}\n\n:host([position=\"bottom-right\"]) .badge {\n bottom: var(--badge-offset);\n right: var(--badge-offset);\n transform: translate(50%, 50%);\n}\n\n:host([position=\"bottom-left\"]) .badge {\n bottom: var(--badge-offset);\n left: var(--badge-offset);\n transform: translate(-50%, 50%);\n}\n\n/* Inline mode */\n:host([inline]) .badge {\n position: static;\n transform: none;\n margin-left: 0.5rem; /* 8px */\n vertical-align: middle;\n}\n\n/* Variants - using standard colors with emphasized borders */\n:host([variant=\"default\"]) .badge,\n:host(:not([variant])) .badge {\n background: rgb(var(--snice-color-gray-600));\n color: white;\n}\n\n:host([variant=\"primary\"]) .badge {\n background: rgb(var(--snice-color-blue-600));\n color: white;\n}\n\n:host([variant=\"success\"]) .badge {\n background: rgb(var(--snice-color-green-600));\n color: white;\n}\n\n:host([variant=\"warning\"]) .badge {\n background: rgb(var(--snice-color-yellow-600));\n color: white;\n}\n\n:host([variant=\"error\"]) .badge {\n background: rgb(var(--snice-color-red-600));\n color: white;\n}\n\n:host([variant=\"info\"]) .badge {\n background: rgb(var(--snice-color-blue-600));\n color: white;\n}";
5
5
 
6
6
  let SniceBadge = (() => {
7
7
  let _classDecorators = [element('snice-badge')];
@@ -43,7 +43,8 @@ let SniceBadge = (() => {
43
43
  let _badgeElement_decorators;
44
44
  let _badgeElement_initializers = [];
45
45
  let _badgeElement_extraInitializers = [];
46
- let _renderBadgeSection_decorators;
46
+ let _renderContent_decorators;
47
+ let _componentStyles_decorators;
47
48
  let _init_decorators;
48
49
  let _updateOffset_decorators;
49
50
  (class extends _classSuper {
@@ -61,10 +62,12 @@ let SniceBadge = (() => {
61
62
  _pulse_decorators = [property({ type: Boolean, })];
62
63
  _offset_decorators = [property({ type: Number, })];
63
64
  _badgeElement_decorators = [query('.badge')];
64
- _renderBadgeSection_decorators = [watch('content', 'count', 'max', 'dot', 'pulse'), part('badge-section')];
65
+ _renderContent_decorators = [render()];
66
+ _componentStyles_decorators = [styles()];
65
67
  _init_decorators = [ready()];
66
68
  _updateOffset_decorators = [watch('offset')];
67
- __esDecorate(this, null, _renderBadgeSection_decorators, { kind: "method", name: "renderBadgeSection", static: false, private: false, access: { has: obj => "renderBadgeSection" in obj, get: obj => obj.renderBadgeSection }, metadata: _metadata }, null, _instanceExtraInitializers);
69
+ __esDecorate(this, null, _renderContent_decorators, { kind: "method", name: "renderContent", static: false, private: false, access: { has: obj => "renderContent" in obj, get: obj => obj.renderContent }, metadata: _metadata }, null, _instanceExtraInitializers);
70
+ __esDecorate(this, null, _componentStyles_decorators, { kind: "method", name: "componentStyles", static: false, private: false, access: { has: obj => "componentStyles" in obj, get: obj => obj.componentStyles }, metadata: _metadata }, null, _instanceExtraInitializers);
68
71
  __esDecorate(this, null, _init_decorators, { kind: "method", name: "init", static: false, private: false, access: { has: obj => "init" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);
69
72
  __esDecorate(this, null, _updateOffset_decorators, { kind: "method", name: "updateOffset", static: false, private: false, access: { has: obj => "updateOffset" in obj, get: obj => obj.updateOffset }, metadata: _metadata }, null, _instanceExtraInitializers);
70
73
  __esDecorate(null, null, _content_decorators, { kind: "field", name: "content", static: false, private: false, access: { has: obj => "content" in obj, get: obj => obj.content, set: (obj, value) => { obj.content = value; } }, metadata: _metadata }, _content_initializers, _content_extraInitializers);
@@ -83,29 +86,25 @@ let SniceBadge = (() => {
83
86
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
84
87
  __runInitializers(_classThis, _classExtraInitializers);
85
88
  }
86
- html() {
87
- return /*html*/ `
89
+ renderContent() {
90
+ const displayContent = this.getDisplayContent();
91
+ const showBadge = this.shouldShowBadge();
92
+ const badgeClasses = `badge${this.dot ? ' badge--dot' : ''}${this.pulse ? ' badge--pulse' : ''}`;
93
+ return html `
88
94
  <div class="badge-wrapper">
89
95
  <slot></slot>
90
- <div part="badge-section"></div>
96
+ <if ${showBadge}>
97
+ <span class="${badgeClasses}"
98
+ aria-label="${displayContent}"
99
+ role="status">
100
+ <if ${!this.dot}>${displayContent}</if>
101
+ </span>
102
+ </if>
91
103
  </div>
92
104
  `;
93
105
  }
94
- renderBadgeSection() {
95
- const displayContent = this.getDisplayContent();
96
- const showBadge = this.shouldShowBadge();
97
- if (!showBadge)
98
- return '';
99
- return /*html*/ `
100
- <span class="badge ${this.dot ? 'badge--dot' : ''} ${this.pulse ? 'badge--pulse' : ''}"
101
- aria-label="${displayContent}"
102
- role="status">
103
- ${!this.dot ? displayContent : ''}
104
- </span>
105
- `;
106
- }
107
- css() {
108
- return css;
106
+ componentStyles() {
107
+ return css `${cssContent}`;
109
108
  }
110
109
  getDisplayContent() {
111
110
  if (this.dot)
@@ -1 +1 @@
1
- {"version":3,"file":"snice-badge.js","sources":["../../../components/badge/snice-badge.css?inline","../../../../components/badge/snice-badge.ts"],"sourcesContent":["export default \":host {\\n display: inline-block;\\n --badge-offset: 0px;\\n}\\n\\n.badge-wrapper {\\n position: relative;\\n display: inline-block;\\n width: fit-content;\\n height: fit-content;\\n}\\n\\n.badge {\\n position: absolute;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 1.25rem; /* 20px */\\n height: 1.25rem; /* 20px */\\n padding: 0 0.375rem; /* 0 6px */\\n border-radius: 10px;\\n font-size: 0.75rem; /* 12px */\\n font-weight: 600;\\n line-height: 1;\\n white-space: nowrap;\\n z-index: 1;\\n transition: opacity 0.2s ease;\\n box-shadow: var(--snice-shadow-sm);\\n border: 2px solid rgba(255, 255, 255, 0.9);\\n box-sizing: border-box;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5), 0 1px 1px rgba(0, 0, 0, 0.3);\\n}\\n\\n.badge--dot {\\n min-width: 0.5rem; /* 8px */\\n height: 0.5rem; /* 8px */\\n padding: 0;\\n border-radius: 50%;\\n border: none;\\n}\\n\\n/* Sizes */\\n:host([size=\\\"small\\\"]) .badge {\\n min-width: 1rem; /* 16px */\\n height: 1rem; /* 16px */\\n padding: 0 0.25rem; /* 0 4px */\\n font-size: 0.625rem; /* 10px */\\n}\\n\\n:host([size=\\\"small\\\"]) .badge--dot {\\n min-width: 0.375rem; /* 6px */\\n height: 0.375rem; /* 6px */\\n}\\n\\n:host([size=\\\"large\\\"]) .badge {\\n min-width: 1.5rem; /* 24px */\\n height: 1.5rem; /* 24px */\\n padding: 0 0.5rem; /* 0 8px */\\n font-size: 0.875rem; /* 14px */\\n}\\n\\n:host([size=\\\"large\\\"]) .badge--dot {\\n min-width: 0.625rem; /* 10px */\\n height: 0.625rem; /* 10px */\\n}\\n\\n/* Pulse animation */\\n.badge--pulse {\\n animation: pulse 2s infinite;\\n}\\n\\n.badge--pulse.badge--dot::before {\\n content: '';\\n position: absolute;\\n inset: 0;\\n border-radius: 50%;\\n background: inherit;\\n animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;\\n}\\n\\n@keyframes pulse {\\n 0%, 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.8;\\n }\\n}\\n\\n@keyframes ping {\\n 75%, 100% {\\n transform: scale(2);\\n opacity: 0;\\n }\\n}\\n\\n/* Positions */\\n:host([position=\\\"top-right\\\"]) .badge,\\n:host(:not([position])) .badge {\\n top: var(--badge-offset);\\n right: var(--badge-offset);\\n transform: translate(50%, -50%);\\n}\\n\\n:host([position=\\\"top-left\\\"]) .badge {\\n top: var(--badge-offset);\\n left: var(--badge-offset);\\n transform: translate(-50%, -50%);\\n}\\n\\n:host([position=\\\"bottom-right\\\"]) .badge {\\n bottom: var(--badge-offset);\\n right: var(--badge-offset);\\n transform: translate(50%, 50%);\\n}\\n\\n:host([position=\\\"bottom-left\\\"]) .badge {\\n bottom: var(--badge-offset);\\n left: var(--badge-offset);\\n transform: translate(-50%, 50%);\\n}\\n\\n/* Inline mode */\\n:host([inline]) .badge {\\n position: static;\\n transform: none;\\n margin-left: 0.5rem; /* 8px */\\n vertical-align: middle;\\n}\\n\\n/* Variants - using standard colors with emphasized borders */\\n:host([variant=\\\"default\\\"]) .badge,\\n:host(:not([variant])) .badge {\\n background: rgb(var(--snice-color-gray-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"primary\\\"]) .badge {\\n background: rgb(var(--snice-color-blue-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"success\\\"]) .badge {\\n background: rgb(var(--snice-color-green-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"warning\\\"]) .badge {\\n background: rgb(var(--snice-color-yellow-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"error\\\"]) .badge {\\n background: rgb(var(--snice-color-red-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"info\\\"]) .badge {\\n background: rgb(var(--snice-color-blue-600));\\n color: white;\\n}\";",null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snice-badge.js","sources":["../../../components/badge/snice-badge.css?inline","../../../../components/badge/snice-badge.ts"],"sourcesContent":["export default \":host {\\n display: inline-block;\\n --badge-offset: 0px;\\n}\\n\\n.badge-wrapper {\\n position: relative;\\n display: inline-block;\\n width: fit-content;\\n height: fit-content;\\n}\\n\\n.badge {\\n position: absolute;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 1.25rem; /* 20px */\\n height: 1.25rem; /* 20px */\\n padding: 0 0.375rem; /* 0 6px */\\n border-radius: 10px;\\n font-size: 0.75rem; /* 12px */\\n font-weight: 600;\\n line-height: 1;\\n white-space: nowrap;\\n z-index: 1;\\n transition: opacity 0.2s ease;\\n box-shadow: var(--snice-shadow-sm);\\n border: 2px solid rgba(255, 255, 255, 0.9);\\n box-sizing: border-box;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5), 0 1px 1px rgba(0, 0, 0, 0.3);\\n}\\n\\n.badge--dot {\\n min-width: 0.5rem; /* 8px */\\n height: 0.5rem; /* 8px */\\n padding: 0;\\n border-radius: 50%;\\n border: none;\\n}\\n\\n/* Sizes */\\n:host([size=\\\"small\\\"]) .badge {\\n min-width: 1rem; /* 16px */\\n height: 1rem; /* 16px */\\n padding: 0 0.25rem; /* 0 4px */\\n font-size: 0.625rem; /* 10px */\\n}\\n\\n:host([size=\\\"small\\\"]) .badge--dot {\\n min-width: 0.375rem; /* 6px */\\n height: 0.375rem; /* 6px */\\n}\\n\\n:host([size=\\\"large\\\"]) .badge {\\n min-width: 1.5rem; /* 24px */\\n height: 1.5rem; /* 24px */\\n padding: 0 0.5rem; /* 0 8px */\\n font-size: 0.875rem; /* 14px */\\n}\\n\\n:host([size=\\\"large\\\"]) .badge--dot {\\n min-width: 0.625rem; /* 10px */\\n height: 0.625rem; /* 10px */\\n}\\n\\n/* Pulse animation */\\n.badge--pulse {\\n animation: pulse 2s infinite;\\n}\\n\\n.badge--pulse.badge--dot::before {\\n content: '';\\n position: absolute;\\n inset: 0;\\n border-radius: 50%;\\n background: inherit;\\n animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;\\n}\\n\\n@keyframes pulse {\\n 0%, 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.8;\\n }\\n}\\n\\n@keyframes ping {\\n 75%, 100% {\\n transform: scale(2);\\n opacity: 0;\\n }\\n}\\n\\n/* Positions */\\n:host([position=\\\"top-right\\\"]) .badge,\\n:host(:not([position])) .badge {\\n top: var(--badge-offset);\\n right: var(--badge-offset);\\n transform: translate(50%, -50%);\\n}\\n\\n:host([position=\\\"top-left\\\"]) .badge {\\n top: var(--badge-offset);\\n left: var(--badge-offset);\\n transform: translate(-50%, -50%);\\n}\\n\\n:host([position=\\\"bottom-right\\\"]) .badge {\\n bottom: var(--badge-offset);\\n right: var(--badge-offset);\\n transform: translate(50%, 50%);\\n}\\n\\n:host([position=\\\"bottom-left\\\"]) .badge {\\n bottom: var(--badge-offset);\\n left: var(--badge-offset);\\n transform: translate(-50%, 50%);\\n}\\n\\n/* Inline mode */\\n:host([inline]) .badge {\\n position: static;\\n transform: none;\\n margin-left: 0.5rem; /* 8px */\\n vertical-align: middle;\\n}\\n\\n/* Variants - using standard colors with emphasized borders */\\n:host([variant=\\\"default\\\"]) .badge,\\n:host(:not([variant])) .badge {\\n background: rgb(var(--snice-color-gray-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"primary\\\"]) .badge {\\n background: rgb(var(--snice-color-blue-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"success\\\"]) .badge {\\n background: rgb(var(--snice-color-green-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"warning\\\"]) .badge {\\n background: rgb(var(--snice-color-yellow-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"error\\\"]) .badge {\\n background: rgb(var(--snice-color-red-600));\\n color: white;\\n}\\n\\n:host([variant=\\\"info\\\"]) .badge {\\n background: rgb(var(--snice-color-blue-600));\\n color: white;\\n}\";",null],"names":[],"mappings":";;;AAAA,iBAAe,g4GAAg4G;;ICKl4G,UAAU,GAAA,CAAA,MAAA;4BADtB,OAAO,CAAC,aAAa,CAAC,CAAA;;;;sBACS,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAnB,KAAA,cAAQ,WAAW,CAAA;;;;mCACxC,QAAQ,CAAC,EAAI,CAAC,CAAA;AAGd,YAAA,iBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,GAAI,CAAC,CAAA;AAG5B,YAAA,eAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,GAAI,CAAC,CAAA;AAG5B,YAAA,eAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,GAAI,CAAC,CAAA;mCAG7B,QAAQ,CAAC,EAAI,CAAC,CAAA;oCAGd,QAAQ,CAAC,EAAI,CAAC,CAAA;AAGd,YAAA,kBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,GAAI,CAAC,CAAA;gCAG7B,QAAQ,CAAC,EAAI,CAAC,CAAA;AAGd,YAAA,iBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,GAAI,CAAC,CAAA;AAG7B,YAAA,kBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,GAAI,CAAC,CAAA;wCAG5B,KAAK,CAAC,QAAQ,CAAC,CAAA;AAGf,YAAA,yBAAA,GAAA,CAAA,MAAM,EAAE,CAAA;AAoBR,YAAA,2BAAA,GAAA,CAAA,MAAM,EAAE,CAAA;AAkBR,YAAA,gBAAA,GAAA,CAAA,KAAK,EAAE,CAAA;wCAMP,KAAK,CAAC,QAAQ,CAAC,CAAA;AA3ChB,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,yBAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,eAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,aAAa,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAoBb,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,2BAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,iBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,eAAe,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAkBf,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,MAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,IAAI,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAMJ,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,YAAY,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;YA7EZ,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,SAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,OAAO,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAP,OAAO,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,qBAAA,EAAA,0BAAA,CAAA;YAGP,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,OAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,KAAK,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAL,KAAK,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,mBAAA,EAAA,wBAAA,CAAA;YAGL,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,KAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,GAAG,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAH,GAAG,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,sBAAA,CAAA;YAGH,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,KAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,GAAG,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAH,GAAG,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,sBAAA,CAAA;YAGH,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,SAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,OAAO,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAP,OAAO,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,qBAAA,EAAA,0BAAA,CAAA;YAGP,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,oBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,UAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,QAAQ,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAR,QAAQ,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,sBAAA,EAAA,2BAAA,CAAA;YAGR,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,QAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,QAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,MAAM,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAN,MAAM,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,oBAAA,EAAA,yBAAA,CAAA;YAGN,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,MAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,IAAI,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAJ,IAAI,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,kBAAA,EAAA,uBAAA,CAAA;YAGJ,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,OAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,KAAK,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAL,KAAK,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,mBAAA,EAAA,wBAAA,CAAA;YAGL,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,QAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,QAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,MAAM,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAN,MAAM,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,oBAAA,EAAA,yBAAA,CAAA;YAGN,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,YAAY,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAZ,YAAY,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,0BAAA,EAAA,+BAAA,CAAA;YAhCd,YAAA,CAAA,IAAA,EAAA,gBAAA,GAAA,EAAA,KAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,CAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,uBAAA,CAAA;;;YAAa,iBAAA,CAAA,UAAA,EAAA,uBAAA,CAAA;;QAmCX,aAAa,GAAA;AACX,YAAA,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE;AAC/C,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE;YACxC,MAAM,YAAY,GAAG,CAAA,KAAA,EAAQ,IAAI,CAAC,GAAG,GAAG,aAAa,GAAG,EAAE,CAAA,EAAG,IAAI,CAAC,KAAK,GAAG,eAAe,GAAG,EAAE,CAAA,CAAE;AAEhG,YAAA,OAAO,IAAI,CAAA;;;cAGD,SAAS,CAAA;yBACE,YAAY,CAAA;8BACP,cAAc,CAAA;;AAE1B,gBAAA,EAAA,CAAC,IAAI,CAAC,GAAG,CAAA,CAAA,EAAI,cAAc,CAAA;;;;KAIxC;QACH;QAGA,eAAe,GAAA;AACb,YAAA,OAAO,GAAG,CAAA,CAAA,EAAG,UAAU,EAAE;QAC3B;QAEQ,iBAAiB,GAAA;YACvB,IAAI,IAAI,CAAC,GAAG;AAAE,gBAAA,OAAO,cAAc;YACnC,IAAI,IAAI,CAAC,OAAO;gBAAE,OAAO,IAAI,CAAC,OAAO;AACrC,YAAA,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE;gBAClB,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,GAAG,CAAA,EAAG,IAAI,CAAC,GAAG,CAAA,CAAA,CAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;YACpE;AACA,YAAA,OAAO,EAAE;QACX;QAEQ,eAAe,GAAA;AACrB,YAAA,OAAO,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC;QAC1D;QAGA,IAAI,GAAA;YACF,IAAI,CAAC,YAAY,EAAE;QACrB;QAIA,YAAY,GAAA;AACV,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAA,EAAG,IAAI,CAAC,MAAM,CAAA,EAAA,CAAI,CAAC;QAC9D;AAEA,QAAA,eAAe,CAAC,OAAe,EAAA;AAC7B,YAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,YAAA,IAAI,CAAC,KAAK,GAAG,CAAC;AACd,YAAA,IAAI,CAAC,GAAG,GAAG,KAAK;QAClB;AAEA,QAAA,aAAa,CAAC,KAAa,EAAA;AACzB,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,YAAA,IAAI,CAAC,OAAO,GAAG,EAAE;AACjB,YAAA,IAAI,CAAC,GAAG,GAAG,KAAK;QAClB;QAEA,OAAO,GAAA;AACL,YAAA,IAAI,CAAC,GAAG,GAAG,IAAI;AACf,YAAA,IAAI,CAAC,OAAO,GAAG,EAAE;AACjB,YAAA,IAAI,CAAC,KAAK,GAAG,CAAC;QAChB;QAEA,IAAI,GAAA;AACF,YAAA,IAAI,CAAC,GAAG,GAAG,KAAK;AAChB,YAAA,IAAI,CAAC,OAAO,GAAG,EAAE;AACjB,YAAA,IAAI,CAAC,KAAK,GAAG,CAAC;QAChB;;;AAvGA,YAAA,IAAA,CAAA,OAAO,IAFI,iBAAA,CAAA,IAAA,EAAA,0BAAA,CAAU,EAAA,iBAAA,CAAA,IAAA,EAAA,qBAAA,EAEX,EAAE,CAAA,CAAA;YAGZ,IAAA,CAAA,KAAK,IAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,mBAAA,EAAG,CAAC,CAAA,CAAA;YAGT,IAAA,CAAA,GAAG,IAAA,iBAAA,CAAA,IAAA,EAAA,wBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,iBAAA,EAAG,EAAE,CAAA,CAAA;YAGR,IAAA,CAAA,GAAG,IAAA,iBAAA,CAAA,IAAA,EAAA,sBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,iBAAA,EAAG,KAAK,CAAA,CAAA;YAGX,IAAA,CAAA,OAAO,IAAA,iBAAA,CAAA,IAAA,EAAA,sBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,qBAAA,EAAiB,SAAS,CAAA,CAAA;YAGjC,IAAA,CAAA,QAAQ,IAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,sBAAA,EAAkB,WAAW,CAAA,CAAA;YAGrC,IAAA,CAAA,MAAM,IAAA,iBAAA,CAAA,IAAA,EAAA,2BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,oBAAA,EAAG,KAAK,CAAA,CAAA;YAGd,IAAA,CAAA,IAAI,IAAA,iBAAA,CAAA,IAAA,EAAA,yBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,kBAAA,EAAc,QAAQ,CAAA,CAAA;YAG1B,IAAA,CAAA,KAAK,IAAA,iBAAA,CAAA,IAAA,EAAA,uBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,mBAAA,EAAG,KAAK,CAAA,CAAA;YAGb,IAAA,CAAA,MAAM,IAAA,iBAAA,CAAA,IAAA,EAAA,wBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,oBAAA,EAAG,CAAC,CAAA,CAAA;AAGV,YAAA,IAAA,CAAA,YAAY,IAAA,iBAAA,CAAA,IAAA,EAAA,yBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,EAAA,MAAA,CAAA,CAAA;;;;;;;;;"}
@@ -5,23 +5,16 @@ export declare class SniceBreadcrumbs extends HTMLElement implements SniceBreadc
5
5
  size: BreadcrumbSize;
6
6
  maxItems: number;
7
7
  breadcrumbElement?: HTMLElement;
8
- private collapsed;
8
+ collapsed: boolean;
9
9
  private slotItems;
10
- html(): string;
11
- css(): string;
10
+ private renderTrigger;
11
+ renderContent(): import("snice").TemplateResult;
12
+ componentStyles(): import("snice").CSSResult;
12
13
  private getAllItems;
13
14
  private getVisibleItems;
14
- handleEllipsisClick(): void;
15
- handleLinkClick(event: MouseEvent): {
16
- item: BreadcrumbItem;
17
- index: number;
18
- href: string;
19
- label: string;
20
- };
15
+ private handleClick;
21
16
  private handleSlotChange;
22
- init(): void;
23
17
  updateBreadcrumb(): void;
24
18
  setItems(items: BreadcrumbItem[]): void;
25
19
  private renderIcon;
26
- private render;
27
20
  }
@@ -1,7 +1,7 @@
1
- import { __runInitializers, __esDecorate } from 'tslib';
2
- import { element, property, query, on, dispatch, ready, watch } from 'snice';
1
+ import { __esDecorate, __runInitializers } from 'tslib';
2
+ import { element, property, query, render, styles, watch, html, css } from 'snice';
3
3
 
4
- var css = ":host {\n display: block;\n --breadcrumb-font-size: 0.875rem; /* 14px */\n --breadcrumb-spacing: 0.5rem; /* 8px */\n --breadcrumb-color: rgb(var(--snice-color-gray-600, 82 82 82));\n --breadcrumb-hover-color: rgb(var(--snice-color-blue-600, 37 99 235));\n --breadcrumb-active-color: rgb(var(--snice-color-gray-900, 23 23 23));\n --breadcrumb-separator-color: rgb(var(--snice-color-gray-400, 163 163 163));\n}\n\n.breadcrumb {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n list-style: none;\n margin: 0;\n padding: 0;\n font-size: var(--breadcrumb-font-size);\n line-height: 1.5;\n}\n\n.breadcrumb-item {\n display: flex;\n align-items: center;\n color: var(--breadcrumb-color);\n}\n\n.breadcrumb-link {\n color: inherit;\n text-decoration: none;\n transition: color 0.2s ease;\n cursor: pointer;\n outline: none;\n border-radius: 2px;\n padding: 0.125rem 0.25rem; /* 2px 4px */\n margin: -0.125rem -0.25rem; /* -2px -4px */\n display: inline-flex;\n align-items: center;\n gap: 0.375rem; /* 6px */\n}\n\n.breadcrumb-link:hover {\n color: var(--breadcrumb-hover-color);\n text-decoration: underline;\n}\n\n.breadcrumb-link:focus-visible {\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.4);\n}\n\n.breadcrumb-text {\n padding: 2px 4px;\n margin: -2px -4px;\n display: inline-flex;\n align-items: center;\n gap: 0.375rem; /* 6px */\n}\n\n.breadcrumb-icon {\n display: inline-flex;\n align-items: center;\n font-size: 1.1em;\n}\n\n.breadcrumb-icon-image {\n width: 1.2em;\n height: 1.2em;\n object-fit: contain;\n vertical-align: middle;\n}\n\n[hidden] {\n display: none !important;\n}\n\n.breadcrumb-item--active {\n color: var(--breadcrumb-active-color);\n font-weight: 500;\n}\n\n.breadcrumb-item--active .breadcrumb-link {\n cursor: default;\n pointer-events: none;\n}\n\n.breadcrumb-separator {\n margin: 0 var(--breadcrumb-spacing);\n color: var(--breadcrumb-separator-color);\n user-select: none;\n}\n\n.breadcrumb-ellipsis {\n display: flex;\n align-items: center;\n padding: 2px 4px;\n margin: -2px -4px;\n cursor: pointer;\n color: var(--breadcrumb-color);\n border-radius: 2px;\n transition: background 0.2s ease;\n}\n\n.breadcrumb-ellipsis:hover {\n background: rgba(0, 0, 0, 0.05);\n}\n\n.breadcrumb-ellipsis:focus-visible {\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.4);\n outline: none;\n}\n\n/* Sizes */\n:host([size=\"small\"]) {\n --breadcrumb-font-size: 12px;\n --breadcrumb-spacing: 6px;\n}\n\n:host([size=\"large\"]) {\n --breadcrumb-font-size: 16px;\n --breadcrumb-spacing: 10px;\n}\n\n/* Collapsed state */\n.breadcrumb--collapsed .breadcrumb-item--hidden {\n display: none;\n}\n\n/* Mobile responsive */\n@media (max-width: 640px) {\n .breadcrumb {\n font-size: calc(var(--breadcrumb-font-size) * 0.9);\n }\n}";
4
+ var cssContent = ":host {\n display: block;\n --breadcrumb-font-size: 0.875rem; /* 14px */\n --breadcrumb-spacing: 0.5rem; /* 8px */\n --breadcrumb-color: rgb(var(--snice-color-gray-600, 82 82 82));\n --breadcrumb-hover-color: rgb(var(--snice-color-blue-600, 37 99 235));\n --breadcrumb-active-color: rgb(var(--snice-color-gray-900, 23 23 23));\n --breadcrumb-separator-color: rgb(var(--snice-color-gray-400, 163 163 163));\n}\n\n/* Meta elements should not interfere with layout */\ncase, when, default, if {\n display: contents;\n}\n\n.breadcrumb {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n list-style: none;\n margin: 0;\n padding: 0;\n font-size: var(--breadcrumb-font-size);\n line-height: 1.5;\n}\n\n.breadcrumb-item {\n display: flex;\n align-items: center;\n color: var(--breadcrumb-color);\n}\n\n.breadcrumb-link {\n color: inherit;\n text-decoration: none;\n transition: color 0.2s ease;\n cursor: pointer;\n outline: none;\n border-radius: 2px;\n padding: 0.125rem 0.25rem; /* 2px 4px */\n margin: -0.125rem -0.25rem; /* -2px -4px */\n display: inline-flex;\n align-items: center;\n gap: 0.375rem; /* 6px */\n}\n\n.breadcrumb-link:hover {\n color: var(--breadcrumb-hover-color);\n text-decoration: underline;\n}\n\n.breadcrumb-link:focus-visible {\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.4);\n}\n\n.breadcrumb-text {\n padding: 2px 4px;\n margin: -2px -4px;\n display: inline-flex;\n align-items: center;\n gap: 0.375rem; /* 6px */\n}\n\n.breadcrumb-icon {\n display: inline-flex;\n align-items: center;\n font-size: 1.1em;\n}\n\n.breadcrumb-icon-image {\n width: 1.2em;\n height: 1.2em;\n object-fit: contain;\n vertical-align: middle;\n}\n\n[hidden] {\n display: none !important;\n}\n\n.breadcrumb-item--active {\n color: var(--breadcrumb-active-color);\n font-weight: 500;\n}\n\n.breadcrumb-item--active .breadcrumb-link {\n cursor: default;\n pointer-events: none;\n}\n\n.breadcrumb-separator {\n margin: 0 var(--breadcrumb-spacing);\n color: var(--breadcrumb-separator-color);\n user-select: none;\n}\n\n.breadcrumb-ellipsis {\n display: flex;\n align-items: center;\n padding: 2px 4px;\n margin: -2px -4px;\n cursor: pointer;\n color: var(--breadcrumb-color);\n border-radius: 2px;\n transition: background 0.2s ease;\n}\n\n.breadcrumb-ellipsis:hover {\n background: rgba(0, 0, 0, 0.05);\n}\n\n.breadcrumb-ellipsis:focus-visible {\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.4);\n outline: none;\n}\n\n/* Sizes */\n:host([size=\"small\"]) {\n --breadcrumb-font-size: 12px;\n --breadcrumb-spacing: 6px;\n}\n\n:host([size=\"large\"]) {\n --breadcrumb-font-size: 16px;\n --breadcrumb-spacing: 10px;\n}\n\n/* Collapsed state */\n.breadcrumb--collapsed .breadcrumb-item--hidden {\n display: none;\n}\n\n/* Mobile responsive */\n@media (max-width: 640px) {\n .breadcrumb {\n font-size: calc(var(--breadcrumb-font-size) * 0.9);\n }\n}";
5
5
 
6
6
  let SniceBreadcrumbs = (() => {
7
7
  let _classDecorators = [element('snice-breadcrumbs')];
@@ -25,85 +25,85 @@ let SniceBreadcrumbs = (() => {
25
25
  let _breadcrumbElement_decorators;
26
26
  let _breadcrumbElement_initializers = [];
27
27
  let _breadcrumbElement_extraInitializers = [];
28
- let _handleEllipsisClick_decorators;
29
- let _handleLinkClick_decorators;
30
- let _init_decorators;
28
+ let _collapsed_decorators;
29
+ let _collapsed_initializers = [];
30
+ let _collapsed_extraInitializers = [];
31
+ let _renderTrigger_decorators;
32
+ let _renderTrigger_initializers = [];
33
+ let _renderTrigger_extraInitializers = [];
34
+ let _renderContent_decorators;
35
+ let _componentStyles_decorators;
31
36
  let _updateBreadcrumb_decorators;
32
37
  (class extends _classSuper {
33
38
  static { _classThis = this; }
34
- constructor() {
35
- super(...arguments);
36
- this.items = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _items_initializers, []));
37
- this.separator = (__runInitializers(this, _items_extraInitializers), __runInitializers(this, _separator_initializers, '/'));
38
- this.size = (__runInitializers(this, _separator_extraInitializers), __runInitializers(this, _size_initializers, 'medium'));
39
- this.maxItems = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _maxItems_initializers, 0));
40
- this.breadcrumbElement = (__runInitializers(this, _maxItems_extraInitializers), __runInitializers(this, _breadcrumbElement_initializers, void 0));
41
- this.collapsed = (__runInitializers(this, _breadcrumbElement_extraInitializers), true);
42
- this.slotItems = [];
43
- }
44
39
  static {
45
40
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
46
41
  _items_decorators = [property({ type: Array })];
47
42
  _separator_decorators = [property({})];
48
43
  _size_decorators = [property({})];
49
- _maxItems_decorators = [property({ type: Number, })];
44
+ _maxItems_decorators = [property({ type: Number, attribute: 'max-items' })];
50
45
  _breadcrumbElement_decorators = [query('.breadcrumb')];
51
- _handleEllipsisClick_decorators = [on('click', '.breadcrumb-ellipsis')];
52
- _handleLinkClick_decorators = [on('click', '.breadcrumb-link'), dispatch('breadcrumb-click')];
53
- _init_decorators = [ready()];
46
+ _collapsed_decorators = [property({ type: Boolean })];
47
+ _renderTrigger_decorators = [property({ type: Number, attribute: false })];
48
+ _renderContent_decorators = [render()];
49
+ _componentStyles_decorators = [styles()];
54
50
  _updateBreadcrumb_decorators = [watch('items', 'separator', 'maxItems')];
55
- __esDecorate(this, null, _handleEllipsisClick_decorators, { kind: "method", name: "handleEllipsisClick", static: false, private: false, access: { has: obj => "handleEllipsisClick" in obj, get: obj => obj.handleEllipsisClick }, metadata: _metadata }, null, _instanceExtraInitializers);
56
- __esDecorate(this, null, _handleLinkClick_decorators, { kind: "method", name: "handleLinkClick", static: false, private: false, access: { has: obj => "handleLinkClick" in obj, get: obj => obj.handleLinkClick }, metadata: _metadata }, null, _instanceExtraInitializers);
57
- __esDecorate(this, null, _init_decorators, { kind: "method", name: "init", static: false, private: false, access: { has: obj => "init" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);
51
+ __esDecorate(this, null, _renderContent_decorators, { kind: "method", name: "renderContent", static: false, private: false, access: { has: obj => "renderContent" in obj, get: obj => obj.renderContent }, metadata: _metadata }, null, _instanceExtraInitializers);
52
+ __esDecorate(this, null, _componentStyles_decorators, { kind: "method", name: "componentStyles", static: false, private: false, access: { has: obj => "componentStyles" in obj, get: obj => obj.componentStyles }, metadata: _metadata }, null, _instanceExtraInitializers);
58
53
  __esDecorate(this, null, _updateBreadcrumb_decorators, { kind: "method", name: "updateBreadcrumb", static: false, private: false, access: { has: obj => "updateBreadcrumb" in obj, get: obj => obj.updateBreadcrumb }, metadata: _metadata }, null, _instanceExtraInitializers);
59
54
  __esDecorate(null, null, _items_decorators, { kind: "field", name: "items", static: false, private: false, access: { has: obj => "items" in obj, get: obj => obj.items, set: (obj, value) => { obj.items = value; } }, metadata: _metadata }, _items_initializers, _items_extraInitializers);
60
55
  __esDecorate(null, null, _separator_decorators, { kind: "field", name: "separator", static: false, private: false, access: { has: obj => "separator" in obj, get: obj => obj.separator, set: (obj, value) => { obj.separator = value; } }, metadata: _metadata }, _separator_initializers, _separator_extraInitializers);
61
56
  __esDecorate(null, null, _size_decorators, { kind: "field", name: "size", static: false, private: false, access: { has: obj => "size" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);
62
57
  __esDecorate(null, null, _maxItems_decorators, { kind: "field", name: "maxItems", static: false, private: false, access: { has: obj => "maxItems" in obj, get: obj => obj.maxItems, set: (obj, value) => { obj.maxItems = value; } }, metadata: _metadata }, _maxItems_initializers, _maxItems_extraInitializers);
63
58
  __esDecorate(null, null, _breadcrumbElement_decorators, { kind: "field", name: "breadcrumbElement", static: false, private: false, access: { has: obj => "breadcrumbElement" in obj, get: obj => obj.breadcrumbElement, set: (obj, value) => { obj.breadcrumbElement = value; } }, metadata: _metadata }, _breadcrumbElement_initializers, _breadcrumbElement_extraInitializers);
59
+ __esDecorate(null, null, _collapsed_decorators, { kind: "field", name: "collapsed", static: false, private: false, access: { has: obj => "collapsed" in obj, get: obj => obj.collapsed, set: (obj, value) => { obj.collapsed = value; } }, metadata: _metadata }, _collapsed_initializers, _collapsed_extraInitializers);
60
+ __esDecorate(null, null, _renderTrigger_decorators, { kind: "field", name: "renderTrigger", static: false, private: false, access: { has: obj => "renderTrigger" in obj, get: obj => obj.renderTrigger, set: (obj, value) => { obj.renderTrigger = value; } }, metadata: _metadata }, _renderTrigger_initializers, _renderTrigger_extraInitializers);
64
61
  __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
65
62
  _classThis = _classDescriptor.value;
66
63
  if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
67
64
  __runInitializers(_classThis, _classExtraInitializers);
68
65
  }
69
- html() {
66
+ renderContent() {
70
67
  const allItems = this.getAllItems();
71
68
  const visibleItems = this.getVisibleItems(allItems);
72
69
  const hasCollapsed = this.maxItems > 0 && allItems.length > this.maxItems && this.collapsed;
73
- return /*html*/ `
74
- <slot style="display: none"></slot>
75
- <nav aria-label="Breadcrumb">
76
- <ol class="breadcrumb ${hasCollapsed ? 'breadcrumb--collapsed' : ''}">
70
+ const breadcrumbClass = `breadcrumb${hasCollapsed ? ' breadcrumb--collapsed' : ''}`;
71
+ return html `
72
+ <slot style="display: none" @slotchange="${() => this.handleSlotChange()}"></slot>
73
+ <nav aria-label="Breadcrumb" @click="${(e) => this.handleClick(e)}">
74
+ <ol class="${breadcrumbClass}">
77
75
  ${visibleItems.map((item, index) => {
78
76
  const isLast = index === visibleItems.length - 1;
79
77
  const isActive = item.active || isLast;
80
78
  const isHidden = hasCollapsed && index > 0 && index < visibleItems.length - 2;
81
- return /*html*/ `
82
- <li class="breadcrumb-item ${isActive ? 'breadcrumb-item--active' : ''} ${isHidden ? 'breadcrumb-item--hidden' : ''}">
83
- ${item.href && !isActive ? /*html*/ `
84
- <a href="${item.href}"
79
+ const itemClass = `breadcrumb-item${isActive ? ' breadcrumb-item--active' : ''}${isHidden ? ' breadcrumb-item--hidden' : ''}`;
80
+ return html `
81
+ <li class="${itemClass}">
82
+ <if ${item.href && !isActive}>
83
+ <a href="${item.href}"
85
84
  class="breadcrumb-link"
86
85
  aria-current="${isActive ? 'page' : ''}"
87
86
  tabindex="0">
88
87
  ${this.renderIcon(item)}
89
88
  ${item.label}
90
89
  </a>
91
- ` : /*html*/ `
92
- <span class="breadcrumb-text"
90
+ </if>
91
+ <if ${!item.href || isActive}>
92
+ <span class="breadcrumb-text"
93
93
  aria-current="${isActive ? 'page' : ''}">
94
94
  ${this.renderIcon(item)}
95
95
  ${item.label}
96
96
  </span>
97
- `}
98
- ${!isLast ? /*html*/ `
97
+ </if>
98
+ <if ${!isLast}>
99
99
  <span class="breadcrumb-separator" aria-hidden="true">
100
100
  ${this.separator}
101
101
  </span>
102
- ` : ''}
102
+ </if>
103
103
  </li>
104
- ${hasCollapsed && index === 0 && allItems.length > this.maxItems ? /*html*/ `
104
+ <if ${hasCollapsed && index === 0 && allItems.length > this.maxItems}>
105
105
  <li class="breadcrumb-item">
106
- <button class="breadcrumb-ellipsis"
106
+ <button class="breadcrumb-ellipsis"
107
107
  aria-label="Show all breadcrumbs"
108
108
  tabindex="0">
109
109
  •••
@@ -112,15 +112,15 @@ let SniceBreadcrumbs = (() => {
112
112
  ${this.separator}
113
113
  </span>
114
114
  </li>
115
- ` : ''}
115
+ </if>
116
116
  `;
117
- }).join('')}
117
+ })}
118
118
  </ol>
119
119
  </nav>
120
120
  `;
121
121
  }
122
- css() {
123
- return css;
122
+ componentStyles() {
123
+ return css `${cssContent}`;
124
124
  }
125
125
  getAllItems() {
126
126
  // Prefer slot items if available, otherwise use items property
@@ -135,23 +135,32 @@ let SniceBreadcrumbs = (() => {
135
135
  const lastItems = allItems.slice(-(this.maxItems - 1));
136
136
  return [firstItem, ...lastItems];
137
137
  }
138
- handleEllipsisClick() {
139
- this.collapsed = false;
140
- this.render();
141
- }
142
- handleLinkClick(event) {
138
+ handleClick(event) {
143
139
  const target = event.target;
144
- const label = target.textContent?.trim() || '';
145
- const href = target.getAttribute('href') || '';
146
- // Find the item index
147
- const allItems = this.getAllItems();
148
- const index = allItems.findIndex(item => item.label === label);
149
- return {
150
- item: allItems[index],
151
- index,
152
- href,
153
- label
154
- };
140
+ // Handle ellipsis click
141
+ if (target.matches('.breadcrumb-ellipsis')) {
142
+ this.collapsed = false;
143
+ return;
144
+ }
145
+ // Handle breadcrumb link click
146
+ if (target.matches('.breadcrumb-link')) {
147
+ const link = target;
148
+ const label = link.textContent?.trim() || '';
149
+ const href = link.getAttribute('href') || '';
150
+ // Find the item index
151
+ const allItems = this.getAllItems();
152
+ const index = allItems.findIndex(item => item.label === label);
153
+ this.dispatchEvent(new CustomEvent('breadcrumb-click', {
154
+ bubbles: true,
155
+ composed: true,
156
+ detail: {
157
+ item: allItems[index],
158
+ index,
159
+ href,
160
+ label
161
+ }
162
+ }));
163
+ }
155
164
  }
156
165
  handleSlotChange() {
157
166
  const slot = this.shadowRoot?.querySelector('slot');
@@ -165,46 +174,36 @@ let SniceBreadcrumbs = (() => {
165
174
  iconImage: crumb.iconImage || undefined,
166
175
  active: crumb.active || false
167
176
  }));
168
- this.render();
169
- }
170
- init() {
171
- // Setup slot change handling
172
- const slot = this.shadowRoot?.querySelector('slot');
173
- if (slot) {
174
- slot.addEventListener('slotchange', () => this.handleSlotChange());
175
- // Initial check for slotted content
176
- this.handleSlotChange();
177
- }
177
+ // Trigger re-render to display slot items by updating a property
178
+ this.renderTrigger++;
178
179
  }
179
180
  updateBreadcrumb() {
180
181
  this.collapsed = true;
181
- // Only render if not using slot items, otherwise slot change will handle it
182
- if (!this.slotItems || this.slotItems.length === 0) {
183
- this.render();
184
- }
185
182
  }
186
183
  setItems(items) {
187
184
  this.items = items;
188
185
  }
189
186
  renderIcon(item) {
190
- return /*html*/ `
191
- <img class="breadcrumb-icon-image" src="${item.iconImage || ''}" alt="" ${item.iconImage ? '' : 'hidden'}>
192
- <span class="breadcrumb-icon" ${item.icon ? '' : 'hidden'}>${item.icon || ''}</span>
187
+ return html `
188
+ <if ${item.iconImage}>
189
+ <img class="breadcrumb-icon-image" src="${item.iconImage}" alt="">
190
+ </if>
191
+ <if ${item.icon}>
192
+ <span class="breadcrumb-icon">${item.icon}</span>
193
+ </if>
193
194
  `;
194
195
  }
195
- render() {
196
- const shadow = this.shadowRoot;
197
- if (shadow) {
198
- shadow.innerHTML = '';
199
- if (this.css) {
200
- const style = document.createElement('style');
201
- style.textContent = this.css();
202
- shadow.appendChild(style);
203
- }
204
- const template = document.createElement('template');
205
- template.innerHTML = this.html();
206
- shadow.appendChild(template.content.cloneNode(true));
207
- }
196
+ constructor() {
197
+ super(...arguments);
198
+ this.items = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _items_initializers, []));
199
+ this.separator = (__runInitializers(this, _items_extraInitializers), __runInitializers(this, _separator_initializers, '/'));
200
+ this.size = (__runInitializers(this, _separator_extraInitializers), __runInitializers(this, _size_initializers, 'medium'));
201
+ this.maxItems = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _maxItems_initializers, 0));
202
+ this.breadcrumbElement = (__runInitializers(this, _maxItems_extraInitializers), __runInitializers(this, _breadcrumbElement_initializers, void 0));
203
+ this.collapsed = (__runInitializers(this, _breadcrumbElement_extraInitializers), __runInitializers(this, _collapsed_initializers, true));
204
+ this.slotItems = (__runInitializers(this, _collapsed_extraInitializers), []);
205
+ this.renderTrigger = __runInitializers(this, _renderTrigger_initializers, 0);
206
+ __runInitializers(this, _renderTrigger_extraInitializers);
208
207
  }
209
208
  });
210
209
  return _classThis;
@@ -1 +1 @@
1
- {"version":3,"file":"snice-breadcrumbs.js","sources":["../../../components/breadcrumbs/snice-breadcrumbs.css?inline","../../../../components/breadcrumbs/snice-breadcrumbs.ts"],"sourcesContent":["export default \":host {\\n display: block;\\n --breadcrumb-font-size: 0.875rem; /* 14px */\\n --breadcrumb-spacing: 0.5rem; /* 8px */\\n --breadcrumb-color: rgb(var(--snice-color-gray-600, 82 82 82));\\n --breadcrumb-hover-color: rgb(var(--snice-color-blue-600, 37 99 235));\\n --breadcrumb-active-color: rgb(var(--snice-color-gray-900, 23 23 23));\\n --breadcrumb-separator-color: rgb(var(--snice-color-gray-400, 163 163 163));\\n}\\n\\n.breadcrumb {\\n display: flex;\\n align-items: center;\\n flex-wrap: wrap;\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n font-size: var(--breadcrumb-font-size);\\n line-height: 1.5;\\n}\\n\\n.breadcrumb-item {\\n display: flex;\\n align-items: center;\\n color: var(--breadcrumb-color);\\n}\\n\\n.breadcrumb-link {\\n color: inherit;\\n text-decoration: none;\\n transition: color 0.2s ease;\\n cursor: pointer;\\n outline: none;\\n border-radius: 2px;\\n padding: 0.125rem 0.25rem; /* 2px 4px */\\n margin: -0.125rem -0.25rem; /* -2px -4px */\\n display: inline-flex;\\n align-items: center;\\n gap: 0.375rem; /* 6px */\\n}\\n\\n.breadcrumb-link:hover {\\n color: var(--breadcrumb-hover-color);\\n text-decoration: underline;\\n}\\n\\n.breadcrumb-link:focus-visible {\\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.4);\\n}\\n\\n.breadcrumb-text {\\n padding: 2px 4px;\\n margin: -2px -4px;\\n display: inline-flex;\\n align-items: center;\\n gap: 0.375rem; /* 6px */\\n}\\n\\n.breadcrumb-icon {\\n display: inline-flex;\\n align-items: center;\\n font-size: 1.1em;\\n}\\n\\n.breadcrumb-icon-image {\\n width: 1.2em;\\n height: 1.2em;\\n object-fit: contain;\\n vertical-align: middle;\\n}\\n\\n[hidden] {\\n display: none !important;\\n}\\n\\n.breadcrumb-item--active {\\n color: var(--breadcrumb-active-color);\\n font-weight: 500;\\n}\\n\\n.breadcrumb-item--active .breadcrumb-link {\\n cursor: default;\\n pointer-events: none;\\n}\\n\\n.breadcrumb-separator {\\n margin: 0 var(--breadcrumb-spacing);\\n color: var(--breadcrumb-separator-color);\\n user-select: none;\\n}\\n\\n.breadcrumb-ellipsis {\\n display: flex;\\n align-items: center;\\n padding: 2px 4px;\\n margin: -2px -4px;\\n cursor: pointer;\\n color: var(--breadcrumb-color);\\n border-radius: 2px;\\n transition: background 0.2s ease;\\n}\\n\\n.breadcrumb-ellipsis:hover {\\n background: rgba(0, 0, 0, 0.05);\\n}\\n\\n.breadcrumb-ellipsis:focus-visible {\\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.4);\\n outline: none;\\n}\\n\\n/* Sizes */\\n:host([size=\\\"small\\\"]) {\\n --breadcrumb-font-size: 12px;\\n --breadcrumb-spacing: 6px;\\n}\\n\\n:host([size=\\\"large\\\"]) {\\n --breadcrumb-font-size: 16px;\\n --breadcrumb-spacing: 10px;\\n}\\n\\n/* Collapsed state */\\n.breadcrumb--collapsed .breadcrumb-item--hidden {\\n display: none;\\n}\\n\\n/* Mobile responsive */\\n@media (max-width: 640px) {\\n .breadcrumb {\\n font-size: calc(var(--breadcrumb-font-size) * 0.9);\\n }\\n}\";",null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snice-breadcrumbs.js","sources":["../../../components/breadcrumbs/snice-breadcrumbs.css?inline","../../../../components/breadcrumbs/snice-breadcrumbs.ts"],"sourcesContent":["export default \":host {\\n display: block;\\n --breadcrumb-font-size: 0.875rem; /* 14px */\\n --breadcrumb-spacing: 0.5rem; /* 8px */\\n --breadcrumb-color: rgb(var(--snice-color-gray-600, 82 82 82));\\n --breadcrumb-hover-color: rgb(var(--snice-color-blue-600, 37 99 235));\\n --breadcrumb-active-color: rgb(var(--snice-color-gray-900, 23 23 23));\\n --breadcrumb-separator-color: rgb(var(--snice-color-gray-400, 163 163 163));\\n}\\n\\n/* Meta elements should not interfere with layout */\\ncase, when, default, if {\\n display: contents;\\n}\\n\\n.breadcrumb {\\n display: flex;\\n align-items: center;\\n flex-wrap: wrap;\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n font-size: var(--breadcrumb-font-size);\\n line-height: 1.5;\\n}\\n\\n.breadcrumb-item {\\n display: flex;\\n align-items: center;\\n color: var(--breadcrumb-color);\\n}\\n\\n.breadcrumb-link {\\n color: inherit;\\n text-decoration: none;\\n transition: color 0.2s ease;\\n cursor: pointer;\\n outline: none;\\n border-radius: 2px;\\n padding: 0.125rem 0.25rem; /* 2px 4px */\\n margin: -0.125rem -0.25rem; /* -2px -4px */\\n display: inline-flex;\\n align-items: center;\\n gap: 0.375rem; /* 6px */\\n}\\n\\n.breadcrumb-link:hover {\\n color: var(--breadcrumb-hover-color);\\n text-decoration: underline;\\n}\\n\\n.breadcrumb-link:focus-visible {\\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.4);\\n}\\n\\n.breadcrumb-text {\\n padding: 2px 4px;\\n margin: -2px -4px;\\n display: inline-flex;\\n align-items: center;\\n gap: 0.375rem; /* 6px */\\n}\\n\\n.breadcrumb-icon {\\n display: inline-flex;\\n align-items: center;\\n font-size: 1.1em;\\n}\\n\\n.breadcrumb-icon-image {\\n width: 1.2em;\\n height: 1.2em;\\n object-fit: contain;\\n vertical-align: middle;\\n}\\n\\n[hidden] {\\n display: none !important;\\n}\\n\\n.breadcrumb-item--active {\\n color: var(--breadcrumb-active-color);\\n font-weight: 500;\\n}\\n\\n.breadcrumb-item--active .breadcrumb-link {\\n cursor: default;\\n pointer-events: none;\\n}\\n\\n.breadcrumb-separator {\\n margin: 0 var(--breadcrumb-spacing);\\n color: var(--breadcrumb-separator-color);\\n user-select: none;\\n}\\n\\n.breadcrumb-ellipsis {\\n display: flex;\\n align-items: center;\\n padding: 2px 4px;\\n margin: -2px -4px;\\n cursor: pointer;\\n color: var(--breadcrumb-color);\\n border-radius: 2px;\\n transition: background 0.2s ease;\\n}\\n\\n.breadcrumb-ellipsis:hover {\\n background: rgba(0, 0, 0, 0.05);\\n}\\n\\n.breadcrumb-ellipsis:focus-visible {\\n box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.4);\\n outline: none;\\n}\\n\\n/* Sizes */\\n:host([size=\\\"small\\\"]) {\\n --breadcrumb-font-size: 12px;\\n --breadcrumb-spacing: 6px;\\n}\\n\\n:host([size=\\\"large\\\"]) {\\n --breadcrumb-font-size: 16px;\\n --breadcrumb-spacing: 10px;\\n}\\n\\n/* Collapsed state */\\n.breadcrumb--collapsed .breadcrumb-item--hidden {\\n display: none;\\n}\\n\\n/* Mobile responsive */\\n@media (max-width: 640px) {\\n .breadcrumb {\\n font-size: calc(var(--breadcrumb-font-size) * 0.9);\\n }\\n}\";",null],"names":["cssTag"],"mappings":"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"}
@@ -16,16 +16,12 @@ export declare class SniceButton extends HTMLElement implements SniceButtonEleme
16
16
  spinner?: HTMLElement;
17
17
  label?: HTMLElement;
18
18
  iconElement?: HTMLImageElement;
19
- html(): string;
20
- css(): string;
21
- updateButtonClasses(): void;
22
- updateDisabledState(): void;
19
+ renderContent(): import("snice").TemplateResult;
20
+ private handleInternalClick;
21
+ componentStyles(): import("snice").CSSResult;
23
22
  setLoading(loading: boolean): void;
24
23
  setDisabled(disabled: boolean): void;
25
24
  setVariant(variant: typeof this.variant): void;
26
- handleClick(event: MouseEvent): {
27
- originalEvent: MouseEvent;
28
- } | undefined;
29
25
  focus(options?: FocusOptions): void;
30
26
  blur(): void;
31
27
  click(): void;