atomicuilibrary 0.1.0 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (618) hide show
  1. package/dist/cjs/category-section.cjs.entry.js +2 -2
  2. package/dist/cjs/dom-BvBb0kmW.js +267 -0
  3. package/dist/cjs/exploration-project-tailwind.cjs.js +2 -2
  4. package/dist/cjs/{index-ClkOYpT8.js → index-C32cWsm5.js} +1 -1
  5. package/dist/cjs/layout-manager.cjs.entry.js +3 -3
  6. package/dist/cjs/library-card.cjs.entry.js +2 -2
  7. package/dist/cjs/lm-container_2.cjs.entry.js +2 -2
  8. package/dist/cjs/lm-panel_3.cjs.entry.js +4 -4
  9. package/dist/cjs/loader.cjs.js +2 -2
  10. package/dist/cjs/my-component.cjs.entry.js +1 -1
  11. package/dist/cjs/my-step.cjs.entry.js +2 -2
  12. package/dist/cjs/nav-bar.cjs.entry.js +4 -4
  13. package/dist/cjs/smart-step.cjs.entry.js +3 -3
  14. package/dist/cjs/timeline-item.cjs.entry.js +2 -2
  15. package/dist/cjs/ui-accordion_11.cjs.entry.js +132 -50
  16. package/dist/cjs/ui-advanced-data-table.cjs.entry.js +2 -2
  17. package/dist/cjs/ui-anchor.cjs.entry.js +2 -2
  18. package/dist/cjs/ui-animate-on-scroll.cjs.entry.js +3 -3
  19. package/dist/cjs/ui-aside-panel.cjs.entry.js +10 -11
  20. package/dist/cjs/ui-avatar-group_5.cjs.entry.js +1694 -0
  21. package/dist/cjs/ui-breadcrumb-item.cjs.entry.js +3 -3
  22. package/dist/cjs/ui-breadcrumb.cjs.entry.js +1 -1
  23. package/dist/cjs/ui-callout-banner.cjs.entry.js +2 -2
  24. package/dist/cjs/ui-card.cjs.entry.js +4 -3
  25. package/dist/cjs/ui-carousel.cjs.entry.js +1 -1
  26. package/dist/cjs/ui-checkbox.cjs.entry.js +3 -3
  27. package/dist/cjs/ui-code-editor.cjs.entry.js +2 -2
  28. package/dist/cjs/ui-code-preview.cjs.entry.js +2 -2
  29. package/dist/cjs/ui-color-picker.cjs.entry.js +256 -22
  30. package/dist/cjs/ui-command-palette.cjs.entry.js +1 -1
  31. package/dist/cjs/ui-dialog-box.cjs.entry.js +85 -11
  32. package/dist/cjs/ui-dialog-content.cjs.entry.js +1 -1
  33. package/dist/cjs/ui-dialog-footer_2.cjs.entry.js +1 -1
  34. package/dist/cjs/ui-divider.cjs.entry.js +1 -1
  35. package/dist/cjs/ui-dock-host.cjs.entry.js +4 -4
  36. package/dist/cjs/ui-dock.cjs.entry.js +2 -2
  37. package/dist/cjs/ui-drag-drop.cjs.entry.js +2 -2
  38. package/dist/cjs/ui-dropdown_2.cjs.entry.js +104 -34
  39. package/dist/cjs/ui-empty-state.cjs.entry.js +2 -2
  40. package/dist/cjs/ui-fab-item.cjs.entry.js +2 -2
  41. package/dist/cjs/ui-fab.cjs.entry.js +4 -4
  42. package/dist/cjs/ui-file-upload.cjs.entry.js +143 -44
  43. package/dist/cjs/ui-horizontal-nav.cjs.entry.js +2 -2
  44. package/dist/cjs/ui-knob.cjs.entry.js +1 -1
  45. package/dist/cjs/ui-label.cjs.entry.js +473 -0
  46. package/dist/cjs/ui-library.cjs.entry.js +2 -2
  47. package/dist/cjs/ui-list-group_2.cjs.entry.js +349 -60
  48. package/dist/cjs/ui-list.cjs.entry.js +76 -42
  49. package/dist/cjs/ui-masonry.cjs.entry.js +1 -1
  50. package/dist/cjs/ui-meter-group.cjs.entry.js +5 -4
  51. package/dist/cjs/ui-navigation-item.cjs.entry.js +5 -5
  52. package/dist/cjs/ui-number-input.cjs.entry.js +7 -3
  53. package/dist/cjs/ui-otp-input.cjs.entry.js +5 -5
  54. package/dist/cjs/{ui-pagination_4.cjs.entry.js → ui-pagination_3.cjs.entry.js} +35 -506
  55. package/dist/cjs/ui-panel.cjs.entry.js +1 -1
  56. package/dist/cjs/ui-pattern-input.cjs.entry.js +46 -11
  57. package/dist/cjs/ui-progress.cjs.entry.js +66 -9
  58. package/dist/cjs/ui-range-slider.cjs.entry.js +2 -2
  59. package/dist/cjs/ui-resizable-panel.cjs.entry.js +2 -2
  60. package/dist/cjs/ui-scroll-top.cjs.entry.js +1 -1
  61. package/dist/cjs/ui-smart-context-menu.cjs.entry.js +1 -1
  62. package/dist/cjs/ui-smart-stepper.cjs.entry.js +2 -2
  63. package/dist/cjs/ui-snackbar.cjs.entry.js +1 -1
  64. package/dist/cjs/ui-speed-dial.cjs.entry.js +1 -1
  65. package/dist/cjs/ui-speedometer.cjs.entry.js +28 -17
  66. package/dist/cjs/ui-splitter.cjs.entry.js +1 -1
  67. package/dist/cjs/ui-step.cjs.entry.js +2 -2
  68. package/dist/cjs/ui-stepper.cjs.entry.js +1 -1
  69. package/dist/cjs/ui-switch.cjs.entry.js +14 -13
  70. package/dist/cjs/ui-tabs.cjs.entry.js +2 -2
  71. package/dist/cjs/ui-tag.cjs.entry.js +58 -13
  72. package/dist/cjs/ui-timeline.cjs.entry.js +10 -2
  73. package/dist/cjs/ui-timer.cjs.entry.js +2 -2
  74. package/dist/cjs/ui-toolbar.cjs.entry.js +2 -2
  75. package/dist/cjs/ui-tooltip.cjs.entry.js +4 -4
  76. package/dist/cjs/ui-top-bar.cjs.entry.js +1 -1
  77. package/dist/cjs/ui-transfer-list.cjs.entry.js +6 -6
  78. package/dist/cjs/ui-tree.cjs.entry.js +30 -15
  79. package/dist/cjs/ui-workspace-manager.cjs.entry.js +2 -2
  80. package/dist/collection/assets/js/component-config.js +1 -0
  81. package/dist/collection/assets/js/demo-loader.js +2 -0
  82. package/dist/collection/assets/js/demos/about-demo.js +13 -13
  83. package/dist/collection/assets/js/demos/accordion-demo.js +66 -66
  84. package/dist/collection/assets/js/demos/advanced-data-table-demo.js +102 -102
  85. package/dist/collection/assets/js/demos/anchor-demo.js +27 -28
  86. package/dist/collection/assets/js/demos/animate-on-scroll-demo.js +12 -12
  87. package/dist/collection/assets/js/demos/aside-panel-demo.js +51 -51
  88. package/dist/collection/assets/js/demos/avatar-demo.js +433 -95
  89. package/dist/collection/assets/js/demos/badge-demo.js +51 -52
  90. package/dist/collection/assets/js/demos/breadcrumb-demo.js +7 -7
  91. package/dist/collection/assets/js/demos/button-demo.js +117 -107
  92. package/dist/collection/assets/js/demos/button-toggle-demo.js +199 -96
  93. package/dist/collection/assets/js/demos/callout-banner-demo.js +23 -23
  94. package/dist/collection/assets/js/demos/card-demo.js +23 -22
  95. package/dist/collection/assets/js/demos/carousel-demo.js +632 -360
  96. package/dist/collection/assets/js/demos/checkbox-demo.js +124 -7
  97. package/dist/collection/assets/js/demos/color-picker-demo.js +394 -100
  98. package/dist/collection/assets/js/demos/command-palette-demo.js +182 -65
  99. package/dist/collection/assets/js/demos/complex-form-demo.js +5 -5
  100. package/dist/collection/assets/js/demos/context-menu-demo.js +43 -43
  101. package/dist/collection/assets/js/demos/dialog-demo-temp.js +3 -3
  102. package/dist/collection/assets/js/demos/dialog-demo.js +336 -230
  103. package/dist/collection/assets/js/demos/divider-demo.js +59 -62
  104. package/dist/collection/assets/js/demos/dock-demo.js +12 -12
  105. package/dist/collection/assets/js/demos/dock-host-init.js +31 -31
  106. package/dist/collection/assets/js/demos/documentation-demo.js +34 -34
  107. package/dist/collection/assets/js/demos/drag-drop-demo.js +2 -2
  108. package/dist/collection/assets/js/demos/dropdown-demo.js +140 -136
  109. package/dist/collection/assets/js/demos/dropdown-subtitle-demo.js +2 -2
  110. package/dist/collection/assets/js/demos/empty-state-demo.js +294 -78
  111. package/dist/collection/assets/js/demos/fab-demo.js +95 -11
  112. package/dist/collection/assets/js/demos/file-upload-demo.js +641 -171
  113. package/dist/collection/assets/js/demos/home-components.js +2 -2
  114. package/dist/collection/assets/js/demos/horizontal-nav-demo.js +6 -6
  115. package/dist/collection/assets/js/demos/icon-demo.js +17 -17
  116. package/dist/collection/assets/js/demos/input-demo.js +147 -143
  117. package/dist/collection/assets/js/demos/knob-demo.js +29 -30
  118. package/dist/collection/assets/js/demos/label-demo.js +697 -0
  119. package/dist/collection/assets/js/demos/layout-manager-demo.js +55 -55
  120. package/dist/collection/assets/js/demos/list-demo.js +185 -122
  121. package/dist/collection/assets/js/demos/loader-demo.js +48 -48
  122. package/dist/collection/assets/js/demos/masonry-demo.js +568 -140
  123. package/dist/collection/assets/js/demos/meter-group-demo.js +14 -16
  124. package/dist/collection/assets/js/demos/multi-level-context-menu-demo.js +25 -25
  125. package/dist/collection/assets/js/demos/my-profile-demo.js +27 -27
  126. package/dist/collection/assets/js/demos/nav-bar-demo.js +1 -1
  127. package/dist/collection/assets/js/demos/number-input-demo.js +262 -211
  128. package/dist/collection/assets/js/demos/pagination-demo.js +29 -29
  129. package/dist/collection/assets/js/demos/panel-demo.js +18 -25
  130. package/dist/collection/assets/js/demos/pattern-input-demo.js +278 -40
  131. package/dist/collection/assets/js/demos/popover-demo.js +240 -149
  132. package/dist/collection/assets/js/demos/progress-demo.js +170 -156
  133. package/dist/collection/assets/js/demos/radio-demo.js +73 -12
  134. package/dist/collection/assets/js/demos/range-slider-demo.js +33 -33
  135. package/dist/collection/assets/js/demos/rating-demo.js +19 -19
  136. package/dist/collection/assets/js/demos/scroll-top-demo.js +8 -9
  137. package/dist/collection/assets/js/demos/skeleton-demo.js +110 -52
  138. package/dist/collection/assets/js/demos/skeleton-performance-demo.js +2 -2
  139. package/dist/collection/assets/js/demos/smart-dialog-demo.js +12 -12
  140. package/dist/collection/assets/js/demos/smart-menu-demo.js +17 -17
  141. package/dist/collection/assets/js/demos/snackbar-demo.js +53 -53
  142. package/dist/collection/assets/js/demos/speed-dial-demo.js +14 -14
  143. package/dist/collection/assets/js/demos/speedometer-demo.js +40 -32
  144. package/dist/collection/assets/js/demos/split-button-demo.js +2 -2
  145. package/dist/collection/assets/js/demos/splitter-demo.js +14 -14
  146. package/dist/collection/assets/js/demos/stack-demo.js +27 -27
  147. package/dist/collection/assets/js/demos/stepper-demo.js +49 -49
  148. package/dist/collection/assets/js/demos/switch-demo.js +561 -125
  149. package/dist/collection/assets/js/demos/tabs-demo.js +22 -22
  150. package/dist/collection/assets/js/demos/tag-demo.js +62 -62
  151. package/dist/collection/assets/js/demos/theme-selector-demo.js +27 -27
  152. package/dist/collection/assets/js/demos/timeline-demo.js +10 -10
  153. package/dist/collection/assets/js/demos/timeline-playground.js +2 -2
  154. package/dist/collection/assets/js/demos/timer-demo.js +10 -10
  155. package/dist/collection/assets/js/demos/toolbar-demo.js +17 -17
  156. package/dist/collection/assets/js/demos/tooltip-demo.js +92 -90
  157. package/dist/collection/assets/js/demos/top-bar-demo.js +6 -6
  158. package/dist/collection/assets/js/demos/transfer-list-demo.js +20 -20
  159. package/dist/collection/assets/js/demos/tree-demo.js +50 -66
  160. package/dist/collection/assets/js/demos/workspace-manager-demo.js +20 -20
  161. package/dist/collection/collection-manifest.json +1 -2
  162. package/dist/collection/components/accordion/accordion.css +275 -9
  163. package/dist/collection/components/accordion/accordion.js +7 -6
  164. package/dist/collection/components/advanced-data-table/advanced-data-table.css +5 -5
  165. package/dist/collection/components/advanced-data-table/advanced-data-table.js +2 -2
  166. package/dist/collection/components/anchor/anchor.css +1 -0
  167. package/dist/collection/components/animate-on-scroll/animate-on-scroll.js +2 -2
  168. package/dist/collection/components/aside-panel/aside-panel.css +2 -2
  169. package/dist/collection/components/aside-panel/aside-panel.js +10 -11
  170. package/dist/collection/components/avatar/avatar.css +6 -6
  171. package/dist/collection/components/avatar/avatar.js +63 -11
  172. package/dist/collection/components/badge/badge.css +27 -17
  173. package/dist/collection/components/badge/badge.js +6 -3
  174. package/dist/collection/components/breadcrumb/breadcrumb-item.js +2 -2
  175. package/dist/collection/components/button/button.css +1 -0
  176. package/dist/collection/components/button/button.js +3 -3
  177. package/dist/collection/components/button-toggle/button-toggle.js +2 -2
  178. package/dist/collection/components/button-toggle-group/button-toggle-group.css +161 -14
  179. package/dist/collection/components/button-toggle-group/button-toggle-group.js +2 -2
  180. package/dist/collection/components/callout-banner/callout-banner.css +75 -0
  181. package/dist/collection/components/callout-banner/callout-banner.js +1 -1
  182. package/dist/collection/components/card/card.css +221 -9
  183. package/dist/collection/components/card/card.js +3 -2
  184. package/dist/collection/components/checkbox/checkbox.js +3 -3
  185. package/dist/collection/components/code-editor/code-editor.js +1 -1
  186. package/dist/collection/components/code-preview/ui-code-preview.js +1 -1
  187. package/dist/collection/components/color-picker/color-picker.css +110 -6
  188. package/dist/collection/components/color-picker/color-picker.js +302 -26
  189. package/dist/collection/components/context-menu/context-menu.css +9 -9
  190. package/dist/collection/components/dialog-box/dialog-box.js +116 -14
  191. package/dist/collection/components/dialog-header/dialog-header.js +1 -1
  192. package/dist/collection/components/dock/dock.css +116 -3
  193. package/dist/collection/components/dock-host/ui-dock-host.js +3 -3
  194. package/dist/collection/components/drag-drop/drag-drop.js +1 -1
  195. package/dist/collection/components/dropdown/dropdown.css +101 -8
  196. package/dist/collection/components/dropdown/dropdown.js +94 -28
  197. package/dist/collection/components/empty-state/empty-state.js +1 -1
  198. package/dist/collection/components/fab/fab.css +87 -15
  199. package/dist/collection/components/fab/fab.js +3 -3
  200. package/dist/collection/components/fab-item/fab-item.js +1 -1
  201. package/dist/collection/components/file-upload/file-upload.css +1362 -31
  202. package/dist/collection/components/file-upload/file-upload.js +171 -50
  203. package/dist/collection/components/horizontal-nav/horizontal-nav.css +9 -9
  204. package/dist/collection/components/horizontal-nav/horizontal-nav.js +2 -2
  205. package/dist/collection/components/icon/icon.js +1 -1
  206. package/dist/collection/components/input/input.css +9 -0
  207. package/dist/collection/components/input/input.js +20 -9
  208. package/dist/collection/components/label/label.css +583 -0
  209. package/dist/collection/components/label/label.js +1669 -0
  210. package/dist/collection/components/layout-manager/layout-manager.js +1 -1
  211. package/dist/collection/components/layout-manager/lm-floating-window/lm-floating-window.js +1 -1
  212. package/dist/collection/components/layout-manager/lm-panel/lm-panel.js +1 -1
  213. package/dist/collection/components/layout-manager/lm-splitter/lm-splitter.js +1 -1
  214. package/dist/collection/components/layout-manager/lm-tabs/lm-tabs.js +1 -1
  215. package/dist/collection/components/library/category-section.js +1 -1
  216. package/dist/collection/components/library/library-card.js +1 -1
  217. package/dist/collection/components/library/library.js +1 -1
  218. package/dist/collection/components/list/list.css +46 -5
  219. package/dist/collection/components/list/list.js +76 -42
  220. package/dist/collection/components/list-group/list-group.css +0 -2
  221. package/dist/collection/components/list-group/list-group.js +11 -5
  222. package/dist/collection/components/list-item/list-item.css +403 -131
  223. package/dist/collection/components/list-item/list-item.js +345 -61
  224. package/dist/collection/components/loader/loader.css +1 -1
  225. package/dist/collection/components/loader/loader.js +2 -2
  226. package/dist/collection/components/meter-group/meter-group.css +5 -0
  227. package/dist/collection/components/meter-group/meter-group.js +3 -2
  228. package/dist/collection/components/my-step/my-step.js +1 -1
  229. package/dist/collection/components/nav-bar/nav-bar.css +4 -4
  230. package/dist/collection/components/nav-bar/nav-bar.js +6 -6
  231. package/dist/collection/components/number-input/number-input.js +6 -2
  232. package/dist/collection/components/otp-input/otp-input.css +10 -0
  233. package/dist/collection/components/otp-input/otp-input.js +3 -3
  234. package/dist/collection/components/pagination/pagination.js +1 -1
  235. package/dist/collection/components/pattern-input/pattern-input.css +0 -1
  236. package/dist/collection/components/pattern-input/pattern-input.js +44 -9
  237. package/dist/collection/components/popover/popover.css +35 -7
  238. package/dist/collection/components/popover/popover.js +64 -9
  239. package/dist/collection/components/progress/progress.css +176 -32
  240. package/dist/collection/components/progress/progress.js +66 -8
  241. package/dist/collection/components/radio/radio.css +2 -0
  242. package/dist/collection/components/radio/radio.js +2 -2
  243. package/dist/collection/components/range-slider/range-slider.css +284 -31
  244. package/dist/collection/components/range-slider/range-slider.js +5 -5
  245. package/dist/collection/components/rating/rating.css +151 -65
  246. package/dist/collection/components/rating/rating.js +31 -13
  247. package/dist/collection/components/resizable-panel/resizable-panel.js +1 -1
  248. package/dist/collection/components/skeleton/skeleton-loader.css +144 -44
  249. package/dist/collection/components/skeleton/skeleton-loader.js +11 -7
  250. package/dist/collection/components/smart-stepper/smart-step.js +2 -2
  251. package/dist/collection/components/smart-stepper/smart-stepper.js +1 -1
  252. package/dist/collection/components/speedometer/speedometer.css +26 -6
  253. package/dist/collection/components/speedometer/speedometer.js +26 -15
  254. package/dist/collection/components/stack/stack.js +2 -2
  255. package/dist/collection/components/step/step.js +1 -1
  256. package/dist/collection/components/stepper/stepper.js +1 -1
  257. package/dist/collection/components/switch/switch.css +367 -8
  258. package/dist/collection/components/switch/switch.js +13 -12
  259. package/dist/collection/components/tag/tag.css +38 -12
  260. package/dist/collection/components/tag/tag.js +58 -13
  261. package/dist/collection/components/tag-group/tag-group.css +0 -1
  262. package/dist/collection/components/tag-group/tag-group.js +3 -3
  263. package/dist/collection/components/timeline/timeline.css +380 -317
  264. package/dist/collection/components/timeline/timeline.js +8 -0
  265. package/dist/collection/components/timeline-item/timeline-item.js +1 -1
  266. package/dist/collection/components/timer/timer.js +1 -1
  267. package/dist/collection/components/toggle-group/toggle-group.css +7 -3
  268. package/dist/collection/components/toggle-group/toggle-group.js +7 -3
  269. package/dist/collection/components/toolbar/toolbar.js +1 -1
  270. package/dist/collection/components/tooltip/tooltip.js +4 -4
  271. package/dist/collection/components/top-bar/top-bar.js +2 -2
  272. package/dist/collection/components/transfer-list/transfer-list.css +13 -13
  273. package/dist/collection/components/transfer-list/transfer-list.js +4 -4
  274. package/dist/collection/components/tree/tree.css +35 -21
  275. package/dist/collection/components/tree/tree.js +28 -13
  276. package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-bar.css +34 -16
  277. package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-bar.js +46 -11
  278. package/dist/collection/components/ui-navigation-bar/navigation-item.css +7 -7
  279. package/dist/collection/components/ui-navigation-bar/navigation-item.js +3 -3
  280. package/dist/collection/utils/dom.js +151 -151
  281. package/dist/components/avatar-group.js +1 -1
  282. package/dist/components/avatar.js +1 -1
  283. package/dist/components/badge.js +1 -1
  284. package/dist/components/button-toggle.js +1 -1
  285. package/dist/components/button.js +1 -0
  286. package/dist/components/category-section2.js +1 -1
  287. package/dist/components/checkbox.js +1 -1
  288. package/dist/components/context-menu.js +1 -1
  289. package/dist/components/dialog-header.js +1 -1
  290. package/dist/components/dom.js +1 -1
  291. package/dist/components/dropdown.js +1 -1
  292. package/dist/components/icon.js +2 -2
  293. package/dist/components/input.js +1 -1
  294. package/dist/components/layout-manager.js +1 -1
  295. package/dist/components/library-card2.js +1 -1
  296. package/dist/components/list-group.js +1 -1
  297. package/dist/components/list-item.js +1 -1
  298. package/dist/components/lm-container2.js +1 -1
  299. package/dist/components/lm-floating-window2.js +1 -1
  300. package/dist/components/lm-panel2.js +1 -1
  301. package/dist/components/lm-splitter2.js +1 -1
  302. package/dist/components/lm-tabs2.js +1 -1
  303. package/dist/components/loader.js +1 -1
  304. package/dist/components/my-step.js +1 -1
  305. package/dist/components/nav-bar.js +1 -1
  306. package/dist/components/pagination.js +1 -1
  307. package/dist/components/popover.js +1 -0
  308. package/dist/components/radio.js +1 -1
  309. package/dist/components/range-slider.js +1 -1
  310. package/dist/components/rating.js +1 -1
  311. package/dist/components/resizable-panel.js +1 -1
  312. package/dist/components/skeleton-loader.js +1 -1
  313. package/dist/components/smart-step.js +1 -1
  314. package/dist/components/stack.js +1 -1
  315. package/dist/components/switch.js +1 -1
  316. package/dist/components/tag-group.js +1 -1
  317. package/dist/components/tag.js +1 -1
  318. package/dist/components/timeline-item.js +1 -1
  319. package/dist/components/toggle-group.js +1 -1
  320. package/dist/components/tooltip.js +1 -1
  321. package/dist/components/ui-accordion.js +1 -1
  322. package/dist/components/ui-advanced-data-table.js +1 -1
  323. package/dist/components/ui-anchor.js +1 -1
  324. package/dist/components/ui-animate-on-scroll.js +1 -1
  325. package/dist/components/ui-aside-panel.js +1 -1
  326. package/dist/components/ui-badge.js +1 -1
  327. package/dist/components/ui-breadcrumb-item.js +1 -1
  328. package/dist/components/ui-breadcrumb.js +1 -1
  329. package/dist/components/ui-button-toggle-group.js +1 -1
  330. package/dist/components/ui-button.js +1 -1
  331. package/dist/components/ui-callout-banner.js +1 -1
  332. package/dist/components/ui-card.js +1 -1
  333. package/dist/components/ui-carousel.js +1 -1
  334. package/dist/components/ui-code-editor.js +1 -1
  335. package/dist/components/ui-code-preview.js +1 -1
  336. package/dist/components/ui-color-picker.js +1 -1
  337. package/dist/components/ui-command-palette.js +1 -1
  338. package/dist/components/ui-dialog-box.js +1 -1
  339. package/dist/components/ui-dock-host.js +1 -1
  340. package/dist/components/ui-dock.js +1 -1
  341. package/dist/components/ui-drag-drop.js +1 -1
  342. package/dist/components/ui-empty-state.js +1 -1
  343. package/dist/components/ui-fab-item.js +1 -1
  344. package/dist/components/ui-fab.js +1 -1
  345. package/dist/components/ui-file-upload.js +1 -1
  346. package/dist/components/ui-horizontal-nav.js +1 -1
  347. package/dist/components/ui-knob.js +1 -1
  348. package/dist/components/{ui-color-controller.d.ts → ui-label.d.ts} +4 -4
  349. package/dist/components/ui-label.js +1 -0
  350. package/dist/components/ui-library.js +1 -1
  351. package/dist/components/ui-list.js +1 -1
  352. package/dist/components/ui-masonry.js +1 -1
  353. package/dist/components/ui-meter-group.js +1 -1
  354. package/dist/components/ui-navigation-bar.js +1 -1
  355. package/dist/components/ui-navigation-item.js +1 -1
  356. package/dist/components/ui-number-input.js +1 -1
  357. package/dist/components/ui-otp-input.js +1 -1
  358. package/dist/components/ui-panel.js +1 -1
  359. package/dist/components/ui-pattern-input.js +1 -1
  360. package/dist/components/ui-popover.js +1 -1
  361. package/dist/components/ui-progress.js +1 -1
  362. package/dist/components/ui-scroll-top.js +1 -1
  363. package/dist/components/ui-smart-stepper.js +1 -1
  364. package/dist/components/ui-snackbar.js +1 -1
  365. package/dist/components/ui-speed-dial.js +1 -1
  366. package/dist/components/ui-speedometer.js +1 -1
  367. package/dist/components/ui-splitter.js +1 -1
  368. package/dist/components/ui-step.js +1 -1
  369. package/dist/components/ui-stepper.js +1 -1
  370. package/dist/components/ui-tabs.js +1 -1
  371. package/dist/components/ui-timeline.js +1 -1
  372. package/dist/components/ui-timer.js +1 -1
  373. package/dist/components/ui-toolbar.js +1 -1
  374. package/dist/components/ui-top-bar.js +1 -1
  375. package/dist/components/ui-transfer-list.js +1 -1
  376. package/dist/components/ui-tree.js +1 -1
  377. package/dist/components/ui-workspace-manager.js +1 -1
  378. package/dist/esm/category-section.entry.js +2 -2
  379. package/dist/esm/dom-DFBTWhGw.js +262 -0
  380. package/dist/esm/exploration-project-tailwind.js +3 -3
  381. package/dist/esm/{index-DUsoYu9r.js → index-Dqu2zaH1.js} +1 -1
  382. package/dist/esm/layout-manager.entry.js +3 -3
  383. package/dist/esm/library-card.entry.js +2 -2
  384. package/dist/esm/lm-container_2.entry.js +2 -2
  385. package/dist/esm/lm-panel_3.entry.js +4 -4
  386. package/dist/esm/loader.js +3 -3
  387. package/dist/esm/my-component.entry.js +1 -1
  388. package/dist/esm/my-step.entry.js +2 -2
  389. package/dist/esm/nav-bar.entry.js +4 -4
  390. package/dist/esm/smart-step.entry.js +3 -3
  391. package/dist/esm/timeline-item.entry.js +2 -2
  392. package/dist/esm/ui-accordion_11.entry.js +132 -50
  393. package/dist/esm/ui-advanced-data-table.entry.js +2 -2
  394. package/dist/esm/ui-anchor.entry.js +2 -2
  395. package/dist/esm/ui-animate-on-scroll.entry.js +3 -3
  396. package/dist/esm/ui-aside-panel.entry.js +10 -11
  397. package/dist/esm/ui-avatar-group_5.entry.js +1688 -0
  398. package/dist/esm/ui-breadcrumb-item.entry.js +3 -3
  399. package/dist/esm/ui-breadcrumb.entry.js +1 -1
  400. package/dist/esm/ui-callout-banner.entry.js +2 -2
  401. package/dist/esm/ui-card.entry.js +4 -3
  402. package/dist/esm/ui-carousel.entry.js +1 -1
  403. package/dist/esm/ui-checkbox.entry.js +3 -3
  404. package/dist/esm/ui-code-editor.entry.js +2 -2
  405. package/dist/esm/ui-code-preview.entry.js +2 -2
  406. package/dist/esm/ui-color-picker.entry.js +256 -22
  407. package/dist/esm/ui-command-palette.entry.js +1 -1
  408. package/dist/esm/ui-dialog-box.entry.js +85 -11
  409. package/dist/esm/ui-dialog-content.entry.js +1 -1
  410. package/dist/esm/ui-dialog-footer_2.entry.js +1 -1
  411. package/dist/esm/ui-divider.entry.js +1 -1
  412. package/dist/esm/ui-dock-host.entry.js +4 -4
  413. package/dist/esm/ui-dock.entry.js +2 -2
  414. package/dist/esm/ui-drag-drop.entry.js +2 -2
  415. package/dist/esm/ui-dropdown_2.entry.js +104 -34
  416. package/dist/esm/ui-empty-state.entry.js +2 -2
  417. package/dist/esm/ui-fab-item.entry.js +2 -2
  418. package/dist/esm/ui-fab.entry.js +4 -4
  419. package/dist/esm/ui-file-upload.entry.js +143 -44
  420. package/dist/esm/ui-horizontal-nav.entry.js +2 -2
  421. package/dist/esm/ui-knob.entry.js +1 -1
  422. package/dist/esm/ui-label.entry.js +471 -0
  423. package/dist/esm/ui-library.entry.js +2 -2
  424. package/dist/esm/ui-list-group_2.entry.js +349 -60
  425. package/dist/esm/ui-list.entry.js +76 -42
  426. package/dist/esm/ui-masonry.entry.js +1 -1
  427. package/dist/esm/ui-meter-group.entry.js +5 -4
  428. package/dist/esm/ui-navigation-item.entry.js +5 -5
  429. package/dist/esm/ui-number-input.entry.js +7 -3
  430. package/dist/esm/ui-otp-input.entry.js +5 -5
  431. package/dist/esm/{ui-pagination_4.entry.js → ui-pagination_3.entry.js} +36 -506
  432. package/dist/esm/ui-panel.entry.js +1 -1
  433. package/dist/esm/ui-pattern-input.entry.js +46 -11
  434. package/dist/esm/ui-progress.entry.js +66 -9
  435. package/dist/esm/ui-range-slider.entry.js +2 -2
  436. package/dist/esm/ui-resizable-panel.entry.js +2 -2
  437. package/dist/esm/ui-scroll-top.entry.js +1 -1
  438. package/dist/esm/ui-smart-context-menu.entry.js +1 -1
  439. package/dist/esm/ui-smart-stepper.entry.js +2 -2
  440. package/dist/esm/ui-snackbar.entry.js +1 -1
  441. package/dist/esm/ui-speed-dial.entry.js +1 -1
  442. package/dist/esm/ui-speedometer.entry.js +28 -17
  443. package/dist/esm/ui-splitter.entry.js +1 -1
  444. package/dist/esm/ui-step.entry.js +2 -2
  445. package/dist/esm/ui-stepper.entry.js +1 -1
  446. package/dist/esm/ui-switch.entry.js +14 -13
  447. package/dist/esm/ui-tabs.entry.js +2 -2
  448. package/dist/esm/ui-tag.entry.js +58 -13
  449. package/dist/esm/ui-timeline.entry.js +10 -2
  450. package/dist/esm/ui-timer.entry.js +2 -2
  451. package/dist/esm/ui-toolbar.entry.js +2 -2
  452. package/dist/esm/ui-tooltip.entry.js +4 -4
  453. package/dist/esm/ui-top-bar.entry.js +1 -1
  454. package/dist/esm/ui-transfer-list.entry.js +6 -6
  455. package/dist/esm/ui-tree.entry.js +30 -15
  456. package/dist/esm/ui-workspace-manager.entry.js +2 -2
  457. package/dist/exploration-project-tailwind/exploration-project-tailwind.css +1 -1
  458. package/dist/exploration-project-tailwind/exploration-project-tailwind.esm.js +1 -1
  459. package/dist/exploration-project-tailwind/{p-7ba2258a.entry.js → p-024a299a.entry.js} +1 -1
  460. package/dist/exploration-project-tailwind/p-0a71896a.entry.js +1 -0
  461. package/dist/exploration-project-tailwind/{p-35296877.entry.js → p-0cdeb8d8.entry.js} +1 -1
  462. package/dist/exploration-project-tailwind/{p-a42fdc33.entry.js → p-139cefbc.entry.js} +1 -1
  463. package/dist/exploration-project-tailwind/{p-036d2a44.entry.js → p-198c83e5.entry.js} +1 -1
  464. package/dist/exploration-project-tailwind/p-236f47b1.entry.js +1 -0
  465. package/dist/exploration-project-tailwind/{p-81ebba11.entry.js → p-25530d0d.entry.js} +1 -1
  466. package/dist/exploration-project-tailwind/{p-41cd6bf0.entry.js → p-298f2057.entry.js} +1 -1
  467. package/dist/exploration-project-tailwind/{p-85e36111.entry.js → p-2b5a8e3e.entry.js} +1 -1
  468. package/dist/exploration-project-tailwind/{p-e8c6d395.entry.js → p-2b6aa7bc.entry.js} +1 -1
  469. package/dist/exploration-project-tailwind/{p-70bacda8.entry.js → p-2cfba753.entry.js} +1 -1
  470. package/dist/exploration-project-tailwind/{p-cbee2607.entry.js → p-2fe22958.entry.js} +1 -1
  471. package/dist/exploration-project-tailwind/{p-20ecc116.entry.js → p-3012e780.entry.js} +1 -1
  472. package/dist/exploration-project-tailwind/p-321c3f46.entry.js +1 -0
  473. package/dist/exploration-project-tailwind/{p-8b57fe4e.entry.js → p-3ab43638.entry.js} +1 -1
  474. package/dist/exploration-project-tailwind/p-3ad7e47e.entry.js +1 -0
  475. package/dist/exploration-project-tailwind/p-3b1ca826.entry.js +1 -0
  476. package/dist/exploration-project-tailwind/p-3ee8ddae.entry.js +1 -0
  477. package/dist/exploration-project-tailwind/{p-e22317c1.entry.js → p-3efb44c8.entry.js} +1 -1
  478. package/dist/exploration-project-tailwind/{p-36861546.entry.js → p-42e3bc28.entry.js} +1 -1
  479. package/dist/exploration-project-tailwind/p-4360331a.entry.js +1 -0
  480. package/dist/exploration-project-tailwind/{p-2f961934.entry.js → p-443de32b.entry.js} +1 -1
  481. package/dist/exploration-project-tailwind/{p-898dd0fa.entry.js → p-44d15451.entry.js} +1 -1
  482. package/dist/exploration-project-tailwind/{p-4288c158.entry.js → p-46071679.entry.js} +1 -1
  483. package/dist/exploration-project-tailwind/{p-a3f465d9.entry.js → p-497d6182.entry.js} +1 -1
  484. package/dist/exploration-project-tailwind/p-4ad8c55c.entry.js +1 -0
  485. package/dist/exploration-project-tailwind/{p-4aaa8e40.entry.js → p-4c46ac0b.entry.js} +1 -1
  486. package/dist/exploration-project-tailwind/{p-98e91da5.entry.js → p-5042ddaa.entry.js} +1 -1
  487. package/dist/exploration-project-tailwind/p-60190e0e.entry.js +1 -0
  488. package/dist/exploration-project-tailwind/p-60530874.entry.js +1 -0
  489. package/dist/exploration-project-tailwind/{p-200241f8.entry.js → p-6108565d.entry.js} +1 -1
  490. package/dist/exploration-project-tailwind/{p-fb4aca69.entry.js → p-62889cfe.entry.js} +1 -1
  491. package/dist/exploration-project-tailwind/{p-c02284ea.entry.js → p-66f71613.entry.js} +1 -1
  492. package/dist/exploration-project-tailwind/{p-7889bfc4.entry.js → p-67c440b2.entry.js} +1 -1
  493. package/dist/exploration-project-tailwind/{p-c1c8ac28.entry.js → p-6f09503f.entry.js} +1 -1
  494. package/dist/exploration-project-tailwind/p-721bdbc3.entry.js +1 -0
  495. package/dist/exploration-project-tailwind/p-747b02ea.entry.js +1 -0
  496. package/dist/exploration-project-tailwind/{p-c6fd72e1.entry.js → p-754cb046.entry.js} +1 -1
  497. package/dist/exploration-project-tailwind/{p-97af03cc.entry.js → p-7ed3bba2.entry.js} +1 -1
  498. package/dist/exploration-project-tailwind/{p-d59da767.entry.js → p-864cebb7.entry.js} +1 -1
  499. package/dist/exploration-project-tailwind/{p-4d73c143.entry.js → p-96ee3196.entry.js} +1 -1
  500. package/dist/exploration-project-tailwind/{p-54965530.entry.js → p-97086868.entry.js} +1 -1
  501. package/dist/exploration-project-tailwind/{p-d114a347.entry.js → p-9c5ced88.entry.js} +1 -1
  502. package/dist/exploration-project-tailwind/p-9d3044d4.entry.js +1 -0
  503. package/dist/exploration-project-tailwind/p-9e079be6.entry.js +1 -0
  504. package/dist/exploration-project-tailwind/{p-790556f0.entry.js → p-9e4c45f5.entry.js} +1 -1
  505. package/dist/exploration-project-tailwind/p-9eee7394.entry.js +1 -0
  506. package/dist/exploration-project-tailwind/p-DFBTWhGw.js +1 -0
  507. package/dist/exploration-project-tailwind/p-Dqu2zaH1.js +2 -0
  508. package/dist/exploration-project-tailwind/p-a7bdedc2.entry.js +1 -0
  509. package/dist/exploration-project-tailwind/{p-c87aeab6.entry.js → p-a8ec29de.entry.js} +1 -1
  510. package/dist/exploration-project-tailwind/{p-6ddbee42.entry.js → p-ae617f62.entry.js} +1 -1
  511. package/dist/exploration-project-tailwind/{p-05a436d3.entry.js → p-aef76052.entry.js} +1 -1
  512. package/dist/exploration-project-tailwind/p-b5f043fa.entry.js +1 -0
  513. package/dist/exploration-project-tailwind/p-b637b91b.entry.js +1 -0
  514. package/dist/exploration-project-tailwind/{p-d2e45c5e.entry.js → p-bc49a088.entry.js} +1 -1
  515. package/dist/exploration-project-tailwind/{p-6b838549.entry.js → p-bd9a631f.entry.js} +1 -1
  516. package/dist/exploration-project-tailwind/{p-e8ba0c95.entry.js → p-bf4b6767.entry.js} +1 -1
  517. package/dist/exploration-project-tailwind/p-c0fa400e.entry.js +1 -0
  518. package/dist/exploration-project-tailwind/{p-8578b616.entry.js → p-c4f3d990.entry.js} +1 -1
  519. package/dist/exploration-project-tailwind/p-c68ddb2f.entry.js +1 -0
  520. package/dist/exploration-project-tailwind/p-c79574c4.entry.js +1 -0
  521. package/dist/exploration-project-tailwind/p-c840098d.entry.js +1 -0
  522. package/dist/exploration-project-tailwind/{p-a1ad32a2.entry.js → p-c8663cbe.entry.js} +1 -1
  523. package/dist/exploration-project-tailwind/p-cb6e38a6.entry.js +1 -0
  524. package/dist/exploration-project-tailwind/p-cb9f2df1.entry.js +1 -0
  525. package/dist/exploration-project-tailwind/p-cfe8b696.entry.js +1 -0
  526. package/dist/exploration-project-tailwind/p-d00e13ae.entry.js +1 -0
  527. package/dist/exploration-project-tailwind/{p-c4ba7e52.entry.js → p-d01ed934.entry.js} +1 -1
  528. package/dist/exploration-project-tailwind/{p-aa85ff78.entry.js → p-d4e57d94.entry.js} +1 -1
  529. package/dist/exploration-project-tailwind/{p-ccb5c737.entry.js → p-d5bd3a3f.entry.js} +1 -1
  530. package/dist/exploration-project-tailwind/{p-45482d86.entry.js → p-d987cebe.entry.js} +1 -1
  531. package/dist/exploration-project-tailwind/p-d9ae77c0.entry.js +1 -0
  532. package/dist/exploration-project-tailwind/p-e9bae5c7.entry.js +1 -0
  533. package/dist/exploration-project-tailwind/p-f516fabc.entry.js +1 -0
  534. package/dist/exploration-project-tailwind/p-f68e2794.entry.js +1 -0
  535. package/dist/exploration-project-tailwind/{p-d30e24bd.entry.js → p-fa034f69.entry.js} +1 -1
  536. package/dist/types/components/aside-panel/aside-panel.d.ts +0 -3
  537. package/dist/types/components/avatar/avatar.d.ts +3 -0
  538. package/dist/types/components/avatar/types.d.ts +2 -0
  539. package/dist/types/components/badge/badge.d.ts +1 -0
  540. package/dist/types/components/color-picker/color-picker.d.ts +35 -2
  541. package/dist/types/components/dialog-box/dialog-box.d.ts +10 -0
  542. package/dist/types/components/dropdown/dropdown.d.ts +5 -0
  543. package/dist/types/components/file-upload/file-upload.d.ts +23 -6
  544. package/dist/types/components/label/label.d.ts +290 -0
  545. package/dist/types/components/label/types.d.ts +39 -0
  546. package/dist/types/components/list/list.d.ts +2 -1
  547. package/dist/types/components/list-group/list-group.d.ts +1 -0
  548. package/dist/types/components/list-item/list-item.d.ts +45 -17
  549. package/dist/types/components/pattern-input/pattern-input.d.ts +6 -0
  550. package/dist/types/components/popover/popover.d.ts +3 -0
  551. package/dist/types/components/progress/progress.d.ts +7 -0
  552. package/dist/types/components/range-slider/range-slider.d.ts +2 -2
  553. package/dist/types/components/rating/rating.d.ts +1 -0
  554. package/dist/types/components/skeleton/skeleton-loader.d.ts +1 -1
  555. package/dist/types/components/speedometer/speedometer.d.ts +1 -0
  556. package/dist/types/components/tag/tag.d.ts +4 -0
  557. package/dist/types/components/tree/tree.d.ts +1 -0
  558. package/dist/types/components/ui-navigation-bar/navigation-bar/navigation-bar.d.ts +1 -1
  559. package/dist/types/components.d.ts +742 -425
  560. package/dist/types/types/common.d.ts +2 -2
  561. package/dist/types/types/common.type.d.ts +2 -0
  562. package/dist/types/utils/dom.d.ts +4 -4
  563. package/package.json +4 -5
  564. package/dist/cjs/dom-oP1E4Rd3.js +0 -267
  565. package/dist/cjs/ui-avatar-group_3.cjs.entry.js +0 -634
  566. package/dist/cjs/ui-color-controller.cjs.entry.js +0 -150
  567. package/dist/cjs/ui-popover.cjs.entry.js +0 -517
  568. package/dist/cjs/ui-smart-location-dropdown.cjs.entry.js +0 -565
  569. package/dist/collection/components/color-controller/color-controller.css +0 -108
  570. package/dist/collection/components/color-controller/color-controller.js +0 -224
  571. package/dist/collection/components/smart-location-dropdown/smart-location-dropdown.css +0 -357
  572. package/dist/collection/components/smart-location-dropdown/smart-location-dropdown.js +0 -1190
  573. package/dist/components/ui-color-controller.js +0 -1
  574. package/dist/components/ui-smart-location-dropdown.d.ts +0 -11
  575. package/dist/components/ui-smart-location-dropdown.js +0 -1
  576. package/dist/esm/dom-BMFah5q3.js +0 -262
  577. package/dist/esm/ui-avatar-group_3.entry.js +0 -630
  578. package/dist/esm/ui-color-controller.entry.js +0 -148
  579. package/dist/esm/ui-popover.entry.js +0 -515
  580. package/dist/esm/ui-smart-location-dropdown.entry.js +0 -563
  581. package/dist/exploration-project-tailwind/p-06f0c679.entry.js +0 -1
  582. package/dist/exploration-project-tailwind/p-0d31c9e9.entry.js +0 -1
  583. package/dist/exploration-project-tailwind/p-148e81df.entry.js +0 -1
  584. package/dist/exploration-project-tailwind/p-16bdd162.entry.js +0 -1
  585. package/dist/exploration-project-tailwind/p-2347d21b.entry.js +0 -1
  586. package/dist/exploration-project-tailwind/p-3d381f75.entry.js +0 -1
  587. package/dist/exploration-project-tailwind/p-4417a9d8.entry.js +0 -1
  588. package/dist/exploration-project-tailwind/p-44742ddd.entry.js +0 -1
  589. package/dist/exploration-project-tailwind/p-47e2a7ee.entry.js +0 -1
  590. package/dist/exploration-project-tailwind/p-4bef8bed.entry.js +0 -1
  591. package/dist/exploration-project-tailwind/p-4efd63ce.entry.js +0 -1
  592. package/dist/exploration-project-tailwind/p-5c835d90.entry.js +0 -1
  593. package/dist/exploration-project-tailwind/p-61717490.entry.js +0 -1
  594. package/dist/exploration-project-tailwind/p-717dad1f.entry.js +0 -1
  595. package/dist/exploration-project-tailwind/p-71d95bb1.entry.js +0 -1
  596. package/dist/exploration-project-tailwind/p-9bd14f69.entry.js +0 -1
  597. package/dist/exploration-project-tailwind/p-9fc06ff0.entry.js +0 -1
  598. package/dist/exploration-project-tailwind/p-BMFah5q3.js +0 -1
  599. package/dist/exploration-project-tailwind/p-DUsoYu9r.js +0 -2
  600. package/dist/exploration-project-tailwind/p-a27f59d2.entry.js +0 -1
  601. package/dist/exploration-project-tailwind/p-a7b07cf4.entry.js +0 -1
  602. package/dist/exploration-project-tailwind/p-bd89d060.entry.js +0 -1
  603. package/dist/exploration-project-tailwind/p-c63c522e.entry.js +0 -1
  604. package/dist/exploration-project-tailwind/p-c69dd43e.entry.js +0 -1
  605. package/dist/exploration-project-tailwind/p-d6ce9721.entry.js +0 -1
  606. package/dist/exploration-project-tailwind/p-dc92a343.entry.js +0 -1
  607. package/dist/exploration-project-tailwind/p-debede45.entry.js +0 -1
  608. package/dist/exploration-project-tailwind/p-e76318c7.entry.js +0 -1
  609. package/dist/exploration-project-tailwind/p-ea51c5d8.entry.js +0 -1
  610. package/dist/exploration-project-tailwind/p-eab5ad36.entry.js +0 -1
  611. package/dist/exploration-project-tailwind/p-f0bc5d7e.entry.js +0 -1
  612. package/dist/exploration-project-tailwind/p-f1beee72.entry.js +0 -1
  613. package/dist/exploration-project-tailwind/p-f543392f.entry.js +0 -1
  614. package/dist/exploration-project-tailwind/p-f61cfb7c.entry.js +0 -1
  615. package/dist/types/components/color-controller/color-controller.d.ts +0 -24
  616. package/dist/types/components/smart-location-dropdown/smart-location-dropdown.d.ts +0 -119
  617. package/dist/types/components/smart-location-dropdown/types.d.ts +0 -37
  618. /package/dist/collection/components/{smart-location-dropdown → label}/types.js +0 -0
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-ClkOYpT8.js');
3
+ var index = require('./index-C32cWsm5.js');
4
4
 
5
- const listGroupCss = () => `.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;--header-padding:12px 16px;--header-bg-hover:rgba(0, 0, 0, 0.04);--header-bg-selected:var(--primary-color-light, #e0f2fe);--header-color-selected:var(--primary-color, #0284c7)}.group-header{padding:var(--header-padding);font-weight:600;font-size:0.875rem;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:0.05em;display:flex;align-items:center;justify-content:space-between;user-select:none;border-radius:4px;margin-bottom:4px;transition:all 0.2s ease}.group-header-collapsible{cursor:pointer}.group-header-collapsible:hover{background-color:var(--header-bg-hover)}.group-header-selectable{cursor:pointer}.group-header-selectable:hover{background-color:var(--header-bg-hover)}.group-header-selected{background-color:var(--header-bg-selected);color:var(--header-color-selected)}.group-header-selected .group-icon,.group-header-selected .collapse-icon{color:var(--header-color-selected)}.group-header-dense{padding:8px 16px;font-size:0.8125rem}.header-left{display:flex;align-items:center;gap:12px;flex:1}.collapse-btn{background:none;border:none;padding:4px;cursor:pointer;color:inherit;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color 0.2s;margin-left:-8px}.collapse-btn:hover{background-color:rgba(0, 0, 0, 0.1)}.selection-checkbox{margin-right:-4px;display:flex;align-items:center;justify-content:center}.selection-checkbox .checkbox-box{width:20px;height:20px;border:2px solid var(--border-strong, #d1d5db);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all 0.2s ease;background:var(--bg-primary, #ffffff)}.selection-checkbox .checkbox-box i{font-size:12px;color:var(--text-standard, #ffffff);transform:scale(0);transition:transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.selection-checkbox.selected .checkbox-box{background:var(--primary-color, #0ea5e9);border-color:var(--primary-color, #0ea5e9)}.selection-checkbox.selected .checkbox-box i{transform:scale(1)}.selection-checkbox:hover .checkbox-box{border-color:var(--primary-color, #0ea5e9)}.group-badge{padding:2px 8px;border-radius:12px;font-size:0.75rem;font-weight:600;margin-left:8px;line-height:1.4}.group-badge.badge-default{background:var(--bg-primary, #e5e7eb);color:var(--text-secondary, #374151)}.group-badge.badge-primary{background:var(--primary-color, #0ea5e9);color:var(--text-standard, #ffffff)}.group-badge.badge-secondary{background:var(--secondary-color, #64748b);color:var(--text-standard, #ffffff)}.group-badge.badge-success{background:var(--success-color, #22c55e);color:var(--text-standard, #ffffff)}.group-badge.badge-danger{background:var(--danger-color, var(--color-danger, #ef4444));color:var(--text-standard, #ffffff)}.group-badge.badge-warning{background:var(--warning-color, var(--color-warning, #f59e0b));color:var(--text-standard, #ffffff)}.group-badge.badge-info{background:var(--info-color, var(--color-primary, #10b981));color:var(--text-standard, #ffffff)}.header-actions{display:flex;align-items:center;gap:8px}.group-footer{padding:8px 16px;border-top:1px solid var(--border-subtle, #f3f4f6);font-size:0.875rem;color:var(--text-muted, #6b7280)}.group-footer:empty{display:none}.collapse-icon{font-size:0.75rem;transition:transform 0.2s ease;color:var(--text-muted, #9ca3af)}.group-icon{font-size:1rem;color:var(--text-muted, #6b7280)}.group-label{flex:1}.group-content{display:block;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);opacity:1;max-height:1000px;overflow:visible;transform-origin:top}.group-content-collapsed{max-height:0;opacity:0;overflow:hidden;transform:scaleY(0.95)}.group-divider{height:1px;background-color:var(--bg-primary, #e5e7eb);margin:8px 0}.list-group-skeleton{padding:16px}.list-group-skeleton .skeleton-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.list-group-skeleton .skeleton-header .skeleton-icon{width:24px;height:24px;border-radius:4px;background:var(--bg-primary, #e5e7eb);animation:pulse 1.5s infinite}.list-group-skeleton .skeleton-header .skeleton-text{height:16px;width:120px;border-radius:4px;background:var(--bg-primary, #e5e7eb);animation:pulse 1.5s infinite}.list-group-skeleton .skeleton-content{display:flex;flex-direction:column;gap:12px;padding-left:12px}.list-group-skeleton .skeleton-content .skeleton-item{height:48px;width:100%;border-radius:8px;background:var(--bg-secondary, #f3f4f6);animation:pulse 1.5s infinite}.list-group-skeleton .skeleton-content .skeleton-item:nth-child(2){animation-delay:0.1s}.list-group-skeleton .skeleton-content .skeleton-item:nth-child(3){animation-delay:0.2s}@keyframes pulse{0%{opacity:1}50%{opacity:0.5}100%{opacity:1}}`;
5
+ const listGroupCss = () => `.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;--header-bg-hover:rgba(0, 0, 0, 0.04);--header-bg-selected:var(--primary-color-light, #e0f2fe);--header-color-selected:var(--primary-color, #0284c7)}.group-header{padding:var(--header-padding);font-weight:600;font-size:0.875rem;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:0.05em;display:flex;align-items:center;justify-content:space-between;user-select:none;border-radius:4px;transition:all 0.2s ease}.group-header-collapsible{cursor:pointer}.group-header-collapsible:hover{background-color:var(--header-bg-hover)}.group-header-selectable{cursor:pointer}.group-header-selectable:hover{background-color:var(--header-bg-hover)}.group-header-selected{background-color:var(--header-bg-selected);color:var(--header-color-selected)}.group-header-selected .group-icon,.group-header-selected .collapse-icon{color:var(--header-color-selected)}.group-header-dense{padding:8px 16px;font-size:0.8125rem}.header-left{display:flex;align-items:center;gap:12px;flex:1}.collapse-btn{background:none;border:none;padding:4px;cursor:pointer;color:inherit;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color 0.2s;margin-left:-8px}.collapse-btn:hover{background-color:rgba(0, 0, 0, 0.1)}.selection-checkbox{margin-right:-4px;display:flex;align-items:center;justify-content:center}.selection-checkbox .checkbox-box{width:20px;height:20px;border:2px solid var(--border-strong, #d1d5db);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all 0.2s ease;background:var(--bg-primary, #ffffff)}.selection-checkbox .checkbox-box i{font-size:12px;color:var(--text-standard, #ffffff);transform:scale(0);transition:transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.selection-checkbox.selected .checkbox-box{background:var(--primary-color, #0ea5e9);border-color:var(--primary-color, #0ea5e9)}.selection-checkbox.selected .checkbox-box i{transform:scale(1)}.selection-checkbox:hover .checkbox-box{border-color:var(--primary-color, #0ea5e9)}.group-badge{padding:2px 8px;border-radius:12px;font-size:0.75rem;font-weight:600;margin-left:8px;line-height:1.4}.group-badge.badge-default{background:var(--bg-primary, #e5e7eb);color:var(--text-secondary, #374151)}.group-badge.badge-primary{background:var(--primary-color, #0ea5e9);color:var(--text-standard, #ffffff)}.group-badge.badge-secondary{background:var(--secondary-color, #64748b);color:var(--text-standard, #ffffff)}.group-badge.badge-success{background:var(--success-color, #22c55e);color:var(--text-standard, #ffffff)}.group-badge.badge-danger{background:var(--danger-color, var(--color-danger, #ef4444));color:var(--text-standard, #ffffff)}.group-badge.badge-warning{background:var(--warning-color, var(--color-warning, #f59e0b));color:var(--text-standard, #ffffff)}.group-badge.badge-info{background:var(--info-color, var(--color-primary, #10b981));color:var(--text-standard, #ffffff)}.header-actions{display:flex;align-items:center;gap:8px}.group-footer{padding:8px 16px;border-top:1px solid var(--border-subtle, #f3f4f6);font-size:0.875rem;color:var(--text-muted, #6b7280)}.group-footer:empty{display:none}.collapse-icon{font-size:0.75rem;transition:transform 0.2s ease;color:var(--text-muted, #9ca3af)}.group-icon{font-size:1rem;color:var(--text-muted, #6b7280)}.group-label{flex:1}.group-content{display:block;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);opacity:1;max-height:1000px;overflow:visible;transform-origin:top}.group-content-collapsed{max-height:0;opacity:0;overflow:hidden;transform:scaleY(0.95)}.group-divider{height:1px;background-color:var(--bg-primary, #e5e7eb);margin:8px 0}.list-group-skeleton{padding:16px}.list-group-skeleton .skeleton-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.list-group-skeleton .skeleton-header .skeleton-icon{width:24px;height:24px;border-radius:4px;background:var(--bg-primary, #e5e7eb);animation:pulse 1.5s infinite}.list-group-skeleton .skeleton-header .skeleton-text{height:16px;width:120px;border-radius:4px;background:var(--bg-primary, #e5e7eb);animation:pulse 1.5s infinite}.list-group-skeleton .skeleton-content{display:flex;flex-direction:column;gap:12px;padding-left:12px}.list-group-skeleton .skeleton-content .skeleton-item{height:48px;width:100%;border-radius:8px;background:var(--bg-secondary, #f3f4f6);animation:pulse 1.5s infinite}.list-group-skeleton .skeleton-content .skeleton-item:nth-child(2){animation-delay:0.1s}.list-group-skeleton .skeleton-content .skeleton-item:nth-child(3){animation-delay:0.2s}@keyframes pulse{0%{opacity:1}50%{opacity:0.5}100%{opacity:1}}`;
6
6
 
7
7
  const AppListGroup = class {
8
8
  constructor(hostRef) {
@@ -33,13 +33,19 @@ const AppListGroup = class {
33
33
  this.groupToggle.emit({ expanded: this.expanded });
34
34
  }
35
35
  };
36
- handleHeaderClick = (e) => {
36
+ didToggleFromButton = false;
37
+ handleHeaderClick = (_e) => {
38
+ if (this.didToggleFromButton) {
39
+ this.didToggleFromButton = false;
40
+ return;
41
+ }
37
42
  if (this.selectable) {
38
43
  this.selected = !this.selected;
39
44
  }
40
45
  this.groupClick.emit({ selected: this.selected, expanded: this.expanded });
41
46
  if (this.collapsible && !this.selectable) {
42
- this.toggleExpanded(e);
47
+ this.expanded = !this.expanded;
48
+ this.groupToggle.emit({ expanded: this.expanded });
43
49
  }
44
50
  };
45
51
  renderSkeleton() {
@@ -61,15 +67,15 @@ const AppListGroup = class {
61
67
  'group-content-collapsed': !this.expanded,
62
68
  };
63
69
  const paddingLeft = this.level * 24;
64
- return (index.h(index.Host, { style: { '--group-level': this.level.toString() } }, this.label && (index.h("div", { class: headerClasses, onClick: this.handleHeaderClick, style: { paddingLeft: `${paddingLeft + 12}px` } }, index.h("div", { class: "header-left" }, this.collapsible && (index.h("ui-button", { variant: "ghost", onClick: this.toggleExpanded, ariaLabel: this.expanded ? "Collapse group" : "Expand group", icon: this.expanded ? 'chevron-down' : 'chevron-right', iconLibrary: "fontawesome", iconOnly: true, size: "sm" })), this.selectable && (index.h("div", { class: {
70
+ return (index.h(index.Host, { style: { '--group-level': this.level.toString() } }, this.label && (index.h("div", { class: headerClasses, onClick: this.handleHeaderClick, style: { paddingLeft: `${paddingLeft + 12}px` } }, index.h("div", { class: "header-left" }, this.collapsible && (index.h("ui-button", { variant: "ghost", onClick: (e) => { this.didToggleFromButton = true; this.toggleExpanded(e); }, ariaLabel: this.expanded ? "Collapse group" : "Expand group", icon: this.expanded ? 'chevron-down' : 'chevron-right', iconLibrary: "fontawesome", iconOnly: true, size: "sm" })), this.selectable && (index.h("div", { class: {
65
71
  'selection-checkbox': true,
66
72
  'selected': this.selected
67
- } }, index.h("div", { class: "checkbox-box" }, this.selected && index.h("ui-icon", { name: "check", library: "fontawesome" })))), this.icon && (index.h("ui-icon", { class: "group-icon", name: this.icon.replace(/^fa[sb]? fa-/, ''), library: "fontawesome" })), index.h("span", { class: "group-label" }, this.label), this.badge && (index.h("span", { class: `group-badge badge-${this.badgeColor}` }, this.badge))), index.h("div", { class: "header-actions" }, index.h("slot", { name: "header-actions" })))), index.h("div", { class: contentClasses, role: "region", "aria-expanded": this.expanded.toString() }, index.h("slot", null)), index.h("div", { class: "group-footer" }, index.h("slot", { name: "footer" })), this.divider && index.h("div", { class: "group-divider" })));
73
+ } }, index.h("div", { class: "checkbox-box" }, this.selected && index.h("ui-icon", { name: "check", library: "fontawesome" })))), this.icon && (index.h("ui-icon", { class: "group-icon", name: this.icon.replace(/^fa[sb]? fa-/, ''), library: "fontawesome" })), index.h("span", { class: "group-label" }, this.label), this.badge && (index.h("span", { class: `group-badge badge-${this.badgeColor}` }, this.badge))), index.h("div", { class: "header-actions" }, index.h("slot", { name: "header-actions" })))), index.h("div", { class: contentClasses, role: "region", "aria-expanded": this.expanded.toString() }, index.h("slot", null)), index.h("slot", { name: "footer" }), this.divider && index.h("div", { class: "group-divider" })));
68
74
  }
69
75
  };
70
76
  AppListGroup.style = listGroupCss();
71
77
 
72
- const listItemCss = () => `.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.list-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:all 0.2s ease;user-select:none;outline:none;position:relative;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;width:100%;max-width:100%;box-sizing:border-box}.list-item:focus{outline:2px solid rgba(var(--color-primary-rgb, 59, 130, 246), 0.5);outline-offset:-2px}.collapse-icon{font-size:0.75rem;transition:transform 0.2s ease;color:var(--text-muted, #6b7280)}.list-item-icon{font-size:1.25rem;flex-shrink:0;transition:color 0.2s ease}.list-item-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-secondary, #f1f5f9)}.list-item-avatar img{width:100%;height:100%;object-fit:cover}.list-item-image{width:48px;height:48px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--bg-secondary, #f1f5f9)}.list-item-image img{width:100%;height:100%;object-fit:cover}.list-item-sm .list-item-avatar{width:32px;height:32px}.list-item-sm .list-item-image{width:36px;height:36px}.list-item-lg .list-item-avatar{width:48px;height:48px}.list-item-lg .list-item-image{width:64px;height:64px}.skeleton-pulse{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);animation:list-skeleton-shimmer 1.5s infinite;pointer-events:none;z-index:10}.skeleton-text{height:0.8em;background:var(--bg-primary, #e2e8f0);border-radius:4px;width:80%;display:inline-block}.skeleton-text.list-item-sublabel{width:60%;margin-top:4px}.skeleton-circle{background:var(--bg-primary, #e2e8f0);border-radius:50%}.skeleton-rect{background:var(--bg-primary, #e2e8f0);border-radius:8px}@keyframes list-skeleton-shimmer{from{transform:translateX(-100%)}to{transform:translateX(100%)}}.is-skeleton{pointer-events:none;background:transparent !important;border-color:var(--border-subtle, #f1f5f9) !important;transform:none !important}.list-item-highlight{background:var(--bg-primary, #dcfce7);color:var(--color-success, #166534);padding:0 2px;border-radius:2px;font-weight:700}.list-item-content{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0;overflow:hidden}.list-item-label-wrapper{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}.list-item-label{font-size:1rem;color:var(--text-secondary, #374151);transition:color 0.2s ease;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item-sublabel{font-size:0.875rem;color:var(--text-muted, #6b7280);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item-multiline .list-item-content{padding:4px 0}.list-item-multiline .list-item-label{white-space:normal;line-height:1.5;word-wrap:break-word;word-break:break-word}.list-item-multiline .list-item-sublabel{white-space:normal;line-height:1.5;word-wrap:break-word;word-break:break-word}.list-item-action-icon{font-size:1.125rem;flex-shrink:0;padding:4px;border-radius:4px;transition:all 0.2s ease}.list-item-action-icon:hover{background:rgba(0, 0, 0, 0.05)}.list-item-action-icon:active{transform:scale(0.95)}.list-item-sm{padding:8px 12px;gap:8px}.list-item-sm .list-item-icon{font-size:1rem}.list-item-sm .list-item-label{font-size:0.875rem}.list-item-sm .list-item-action-icon{font-size:1rem}.list-item-md{padding:12px 16px;gap:12px}.list-item-lg{padding:16px 20px;gap:14px}.list-item-lg .list-item-icon{font-size:1.5rem}.list-item-lg .list-item-label{font-size:1.125rem}.list-item-lg .list-item-action-icon{font-size:1.25rem}.list-item-dense{padding:6px 12px;gap:8px}.list-item-dense .list-item-label{font-size:0.875rem}.list-item-text{background:transparent}.list-item-text:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(0, 0, 0, 0.04)}.list-item-filled{background:var(--bg-primary, #ffffff);border:1px solid var(--border-default, #e5e7eb);margin-bottom:2px;border-radius:6px}.list-item-filled:hover:not(.list-item-disabled):not(.list-item-readonly){background:var(--bg-primary, #f9fafb);border-color:var(--border-strong, #d1d5db)}.list-item-filled.list-item-primary{background:rgba(var(--color-success-rgb, 61, 205, 88), 0.05);border-color:rgba(var(--color-success-rgb, 61, 205, 88), 0.2)}.list-item-filled.list-item-primary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-success-rgb, 61, 205, 88), 0.1)}.list-item-filled.list-item-secondary{background:rgba(107, 114, 128, 0.05);border-color:rgba(107, 114, 128, 0.2)}.list-item-filled.list-item-secondary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(107, 114, 128, 0.1)}.list-item-filled.list-item-success{background:rgba(22, 163, 74, 0.05);border-color:rgba(22, 163, 74, 0.2)}.list-item-filled.list-item-success:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(22, 163, 74, 0.1)}.list-item-filled.list-item-danger{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.05);border-color:rgba(var(--color-danger-rgb, 220, 38, 38), 0.2)}.list-item-filled.list-item-danger:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.1)}.list-item-filled.list-item-warning{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.05);border-color:rgba(var(--color-warning-rgb, 245, 158, 11), 0.2)}.list-item-filled.list-item-warning:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.1)}.list-item-filled.list-item-info{background:rgba(8, 145, 178, 0.05);border-color:rgba(8, 145, 178, 0.2)}.list-item-filled.list-item-info:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(8, 145, 178, 0.1)}.list-item-outlined{background:transparent;border:1px solid var(--border-default, #e5e7eb);margin-bottom:2px;border-radius:6px}.list-item-outlined:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(0, 0, 0, 0.02);border-color:var(--border-strong, #d1d5db)}.list-item-outlined.list-item-primary{border-color:rgba(var(--color-success-rgb, 61, 205, 88), 0.3)}.list-item-outlined.list-item-primary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-success-rgb, 61, 205, 88), 0.05);border-color:rgba(var(--color-success-rgb, 61, 205, 88), 0.5)}.list-item-outlined.list-item-secondary{border-color:rgba(107, 114, 128, 0.3)}.list-item-outlined.list-item-secondary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(107, 114, 128, 0.05);border-color:rgba(107, 114, 128, 0.5)}.list-item-outlined.list-item-success{border-color:rgba(22, 163, 74, 0.3)}.list-item-outlined.list-item-success:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(22, 163, 74, 0.05);border-color:rgba(22, 163, 74, 0.5)}.list-item-outlined.list-item-danger{border-color:rgba(var(--color-danger-rgb, 220, 38, 38), 0.3)}.list-item-outlined.list-item-danger:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.05);border-color:rgba(var(--color-danger-rgb, 220, 38, 38), 0.5)}.list-item-outlined.list-item-warning{border-color:rgba(var(--color-warning-rgb, 245, 158, 11), 0.3)}.list-item-outlined.list-item-warning:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.05);border-color:rgba(var(--color-warning-rgb, 245, 158, 11), 0.5)}.list-item-outlined.list-item-info{border-color:rgba(8, 145, 178, 0.3)}.list-item-outlined.list-item-info:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(8, 145, 178, 0.05);border-color:rgba(8, 145, 178, 0.5)}.list-item-soft{background:rgba(0, 0, 0, 0.02);border-radius:6px;margin-bottom:2px}.list-item-soft:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(0, 0, 0, 0.05)}.list-item-soft.list-item-primary{background:rgba(var(--color-success-rgb, 61, 205, 88), 0.08)}.list-item-soft.list-item-primary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-success-rgb, 61, 205, 88), 0.12)}.list-item-soft.list-item-secondary{background:rgba(107, 114, 128, 0.08)}.list-item-soft.list-item-secondary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(107, 114, 128, 0.12)}.list-item-soft.list-item-success{background:rgba(22, 163, 74, 0.08)}.list-item-soft.list-item-success:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(22, 163, 74, 0.12)}.list-item-soft.list-item-danger{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.08)}.list-item-soft.list-item-danger:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.12)}.list-item-soft.list-item-warning{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.08)}.list-item-soft.list-item-warning:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.12)}.list-item-soft.list-item-info{background:rgba(8, 145, 178, 0.08)}.list-item-soft.list-item-info:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(8, 145, 178, 0.12)}.list-item-default .list-item-icon{color:var(--text-muted, #6b7280)}.list-item-primary .list-item-icon{color:var(--color-success, #3dcd58)}.list-item-secondary .list-item-icon{color:var(--text-muted, #6b7280)}.list-item-success .list-item-icon{color:var(--color-success, #16a34a)}.list-item-danger .list-item-icon{color:var(--color-danger-hover, #dc2626)}.list-item-warning .list-item-icon{color:var(--color-warning, #f59e0b)}.list-item-info .list-item-icon{color:var(--color-info-hover, #0891b2)}.list-item-text.list-item-selected.list-item-primary{background:rgba(var(--color-success-rgb, 61, 205, 88), 0.08)}.list-item-text.list-item-selected.list-item-primary .list-item-icon,.list-item-text.list-item-selected.list-item-primary .list-item-label{color:var(--color-success, #3dcd58);font-weight:600}.list-item-text.list-item-selected.list-item-secondary{background:rgba(107, 114, 128, 0.08)}.list-item-text.list-item-selected.list-item-secondary .list-item-icon,.list-item-text.list-item-selected.list-item-secondary .list-item-label{color:var(--text-secondary, #4b5563);font-weight:600}.list-item-text.list-item-selected.list-item-success{background:rgba(22, 163, 74, 0.08)}.list-item-text.list-item-selected.list-item-success .list-item-icon,.list-item-text.list-item-selected.list-item-success .list-item-label{color:var(--color-success, #16a34a);font-weight:600}.list-item-text.list-item-selected.list-item-danger{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.08)}.list-item-text.list-item-selected.list-item-danger .list-item-icon,.list-item-text.list-item-selected.list-item-danger .list-item-label{color:var(--color-danger-hover, #dc2626);font-weight:600}.list-item-text.list-item-selected.list-item-warning{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.08)}.list-item-text.list-item-selected.list-item-warning .list-item-icon,.list-item-text.list-item-selected.list-item-warning .list-item-label{color:var(--color-warning-hover, #d97706);font-weight:600}.list-item-text.list-item-selected.list-item-info{background:rgba(8, 145, 178, 0.08)}.list-item-text.list-item-selected.list-item-info .list-item-icon,.list-item-text.list-item-selected.list-item-info .list-item-label{color:var(--color-info-hover, #0891b2);font-weight:600}.list-item-text.list-item-selected.list-item-default{background:rgba(0, 0, 0, 0.05)}.list-item-text.list-item-selected.list-item-default .list-item-label{font-weight:600}.list-item-filled.list-item-selected.list-item-primary{background:var(--bg-primary, #d1fae5);border-color:var(--color-success, #3dcd58)}.list-item-filled.list-item-selected.list-item-primary .list-item-icon,.list-item-filled.list-item-selected.list-item-primary .list-item-label{color:var(--color-success, #009B4E);font-weight:600}.list-item-filled.list-item-selected.list-item-success{background:var(--bg-primary, #dcfce7);border-color:var(--color-success, #16a34a)}.list-item-filled.list-item-selected.list-item-success .list-item-icon,.list-item-filled.list-item-selected.list-item-success .list-item-label{color:var(--color-success, #166534);font-weight:600}.list-item-filled.list-item-selected.list-item-danger{background:var(--bg-primary, #fee2e2);border-color:var(--color-danger-hover, #dc2626)}.list-item-filled.list-item-selected.list-item-danger .list-item-icon,.list-item-filled.list-item-selected.list-item-danger .list-item-label{color:var(--color-danger, #991b1b);font-weight:600}.list-item-outlined.list-item-selected.list-item-primary{border-color:var(--color-success, #3dcd58);border-width:2px}.list-item-outlined.list-item-selected.list-item-primary .list-item-icon,.list-item-outlined.list-item-selected.list-item-primary .list-item-label{color:var(--color-success, #3dcd58);font-weight:600}.list-item-outlined.list-item-selected.list-item-success{border-color:var(--color-success, #16a34a);border-width:2px}.list-item-outlined.list-item-selected.list-item-success .list-item-icon,.list-item-outlined.list-item-selected.list-item-success .list-item-label{color:var(--color-success, #16a34a);font-weight:600}.list-item-soft.list-item-selected.list-item-primary{background:rgba(var(--color-success-rgb, 61, 205, 88), 0.12)}.list-item-soft.list-item-selected.list-item-primary .list-item-icon,.list-item-soft.list-item-selected.list-item-primary .list-item-label{color:var(--color-success, #009B4E);font-weight:600}.list-item-selected{border-radius:8px}.list-item-soft.list-item-selected.list-item-success{background:rgba(22, 163, 74, 0.12);border-radius:8px}.list-item-soft.list-item-selected.list-item-success .list-item-icon,.list-item-soft.list-item-selected.list-item-success .list-item-label{color:var(--color-success, #15803d);font-weight:600}.list-item-disabled{opacity:0.5;cursor:not-allowed;pointer-events:none}.list-item-readonly{cursor:default}.list-item-divider::after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--bg-primary, #e5e7eb)}.list-item-link .list-item-label{text-decoration:none}.list-item-link:hover .list-item-label{text-decoration:underline}.list-item-interactive{cursor:pointer}.list-item:not(.list-item-interactive){cursor:default}.list-item-children{display:flex;flex-direction:column;animation:slideDown 0.2s ease}@keyframes slideDown{from{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.list-item-focused{box-shadow:0 0 0 2px rgba(var(--color-primary-rgb, 59, 130, 246), 0.3)}.list-item-hovered:not(.list-item-disabled):not(.list-item-readonly){transform:translateX(2px);border-radius:8px}.list-item-context-menu{position:relative}.list-item-context-menu .list-item-context-icon{font-size:0.875rem;color:var(--text-muted, #9ca3af);margin-left:auto;transition:transform 0.2s ease}.list-item-context-menu.list-item-context-menu-open .list-item-context-icon{transform:rotate(90deg)}.list-item-context-menu:hover .list-item-context-icon{color:var(--text-muted, #6b7280)}.context-menu{min-width:200px;background:var(--bg-primary, #ffffff);border-radius:8px;box-shadow:0 10px 25px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.05);padding:8px 0;animation:contextMenuFadeIn 0.15s ease-out;overflow:hidden;max-height:400px;overflow-y:auto}.context-menu ::slotted(ui-list-item){margin:0;border-radius:0}.context-menu::-webkit-scrollbar{width:6px}.context-menu::-webkit-scrollbar-track{background:transparent}.context-menu::-webkit-scrollbar-thumb{background:var(--bg-secondary, #d1d5db);border-radius:3px}.context-menu::-webkit-scrollbar-thumb:hover{background:var(--color-primary, #9ca3af)}@keyframes contextMenuFadeIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.context-menu-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9998;background:transparent}.list-item-checkbox{display:flex;align-items:center;cursor:pointer;margin-right:4px}.list-item-checkbox input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.list-item-checkbox .checkbox-icon{font-size:1.25rem;color:var(--text-muted, #9ca3af);transition:all 0.2s ease}.list-item-checkbox:hover .checkbox-icon{color:var(--text-muted, #6b7280)}.list-item-checked .checkbox-icon{color:var(--color-success, #3dcd58) !important}.list-item-disabled .list-item-checkbox,.list-item-readonly .list-item-checkbox{cursor:not-allowed;opacity:0.5}.list-item-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:0.75rem;font-weight:600;line-height:1;white-space:nowrap}.list-item-badge.badge-default{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #374151)}.list-item-badge.badge-primary{background:var(--bg-primary, #d1fae5);color:var(--color-success, #009B4E)}.list-item-badge.badge-secondary{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #4b5563)}.list-item-badge.badge-success{background:var(--bg-primary, #d1fae5);color:var(--color-primary, #065f46)}.list-item-badge.badge-danger{background:var(--bg-primary, #fee2e2);color:var(--color-danger, #991b1b)}.list-item-badge.badge-warning{background:var(--bg-primary, #fef3c7);color:var(--color-danger, #92400e)}.list-item-badge.badge-info{background:var(--bg-primary, #e0f2fe);color:var(--color-primary, #075985)}.list-item-counter{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--color-success, #3dcd58);color:var(--text-standard, #ffffff);font-size:0.75rem;font-weight:600;line-height:1;margin-left:auto;flex-shrink:0}.list-item-counter.counter-primary{background:var(--color-primary, #10b981);color:var(--text-standard, #ffffff)}.list-item-counter.counter-secondary{background:var(--text-muted, #6b7280);color:var(--text-standard, #ffffff)}.list-item-counter.counter-success{background:var(--color-success, #3dcd58);color:var(--text-standard, #ffffff)}.list-item-counter.counter-danger{background:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff)}.list-item-counter.counter-warning{background:var(--color-warning, #f59e0b);color:var(--text-standard, #ffffff)}.list-item-counter.counter-info{background:var(--color-info, #06b6d4);color:var(--text-standard, #ffffff)}.list-item-right{display:flex;align-items:center;flex-direction:column;gap:6px;margin-left:auto;flex-shrink:0;max-width:50%;overflow:hidden}.list-item-pills{display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.list-item-pills::-webkit-scrollbar{height:4px}.list-item-pills::-webkit-scrollbar-thumb{background:var(--bg-secondary, #d1d5db);border-radius:2px}.pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;font-size:0.75rem;font-weight:500;cursor:pointer;transition:all 0.2s ease;white-space:nowrap;flex-shrink:0}.pill i{font-size:0.75rem}.pill:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0, 0, 0, 0.1)}.pill:active{transform:translateY(0)}.pill.pill-default{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #374151)}.pill.pill-default:hover{background:var(--bg-primary, #e5e7eb)}.pill.pill-primary{background:var(--bg-primary, #d1fae5);color:var(--color-success, #009B4E)}.pill.pill-primary:hover{background:var(--color-success, #a7f3d0)}.pill.pill-secondary{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #4b5563)}.pill.pill-secondary:hover{background:var(--bg-primary, #e5e7eb)}.pill.pill-success{background:var(--bg-primary, #d1fae5);color:var(--color-primary, #065f46)}.pill.pill-success:hover{background:var(--color-success, #a7f3d0)}.pill.pill-danger{background:var(--bg-primary, #fee2e2);color:var(--color-danger, #991b1b)}.pill.pill-danger:hover{background:var(--color-danger, #fecaca)}.pill.pill-warning{background:var(--bg-primary, #fef3c7);color:var(--color-danger, #92400e)}.pill.pill-warning:hover{background:var(--color-primary, #fde68a)}.pill.pill-info{background:var(--bg-primary, #e0f2fe);color:var(--color-primary, #075985)}.pill.pill-info:hover{background:var(--color-primary, #bae6fd)}.list-item-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.list-item-tags::-webkit-scrollbar{height:4px}.list-item-tags::-webkit-scrollbar-thumb{background:var(--bg-secondary, #d1d5db);border-radius:2px}.tag{display:inline-flex;align-items:center;padding:2px 8px;background:var(--bg-secondary, #f3f4f6);color:var(--text-muted, #6b7280);border-radius:4px;font-size:0.75rem;font-weight:500;cursor:pointer;transition:all 0.2s ease;white-space:nowrap;flex-shrink:0}.tag:hover{background:var(--bg-primary, #e5e7eb);color:var(--text-secondary, #374151)}.tag:active{transform:scale(0.95)}.list-item-sm .list-item-checkbox .checkbox-icon{font-size:1rem}.list-item-sm .list-item-badge{font-size:0.625rem;padding:1px 6px}.list-item-sm .list-item-counter{min-width:16px;height:16px;font-size:0.625rem}.list-item-sm .pill{padding:2px 8px;font-size:0.625rem}.list-item-sm .tag{padding:1px 6px;font-size:0.625rem}.list-item-sm .list-item-sublabel{font-size:0.75rem}.list-item-lg .list-item-checkbox .checkbox-icon{font-size:1.5rem}.list-item-lg .list-item-badge{font-size:0.875rem;padding:3px 10px}.list-item-lg .list-item-counter{min-width:24px;height:24px;font-size:0.875rem}.list-item-lg .pill{padding:6px 12px;font-size:0.875rem}.list-item-lg .tag{padding:3px 10px;font-size:0.875rem}.list-item-lg .list-item-sublabel{font-size:1rem}.list-item-left-media{display:flex;align-items:center;gap:inherit;flex-shrink:0}.list-item-right-media{display:flex;align-items:center;gap:inherit;flex-shrink:0;margin-left:12px}.list-item-avatar-right .list-item-counter,.list-item-avatar-right .list-item-action-icon,.list-item-avatar-right .list-item-context-icon{margin-left:8px}.list-item-avatar-right .list-item-right-media{margin-left:auto}.list-item.list-item-selection-primary.list-item-selected{background:rgba(var(--color-success-rgb, 61, 205, 88), 0.12) !important;border-color:var(--color-success, #3dcd58) !important}.list-item.list-item-selection-primary.list-item-selected .list-item-label{color:var(--color-success, #009B4E) !important}.list-item.list-item-selection-primary.list-item-selected .list-item-icon{color:var(--color-success, #009B4E) !important}.list-item.list-item-selection-secondary.list-item-selected{background:rgba(107, 114, 128, 0.12) !important;border-color:var(--color-primary, #6b7280) !important}.list-item.list-item-selection-secondary.list-item-selected .list-item-label{color:var(--color-primary, #4b5563) !important}.list-item.list-item-selection-secondary.list-item-selected .list-item-icon{color:var(--color-primary, #4b5563) !important}.list-item.list-item-selection-success.list-item-selected{background:rgba(22, 163, 74, 0.12) !important;border-color:var(--color-success, #16a34a) !important}.list-item.list-item-selection-success.list-item-selected .list-item-label{color:var(--color-success, #15803d) !important}.list-item.list-item-selection-success.list-item-selected .list-item-icon{color:var(--color-success, #15803d) !important}.list-item.list-item-selection-danger.list-item-selected{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.12) !important;border-color:var(--color-danger-hover, #dc2626) !important}.list-item.list-item-selection-danger.list-item-selected .list-item-label{color:var(--color-danger, #991b1b) !important}.list-item.list-item-selection-danger.list-item-selected .list-item-icon{color:var(--color-danger, #991b1b) !important}.list-item.list-item-selection-warning.list-item-selected{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.12) !important;border-color:var(--color-warning, #f59e0b) !important}.list-item.list-item-selection-warning.list-item-selected .list-item-label{color:var(--color-danger, #92400e) !important}.list-item.list-item-selection-warning.list-item-selected .list-item-icon{color:var(--color-danger, #92400e) !important}.list-item.list-item-selection-info.list-item-selected{background:rgba(8, 145, 178, 0.12) !important;border-color:var(--color-info-hover, #0891b2) !important}.list-item.list-item-selection-info.list-item-selected .list-item-label{color:var(--color-primary, #075985) !important}.list-item.list-item-selection-info.list-item-selected .list-item-icon{color:var(--color-primary, #075985) !important}.list-item.list-item-hover-primary:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(var(--color-success-rgb, 61, 205, 88), 0.05) !important}.list-item.list-item-hover-secondary:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(107, 114, 128, 0.05) !important}.list-item.list-item-hover-success:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(22, 163, 74, 0.05) !important}.list-item.list-item-hover-danger:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.05) !important}.list-item.list-item-hover-warning:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.05) !important}.list-item.list-item-hover-info:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(8, 145, 178, 0.05) !important}.list-item-lock-icon{font-size:0.875rem;color:var(--text-muted, #9ca3af);margin-left:12px;flex-shrink:0}.list-item-menu-icon{font-size:1rem;color:var(--text-muted, #6b7280);margin-left:8px;padding:6px;border-radius:6px;transition:all 0.2s ease;flex-shrink:0;cursor:pointer}.list-item-menu-icon:hover{background:rgba(0, 0, 0, 0.08);color:var(--text-primary, #1f2937)}.list-item-menu-icon:active{transform:scale(0.9)}.list-item-locked{cursor:default !important}.list-item-locked .list-item-label{color:var(--text-muted, #9ca3af) !important}.list-item-locked .list-item-icon{opacity:0.5}.list-item-locked:hover{transform:none !important;background:transparent !important}.swipe-actions-container{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;pointer-events:none;z-index:-1;overflow:hidden;border-radius:inherit}.swipe-action{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-standard, #ffffff);transition:opacity 0.2s ease}.swipe-action ui-icon{font-size:1.5rem}.swipe-action.left{justify-content:flex-start;padding-left:24px;background-color:var(--color-success, #10b981)}.swipe-action.right{justify-content:flex-end;padding-right:24px;background-color:var(--color-danger, #ef4444)}.bg-success{background-color:var(--color-success, #10b981)}.bg-danger{background-color:var(--color-danger, #ef4444)}.bg-warning{background-color:var(--color-warning, #f59e0b)}.bg-info{background-color:var(--color-primary, #10b981)}.bg-primary{background-color:var(--color-success, #3dcd58)}.list-item[style*=transform]{transition:transform 0.1s ease-out}.list-item-grid{flex-direction:column !important;align-items:center !important;text-align:center;padding:24px 16px !important;border:1px solid var(--border-subtle, #f1f5f9);border-radius:16px !important;background:var(--bg-primary, #ffffff);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.05)}.list-item-grid:hover{transform:translateY(-4px) !important;box-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1);border-color:var(--color-primary, #10b981)}.list-item-grid .list-item-avatar,.list-item-grid .list-item-image{width:64px !important;height:64px !important;margin-bottom:16px}.list-item-grid .list-item-content{align-items:center;width:100%}.list-item-grid .list-item-label{font-size:1.125rem;font-weight:700}.list-item-grid .list-item-collaborators{margin-top:12px}.list-item-tree-lines{position:relative}.list-item-tree-lines::before{content:"";position:absolute;left:26px;top:-12px;bottom:50%;width:2px;background:var(--color-primary, #cbd5e1)}.list-item-tree-lines::after{content:"";position:absolute;left:26px;top:50%;width:16px;height:2px;background:var(--color-primary, #cbd5e1);border-radius:0 2px 2px 0}.list-item-collaborators{display:flex;align-items:center;margin-top:4px}.list-item.focused-item{outline:2px solid var(--color-primary, #10b981);outline-offset:-2px;background:var(--bg-primary, #eff6ff)}.list-item-avatar-container{position:relative;display:inline-flex}.list-item-status{position:absolute;width:12px;height:12px;border-radius:50%;border:2px solid var(--bg-primary, #ffffff);z-index:2}.list-item-status.pos-bottom-right{bottom:0;right:0}.list-item-status.pos-top-right{top:0;right:0}.list-item-status.status-online{background:var(--color-success, #10b981)}.list-item-status.status-busy{background:var(--color-danger, #ef4444)}.list-item-status.status-away{background:var(--color-warning, #f59e0b)}.list-item-status.status-offline{background:var(--color-primary, #94a3b8)}.list-item-status.status-online::after{content:"";position:absolute;width:100%;height:100%;background:inherit;border-radius:50%;animation:pulseStatus 2s infinite;opacity:0.6;left:0;top:0}@keyframes pulseStatus{0%{transform:scale(1);opacity:0.6}100%{transform:scale(3);opacity:0}}.list-item-progress-container{display:flex;align-items:center;gap:8px;margin-top:6px;width:100%}.list-item-progress-container .list-item-progress-bar{height:4px;background:var(--color-primary, #10b981);border-radius:2px;transition:width 0.3s ease}.list-item-progress-container .list-item-progress-text{font-size:10px;font-weight:700;color:var(--text-muted, #64748b)}.list-item-star-icon{font-size:0.875rem;color:var(--color-primary, #cbd5e1);margin-right:8px;cursor:pointer;transition:all 0.2s}.list-item-star-icon:hover{color:var(--color-primary, #94a3b8);transform:scale(1.1)}.list-item-star-icon.is-starred{color:var(--color-warning, #f59e0b) !important}.list-item-expandable-section{width:100%;background:var(--bg-primary, #f8fafc);overflow:hidden;border-top:1px solid var(--border-subtle, #f1f5f9);animation:expandDetail 0.4s cubic-bezier(0.4, 0, 0.2, 1)}.list-item-expandable-section .expandable-detail-content{padding:16px 24px 16px 56px}@keyframes expandDetail{from{max-height:0;opacity:0}to{max-height:500px;opacity:1}}.list-item-media-avatar-group{display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex-shrink:0}.list-item-right-collaborators{display:flex;align-items:center;margin-left:auto;margin-right:12px}.is-wobbling{animation:wobbleNo 0.4s ease-in-out}@keyframes wobbleNo{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-4px)}40%,80%{transform:translateX(4px)}}.list-item-pulse{position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 0 rgba(var(--color-danger-rgb, 239, 68, 68), 0);animation:etherealPulse 2s infinite;z-index:1}@keyframes etherealPulse{0%{box-shadow:0 0 0 0 rgba(var(--color-danger-rgb, 239, 68, 68), 0.4)}70%{box-shadow:0 0 0 12px rgba(var(--color-danger-rgb, 239, 68, 68), 0)}100%{box-shadow:0 0 0 0 rgba(var(--color-danger-rgb, 239, 68, 68), 0)}}.presence-halo{position:absolute;top:6px;right:6px;width:10px;height:10px;border-radius:50%;border:2px solid var(--bg-primary, #ffffff);box-shadow:0 0 0 2px rgba(0, 0, 0, 0.1)}.presence-halo.presence-blue{background:var(--color-primary, #10b981)}.presence-halo.presence-purple{background:var(--color-primary, #a855f7)}.list-item-density-compact{padding-top:4px !important;padding-bottom:4px !important;min-height:40px}.list-item-density-compact .list-item-sublabel,.list-item-density-compact .list-item-tags,.list-item-density-compact .list-item-progress-container{display:none}.list-item-density-compact .list-item-avatar-container,.list-item-density-compact ui-avatar{transform:scale(0.8)}.list-item-density-cozy{padding-top:20px !important;padding-bottom:20px !important}.list-item-density-cozy .list-item-label{font-size:1.1rem;font-weight:700;color:var(--text-primary, #0f172a)}.list-item-density-cozy .list-item-avatar-container,.list-item-density-cozy ui-avatar{transform:scale(1.15)}`;
78
+ const listItemCss = () => `.sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}.a11y-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border-width:0 !important}:host{display:block;overflow:visible}.list-item{display:flex;align-items:center;padding:6px 8px;cursor:pointer;transition:all 0.2s ease;user-select:none;outline:none;position:relative;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;width:100%;max-width:100%;box-sizing:border-box;overflow:visible}.list-item:focus{outline:2px solid rgba(var(--color-primary-rgb, 59, 130, 246), 0.5);outline-offset:-2px}.collapse-icon{font-size:0.75rem;transition:transform 0.2s ease;color:var(--text-muted, #6b7280)}.list-item-icon{font-size:1.25rem;flex-shrink:0;transition:color 0.2s ease}.list-item-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--bg-secondary, #f1f5f9)}.list-item-avatar img{width:100%;height:100%;object-fit:cover}.list-item-image{width:48px;height:48px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--bg-secondary, #f1f5f9)}.list-item-image img{width:100%;height:100%;object-fit:cover}.skeleton-pulse{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);animation:list-skeleton-shimmer 1.5s infinite;pointer-events:none;z-index:10}.skeleton-text{height:0.8em;background:var(--bg-pressed, #e2e8f0);border-radius:4px;width:80%;display:inline-block;position:relative;overflow:hidden}.skeleton-text.list-item-sublabel{width:60%;margin-top:4px}.skeleton-circle{background:var(--bg-pressed, #e2e8f0);border-radius:50%;position:relative;overflow:hidden}.skeleton-rect{background:var(--bg-pressed, #e2e8f0);border-radius:8px;position:relative;overflow:hidden}@keyframes list-skeleton-shimmer{from{transform:translateX(-100%)}to{transform:translateX(100%)}}.is-skeleton{pointer-events:none;background:transparent !important;border-color:var(--border-subtle, #f1f5f9) !important;transform:none !important}.list-item-highlight{background:var(--bg-primary, #dcfce7);color:var(--color-success, #166534);padding:0 2px;border-radius:2px;font-weight:700}.list-item-content{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.list-item-subline{display:flex;align-items:center;gap:8px;min-width:0}.list-item-skeleton-content{align-items:flex-start;justify-content:center;gap:6px;width:100%}.list-item-skeleton-content .list-item-label-wrapper,.list-item-skeleton-content .list-item-subline{width:100%;min-width:0;overflow:visible}.list-item-skeleton-content .list-item-label-wrapper{align-items:flex-start}.list-item-skeleton-content .list-item-subline{margin-top:0}.list-item-skeleton-content ui-skeleton{display:block;max-width:100%;min-width:0;flex-shrink:0}.list-item-label-wrapper{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}.list-item-label{font-size:1rem;color:var(--text-secondary, #374151);transition:color 0.2s ease;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item-sublabel{font-size:0.875rem;color:var(--text-muted, #6b7280);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item-multiline .list-item-content{padding:4px 0}.list-item-multiline .list-item-label{white-space:normal;line-height:1.5;word-wrap:break-word;word-break:break-word}.list-item-multiline .list-item-sublabel{white-space:normal;line-height:1.5;word-wrap:break-word;word-break:break-word}.list-item-action-icon{font-size:1.125rem;flex-shrink:0;padding:4px;border-radius:4px;transition:all 0.2s ease}.list-item-action-icon:hover{background:rgba(0, 0, 0, 0.05)}.list-item-action-icon:active{transform:scale(0.95)}.list-item-sm{padding:8px 12px;gap:8px}.list-item-sm .list-item-avatar{width:32px;height:32px}.list-item-sm .list-item-image{width:36px;height:36px}.list-item-sm .list-item-icon{font-size:1rem}.list-item-sm .list-item-label{font-size:0.875rem}.list-item-sm .list-item-action-icon{font-size:1rem}.list-item-sm .list-item-checkbox .checkbox-icon{font-size:1rem}.list-item-sm .list-item-ghost-layer{top:6px;right:6px}.list-item-sm .ghost-popover-trigger{width:18px;height:18px}.list-item-sm .ghost-popover-trigger ui-icon{font-size:0.625rem}.list-item-sm .ghost-meta{font-size:0.5625rem}.list-item-sm .list-item-badge{font-size:0.625rem;padding:1px 6px}.list-item-sm .list-item-counter{min-width:16px;height:16px;font-size:0.625rem}.list-item-sm .pill{padding:2px 8px;font-size:0.625rem}.list-item-sm .tag{padding:1px 6px;font-size:0.625rem}.list-item-sm .list-item-sublabel{font-size:0.75rem}.list-item-filled.list-item-primary{background:rgba(var(--color-primary-rgb, 59, 130, 246), 0.05);border-color:rgba(var(--color-primary-rgb, 59, 130, 246), 0.2)}.list-item-filled.list-item-primary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-primary-rgb, 59, 130, 246), 0.1)}.list-item-filled.list-item-secondary{background:rgba(107, 114, 128, 0.05);border-color:rgba(107, 114, 128, 0.2)}.list-item-filled.list-item-secondary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(107, 114, 128, 0.1)}.list-item-filled.list-item-success{background:rgba(22, 163, 74, 0.05);border-color:rgba(22, 163, 74, 0.2)}.list-item-filled.list-item-success:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(22, 163, 74, 0.1)}.list-item-filled.list-item-danger{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.05);border-color:rgba(var(--color-danger-rgb, 220, 38, 38), 0.2)}.list-item-filled.list-item-danger:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.1)}.list-item-filled.list-item-warning{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.05);border-color:rgba(var(--color-warning-rgb, 245, 158, 11), 0.2)}.list-item-filled.list-item-warning:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.1)}.list-item-filled.list-item-info{background:rgba(8, 145, 178, 0.05);border-color:rgba(8, 145, 178, 0.2)}.list-item-filled.list-item-info:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(8, 145, 178, 0.1)}.list-item-outlined{background:transparent;border:1px solid var(--border-default, #e5e7eb);margin-bottom:2px;border-radius:6px}.list-item-outlined:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(0, 0, 0, 0.02);border-color:var(--border-strong, #d1d5db)}.list-item-outlined.list-item-primary{border-color:rgba(var(--color-primary-rgb, 59, 130, 246), 0.3)}.list-item-outlined.list-item-primary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-primary-rgb, 59, 130, 246), 0.05);border-color:rgba(var(--color-primary-rgb, 59, 130, 246), 0.5)}.list-item-outlined.list-item-secondary{border-color:rgba(107, 114, 128, 0.3)}.list-item-outlined.list-item-secondary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(107, 114, 128, 0.05);border-color:rgba(107, 114, 128, 0.5)}.list-item-outlined.list-item-success{border-color:rgba(22, 163, 74, 0.3)}.list-item-outlined.list-item-success:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(22, 163, 74, 0.05);border-color:rgba(22, 163, 74, 0.5)}.list-item-outlined.list-item-danger{border-color:rgba(var(--color-danger-rgb, 220, 38, 38), 0.3)}.list-item-outlined.list-item-danger:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.05);border-color:rgba(var(--color-danger-rgb, 220, 38, 38), 0.5)}.list-item-outlined.list-item-warning{border-color:rgba(var(--color-warning-rgb, 245, 158, 11), 0.3)}.list-item-outlined.list-item-warning:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.05);border-color:rgba(var(--color-warning-rgb, 245, 158, 11), 0.5)}.list-item-outlined.list-item-info{border-color:rgba(8, 145, 178, 0.3)}.list-item-outlined.list-item-info:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(8, 145, 178, 0.05);border-color:rgba(8, 145, 178, 0.5)}.list-item-soft{background:rgba(0, 0, 0, 0.02);border-radius:6px;margin-bottom:2px}.list-item-soft:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(0, 0, 0, 0.05)}.list-item-soft.list-item-primary{background:rgba(var(--color-primary-rgb, 59, 130, 246), 0.08)}.list-item-soft.list-item-primary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-primary-rgb, 59, 130, 246), 0.12)}.list-item-soft.list-item-secondary{background:rgba(107, 114, 128, 0.08)}.list-item-soft.list-item-secondary:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(107, 114, 128, 0.12)}.list-item-soft.list-item-success{background:rgba(22, 163, 74, 0.08)}.list-item-soft.list-item-success:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(22, 163, 74, 0.12)}.list-item-soft.list-item-danger{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.08)}.list-item-soft.list-item-danger:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.12)}.list-item-soft.list-item-warning{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.08)}.list-item-soft.list-item-warning:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.12)}.list-item-soft.list-item-info{background:rgba(8, 145, 178, 0.08)}.list-item-soft.list-item-info:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(8, 145, 178, 0.12)}.list-item-default .list-item-icon{color:var(--text-muted, #6b7280)}.list-item-primary .list-item-icon{color:var(--color-primary, #3b82f6)}.list-item-secondary .list-item-icon{color:var(--text-muted, #6b7280)}.list-item-success .list-item-icon{color:var(--color-success, #16a34a)}.list-item-danger .list-item-icon{color:var(--color-danger-hover, #dc2626)}.list-item-warning .list-item-icon{color:var(--color-warning, #f59e0b)}.list-item-info .list-item-icon{color:var(--color-info-hover, #0891b2)}.list-item-text.list-item-selected.list-item-primary{background:rgba(var(--color-primary-rgb, 59, 130, 246), 0.08)}.list-item-text.list-item-selected.list-item-primary .list-item-icon,.list-item-text.list-item-selected.list-item-primary .list-item-label{color:var(--color-primary, #3b82f6);font-weight:600}.list-item-text.list-item-selected.list-item-secondary{background:rgba(107, 114, 128, 0.08)}.list-item-text.list-item-selected.list-item-secondary .list-item-icon,.list-item-text.list-item-selected.list-item-secondary .list-item-label{color:var(--text-secondary, #4b5563);font-weight:600}.list-item-text.list-item-selected.list-item-success{background:rgba(22, 163, 74, 0.08)}.list-item-text.list-item-selected.list-item-success .list-item-icon,.list-item-text.list-item-selected.list-item-success .list-item-label{color:var(--color-success, #16a34a);font-weight:600}.list-item-text.list-item-selected.list-item-danger{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.08)}.list-item-text.list-item-selected.list-item-danger .list-item-icon,.list-item-text.list-item-selected.list-item-danger .list-item-label{color:var(--color-danger-hover, #dc2626);font-weight:600}.list-item-text.list-item-selected.list-item-warning{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.08)}.list-item-text.list-item-selected.list-item-warning .list-item-icon,.list-item-text.list-item-selected.list-item-warning .list-item-label{color:var(--color-warning-hover, #d97706);font-weight:600}.list-item-text.list-item-selected.list-item-info{background:rgba(8, 145, 178, 0.08)}.list-item-text.list-item-selected.list-item-info .list-item-icon,.list-item-text.list-item-selected.list-item-info .list-item-label{color:var(--color-info-hover, #0891b2);font-weight:600}.list-item-text.list-item-selected.list-item-default{background:var(--bg-selected, rgba(107, 114, 128, 0.15))}.list-item-text.list-item-selected.list-item-default .list-item-label{font-weight:600}.list-item-filled.list-item-selected.list-item-primary{background:var(--bg-selected, var(--color-primary-subtle, rgba(59, 130, 246, 0.12)));border-color:var(--color-primary, #3b82f6)}.list-item-filled.list-item-selected.list-item-primary .list-item-icon,.list-item-filled.list-item-selected.list-item-primary .list-item-label{color:var(--color-primary, #3b82f6);font-weight:600}.list-item-filled.list-item-selected.list-item-success{background:var(--bg-primary, #dcfce7);border-color:var(--color-success, #16a34a)}.list-item-filled.list-item-selected.list-item-success .list-item-icon,.list-item-filled.list-item-selected.list-item-success .list-item-label{color:var(--color-success, #166534);font-weight:600}.list-item-filled.list-item-selected.list-item-danger{background:var(--bg-primary, #fee2e2);border-color:var(--color-danger-hover, #dc2626)}.list-item-filled.list-item-selected.list-item-danger .list-item-icon,.list-item-filled.list-item-selected.list-item-danger .list-item-label{color:var(--color-danger, #991b1b);font-weight:600}.list-item-outlined.list-item-selected.list-item-primary{border-color:var(--color-primary, #3b82f6);border-width:2px}.list-item-outlined.list-item-selected.list-item-primary .list-item-icon,.list-item-outlined.list-item-selected.list-item-primary .list-item-label{color:var(--color-primary, #3b82f6);font-weight:600}.list-item-outlined.list-item-selected.list-item-success{border-color:var(--color-success, #16a34a);border-width:2px}.list-item-outlined.list-item-selected.list-item-success .list-item-icon,.list-item-outlined.list-item-selected.list-item-success .list-item-label{color:var(--color-success, #16a34a);font-weight:600}.list-item-soft.list-item-selected.list-item-primary{background:rgba(var(--color-primary-rgb, 59, 130, 246), 0.12)}.list-item-soft.list-item-selected.list-item-primary .list-item-icon,.list-item-soft.list-item-selected.list-item-primary .list-item-label{color:var(--color-primary, #3b82f6);font-weight:600}.list-item-selected{border-radius:8px}.list-item-soft.list-item-selected.list-item-success{background:rgba(22, 163, 74, 0.12);border-radius:8px}.list-item-soft.list-item-selected.list-item-success .list-item-icon,.list-item-soft.list-item-selected.list-item-success .list-item-label{color:var(--color-success, #15803d);font-weight:600}.list-item-disabled{opacity:0.5;cursor:not-allowed;pointer-events:none}.list-item-readonly{cursor:default}.list-item-divider::after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--bg-primary, #e5e7eb)}.list-item-link .list-item-label{text-decoration:none}.list-item-link:hover .list-item-label{text-decoration:underline}.list-item-interactive{cursor:pointer}.list-item:not(.list-item-interactive){cursor:default}.list-item-children{display:flex;flex-direction:column;overflow:hidden;max-height:2000px;transition:max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease;opacity:1}.list-item-children.is-collapsed{max-height:0;opacity:0;pointer-events:none}@keyframes slideDown{from{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.list-item-focused{box-shadow:0 0 0 2px rgba(var(--color-primary-rgb, 59, 130, 246), 0.3)}.list-item-hovered:not(.list-item-disabled):not(.list-item-readonly){border-radius:8px;box-shadow:0 8px 18px rgba(15, 23, 42, 0.08)}.list-item-context-menu{position:relative}.list-item-context-menu .list-item-context-icon{font-size:0.875rem;color:var(--text-muted, #9ca3af);margin-left:auto;transition:transform 0.2s ease}.list-item-context-menu.list-item-context-menu-open .list-item-context-icon{transform:rotate(90deg)}.list-item-context-menu:hover .list-item-context-icon{color:var(--text-muted, #6b7280)}.context-menu{min-width:200px;background:var(--bg-primary, #ffffff);border-radius:8px;box-shadow:0 10px 25px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.05);padding:8px 0;animation:contextMenuFadeIn 0.15s ease-out;overflow:hidden;max-height:400px;overflow-y:auto}.context-menu ::slotted(ui-list-item){margin:0;border-radius:0}.context-menu::-webkit-scrollbar{width:6px}.context-menu::-webkit-scrollbar-track{background:transparent}.context-menu::-webkit-scrollbar-thumb{background:var(--bg-secondary, #d1d5db);border-radius:3px}.context-menu::-webkit-scrollbar-thumb:hover{background:var(--color-primary, #9ca3af)}@keyframes contextMenuFadeIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.context-menu-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9998;background:transparent}.list-item-checkbox{display:flex;align-items:center;cursor:pointer;margin-right:4px}.list-item-checkbox input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.list-item-checkbox .checkbox-icon{font-size:1.25rem;color:var(--text-muted, #9ca3af);transition:all 0.2s ease}.list-item-checkbox:hover .checkbox-icon{color:var(--text-muted, #6b7280)}.list-item-checked .checkbox-icon{color:var(--color-success, #3dcd58) !important}.list-item-disabled .list-item-checkbox,.list-item-readonly .list-item-checkbox{cursor:not-allowed;opacity:0.5}.list-item-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:0.75rem;font-weight:600;line-height:1;white-space:nowrap}.list-item-badge.badge-default{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #374151)}.list-item-badge.badge-primary{background:var(--bg-primary, #d1fae5);color:var(--color-success, #009B4E)}.list-item-badge.badge-secondary{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #4b5563)}.list-item-badge.badge-success{background:var(--bg-primary, #d1fae5);color:var(--color-primary, #065f46)}.list-item-badge.badge-danger{background:var(--bg-primary, #fee2e2);color:var(--color-danger, #991b1b)}.list-item-badge.badge-warning{background:var(--bg-primary, #fef3c7);color:var(--color-danger, #92400e)}.list-item-badge.badge-info{background:var(--bg-primary, #e0f2fe);color:var(--color-primary, #075985)}.list-item-counter{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--color-success, #3dcd58);color:var(--text-standard, #ffffff);font-size:0.75rem;font-weight:600;line-height:1;margin-left:auto;flex-shrink:0}.list-item-counter.counter-primary{background:var(--color-primary, #10b981);color:var(--text-standard, #ffffff)}.list-item-counter.counter-secondary{background:var(--text-muted, #6b7280);color:var(--text-standard, #ffffff)}.list-item-counter.counter-success{background:var(--color-success, #3dcd58);color:var(--text-standard, #ffffff)}.list-item-counter.counter-danger{background:var(--color-danger, #ef4444);color:var(--text-standard, #ffffff)}.list-item-counter.counter-warning{background:var(--color-warning, #f59e0b);color:var(--text-standard, #ffffff)}.list-item-counter.counter-info{background:var(--color-info, #06b6d4);color:var(--text-standard, #ffffff)}.list-item-right{display:flex;align-items:center;flex-direction:column;gap:6px;margin-left:auto;flex-shrink:0;max-width:50%;overflow:hidden}.list-item-pills{display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.list-item-pills::-webkit-scrollbar{height:4px}.list-item-pills::-webkit-scrollbar-thumb{background:var(--bg-secondary, #d1d5db);border-radius:2px}.pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;font-size:0.75rem;font-weight:500;cursor:pointer;transition:all 0.2s ease;white-space:nowrap;flex-shrink:0}.pill i{font-size:0.75rem}.pill:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0, 0, 0, 0.1)}.pill:active{transform:translateY(0)}.pill.pill-default{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #374151)}.pill.pill-default:hover{background:var(--bg-primary, #e5e7eb)}.pill.pill-primary{background:var(--bg-primary, #d1fae5);color:var(--color-success, #009B4E)}.pill.pill-primary:hover{background:var(--color-success, #a7f3d0)}.pill.pill-secondary{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #4b5563)}.pill.pill-secondary:hover{background:var(--bg-primary, #e5e7eb)}.pill.pill-success{background:var(--bg-primary, #d1fae5);color:var(--color-primary, #065f46)}.pill.pill-success:hover{background:var(--color-success, #a7f3d0)}.pill.pill-danger{background:var(--bg-primary, #fee2e2);color:var(--color-danger, #991b1b)}.pill.pill-danger:hover{background:var(--color-danger, #fecaca)}.pill.pill-warning{background:var(--bg-primary, #fef3c7);color:var(--color-danger, #92400e)}.pill.pill-warning:hover{background:var(--color-primary, #fde68a)}.pill.pill-info{background:var(--bg-primary, #e0f2fe);color:var(--color-primary, #075985)}.pill.pill-info:hover{background:var(--color-primary, #bae6fd)}.list-item-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.list-item-tags::-webkit-scrollbar{height:4px}.list-item-tags::-webkit-scrollbar-thumb{background:var(--bg-secondary, #d1d5db);border-radius:2px}.tag{display:inline-flex;align-items:center;padding:2px 8px;background:var(--bg-secondary, #f3f4f6);color:var(--text-muted, #6b7280);border-radius:4px;font-size:0.75rem;font-weight:500;cursor:pointer;transition:all 0.2s ease;white-space:nowrap;flex-shrink:0}.tag:hover{background:var(--bg-primary, #e5e7eb);color:var(--text-secondary, #374151)}.tag:active{transform:scale(0.95)}.list-item-lg{padding:16px 20px;gap:14px}.list-item-lg .list-item-avatar{width:48px;height:48px}.list-item-lg .list-item-image{width:64px;height:64px}.list-item-lg .list-item-icon{font-size:1.5rem}.list-item-lg .list-item-label{font-size:1.125rem}.list-item-lg .list-item-action-icon{font-size:1.25rem}.list-item-lg .list-item-checkbox .checkbox-icon{font-size:1.5rem}.list-item-lg .list-item-ghost-layer{top:10px;right:10px}.list-item-lg .ghost-popover-trigger{width:24px;height:24px}.list-item-lg .ghost-popover-trigger ui-icon{font-size:0.8125rem}.list-item-lg .ghost-meta{font-size:0.6875rem}.list-item-lg .list-item-badge{font-size:0.875rem;padding:3px 10px}.list-item-lg .list-item-counter{min-width:24px;height:24px;font-size:0.875rem}.list-item-lg .pill{padding:6px 12px;font-size:0.875rem}.list-item-lg .tag{padding:3px 10px;font-size:0.875rem}.list-item-lg .list-item-sublabel{font-size:1rem}.list-item-md{padding:12px 16px;gap:12px}.list-item-dense{padding:6px 12px;gap:8px}.list-item-dense .list-item-label{font-size:0.875rem}.list-item-text{background:transparent}.list-item-text:hover:not(.list-item-disabled):not(.list-item-readonly){background:rgba(0, 0, 0, 0.04)}.list-item-filled{background:var(--bg-primary, #ffffff);border:1px solid var(--border-default, #e5e7eb);margin-bottom:2px;border-radius:6px}.list-item-filled:hover:not(.list-item-disabled):not(.list-item-readonly){background:var(--bg-primary, #f9fafb);border-color:var(--border-strong, #d1d5db)}.list-item-left-media{display:flex;align-items:center;gap:inherit;flex-shrink:0}.list-item-left-media ui-skeleton{flex-shrink:0}.list-item-right-media{display:flex;align-items:center;gap:inherit;flex-shrink:0;margin-left:12px}.list-item-right-media ui-skeleton{flex-shrink:0}.list-item-avatar-right .list-item-counter,.list-item-avatar-right .list-item-action-icon,.list-item-avatar-right .list-item-context-icon{margin-left:8px}.list-item-avatar-right .list-item-right-media{margin-left:auto}:host .list-item.list-item-selection-primary.list-item-selected{background:rgba(var(--color-success-rgb, 61, 205, 88), 0.12) !important;border-color:var(--color-success, #3dcd58) !important}:host .list-item.list-item-selection-primary.list-item-selected .list-item-label{color:var(--color-success, #009B4E) !important}:host .list-item.list-item-selection-primary.list-item-selected .list-item-icon{color:var(--color-success, #009B4E) !important}:host .list-item.list-item-selection-secondary.list-item-selected{background:rgba(107, 114, 128, 0.12) !important;border-color:var(--color-primary, #6b7280) !important}:host .list-item.list-item-selection-secondary.list-item-selected .list-item-label{color:var(--color-primary, #4b5563) !important}:host .list-item.list-item-selection-secondary.list-item-selected .list-item-icon{color:var(--color-primary, #4b5563) !important}:host .list-item.list-item-selection-success.list-item-selected{background:rgba(22, 163, 74, 0.12) !important;border-color:var(--color-success, #16a34a) !important}:host .list-item.list-item-selection-success.list-item-selected .list-item-label{color:var(--color-success, #15803d) !important}:host .list-item.list-item-selection-success.list-item-selected .list-item-icon{color:var(--color-success, #15803d) !important}:host .list-item.list-item-selection-danger.list-item-selected{background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.12) !important;border-color:var(--color-danger-hover, #dc2626) !important}:host .list-item.list-item-selection-danger.list-item-selected .list-item-label{color:var(--color-danger, #991b1b) !important}:host .list-item.list-item-selection-danger.list-item-selected .list-item-icon{color:var(--color-danger, #991b1b) !important}:host .list-item.list-item-selection-warning.list-item-selected{background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.12) !important;border-color:var(--color-warning, #f59e0b) !important}:host .list-item.list-item-selection-warning.list-item-selected .list-item-label{color:var(--color-danger, #92400e) !important}:host .list-item.list-item-selection-warning.list-item-selected .list-item-icon{color:var(--color-danger, #92400e) !important}:host .list-item.list-item-selection-info.list-item-selected{background:rgba(8, 145, 178, 0.12) !important;border-color:var(--color-info-hover, #0891b2) !important}:host .list-item.list-item-selection-info.list-item-selected .list-item-label{color:var(--color-primary, #075985) !important}:host .list-item.list-item-selection-info.list-item-selected .list-item-icon{color:var(--color-primary, #075985) !important}:host .list-item.list-item-hover-primary:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(var(--color-success-rgb, 61, 205, 88), 0.05) !important}:host .list-item.list-item-hover-secondary:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(107, 114, 128, 0.05) !important}:host .list-item.list-item-hover-success:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(22, 163, 74, 0.05) !important}:host .list-item.list-item-hover-danger:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(var(--color-danger-rgb, 220, 38, 38), 0.05) !important}:host .list-item.list-item-hover-warning:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(var(--color-warning-rgb, 245, 158, 11), 0.05) !important}:host .list-item.list-item-hover-info:hover:not(.list-item-selected):not(.list-item-disabled){background:rgba(8, 145, 178, 0.05) !important}:host .list-item[style*=transform]{transition:transform 0.1s ease-out}.list-item-lock-icon{font-size:0.875rem;color:var(--text-muted, #9ca3af);margin-left:12px;flex-shrink:0}.list-item-menu-icon{font-size:1rem;color:var(--text-muted, #6b7280);margin-left:8px;padding:6px;border-radius:6px;transition:all 0.2s ease;flex-shrink:0;cursor:pointer}.list-item-menu-icon:hover{background:rgba(0, 0, 0, 0.08);color:var(--text-primary, #1f2937)}.list-item-menu-icon:active{transform:scale(0.9)}.list-item-locked{cursor:default !important}.list-item-locked .list-item-label{color:var(--text-muted, #9ca3af) !important}.list-item-locked .list-item-icon{opacity:0.5}.list-item-locked:hover{transform:none !important;background:transparent !important}.swipe-actions-container{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;pointer-events:none;z-index:-1;overflow:hidden;border-radius:inherit}.swipe-action{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-standard, #ffffff);transition:opacity 0.2s ease}.swipe-action ui-icon{font-size:1.5rem}.swipe-action.left{justify-content:flex-start;padding-left:24px;background-color:var(--color-success, #10b981)}.swipe-action.right{justify-content:flex-end;padding-right:24px;background-color:var(--color-danger, #ef4444)}.bg-success{background-color:var(--color-success, #10b981)}.bg-danger{background-color:var(--color-danger, #ef4444)}.bg-warning{background-color:var(--color-warning, #f59e0b)}.bg-info{background-color:var(--color-primary, #10b981)}.bg-primary{background-color:var(--color-success, #3dcd58)}.list-item-grid{flex-direction:column !important;align-items:center !important;text-align:center;padding:24px 16px !important;border:1px solid var(--border-subtle, #f1f5f9);border-radius:16px !important;background:var(--bg-primary, #ffffff);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.05)}.list-item-grid:hover{transform:translateY(-4px) !important;box-shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1);border-color:var(--color-primary, #10b981)}.list-item-grid .list-item-avatar,.list-item-grid .list-item-image{width:64px !important;height:64px !important;margin-bottom:16px}.list-item-grid .list-item-content{align-items:center;width:100%}.list-item-grid .list-item-label{font-size:1.125rem;font-weight:700}.list-item-grid .list-item-collaborators{margin-top:12px}.list-item-tree-lines{position:relative;--list-item-tree-line-color:var(--text-muted, #6b7280)}.list-item-tree-lines::before{content:"";position:absolute;left:26px;top:-12px;bottom:50%;width:2px;background:var(--list-item-tree-line-color)}.list-item-tree-lines::after{content:"";position:absolute;left:26px;top:50%;width:16px;height:2px;background:var(--list-item-tree-line-color);border-radius:0 2px 2px 0}.list-item-collaborators{display:flex;align-items:center;margin-top:4px}.list-item.focused-item{outline:2px solid var(--color-primary, #10b981);outline-offset:-2px;background:var(--bg-primary, #eff6ff)}.list-item-avatar-container{position:relative;display:inline-flex}.list-item-status{position:absolute;width:12px;height:12px;border-radius:50%;border:2px solid var(--bg-primary, #ffffff);z-index:2}.list-item-status.pos-bottom-right{bottom:0;right:0}.list-item-status.pos-top-right{top:0;right:0}.list-item-status.status-online{background:var(--color-success, #10b981)}.list-item-status.status-busy{background:var(--color-danger, #ef4444)}.list-item-status.status-away{background:var(--color-warning, #f59e0b)}.list-item-status.status-offline{background:var(--color-primary, #94a3b8)}.list-item-status.status-online::after{content:"";position:absolute;width:100%;height:100%;background:inherit;border-radius:50%;animation:pulseStatus 2s infinite;opacity:0.6;left:0;top:0}@keyframes pulseStatus{0%{transform:scale(1);opacity:0.6}100%{transform:scale(3);opacity:0}}.list-item-progress-container{display:flex;align-items:center;gap:8px;margin-top:6px;width:100%}.list-item-progress-container .list-item-progress-bar{height:4px;background:var(--color-primary, #10b981);border-radius:2px;transition:width 0.3s ease}.list-item-progress-container .list-item-progress-text{font-size:10px;font-weight:700;color:var(--text-muted, #64748b)}.list-item-star-icon{font-size:0.875rem;color:var(--color-primary, #cbd5e1);margin-right:8px;cursor:pointer;transition:all 0.2s}.list-item-star-icon:hover{color:var(--color-primary, #94a3b8);transform:scale(1.1)}.list-item-star-icon.is-starred{color:var(--color-warning, #f59e0b) !important}.list-item-expandable-section{width:100%;background:var(--bg-primary, #f8fafc);overflow:hidden;border-top:1px solid var(--border-subtle, #f1f5f9);animation:expandDetail 0.4s cubic-bezier(0.4, 0, 0.2, 1)}.list-item-expandable-section .expandable-detail-content{padding:16px 24px 16px 56px}@keyframes expandDetail{from{max-height:0;opacity:0}to{max-height:500px;opacity:1}}.list-item-media-avatar-group{display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex-shrink:0}.list-item-right-collaborators{display:flex;align-items:center;margin-left:auto;margin-right:12px}.is-wobbling{animation:wobbleNo 0.4s ease-in-out}@keyframes wobbleNo{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-4px)}40%,80%{transform:translateX(4px)}}.list-item-pulse{position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 0 rgba(var(--color-danger-rgb, 239, 68, 68), 0);animation:etherealPulse 2s infinite;z-index:1}@keyframes etherealPulse{0%{box-shadow:0 0 0 0 rgba(var(--color-danger-rgb, 239, 68, 68), 0.4)}70%{box-shadow:0 0 0 12px rgba(var(--color-danger-rgb, 239, 68, 68), 0)}100%{box-shadow:0 0 0 0 rgba(var(--color-danger-rgb, 239, 68, 68), 0)}}.list-item-ghost-layer{position:absolute;top:8px;right:8px;z-index:6;opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition:opacity 0.18s ease, transform 0.18s ease, z-index 0s}.list-item-ghost-layer:hover,.list-item-ghost-layer:focus-within{z-index:100}.list-item-ghost-layer ui-popover{--ghost-popover-bg:var(--bg-primary, #ffffff);--ghost-popover-surface-bg:var(--bg-primary, #ffffff);--ghost-popover-header-bg:var(--bg-primary, #ffffff);--ghost-popover-body-bg:var(--bg-primary, #ffffff);--ghost-popover-border:var(--border-default, #e5e7eb);--ghost-popover-text-primary:var(--text-primary, #0f172a);--ghost-popover-text-secondary:var(--text-secondary, #475569);--ghost-popover-footer-bg:var(--bg-secondary, #f8fafc)}.ghost-popover-trigger{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid rgba(148, 163, 184, 0.3);border-radius:999px;background:rgba(15, 23, 42, 0.88);box-shadow:0 10px 24px rgba(15, 23, 42, 0.28);color:rgba(255, 255, 255, 0.98);backdrop-filter:blur(8px);cursor:pointer;opacity:1;transition:transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease}.ghost-popover-trigger:hover,.ghost-popover-trigger:focus-visible{background:rgba(15, 23, 42, 0.96);border-color:rgba(191, 219, 254, 0.56);transform:translateY(-1px);box-shadow:0 12px 28px rgba(15, 23, 42, 0.34);outline:none}.ghost-popover-trigger ui-icon{font-size:0.8125rem;pointer-events:none}.ghost-popover-content{display:flex;flex-direction:column;gap:10px;min-width:0;min-width:280px;max-width:min(320px, 100vw - 32px)}.ghost-meta{display:grid;grid-template-columns:56px minmax(0, 1fr);gap:10px;align-items:start;font-size:0.75rem;line-height:1.4}.ghost-meta-label{font-weight:800;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-secondary, #475569)}.ghost-meta-value{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-size:0.8125rem;font-weight:700;color:var(--text-primary, #0f172a);overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.ghost-popover-content .ghost-meta+.ghost-meta{padding-top:8px;border-top:1px solid var(--border-default, rgba(148, 163, 184, 0.18))}.presence-halo{position:absolute;top:6px;right:6px;width:10px;height:10px;border-radius:50%;border:2px solid var(--bg-primary, #ffffff);box-shadow:0 0 0 2px rgba(0, 0, 0, 0.1)}.presence-halo.presence-blue{background:var(--color-primary, #10b981)}.presence-halo.presence-purple{background:var(--color-primary, #a855f7)}.list-item-density-compact{padding-top:4px !important;padding-bottom:4px !important;min-height:40px}.list-item-density-compact .list-item-ghost-layer{top:5px;right:5px}.list-item-density-compact .ghost-popover-trigger{width:16px;height:16px}.list-item-density-compact .ghost-popover-trigger ui-icon{font-size:0.5625rem}.list-item-density-compact .list-item-sublabel,.list-item-density-compact .list-item-tags,.list-item-density-compact .list-item-progress-container{display:none}.list-item-density-compact .list-item-avatar-container,.list-item-density-compact ui-avatar{transform:scale(0.8)}.list-item-density-cozy{padding-top:20px !important;padding-bottom:20px !important}.list-item-density-cozy .list-item-label{font-size:1.1rem;font-weight:700;color:var(--text-primary, #0f172a)}.list-item-density-cozy .list-item-avatar-container,.list-item-density-cozy ui-avatar{transform:scale(1.15)}.list-item-context-menu-container{position:fixed;z-index:100000;min-width:180px;background:var(--bg-tertiary, rgba(15, 23, 42, 0.95));backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid var(--border-default, rgba(255, 255, 255, 0.08));border-radius:12px;box-shadow:0 10px 30px -5px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(255, 255, 255, 0.05);padding:6px;animation:contextMenuFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1);overflow:hidden;box-sizing:border-box}@keyframes contextMenuFadeIn{from{opacity:0;transform:scale(0.95) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.context-menu-default{display:flex;flex-direction:column;gap:2px;width:100%}.context-menu-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;font-size:0.8125rem;font-weight:500;color:var(--text-secondary, rgba(255, 255, 255, 0.85));cursor:pointer;transition:all 0.15s ease;user-select:none}.context-menu-item ui-icon{font-size:1rem;color:var(--text-muted, rgba(255, 255, 255, 0.5));transition:color 0.15s ease}.context-menu-item span{color:inherit}.context-menu-item:hover{background:var(--bg-hover, rgba(255, 255, 255, 0.08));color:var(--text-primary, #ffffff)}.context-menu-item:hover ui-icon{color:var(--text-primary, #ffffff);transform:scale(1.05)}.context-menu-item:active{transform:scale(0.98)}.context-menu-item.danger{color:var(--color-danger, #fca5a5)}.context-menu-item.danger ui-icon{color:var(--color-danger, #ef4444)}.context-menu-item.danger:hover{background:rgba(239, 68, 68, 0.12);color:var(--color-danger, #ef4444)}.context-menu-item.danger:hover ui-icon{color:var(--color-danger, #ef4444)}.context-menu-divider{height:1px;background:var(--border-default, rgba(255, 255, 255, 0.08));margin:4px 6px}`;
73
79
 
74
80
  const AppListItem = class {
75
81
  constructor(hostRef) {
@@ -108,7 +114,7 @@ const AppListItem = class {
108
114
  href = '';
109
115
  target = '_self';
110
116
  contextMenu = false;
111
- contextMenuTrigger = 'click';
117
+ contextMenuTrigger = 'rightClick';
112
118
  contextMenuPosition = 'auto';
113
119
  // New features
114
120
  showCheckbox = false;
@@ -204,6 +210,7 @@ const AppListItem = class {
204
210
  contextMenuY = 0;
205
211
  swipeOffset = 0;
206
212
  showStatusEditor = false;
213
+ ghostPopoverVariant = 'dark';
207
214
  listItemClick;
208
215
  listItemActionClick;
209
216
  listItemToggle;
@@ -221,19 +228,95 @@ const AppListItem = class {
221
228
  touchCurrentX = 0;
222
229
  isSwiping = false;
223
230
  longPressTimer;
231
+ themeObserver;
232
+ componentWillLoad() {
233
+ this.syncGhostPopoverTheme();
234
+ }
224
235
  componentDidLoad() {
236
+ this.observeThemeChanges();
225
237
  if (this.contextMenu) {
226
238
  document.addEventListener('click', this.handleOutsideClick);
227
239
  }
228
240
  }
229
241
  disconnectedCallback() {
242
+ this.themeObserver?.disconnect();
230
243
  if (this.contextMenu) {
231
244
  document.removeEventListener('click', this.handleOutsideClick);
232
245
  }
233
246
  }
247
+ observeThemeChanges() {
248
+ this.themeObserver?.disconnect();
249
+ const observer = new MutationObserver(() => this.syncGhostPopoverTheme());
250
+ observer.observe(document.documentElement, { attributes: true, attributeFilter: ['class', 'data-theme'] });
251
+ if (document.body) {
252
+ observer.observe(document.body, { attributes: true, attributeFilter: ['class', 'data-theme'] });
253
+ }
254
+ this.themeObserver = observer;
255
+ }
256
+ syncGhostPopoverTheme() {
257
+ const nextVariant = this.resolveGhostPopoverVariant();
258
+ if (this.ghostPopoverVariant !== nextVariant) {
259
+ this.ghostPopoverVariant = nextVariant;
260
+ }
261
+ }
262
+ resolveGhostPopoverVariant() {
263
+ const root = document.documentElement;
264
+ const body = document.body;
265
+ const themeFingerprint = [
266
+ root.dataset.theme || '',
267
+ root.className || '',
268
+ body?.dataset.theme || '',
269
+ body.className || '',
270
+ ].join(' ').toLowerCase();
271
+ if (/(light|yellow)/.test(themeFingerprint))
272
+ return 'light';
273
+ if (/(dark|blue|green|pink|violet)/.test(themeFingerprint))
274
+ return 'dark';
275
+ const bgPrimary = getComputedStyle(root).getPropertyValue('--bg-primary').trim();
276
+ const rgb = this.parseColorToRgb(bgPrimary);
277
+ if (!rgb)
278
+ return 'dark';
279
+ const luminance = (0.2126 * rgb.r + 0.7152 * rgb.g + 0.0722 * rgb.b) / 255;
280
+ return luminance > 0.6 ? 'light' : 'dark';
281
+ }
282
+ parseColorToRgb(color) {
283
+ if (!color)
284
+ return null;
285
+ const normalized = color.trim().toLowerCase();
286
+ if (normalized.startsWith('#')) {
287
+ const hex = normalized.slice(1);
288
+ if (hex.length === 3) {
289
+ return {
290
+ r: Number.parseInt(hex[0] + hex[0], 16),
291
+ g: Number.parseInt(hex[1] + hex[1], 16),
292
+ b: Number.parseInt(hex[2] + hex[2], 16),
293
+ };
294
+ }
295
+ if (hex.length >= 6) {
296
+ return {
297
+ r: Number.parseInt(hex.slice(0, 2), 16),
298
+ g: Number.parseInt(hex.slice(2, 4), 16),
299
+ b: Number.parseInt(hex.slice(4, 6), 16),
300
+ };
301
+ }
302
+ }
303
+ const rgbMatch = /rgba?\((\d+),\s*(\d+),\s*(\d+)/.exec(normalized);
304
+ if (rgbMatch) {
305
+ return {
306
+ r: Number.parseInt(rgbMatch[1], 10),
307
+ g: Number.parseInt(rgbMatch[2], 10),
308
+ b: Number.parseInt(rgbMatch[3], 10),
309
+ };
310
+ }
311
+ return null;
312
+ }
234
313
  handleOutsideClick = (e) => {
235
314
  if (this.contextMenuOpen && this.contextMenuRef && !this.contextMenuRef.contains(e.target)) {
236
- const listItem = this.el.shadowRoot.querySelector('.list-item');
315
+ const shadowRoot = this.el.shadowRoot;
316
+ if (!shadowRoot) {
317
+ return;
318
+ }
319
+ const listItem = shadowRoot.querySelector('.list-item');
237
320
  if (listItem && !listItem.contains(e.target)) {
238
321
  this.closeContextMenu();
239
322
  }
@@ -250,8 +333,6 @@ const AppListItem = class {
250
333
  return;
251
334
  }
252
335
  if (this.locked) {
253
- this.wobble = true;
254
- setTimeout(() => this.wobble = false, 400);
255
336
  return;
256
337
  }
257
338
  if (this.expandable && !this.contextMenu) {
@@ -329,17 +410,19 @@ const AppListItem = class {
329
410
  break;
330
411
  case 'auto':
331
412
  default:
332
- // Auto: prefer right, fallback to left if not enough space
333
- const spaceRight = viewportWidth - rect.right;
334
- if (spaceRight > menuWidth) {
335
- x = rect.right;
336
- y = rect.top;
337
- }
338
- else {
339
- x = rect.left - menuWidth;
340
- y = rect.top;
413
+ {
414
+ // Auto: prefer right, fallback to left if not enough space
415
+ const spaceRight = viewportWidth - rect.right;
416
+ if (spaceRight > menuWidth) {
417
+ x = rect.right;
418
+ y = rect.top;
419
+ }
420
+ else {
421
+ x = rect.left - menuWidth;
422
+ y = rect.top;
423
+ }
424
+ break;
341
425
  }
342
- break;
343
426
  }
344
427
  }
345
428
  // Edge detection and adjustment for all directions
@@ -414,8 +497,7 @@ const AppListItem = class {
414
497
  this.longPressTimer = setTimeout(() => {
415
498
  if (!this.swipeOffset) {
416
499
  this.longPress.emit({ value: this.value });
417
- if (navigator.vibrate)
418
- navigator.vibrate(50); // Haptic feedback
500
+ globalThis.navigator.vibrate?.(50); // Haptic feedback
419
501
  }
420
502
  }, this.longPressDelay);
421
503
  }
@@ -435,6 +517,28 @@ const AppListItem = class {
435
517
  return;
436
518
  this.swipeOffset = delta;
437
519
  };
520
+ getSwipeActionDefinitions(side) {
521
+ if (side === 'left') {
522
+ return this.leftActions.length
523
+ ? this.leftActions
524
+ : [{ icon: this.leftActionIcon, action: 'left' }];
525
+ }
526
+ return this.rightActions.length
527
+ ? this.rightActions
528
+ : [{ icon: this.rightActionIcon, action: 'right' }];
529
+ }
530
+ completeFullSwipe(side, action) {
531
+ this.swipeOffset = side === 'left' ? this.el.clientWidth : -this.el.clientWidth;
532
+ setTimeout(() => {
533
+ this.swipeAction.emit({ value: this.value, side, action });
534
+ if (this.swipeBehavior === 'dismiss') {
535
+ this.el.style.display = 'none';
536
+ }
537
+ else {
538
+ this.swipeOffset = 0;
539
+ }
540
+ }, 200);
541
+ }
438
542
  handleTouchEnd = () => {
439
543
  if (!this.swipeActions)
440
544
  return;
@@ -443,20 +547,10 @@ const AppListItem = class {
443
547
  const fullThreshold = this.el.clientWidth * this.fullSwipeThreshold;
444
548
  const absOffset = Math.abs(this.swipeOffset);
445
549
  if (absOffset > fullThreshold) {
446
- // Full Swipe Trigger
447
550
  const side = this.swipeOffset > 0 ? 'left' : 'right';
448
- const actions = side === 'left' ? (this.leftActions.length ? this.leftActions : [{ icon: this.leftActionIcon, action: 'left' }]) : (this.rightActions.length ? this.rightActions : [{ icon: this.rightActionIcon, action: 'right' }]);
551
+ const actions = this.getSwipeActionDefinitions(side);
449
552
  const primaryAction = actions[0]?.action || (side === 'left' ? 'check' : 'trash');
450
- this.swipeOffset = this.swipeOffset > 0 ? this.el.clientWidth : -this.el.clientWidth;
451
- setTimeout(() => {
452
- this.swipeAction.emit({ value: this.value, side, action: primaryAction });
453
- if (this.swipeBehavior === 'dismiss') {
454
- this.el.style.display = 'none'; // Physics dismissal
455
- }
456
- else {
457
- this.swipeOffset = 0;
458
- }
459
- }, 200);
553
+ this.completeFullSwipe(side, primaryAction);
460
554
  return;
461
555
  }
462
556
  if (absOffset > threshold) {
@@ -468,8 +562,10 @@ const AppListItem = class {
468
562
  };
469
563
  async focusItem() {
470
564
  this.isFocused = true;
471
- this.el.shadowRoot.querySelector('.list-item')?.setAttribute('tabindex', '0');
472
- this.el.shadowRoot.querySelector('.list-item')?.focus();
565
+ const shadowRoot = this.el.shadowRoot;
566
+ const listItem = shadowRoot?.querySelector('.list-item');
567
+ listItem?.setAttribute('tabindex', '0');
568
+ listItem?.focus();
473
569
  }
474
570
  handleKeyDown = (e) => {
475
571
  if (this.isFocused) {
@@ -482,14 +578,22 @@ const AppListItem = class {
482
578
  if (!this.highlight || !text)
483
579
  return text;
484
580
  const parts = text.split(new RegExp(`(${this.highlight})`, 'gi'));
485
- return parts.map(part => part.toLowerCase() === this.highlight.toLowerCase()
486
- ? index.h("mark", { class: "list-item-highlight" }, part)
487
- : part);
581
+ let searchStart = 0;
582
+ return parts.map((part) => {
583
+ const lowerText = text.toLowerCase();
584
+ const lowerPart = part.toLowerCase();
585
+ const matchOffset = lowerText.indexOf(lowerPart, searchStart);
586
+ const resolvedOffset = matchOffset >= 0 ? matchOffset : searchStart;
587
+ searchStart = resolvedOffset + part.length;
588
+ return part.toLowerCase() === this.highlight.toLowerCase()
589
+ ? index.h("mark", { class: "list-item-highlight", key: `highlight-${resolvedOffset}-${part}` }, part)
590
+ : part;
591
+ });
488
592
  }
489
593
  renderPresenceCursors() {
490
594
  if (!this.presenceCursors || this.presenceCursors.length === 0)
491
595
  return null;
492
- return (index.h("div", { class: "presence-cursors-layer" }, this.presenceCursors.map(cursor => (index.h("div", { class: `ghost-cursor cursor-${cursor.color || 'blue'}`, style: { left: `${cursor.x}px`, top: `${cursor.y}px` } }, index.h("ui-icon", { name: "mouse-pointer", library: "fontawesome" }), index.h("div", { class: "cursor-label" }, cursor.name))))));
596
+ return (index.h("div", { class: "presence-cursors-layer" }, this.presenceCursors.map((cursor, index$1) => (index.h("div", { key: `cursor-${cursor.id || cursor.name || index$1}`, class: `ghost-cursor cursor-${cursor.color || 'blue'}`, style: { left: `${cursor.x}px`, top: `${cursor.y}px` } }, index.h("ui-icon", { name: "mouse-pointer", library: "fontawesome" }), index.h("div", { class: "cursor-label" }, cursor.name))))));
493
597
  }
494
598
  renderSparkline() {
495
599
  if (!this.sparkline || this.sparkline.length < 2)
@@ -506,10 +610,87 @@ const AppListItem = class {
506
610
  }).join(' ');
507
611
  return (index.h("svg", { class: "list-sparkline", width: width, height: height }, index.h("polyline", { fill: "none", stroke: "#3bf673", "stroke-width": "1.5", points: points })));
508
612
  }
613
+ getSkeletonMediaDimensions() {
614
+ switch (this.size) {
615
+ case 'sm':
616
+ return {
617
+ avatar: '32px',
618
+ imageWidth: '36px',
619
+ imageHeight: '36px',
620
+ icon: '16px',
621
+ };
622
+ case 'lg':
623
+ return {
624
+ avatar: '48px',
625
+ imageWidth: '64px',
626
+ imageHeight: '64px',
627
+ icon: '24px',
628
+ };
629
+ default:
630
+ return {
631
+ avatar: '40px',
632
+ imageWidth: '48px',
633
+ imageHeight: '48px',
634
+ icon: '20px',
635
+ };
636
+ }
637
+ }
638
+ renderSkeletonMedia(kind = 'default') {
639
+ const dims = this.getSkeletonMediaDimensions();
640
+ switch (kind) {
641
+ case 'image':
642
+ return (index.h("ui-skeleton", { shape: "rounded-rectangle", width: dims.imageWidth, height: dims.imageHeight, style: { width: dims.imageWidth, height: dims.imageHeight, display: 'block', flexShrink: '0' }, animated: true, animationType: "wave", ariaLabel: "Loading list item media", ariaLive: "off" }));
643
+ case 'icon':
644
+ return (index.h("ui-skeleton", { shape: "square", width: dims.icon, height: dims.icon, borderRadius: "6px", style: { width: dims.icon, height: dims.icon, display: 'block', flexShrink: '0' }, animated: true, animationType: "wave", ariaLabel: "Loading list item icon", ariaLive: "off" }));
645
+ case 'avatar':
646
+ case 'default':
647
+ default:
648
+ return (index.h("ui-skeleton", { shape: "circle", width: dims.avatar, height: dims.avatar, style: { width: dims.avatar, height: dims.avatar, display: 'block', flexShrink: '0' }, animated: true, animationType: "wave", ariaLabel: "Loading list item avatar", ariaLive: "off" }));
649
+ }
650
+ }
651
+ getSkeletonMediaKind() {
652
+ if (this.userAvatar)
653
+ return 'avatar';
654
+ if (this.image)
655
+ return 'image';
656
+ if (this.icon)
657
+ return 'icon';
658
+ if (this.avatarGroup && this.avatarGroupPosition === 'media')
659
+ return 'avatar';
660
+ return 'default';
661
+ }
662
+ renderSkeletonLabel(width, ariaLabel, height = '14px') {
663
+ return (index.h("ui-skeleton", { shape: "text", width: width, height: height, style: { width, height, display: 'block', maxWidth: '100%', alignSelf: 'flex-start' }, animated: true, animationType: "wave", ariaLabel: ariaLabel, ariaLive: "off" }));
664
+ }
665
+ getSkeletonTextWidths() {
666
+ switch (this.size) {
667
+ case 'sm':
668
+ return {
669
+ label: 'min(78%, 180px)',
670
+ sublabel: 'min(58%, 132px)',
671
+ };
672
+ case 'lg':
673
+ return {
674
+ label: 'min(82%, 320px)',
675
+ sublabel: 'min(62%, 220px)',
676
+ };
677
+ default:
678
+ return {
679
+ label: 'min(80%, 240px)',
680
+ sublabel: 'min(60%, 160px)',
681
+ };
682
+ }
683
+ }
684
+ hasGhostMetadata() {
685
+ return Boolean(this.metadata && typeof this.metadata === 'object' && Object.keys(this.metadata).length > 0);
686
+ }
687
+ shouldRenderGhostLayer() {
688
+ return !this.skeleton && (this.showGhostLayer || this.hasGhostMetadata());
689
+ }
509
690
  renderGhostLayer() {
510
- if (!this.showGhostLayer)
691
+ if (!this.shouldRenderGhostLayer())
511
692
  return null;
512
- return (index.h("div", { class: "list-item-ghost-layer" }, index.h("div", { class: "ghost-meta" }, "IP: ", this.metadata?.ip || '127.0.0.1'), index.h("div", { class: "ghost-meta" }, "VER: ", this.metadata?.version || '1.0.0'), index.h("div", { class: "ghost-meta" }, "ID: ", this.value || 'N/A')));
693
+ return (index.h("div", { class: "list-item-ghost-layer" }, index.h("ui-popover", { trigger: "hover", placement: "top-end", variant: "light", popoverRole: "dialog", width: "320px", offset: 10, strategy: "fixed", boundary: "viewport", padding: 12, autoPlacement: true, flip: true, shift: true, maxHeight: "none", closeOnOutsideClick: true, closeOnBlur: false, interactive: true, showArrow: true }, index.h("button", { type: "button", slot: "trigger", class: "ghost-popover-trigger", "aria-label": "Show item metadata", onMouseDown: (e) => e.stopPropagation() }, index.h("ui-icon", { name: "info-circle", library: "fontawesome" })), index.h("div", { slot: "content", class: "ghost-popover-content" }, index.h("div", { class: "ghost-meta" }, index.h("span", { class: "ghost-meta-label" }, "IP"), index.h("span", { class: "ghost-meta-value" }, this.metadata?.ip || '127.0.0.1')), index.h("div", { class: "ghost-meta" }, index.h("span", { class: "ghost-meta-label" }, "VER"), index.h("span", { class: "ghost-meta-value" }, this.metadata?.version || '1.0.0')), index.h("div", { class: "ghost-meta" }, index.h("span", { class: "ghost-meta-label" }, "ID"), index.h("span", { class: "ghost-meta-value" }, this.value || 'N/A'))))));
513
694
  }
514
695
  parseTagsToItems() {
515
696
  if (!this.tags)
@@ -522,6 +703,107 @@ const AppListItem = class {
522
703
  return [];
523
704
  }
524
705
  }
706
+ getCollaborators() {
707
+ if (!this.avatarGroup) {
708
+ return [];
709
+ }
710
+ if (typeof this.avatarGroup === 'string') {
711
+ try {
712
+ return JSON.parse(this.avatarGroup || '[]');
713
+ }
714
+ catch {
715
+ return [];
716
+ }
717
+ }
718
+ return this.avatarGroup;
719
+ }
720
+ getAriaExpanded() {
721
+ if (this.collapsible) {
722
+ return this.expanded.toString();
723
+ }
724
+ if (this.contextMenu) {
725
+ return this.contextMenuOpen.toString();
726
+ }
727
+ return undefined;
728
+ }
729
+ getContainerRole() {
730
+ return this.interactive || this.collapsible || this.contextMenu || this.expandable ? 'button' : undefined;
731
+ }
732
+ getItemAriaLabel() {
733
+ if (this.a11yLabel) {
734
+ return this.a11yLabel;
735
+ }
736
+ if (this.skeleton) {
737
+ return 'Loading cluster node';
738
+ }
739
+ return `${this.label}, status: ${this.status}, health: ${this.progress}%`;
740
+ }
741
+ renderPresenceHalos() {
742
+ if (!this.presence?.length) {
743
+ return null;
744
+ }
745
+ return this.presence.map((presenceItem, index$1) => (index.h("div", { key: `presence-${presenceItem.id || index$1}`, class: `presence-halo presence-${presenceItem.color || 'blue'}`, title: `User ${presenceItem.id} active` })));
746
+ }
747
+ renderSwipeActionButton(action, side, index$1) {
748
+ return (index.h("button", { key: `swipe-${side}-${action.action || action.icon || index$1}`, type: "button", class: `swipe-action bg-${action.color}`, onClick: () => this.swipeAction.emit({ value: this.value, side, action: action.action }) }, index.h("ui-icon", { name: action.icon, library: "fontawesome" })));
749
+ }
750
+ renderSwipeActions() {
751
+ if (!this.swipeActions || this.swipeOffset === 0) {
752
+ return null;
753
+ }
754
+ return (index.h("div", { class: "swipe-actions-container" }, this.swipeOffset > 0 && (index.h("div", { class: "swipe-action-wrapper left" }, this.leftActions.length > 0 ? (this.leftActions.map((action, index) => this.renderSwipeActionButton(action, 'left', index))) : (index.h("button", { type: "button", class: `swipe-action left bg-${this.leftActionColor}` }, index.h("ui-icon", { name: this.leftActionIcon, library: "fontawesome" }))))), this.swipeOffset < 0 && (index.h("div", { class: "swipe-action-wrapper right" }, this.rightActions.length > 0 ? (this.rightActions.map((action, index) => this.renderSwipeActionButton(action, 'right', index))) : (index.h("button", { type: "button", class: `swipe-action right bg-${this.rightActionColor}` }, index.h("ui-icon", { name: this.rightActionIcon, library: "fontawesome" })))))));
755
+ }
756
+ renderMediaContent(collaborators) {
757
+ if (this.skeleton) {
758
+ return this.renderSkeletonMedia(this.getSkeletonMediaKind());
759
+ }
760
+ if (this.userAvatar) {
761
+ return (index.h("div", { class: "list-item-avatar-container" }, index.h("ui-avatar", { class: { 'list-item-avatar': true }, src: this.userAvatar, size: this.size === 'lg' ? 'md' : 'sm' }), this.status && (index.h("span", { class: `list-item-status status-${this.status} pos-${this.statusPosition}` }))));
762
+ }
763
+ if (this.image) {
764
+ return (index.h("div", { class: { 'list-item-image': true } }, index.h("img", { src: this.image, alt: this.label })));
765
+ }
766
+ if (this.icon) {
767
+ return index.h("ui-icon", { class: "list-item-icon", name: this.icon, library: "fontawesome" });
768
+ }
769
+ if (this.avatarGroup && this.avatarGroupPosition === 'media') {
770
+ return (index.h("div", { class: "list-item-media-avatar-group" }, index.h("ui-avatar-group", { items: collaborators, size: "xs", spacing: "-12px", limit: 3 })));
771
+ }
772
+ return null;
773
+ }
774
+ renderMediaSection(position, collaborators) {
775
+ if (this.avatarPosition !== position) {
776
+ return null;
777
+ }
778
+ const sectionClass = position === 'left' ? 'list-item-left-media' : 'list-item-right-media';
779
+ return index.h("div", { class: sectionClass }, this.renderMediaContent(collaborators));
780
+ }
781
+ renderTags(parsedTags) {
782
+ if (!parsedTags.length || this.skeleton) {
783
+ return null;
784
+ }
785
+ return (index.h("div", { class: "list-item-tags" }, index.h("ui-tag-group", { spacing: "4px", readOnly: true }, parsedTags.map((tag, index$1) => (index.h("ui-tag", { key: `tag-${typeof tag === 'string' ? tag : tag.label || index$1}`, label: typeof tag === 'string' ? tag : tag.label, color: tag.color || 'default', variant: tag.variant || 'light', size: "xs", shape: tag.shape || 'pill', icon: tag.icon }))))));
786
+ }
787
+ renderContent(parsedTags, collaborators) {
788
+ const skeletonTextWidths = this.getSkeletonTextWidths();
789
+ return (index.h("div", { class: { 'list-item-content': true, 'list-item-skeleton-content': this.skeleton } }, index.h("div", { class: "list-item-label-wrapper" }, this.showStar && !this.skeleton && (index.h("ui-icon", { class: { 'list-item-star-icon': true, 'is-starred': this.starred }, name: "star", library: "fontawesome", onClick: (e) => {
790
+ e.stopPropagation();
791
+ this.starred = !this.starred;
792
+ this.starToggle.emit({ value: this.value, starred: this.starred });
793
+ globalThis.navigator.vibrate?.(20);
794
+ } })), this.skeleton ? (this.renderSkeletonLabel(skeletonTextWidths.label, 'Loading list item label', '16px')) : (index.h("span", { class: "list-item-label" }, this.renderLabel(this.label))), this.badge && !this.skeleton && (index.h("span", { class: `list-item-badge badge-${this.badgeColor}` }, this.badge))), (this.sublabel || this.skeleton) && (index.h("div", { class: { 'list-item-subline': true, 'is-skeleton-subline': this.skeleton } }, this.skeleton ? (this.renderSkeletonLabel(skeletonTextWidths.sublabel, 'Loading list item sublabel', '12px')) : (index.h("span", { class: "list-item-sublabel" }, this.renderLabel(this.sublabel))), !this.skeleton && this.renderSparkline())), this.progress >= 0 && !this.skeleton && (index.h("div", { class: "list-item-progress-container" }, index.h("div", { class: "list-item-progress-bar", style: { width: `${this.progress}%` } }), index.h("span", { class: "list-item-progress-text" }, this.progress, "%"))), this.avatarGroup && this.avatarGroupPosition === 'content' && !this.skeleton && (index.h("div", { class: "list-item-collaborators" }, index.h("ui-avatar-group", { items: collaborators, size: "xs", spacing: "-8px" }))), this.renderTags(parsedTags)));
795
+ }
796
+ renderContextMenu() {
797
+ if (!this.contextMenuOpen) {
798
+ return null;
799
+ }
800
+ return (index.h("div", { ref: (el) => {
801
+ this.contextMenuRef = el;
802
+ }, class: "list-item-context-menu-container", style: {
803
+ top: `${this.contextMenuY}px`,
804
+ left: `${this.contextMenuX}px`
805
+ } }, index.h("slot", { name: "context-menu" }, index.h("div", { class: "context-menu-default" }, index.h("button", { type: "button", class: "context-menu-item", onClick: () => this.closeContextMenu() }, index.h("ui-icon", { name: "info-circle", library: "fontawesome" }), index.h("span", null, "View Details")), index.h("button", { type: "button", class: "context-menu-item", onClick: () => this.closeContextMenu() }, index.h("ui-icon", { name: "edit", library: "fontawesome" }), index.h("span", null, "Edit Item")), index.h("div", { class: "context-menu-divider" }), index.h("button", { type: "button", class: "context-menu-item danger", onClick: () => this.closeContextMenu() }, index.h("ui-icon", { name: "trash", library: "fontawesome" }), index.h("span", null, "Delete Node"))))));
806
+ }
525
807
  render() {
526
808
  const containerClasses = {
527
809
  'list-item': true,
@@ -554,34 +836,41 @@ const AppListItem = class {
554
836
  'list-item-detail-expanded': this.expandedDetail,
555
837
  'is-wobbling': this.wobble,
556
838
  [`list-item-density-${this.density}`]: true,
557
- [`list-item-aura-${this.status}`]: this.auraMode && this.status && !this.skeleton,
839
+ [`list-item-aura-${this.status}`]: Boolean(this.auraMode && this.status && !this.skeleton),
558
840
  [`list-item-selection-${this.selectionColor}`]: this.selected && this.selectionColor !== 'default',
559
841
  [`list-item-hover-${this.hoverColor}`]: this.hoverColor !== 'default',
560
842
  'list-item-avatar-right': this.avatarPosition === 'right',
561
843
  };
562
844
  const paddingLeft = this.level * 24;
563
845
  const parsedTags = this.parseTagsToItems();
564
- const collaborators = typeof this.avatarGroup === 'string' ? JSON.parse(this.avatarGroup || '[]') : (this.avatarGroup || []);
565
- return (index.h(index.Host, { key: '68703af536d1a333ea4729dde39a4b0a3a1a963a', onKeyDown: this.handleKeyDown, tabIndex: this.interactive && !this.disabled ? 0 : -1 }, index.h("div", { key: '9e02626ec81c7db9ce167cb5b32aaf4d4878bdde', class: containerClasses, onClick: this.handleClick, onContextMenu: this.handleContextMenu, onFocus: this.handleFocus, onBlur: this.handleBlur, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, onMouseDown: () => {
846
+ const collaborators = this.getCollaborators();
847
+ const ariaExpanded = this.getAriaExpanded();
848
+ const containerRole = this.getContainerRole();
849
+ const hasGhostLayer = this.shouldRenderGhostLayer();
850
+ const itemStyles = {
851
+ paddingLeft: `${paddingLeft + (this.level > 0 ? 32 : 16)}px`,
852
+ };
853
+ if (hasGhostLayer) {
854
+ itemStyles.paddingRight = this.size === 'lg' ? '52px' : this.size === 'sm' ? '40px' : '46px';
855
+ }
856
+ if (this.swipeOffset !== 0) {
857
+ itemStyles.transform = `translateX(${this.swipeOffset}px)`;
858
+ }
859
+ return (index.h(index.Host, { key: 'b9be695a6e2ff2568aa80eb007bb75ee251c7d44', onClick: this.handleClick, onContextMenu: this.handleContextMenu, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, onMouseDown: () => {
566
860
  this.longPressTimer = setTimeout(() => {
567
861
  this.longPress.emit({ value: this.value });
568
862
  }, this.longPressDelay);
569
- }, onMouseUp: () => clearTimeout(this.longPressTimer), onTouchStart: this.handleTouchStart, onTouchMove: this.handleTouchMove, onTouchEnd: this.handleTouchEnd, tabindex: this.disabled ? -1 : 0, role: "listitem", "aria-label": this.a11yLabel || (this.skeleton ? 'Loading cluster node' : `${this.label}, status: ${this.status}, health: ${this.progress}%`), "aria-selected": this.selected ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false', "aria-haspopup": this.contextMenu ? 'menu' : undefined, "aria-expanded": this.contextMenuOpen ? 'true' : 'false', style: {
570
- paddingLeft: `${paddingLeft + (this.level > 0 ? 32 : 16)}px`,
571
- transform: `translateX(${this.swipeOffset}px)`
572
- }, part: "list-item" }, this.priorityPulse && index.h("div", { key: '29d6dd764bf04afdcf38425cdcd739585a2903af', class: "list-item-pulse" }), this.presence && this.presence.length > 0 && this.presence.map(p => (index.h("div", { class: `presence-halo presence-${p.color || 'blue'}`, title: `User ${p.id} active` }))), this.renderGhostLayer(), this.renderPresenceCursors(), this.swipeActions && this.swipeOffset !== 0 && (index.h("div", { key: 'b9d5129954d5021f5d47104d85557bb1006c2a28', class: "swipe-actions-container" }, this.swipeOffset > 0 && (index.h("div", { key: 'd94c942653b41cc7c404e5236d142cf392b3026e', class: "swipe-action-wrapper left" }, this.leftActions.length > 0 ? (this.leftActions.map(action => (index.h("div", { class: `swipe-action bg-${action.color}`, onClick: () => this.swipeAction.emit({ value: this.value, side: 'left', action: action.action }) }, index.h("ui-icon", { name: action.icon, library: "fontawesome" }))))) : (index.h("div", { class: `swipe-action left bg-${this.leftActionColor}` }, index.h("ui-icon", { name: this.leftActionIcon, library: "fontawesome" }))))), this.swipeOffset < 0 && (index.h("div", { key: 'ff0e3be9faefe1792b5bb5f2dac71639b8fc943b', class: "swipe-action-wrapper right" }, this.rightActions.length > 0 ? (this.rightActions.map(action => (index.h("div", { class: `swipe-action bg-${action.color}`, onClick: () => this.swipeAction.emit({ value: this.value, side: 'right', action: action.action }) }, index.h("ui-icon", { name: action.icon, library: "fontawesome" }))))) : (index.h("div", { class: `swipe-action right bg-${this.rightActionColor}` }, index.h("ui-icon", { name: this.rightActionIcon, library: "fontawesome" }))))))), this.skeleton && index.h("div", { key: '509fdfe2043cfa2c1584747a1cdff696e49e6e1c', class: "skeleton-pulse" }), this.showCheckbox && !this.skeleton && (index.h("div", { key: '3b94d917cda90a81674d30a01e058d7e1627cc15', class: "list-item-checkbox" }, index.h("ui-checkbox", { key: 'ed51e5443153fd04a454e785539f27c8d5d0d8fa', checked: this.checked, disabled: this.disabled, readonly: this.readonly, onCheckboxChange: (e) => this.handleCheckboxChange(e), size: "sm" }))), this.collapsible && !this.contextMenu && !this.skeleton && (index.h("ui-icon", { key: '40d4c58284448f55872a0d0a8fa6942bf5bf3d68', class: "collapse-icon", name: this.expanded ? 'chevron-down' : 'chevron-right', library: "fontawesome" })), this.avatarPosition === 'left' && (index.h("div", { key: '3a6d23758b12c51dc8b3b129a48a5ed4e4b03527', class: "list-item-left-media" }, this.userAvatar ? (index.h("div", { class: "list-item-avatar-container" }, index.h("ui-avatar", { class: { 'list-item-avatar': true, 'skeleton-circle': this.skeleton }, src: this.userAvatar, size: this.size === 'lg' ? 'md' : 'sm' }), this.status && !this.skeleton && (index.h("span", { class: `list-item-status status-${this.status} pos-${this.statusPosition}` })))) : this.image ? (index.h("div", { class: { 'list-item-image': true, 'skeleton-rect': this.skeleton } }, !this.skeleton && index.h("img", { src: this.image, alt: this.label }))) : this.icon ? (index.h("ui-icon", { class: "list-item-icon", name: this.icon, library: "fontawesome" })) : this.avatarGroup && this.avatarGroupPosition === 'media' ? (index.h("div", { class: "list-item-media-avatar-group" }, index.h("ui-avatar-group", { items: collaborators, size: "xs", spacing: "-12px", limit: 3 }))) : this.skeleton && (index.h("div", { class: "list-item-media-placeholder skeleton-circle" })))), index.h("div", { key: '7324255b937c72d9c0554551283752f5420873ad', class: "list-item-content" }, index.h("div", { key: '5228f2e36dc8dfd59846145283d92dfaddae02a1', class: "list-item-label-wrapper" }, this.showStar && !this.skeleton && (index.h("ui-icon", { key: '3be9af3d26463d813b16d72b64d50490c47f743c', class: { 'list-item-star-icon': true, 'is-starred': this.starred }, name: this.starred ? 'star' : 'star', library: "fontawesome", onClick: (e) => {
573
- e.stopPropagation();
574
- this.starred = !this.starred;
575
- this.starToggle.emit({ value: this.value, starred: this.starred });
576
- if (navigator.vibrate)
577
- navigator.vibrate(20);
578
- } })), index.h("span", { key: 'ce95f56be7c57cb22f18dbe29b563f23370c8ad4', class: { 'list-item-label': true, 'skeleton-text': this.skeleton } }, this.skeleton ? '' : this.renderLabel(this.label)), this.badge && !this.skeleton && (index.h("span", { key: 'a0f89fcb57de59bf532a08890e4320df97a20a8e', class: `list-item-badge badge-${this.badgeColor}` }, this.badge))), (this.sublabel || this.skeleton) && (index.h("div", { key: '3f7faa356828db1ae100e842817806c959df0793', class: "list-item-subline" }, index.h("span", { key: '8a44708f95a0fbc37e1cc423d7ec3ac1335013b3', class: { 'list-item-sublabel': true, 'skeleton-text': this.skeleton } }, this.skeleton ? '' : this.renderLabel(this.sublabel)), this.renderSparkline())), this.progress >= 0 && !this.skeleton && (index.h("div", { key: '88e4acf63cd5a2c41ed6a415dd6f507248b76932', class: "list-item-progress-container" }, index.h("div", { key: '47f6768a5fd86b2ab0cdc99c8f8d190722614cc1', class: "list-item-progress-bar", style: { width: `${this.progress}%` } }), index.h("span", { key: 'cccb5de1b94b9e4d5bc67404fa99cfb9da977ad2', class: "list-item-progress-text" }, this.progress, "%"))), this.avatarGroup && this.avatarGroupPosition === 'content' && !this.skeleton && (index.h("div", { key: 'af82b569419d754fad9c69e2897edec209021098', class: "list-item-collaborators" }, index.h("ui-avatar-group", { key: '6c9b9fe703202462dccf061df0b4348dcf6f6cf6', items: collaborators, size: "xs", spacing: "-8px" }))), parsedTags.length > 0 && !this.skeleton && (index.h("div", { key: '9d976bb0110f663b72bcc6043237ecc73df8b72a', class: "list-item-tags" }, index.h("ui-tag-group", { key: '96dcf37a09327a14126ccbf6076ab286a607aa02', spacing: "4px" }, parsedTags.map((tag) => (index.h("ui-tag", { label: typeof tag === 'string' ? tag : tag.label, color: tag.color || 'default', variant: tag.variant || 'light', size: "xs", shape: tag.shape || 'pill', icon: tag.icon }))))))), index.h("slot", { key: '09bf74616891faad73651171d6fe26c75abe3445' }), this.avatarPosition === 'right' && (index.h("div", { key: '834d8db05fa7e4f716ec8d7e68666d38de4f6cef', class: "list-item-right-media" }, this.userAvatar ? (index.h("div", { class: "list-item-avatar-container" }, index.h("ui-avatar", { class: { 'list-item-avatar': true, 'skeleton-circle': this.skeleton }, src: this.userAvatar, size: this.size === 'lg' ? 'md' : 'sm' }), this.status && !this.skeleton && (index.h("span", { class: `list-item-status status-${this.status} pos-${this.statusPosition}` })))) : this.image ? (index.h("div", { class: { 'list-item-image': true, 'skeleton-rect': this.skeleton } }, !this.skeleton && index.h("img", { src: this.image, alt: this.label }))) : this.icon ? (index.h("ui-icon", { class: "list-item-icon", name: this.icon, library: "fontawesome" })) : this.avatarGroup && this.avatarGroupPosition === 'media' ? (index.h("div", { class: "list-item-media-avatar-group" }, index.h("ui-avatar-group", { items: collaborators, size: "xs", spacing: "-12px", limit: 3 }))) : null)), this.avatarGroup && this.avatarGroupPosition === 'right' && !this.skeleton && (index.h("div", { key: '551ca783c0367ad8dbc84b24f6314c6887b041e7', class: "list-item-right-collaborators" }, index.h("ui-avatar-group", { key: 'f40c83478abf51489bedf99286938cd9a47d6dbe', items: collaborators, size: "xs", spacing: "-8px" }))), this.counter !== '' && !this.skeleton && (index.h("span", { key: '00aa9fe0ac7c99d4bfa0b1c4624d10e6894c57ca', class: {
863
+ }, onMouseUp: () => clearTimeout(this.longPressTimer), onTouchStart: this.handleTouchStart, onTouchMove: this.handleTouchMove, onTouchEnd: this.handleTouchEnd, tabIndex: this.disabled ? -1 : 0, role: containerRole, "aria-label": this.getItemAriaLabel(), "aria-pressed": containerRole ? this.selected.toString() : undefined, "aria-disabled": containerRole && this.disabled ? 'true' : undefined, "aria-haspopup": containerRole && this.contextMenu ? 'menu' : undefined, "aria-expanded": containerRole ? ariaExpanded : undefined }, index.h("div", { key: 'b25f5293ef41d9833c045a0255b615e4866b3539', class: containerClasses, style: itemStyles, part: "list-item" }, this.priorityPulse && index.h("div", { key: 'd2e37a48d4b8a542d0aa4b96af95ce5d903b0ee6', class: "list-item-pulse" }), this.renderPresenceHalos(), this.renderGhostLayer(), this.renderPresenceCursors(), this.renderSwipeActions(), this.skeleton && null, this.showCheckbox && !this.skeleton && (index.h("div", { key: 'bb535bd28a20bffeb7623bd331e259973755a1cd', class: "list-item-checkbox" }, index.h("ui-checkbox", { key: '5a24929a68f0a00db315c24a8c3ed8a4187893fb', checked: this.checked, disabled: this.disabled, readonly: this.readonly, onCheckboxChange: (e) => this.handleCheckboxChange(e), size: "sm" }))), this.collapsible && !this.contextMenu && !this.skeleton && (index.h("ui-icon", { key: 'cee544048870b99d5da5e54043acdcba90d493e3', class: "collapse-icon", name: this.expanded ? 'chevron-down' : 'chevron-right', library: "fontawesome" })), this.renderMediaSection('left', collaborators), this.renderContent(parsedTags, collaborators), index.h("slot", { key: '45f68fd7931c1c3f1b0e156b8e538f76e18b857d' }), this.renderMediaSection('right', collaborators), this.avatarGroup && this.avatarGroupPosition === 'right' && !this.skeleton && (index.h("div", { key: '09a39760ebb4fe11d93598a9a5bec29a5e83dfae', class: "list-item-right-collaborators" }, index.h("ui-avatar-group", { key: '0f0dc6645c37825bd6637ff18bebc47bced1eb3a', items: collaborators, size: "xs", spacing: "-8px" }))), this.counter !== '' && !this.skeleton && (index.h("span", { key: '74dcd244ba0ef99c1331f6d8a636e0e57ca92516', class: {
579
864
  'list-item-counter': true,
580
865
  [`counter-${this.counterColor}`]: this.counterColor !== 'default'
581
- }, part: "counter" }, this.counter)), this.locked && !this.skeleton && (index.h("ui-icon", { key: 'c80b721608132dea939c6b8f93f631b488aefa7f', class: "list-item-lock-icon", name: "lock", library: "fontawesome" })), this.showMenu && !this.skeleton && (index.h("div", { key: '1b518b506020c79e6627c16934c050a48aabe0d2', class: "list-item-menu", onClick: (e) => { e.stopPropagation(); this.toggleContextMenu(e); } }, index.h("ui-icon", { key: '01f76b775711b2e742255cbdd2b3dc15b4b2730f', name: "ellipsis-v", library: "fontawesome" })))), this.contextMenuOpen && (index.h("div", { key: '320e1f36c5d48e6aec081d1504a30519f5a7e05e', ref: el => this.contextMenuRef = el, class: "list-item-context-menu-container", style: {
582
- top: `${this.contextMenuY}px`,
583
- left: `${this.contextMenuX}px`
584
- } }, index.h("slot", { key: '1825b38bd66e89e24ce8cc4178d68503acfb984a', name: "context-menu" }, index.h("div", { key: '185c97398e040eb1a453357515c3f35613f8b212', class: "context-menu-default" }, index.h("div", { key: '7c42cfd7239776e53f964db28d929171c67eea90', class: "context-menu-item", onClick: () => this.closeContextMenu() }, index.h("ui-icon", { key: 'e6c186b90b24b646b6676d9c6a620bef8abd3e36', name: "info-circle", library: "fontawesome" }), index.h("span", { key: 'bc804dee80b4c031e3ab1ca2a8008a4ac892f1bd' }, "View Details")), index.h("div", { key: 'edc2215ead4093d378a1aa86145dcf2de45880ac', class: "context-menu-item", onClick: () => this.closeContextMenu() }, index.h("ui-icon", { key: '1e0c1666d0a81a8bf79836428ec4dd64193779c9', name: "edit", library: "fontawesome" }), index.h("span", { key: '8805f4641c23e9dd97b1aa7fa1b62cb0be5ac1ee' }, "Edit Item")), index.h("div", { key: '8c6076bbda9ffe77a6ed2d17d63542e9c945d316', class: "context-menu-divider" }), index.h("div", { key: 'b75413de809407021aa18bb45b77904a19434013', class: "context-menu-item danger", onClick: () => this.closeContextMenu() }, index.h("ui-icon", { key: 'bac87420c04683ec95c8a45c292348dfe2c1009c', name: "trash", library: "fontawesome" }), index.h("span", { key: '181d578e7817cf822e4a8c80b824cbf94d35240f' }, "Delete Node")))))), this.expandable && (index.h("div", { key: '081ffb4a8b6786ee42ed19d0506ac11b0108661a', class: { 'list-item-detail-panel': true, 'is-expanded': this.expandedDetail } }, index.h("slot", { key: '120fb4d707d9e39474c31cb3d8d9ed84a8bad003', name: "detail" })))));
866
+ }, part: "counter" }, this.counter)), this.locked && !this.skeleton && (index.h("ui-icon", { key: 'de12bb2a48f98507af009d76b2704771b1702f4b', class: "list-item-lock-icon", name: "lock", library: "fontawesome", onClick: (e) => {
867
+ e.stopPropagation();
868
+ this.wobble = true;
869
+ setTimeout(() => this.wobble = false, 400);
870
+ } })), this.showMenu && !this.skeleton && (index.h("button", { key: 'b654fbb2fefe5ea30475f6993b5647d0d6770a7b', type: "button", class: "list-item-menu", onClick: (e) => { e.stopPropagation(); this.toggleContextMenu(e); } }, index.h("ui-icon", { key: '808303a454a47c6f1053bda6f20292d30f6c1577', name: "ellipsis-v", library: "fontawesome" })))), this.collapsible && (index.h("div", { key: 'f8e93ec052234d8350044a9d62b86c89bd76df5b', class: {
871
+ 'list-item-children': true,
872
+ 'is-collapsed': !this.expanded,
873
+ }, "aria-hidden": (!this.expanded).toString() }, index.h("slot", { key: '4dd4214df4dfb716cb67c63709f9c50527822f65', name: "children" }))), this.renderContextMenu(), this.expandable && (index.h("div", { key: 'a9ec15208be52ce95ed34ec4e0cd59b15116ee44', class: { 'list-item-detail-panel': true, 'is-expanded': this.expandedDetail } }, index.h("slot", { key: 'e7c0c56505d51902b915016dcad989e2856debc4', name: "detail" })))));
585
874
  }
586
875
  };
587
876
  AppListItem.style = listItemCss();