snice 4.24.0 → 4.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (512) hide show
  1. package/README.md +4 -39
  2. package/bin/mcp-server.js +32 -0
  3. package/dist/cdn/accordion/snice-accordion.js +2 -2
  4. package/dist/cdn/accordion/snice-accordion.min.js +2 -2
  5. package/dist/cdn/activity-feed/snice-activity-feed.js +3 -3
  6. package/dist/cdn/activity-feed/snice-activity-feed.js.map +1 -1
  7. package/dist/cdn/activity-feed/snice-activity-feed.min.js +3 -3
  8. package/dist/cdn/activity-feed/snice-activity-feed.min.js.map +1 -1
  9. package/dist/cdn/alert/snice-alert.js +8 -4
  10. package/dist/cdn/alert/snice-alert.js.map +1 -1
  11. package/dist/cdn/alert/snice-alert.min.js +2 -2
  12. package/dist/cdn/alert/snice-alert.min.js.map +1 -1
  13. package/dist/cdn/app-tiles/snice-app-tiles.js +2 -2
  14. package/dist/cdn/app-tiles/snice-app-tiles.min.js +2 -2
  15. package/dist/cdn/approval-flow/snice-approval-flow.js +3 -3
  16. package/dist/cdn/approval-flow/snice-approval-flow.js.map +1 -1
  17. package/dist/cdn/approval-flow/snice-approval-flow.min.js +3 -3
  18. package/dist/cdn/approval-flow/snice-approval-flow.min.js.map +1 -1
  19. package/dist/cdn/audio-recorder/README.md +1 -1
  20. package/dist/cdn/audio-recorder/snice-audio-recorder.js +2 -2
  21. package/dist/cdn/audio-recorder/snice-audio-recorder.min.js +2 -2
  22. package/dist/cdn/availability/snice-availability.js +2 -2
  23. package/dist/cdn/availability/snice-availability.min.js +2 -2
  24. package/dist/cdn/avatar/snice-avatar.js +2 -2
  25. package/dist/cdn/avatar/snice-avatar.min.js +2 -2
  26. package/dist/cdn/avatar-group/snice-avatar-group.js +3 -3
  27. package/dist/cdn/avatar-group/snice-avatar-group.js.map +1 -1
  28. package/dist/cdn/avatar-group/snice-avatar-group.min.js +16 -16
  29. package/dist/cdn/avatar-group/snice-avatar-group.min.js.map +1 -1
  30. package/dist/cdn/badge/snice-badge.js +2 -2
  31. package/dist/cdn/badge/snice-badge.min.js +2 -2
  32. package/dist/cdn/banner/snice-banner.js +9 -5
  33. package/dist/cdn/banner/snice-banner.js.map +1 -1
  34. package/dist/cdn/banner/snice-banner.min.js +3 -3
  35. package/dist/cdn/banner/snice-banner.min.js.map +1 -1
  36. package/dist/cdn/book/snice-book.js +2 -2
  37. package/dist/cdn/book/snice-book.min.js +2 -2
  38. package/dist/cdn/booking/snice-booking.js +2 -2
  39. package/dist/cdn/booking/snice-booking.min.js +2 -2
  40. package/dist/cdn/breadcrumbs/snice-breadcrumbs.js +8 -4
  41. package/dist/cdn/breadcrumbs/snice-breadcrumbs.js.map +1 -1
  42. package/dist/cdn/breadcrumbs/snice-breadcrumbs.min.js +2 -2
  43. package/dist/cdn/breadcrumbs/snice-breadcrumbs.min.js.map +1 -1
  44. package/dist/cdn/button/snice-button.js +8 -4
  45. package/dist/cdn/button/snice-button.js.map +1 -1
  46. package/dist/cdn/button/snice-button.min.js +2 -2
  47. package/dist/cdn/button/snice-button.min.js.map +1 -1
  48. package/dist/cdn/calendar/snice-calendar.js +2 -2
  49. package/dist/cdn/calendar/snice-calendar.min.js +2 -2
  50. package/dist/cdn/camera/snice-camera.js +2 -2
  51. package/dist/cdn/camera/snice-camera.min.js +2 -2
  52. package/dist/cdn/camera-annotate/snice-camera-annotate.js +2 -2
  53. package/dist/cdn/camera-annotate/snice-camera-annotate.min.js +2 -2
  54. package/dist/cdn/candlestick/snice-candlestick.js +2 -2
  55. package/dist/cdn/candlestick/snice-candlestick.min.js +2 -2
  56. package/dist/cdn/card/README.md +1 -1
  57. package/dist/cdn/card/snice-card.js +2 -2
  58. package/dist/cdn/card/snice-card.min.js +2 -2
  59. package/dist/cdn/carousel/snice-carousel.js +2 -2
  60. package/dist/cdn/carousel/snice-carousel.min.js +2 -2
  61. package/dist/cdn/cart/snice-cart.js +3 -3
  62. package/dist/cdn/cart/snice-cart.js.map +1 -1
  63. package/dist/cdn/cart/snice-cart.min.js +3 -3
  64. package/dist/cdn/cart/snice-cart.min.js.map +1 -1
  65. package/dist/cdn/chart/snice-chart.js +2 -2
  66. package/dist/cdn/chart/snice-chart.min.js +2 -2
  67. package/dist/cdn/chat/snice-chat.js +9 -5
  68. package/dist/cdn/chat/snice-chat.js.map +1 -1
  69. package/dist/cdn/chat/snice-chat.min.js +3 -3
  70. package/dist/cdn/chat/snice-chat.min.js.map +1 -1
  71. package/dist/cdn/checkbox/snice-checkbox.js +2 -2
  72. package/dist/cdn/checkbox/snice-checkbox.min.js +2 -2
  73. package/dist/cdn/chip/README.md +1 -1
  74. package/dist/cdn/chip/snice-chip.js +8 -4
  75. package/dist/cdn/chip/snice-chip.js.map +1 -1
  76. package/dist/cdn/chip/snice-chip.min.js +2 -2
  77. package/dist/cdn/chip/snice-chip.min.js.map +1 -1
  78. package/dist/cdn/code-block/snice-code-block.js +2 -2
  79. package/dist/cdn/code-block/snice-code-block.min.js +2 -2
  80. package/dist/cdn/color-display/snice-color-display.js +3 -3
  81. package/dist/cdn/color-display/snice-color-display.js.map +1 -1
  82. package/dist/cdn/color-display/snice-color-display.min.js +4 -4
  83. package/dist/cdn/color-display/snice-color-display.min.js.map +1 -1
  84. package/dist/cdn/color-picker/snice-color-picker.js +2 -2
  85. package/dist/cdn/color-picker/snice-color-picker.min.js +2 -2
  86. package/dist/cdn/command-palette/README.md +1 -1
  87. package/dist/cdn/command-palette/snice-command-palette.js +2 -2
  88. package/dist/cdn/command-palette/snice-command-palette.min.js +2 -2
  89. package/dist/cdn/comments/snice-comments.js +3 -3
  90. package/dist/cdn/comments/snice-comments.js.map +1 -1
  91. package/dist/cdn/comments/snice-comments.min.js +3 -3
  92. package/dist/cdn/comments/snice-comments.min.js.map +1 -1
  93. package/dist/cdn/countdown/README.md +1 -1
  94. package/dist/cdn/countdown/snice-countdown.js +2 -2
  95. package/dist/cdn/countdown/snice-countdown.min.js +2 -2
  96. package/dist/cdn/cropper/snice-cropper.js +2 -2
  97. package/dist/cdn/cropper/snice-cropper.min.js +2 -2
  98. package/dist/cdn/data-card/snice-data-card.js +3 -3
  99. package/dist/cdn/data-card/snice-data-card.js.map +1 -1
  100. package/dist/cdn/data-card/snice-data-card.min.js +3 -3
  101. package/dist/cdn/data-card/snice-data-card.min.js.map +1 -1
  102. package/dist/cdn/date-picker/snice-date-picker.js +2 -2
  103. package/dist/cdn/date-picker/snice-date-picker.min.js +2 -2
  104. package/dist/cdn/date-time-picker/README.md +2 -2
  105. package/dist/cdn/date-time-picker/snice-date-time-picker.js +2 -2
  106. package/dist/cdn/date-time-picker/snice-date-time-picker.min.js +2 -2
  107. package/dist/cdn/diff/snice-diff.js +2 -2
  108. package/dist/cdn/diff/snice-diff.min.js +2 -2
  109. package/dist/cdn/divider/snice-divider.js +2 -2
  110. package/dist/cdn/divider/snice-divider.min.js +2 -2
  111. package/dist/cdn/doc/snice-doc.js +2 -2
  112. package/dist/cdn/doc/snice-doc.min.js +2 -2
  113. package/dist/cdn/draw/snice-draw.js +2 -2
  114. package/dist/cdn/draw/snice-draw.min.js +2 -2
  115. package/dist/cdn/drawer/README.md +1 -1
  116. package/dist/cdn/drawer/snice-drawer.js +12 -6
  117. package/dist/cdn/drawer/snice-drawer.js.map +1 -1
  118. package/dist/cdn/drawer/snice-drawer.min.js +4 -4
  119. package/dist/cdn/drawer/snice-drawer.min.js.map +1 -1
  120. package/dist/cdn/empty-state/snice-empty-state.js +9 -5
  121. package/dist/cdn/empty-state/snice-empty-state.js.map +1 -1
  122. package/dist/cdn/empty-state/snice-empty-state.min.js +3 -3
  123. package/dist/cdn/empty-state/snice-empty-state.min.js.map +1 -1
  124. package/dist/cdn/estimate/snice-estimate.js +3 -3
  125. package/dist/cdn/estimate/snice-estimate.js.map +1 -1
  126. package/dist/cdn/estimate/snice-estimate.min.js +3 -3
  127. package/dist/cdn/estimate/snice-estimate.min.js.map +1 -1
  128. package/dist/cdn/file-gallery/snice-file-gallery.js +2 -2
  129. package/dist/cdn/file-gallery/snice-file-gallery.min.js +2 -2
  130. package/dist/cdn/file-upload/snice-file-upload.js +3 -3
  131. package/dist/cdn/file-upload/snice-file-upload.js.map +1 -1
  132. package/dist/cdn/file-upload/snice-file-upload.min.js +3 -3
  133. package/dist/cdn/file-upload/snice-file-upload.min.js.map +1 -1
  134. package/dist/cdn/flip-card/snice-flip-card.js +2 -2
  135. package/dist/cdn/flip-card/snice-flip-card.min.js +2 -2
  136. package/dist/cdn/flow/README.md +1 -1
  137. package/dist/cdn/flow/snice-flow.js +2 -2
  138. package/dist/cdn/flow/snice-flow.min.js +2 -2
  139. package/dist/cdn/form-layout/snice-form-layout.js +3 -3
  140. package/dist/cdn/form-layout/snice-form-layout.js.map +1 -1
  141. package/dist/cdn/form-layout/snice-form-layout.min.js +3 -3
  142. package/dist/cdn/form-layout/snice-form-layout.min.js.map +1 -1
  143. package/dist/cdn/funnel/README.md +2 -2
  144. package/dist/cdn/funnel/snice-funnel.js +2 -2
  145. package/dist/cdn/funnel/snice-funnel.min.js +2 -2
  146. package/dist/cdn/gantt/README.md +1 -1
  147. package/dist/cdn/gantt/snice-gantt.js +2 -2
  148. package/dist/cdn/gantt/snice-gantt.min.js +2 -2
  149. package/dist/cdn/gauge/snice-gauge.js +2 -2
  150. package/dist/cdn/gauge/snice-gauge.min.js +2 -2
  151. package/dist/cdn/heatmap/README.md +1 -1
  152. package/dist/cdn/heatmap/snice-heatmap.js +2 -2
  153. package/dist/cdn/heatmap/snice-heatmap.min.js +2 -2
  154. package/dist/cdn/image/snice-image.js +3 -3
  155. package/dist/cdn/image/snice-image.js.map +1 -1
  156. package/dist/cdn/image/snice-image.min.js +3 -3
  157. package/dist/cdn/image/snice-image.min.js.map +1 -1
  158. package/dist/cdn/input/README.md +1 -1
  159. package/dist/cdn/input/snice-input.js +9 -5
  160. package/dist/cdn/input/snice-input.js.map +1 -1
  161. package/dist/cdn/input/snice-input.min.js +3 -3
  162. package/dist/cdn/input/snice-input.min.js.map +1 -1
  163. package/dist/cdn/invoice/snice-invoice.js +3 -3
  164. package/dist/cdn/invoice/snice-invoice.js.map +1 -1
  165. package/dist/cdn/invoice/snice-invoice.min.js +4 -4
  166. package/dist/cdn/invoice/snice-invoice.min.js.map +1 -1
  167. package/dist/cdn/kanban/snice-kanban.js +2 -2
  168. package/dist/cdn/kanban/snice-kanban.min.js +2 -2
  169. package/dist/cdn/key-value/snice-key-value.js +3 -3
  170. package/dist/cdn/key-value/snice-key-value.js.map +1 -1
  171. package/dist/cdn/key-value/snice-key-value.min.js +3 -3
  172. package/dist/cdn/key-value/snice-key-value.min.js.map +1 -1
  173. package/dist/cdn/kpi/snice-kpi.js +3 -3
  174. package/dist/cdn/kpi/snice-kpi.js.map +1 -1
  175. package/dist/cdn/kpi/snice-kpi.min.js +3 -3
  176. package/dist/cdn/kpi/snice-kpi.min.js.map +1 -1
  177. package/dist/cdn/layout/snice-layout.js +3 -3
  178. package/dist/cdn/layout/snice-layout.js.map +1 -1
  179. package/dist/cdn/layout/snice-layout.min.js +3 -3
  180. package/dist/cdn/layout/snice-layout.min.js.map +1 -1
  181. package/dist/cdn/leaderboard/snice-leaderboard.js +3 -3
  182. package/dist/cdn/leaderboard/snice-leaderboard.js.map +1 -1
  183. package/dist/cdn/leaderboard/snice-leaderboard.min.js +3 -3
  184. package/dist/cdn/leaderboard/snice-leaderboard.min.js.map +1 -1
  185. package/dist/cdn/link/snice-link.js +3 -3
  186. package/dist/cdn/link/snice-link.js.map +1 -1
  187. package/dist/cdn/link/snice-link.min.js +3 -3
  188. package/dist/cdn/link/snice-link.min.js.map +1 -1
  189. package/dist/cdn/link-preview/snice-link-preview.js +3 -3
  190. package/dist/cdn/link-preview/snice-link-preview.js.map +1 -1
  191. package/dist/cdn/link-preview/snice-link-preview.min.js +3 -3
  192. package/dist/cdn/link-preview/snice-link-preview.min.js.map +1 -1
  193. package/dist/cdn/list/snice-list.js +10 -6
  194. package/dist/cdn/list/snice-list.js.map +1 -1
  195. package/dist/cdn/list/snice-list.min.js +4 -4
  196. package/dist/cdn/list/snice-list.min.js.map +1 -1
  197. package/dist/cdn/location/snice-location.js +8 -4
  198. package/dist/cdn/location/snice-location.js.map +1 -1
  199. package/dist/cdn/location/snice-location.min.js +2 -2
  200. package/dist/cdn/location/snice-location.min.js.map +1 -1
  201. package/dist/cdn/login/snice-login.js +8 -4
  202. package/dist/cdn/login/snice-login.js.map +1 -1
  203. package/dist/cdn/login/snice-login.min.js +2 -2
  204. package/dist/cdn/login/snice-login.min.js.map +1 -1
  205. package/dist/cdn/map/README.md +1 -1
  206. package/dist/cdn/map/snice-map.js +2 -2
  207. package/dist/cdn/map/snice-map.min.js +2 -2
  208. package/dist/cdn/markdown/snice-markdown.js +2 -2
  209. package/dist/cdn/markdown/snice-markdown.min.js +2 -2
  210. package/dist/cdn/masonry/snice-masonry.js +2 -2
  211. package/dist/cdn/masonry/snice-masonry.min.js +2 -2
  212. package/dist/cdn/menu/snice-menu.js +2 -2
  213. package/dist/cdn/menu/snice-menu.min.js +2 -2
  214. package/dist/cdn/message-strip/snice-message-strip.js +8 -4
  215. package/dist/cdn/message-strip/snice-message-strip.js.map +1 -1
  216. package/dist/cdn/message-strip/snice-message-strip.min.js +2 -2
  217. package/dist/cdn/message-strip/snice-message-strip.min.js.map +1 -1
  218. package/dist/cdn/metric-table/snice-metric-table.js +3 -3
  219. package/dist/cdn/metric-table/snice-metric-table.js.map +1 -1
  220. package/dist/cdn/metric-table/snice-metric-table.min.js +8 -8
  221. package/dist/cdn/metric-table/snice-metric-table.min.js.map +1 -1
  222. package/dist/cdn/modal/README.md +1 -1
  223. package/dist/cdn/modal/snice-modal.js +2 -2
  224. package/dist/cdn/modal/snice-modal.min.js +2 -2
  225. package/dist/cdn/music-player/snice-music-player.js +2 -2
  226. package/dist/cdn/music-player/snice-music-player.min.js +2 -2
  227. package/dist/cdn/nav/snice-nav.js +3 -3
  228. package/dist/cdn/nav/snice-nav.js.map +1 -1
  229. package/dist/cdn/nav/snice-nav.min.js +3 -3
  230. package/dist/cdn/nav/snice-nav.min.js.map +1 -1
  231. package/dist/cdn/network-graph/snice-network-graph.js +2 -2
  232. package/dist/cdn/network-graph/snice-network-graph.min.js +2 -2
  233. package/dist/cdn/notification-center/snice-notification-center.js +9 -5
  234. package/dist/cdn/notification-center/snice-notification-center.js.map +1 -1
  235. package/dist/cdn/notification-center/snice-notification-center.min.js +3 -3
  236. package/dist/cdn/notification-center/snice-notification-center.min.js.map +1 -1
  237. package/dist/cdn/order-tracker/snice-order-tracker.js +3 -3
  238. package/dist/cdn/order-tracker/snice-order-tracker.js.map +1 -1
  239. package/dist/cdn/order-tracker/snice-order-tracker.min.js +3 -3
  240. package/dist/cdn/order-tracker/snice-order-tracker.min.js.map +1 -1
  241. package/dist/cdn/org-chart/README.md +1 -1
  242. package/dist/cdn/org-chart/snice-org-chart.js +2 -2
  243. package/dist/cdn/org-chart/snice-org-chart.min.js +2 -2
  244. package/dist/cdn/pagination/snice-pagination.js +2 -2
  245. package/dist/cdn/pagination/snice-pagination.min.js +2 -2
  246. package/dist/cdn/paint/snice-paint.js +2 -2
  247. package/dist/cdn/paint/snice-paint.min.js +2 -2
  248. package/dist/cdn/pdf-viewer/snice-pdf-viewer.js +2 -2
  249. package/dist/cdn/pdf-viewer/snice-pdf-viewer.min.js +2 -2
  250. package/dist/cdn/permission-matrix/snice-permission-matrix.js +3 -3
  251. package/dist/cdn/permission-matrix/snice-permission-matrix.js.map +1 -1
  252. package/dist/cdn/permission-matrix/snice-permission-matrix.min.js +12 -12
  253. package/dist/cdn/permission-matrix/snice-permission-matrix.min.js.map +1 -1
  254. package/dist/cdn/podcast-player/snice-podcast-player.js +2 -2
  255. package/dist/cdn/podcast-player/snice-podcast-player.min.js +2 -2
  256. package/dist/cdn/pricing-table/README.md +1 -1
  257. package/dist/cdn/pricing-table/snice-pricing-table.js +3 -3
  258. package/dist/cdn/pricing-table/snice-pricing-table.js.map +1 -1
  259. package/dist/cdn/pricing-table/snice-pricing-table.min.js +3 -3
  260. package/dist/cdn/pricing-table/snice-pricing-table.min.js.map +1 -1
  261. package/dist/cdn/product-card/snice-product-card.js +3 -3
  262. package/dist/cdn/product-card/snice-product-card.js.map +1 -1
  263. package/dist/cdn/product-card/snice-product-card.min.js +3 -3
  264. package/dist/cdn/product-card/snice-product-card.min.js.map +1 -1
  265. package/dist/cdn/progress/README.md +1 -1
  266. package/dist/cdn/progress/snice-progress.js +2 -2
  267. package/dist/cdn/progress/snice-progress.min.js +2 -2
  268. package/dist/cdn/progress-ring/snice-progress-ring.js +2 -2
  269. package/dist/cdn/progress-ring/snice-progress-ring.min.js +2 -2
  270. package/dist/cdn/qr-code/snice-qr-code.js +2 -2
  271. package/dist/cdn/qr-code/snice-qr-code.min.js +2 -2
  272. package/dist/cdn/qr-reader/README.md +1 -1
  273. package/dist/cdn/qr-reader/snice-qr-reader.js +2 -2
  274. package/dist/cdn/qr-reader/snice-qr-reader.min.js +2 -2
  275. package/dist/cdn/radio/snice-radio.js +3 -3
  276. package/dist/cdn/radio/snice-radio.js.map +1 -1
  277. package/dist/cdn/radio/snice-radio.min.js +3 -3
  278. package/dist/cdn/radio/snice-radio.min.js.map +1 -1
  279. package/dist/cdn/range-slider/snice-range-slider.js +2 -2
  280. package/dist/cdn/range-slider/snice-range-slider.min.js +2 -2
  281. package/dist/cdn/rating/snice-rating.js +2 -2
  282. package/dist/cdn/rating/snice-rating.min.js +2 -2
  283. package/dist/cdn/receipt/snice-receipt.js +3 -3
  284. package/dist/cdn/receipt/snice-receipt.js.map +1 -1
  285. package/dist/cdn/receipt/snice-receipt.min.js +7 -7
  286. package/dist/cdn/receipt/snice-receipt.min.js.map +1 -1
  287. package/dist/cdn/recipe/snice-recipe.js +3 -3
  288. package/dist/cdn/recipe/snice-recipe.js.map +1 -1
  289. package/dist/cdn/recipe/snice-recipe.min.js +3 -3
  290. package/dist/cdn/recipe/snice-recipe.min.js.map +1 -1
  291. package/dist/cdn/runtime/README.md +1 -1
  292. package/dist/cdn/runtime/snice-runtime.esm.js +8 -8
  293. package/dist/cdn/runtime/snice-runtime.esm.js.map +1 -1
  294. package/dist/cdn/runtime/snice-runtime.esm.min.js +8 -8
  295. package/dist/cdn/runtime/snice-runtime.esm.min.js.map +1 -1
  296. package/dist/cdn/runtime/snice-runtime.js +8 -8
  297. package/dist/cdn/runtime/snice-runtime.js.map +1 -1
  298. package/dist/cdn/runtime/snice-runtime.min.js +8 -8
  299. package/dist/cdn/runtime/snice-runtime.min.js.map +1 -1
  300. package/dist/cdn/sankey/README.md +1 -1
  301. package/dist/cdn/sankey/snice-sankey.js +2 -2
  302. package/dist/cdn/sankey/snice-sankey.min.js +2 -2
  303. package/dist/cdn/segmented-control/snice-segmented-control.js +2 -2
  304. package/dist/cdn/segmented-control/snice-segmented-control.min.js +2 -2
  305. package/dist/cdn/select/snice-select.js +2 -2
  306. package/dist/cdn/select/snice-select.min.js +2 -2
  307. package/dist/cdn/skeleton/snice-skeleton.js +2 -2
  308. package/dist/cdn/skeleton/snice-skeleton.min.js +2 -2
  309. package/dist/cdn/slider/README.md +1 -1
  310. package/dist/cdn/slider/snice-slider.js +2 -2
  311. package/dist/cdn/slider/snice-slider.min.js +2 -2
  312. package/dist/cdn/sortable/README.md +1 -1
  313. package/dist/cdn/sortable/snice-sortable.js +2 -2
  314. package/dist/cdn/sortable/snice-sortable.min.js +2 -2
  315. package/dist/cdn/sparkline/README.md +1 -1
  316. package/dist/cdn/sparkline/snice-sparkline.js +2 -2
  317. package/dist/cdn/sparkline/snice-sparkline.min.js +2 -2
  318. package/dist/cdn/spinner/README.md +2 -2
  319. package/dist/cdn/spinner/snice-spinner.js +2 -2
  320. package/dist/cdn/spinner/snice-spinner.min.js +2 -2
  321. package/dist/cdn/split-button/snice-split-button.js +2 -2
  322. package/dist/cdn/split-button/snice-split-button.min.js +2 -2
  323. package/dist/cdn/split-pane/snice-split-pane.js +2 -2
  324. package/dist/cdn/split-pane/snice-split-pane.min.js +2 -2
  325. package/dist/cdn/spotlight/snice-spotlight.js +2 -2
  326. package/dist/cdn/spotlight/snice-spotlight.min.js +2 -2
  327. package/dist/cdn/spreadsheet/README.md +2 -2
  328. package/dist/cdn/spreadsheet/snice-spreadsheet.js +2 -2
  329. package/dist/cdn/spreadsheet/snice-spreadsheet.min.js +2 -2
  330. package/dist/cdn/stat-group/snice-stat-group.js +3 -3
  331. package/dist/cdn/stat-group/snice-stat-group.js.map +1 -1
  332. package/dist/cdn/stat-group/snice-stat-group.min.js +4 -4
  333. package/dist/cdn/stat-group/snice-stat-group.min.js.map +1 -1
  334. package/dist/cdn/step-input/snice-step-input.js +3 -3
  335. package/dist/cdn/step-input/snice-step-input.js.map +1 -1
  336. package/dist/cdn/step-input/snice-step-input.min.js +3 -3
  337. package/dist/cdn/step-input/snice-step-input.min.js.map +1 -1
  338. package/dist/cdn/stepper/README.md +1 -1
  339. package/dist/cdn/stepper/snice-stepper.js +3 -3
  340. package/dist/cdn/stepper/snice-stepper.js.map +1 -1
  341. package/dist/cdn/stepper/snice-stepper.min.js +4 -4
  342. package/dist/cdn/stepper/snice-stepper.min.js.map +1 -1
  343. package/dist/cdn/switch/snice-switch.js +2 -2
  344. package/dist/cdn/switch/snice-switch.min.js +2 -2
  345. package/dist/cdn/table/README.md +1 -1
  346. package/dist/cdn/table/snice-table.js +9 -5
  347. package/dist/cdn/table/snice-table.js.map +1 -1
  348. package/dist/cdn/table/snice-table.min.js +3 -3
  349. package/dist/cdn/table/snice-table.min.js.map +1 -1
  350. package/dist/cdn/tabs/README.md +1 -1
  351. package/dist/cdn/tabs/snice-tabs.js +2 -2
  352. package/dist/cdn/tabs/snice-tabs.min.js +2 -2
  353. package/dist/cdn/tag/snice-tag.js +2 -2
  354. package/dist/cdn/tag/snice-tag.min.js +2 -2
  355. package/dist/cdn/tag-input/snice-tag-input.js +3 -3
  356. package/dist/cdn/tag-input/snice-tag-input.js.map +1 -1
  357. package/dist/cdn/tag-input/snice-tag-input.min.js +11 -11
  358. package/dist/cdn/tag-input/snice-tag-input.min.js.map +1 -1
  359. package/dist/cdn/terminal/snice-terminal.js +2 -2
  360. package/dist/cdn/terminal/snice-terminal.min.js +2 -2
  361. package/dist/cdn/testimonial/snice-testimonial.js +2 -2
  362. package/dist/cdn/testimonial/snice-testimonial.min.js +2 -2
  363. package/dist/cdn/textarea/README.md +1 -1
  364. package/dist/cdn/textarea/snice-textarea.js +2 -2
  365. package/dist/cdn/textarea/snice-textarea.min.js +2 -2
  366. package/dist/cdn/time-picker/snice-time-picker.js +2 -2
  367. package/dist/cdn/time-picker/snice-time-picker.min.js +2 -2
  368. package/dist/cdn/time-range-picker/snice-time-range-picker.js +3 -3
  369. package/dist/cdn/time-range-picker/snice-time-range-picker.js.map +1 -1
  370. package/dist/cdn/time-range-picker/snice-time-range-picker.min.js +3 -3
  371. package/dist/cdn/time-range-picker/snice-time-range-picker.min.js.map +1 -1
  372. package/dist/cdn/timeline/snice-timeline.js +3 -3
  373. package/dist/cdn/timeline/snice-timeline.js.map +1 -1
  374. package/dist/cdn/timeline/snice-timeline.min.js +4 -4
  375. package/dist/cdn/timeline/snice-timeline.min.js.map +1 -1
  376. package/dist/cdn/timer/snice-timer.js +3 -3
  377. package/dist/cdn/timer/snice-timer.js.map +1 -1
  378. package/dist/cdn/timer/snice-timer.min.js +3 -3
  379. package/dist/cdn/timer/snice-timer.min.js.map +1 -1
  380. package/dist/cdn/toast/snice-toast.js +2 -2
  381. package/dist/cdn/toast/snice-toast.min.js +2 -2
  382. package/dist/cdn/tooltip/snice-tooltip.js +2 -2
  383. package/dist/cdn/tooltip/snice-tooltip.min.js +2 -2
  384. package/dist/cdn/tree/README.md +2 -2
  385. package/dist/cdn/tree/snice-tree.js +2 -2
  386. package/dist/cdn/tree/snice-tree.min.js +2 -2
  387. package/dist/cdn/treemap/snice-treemap.js +2 -2
  388. package/dist/cdn/treemap/snice-treemap.min.js +2 -2
  389. package/dist/cdn/user-card/snice-user-card.js +3 -3
  390. package/dist/cdn/user-card/snice-user-card.js.map +1 -1
  391. package/dist/cdn/user-card/snice-user-card.min.js +7 -7
  392. package/dist/cdn/user-card/snice-user-card.min.js.map +1 -1
  393. package/dist/cdn/video-player/snice-video-player.js +2 -2
  394. package/dist/cdn/video-player/snice-video-player.min.js +2 -2
  395. package/dist/cdn/virtual-scroller/README.md +1 -1
  396. package/dist/cdn/virtual-scroller/snice-virtual-scroller.js +2 -2
  397. package/dist/cdn/virtual-scroller/snice-virtual-scroller.min.js +2 -2
  398. package/dist/cdn/waterfall/README.md +1 -1
  399. package/dist/cdn/waterfall/snice-waterfall.js +2 -2
  400. package/dist/cdn/waterfall/snice-waterfall.min.js +2 -2
  401. package/dist/cdn/weather/snice-weather.js +2 -2
  402. package/dist/cdn/weather/snice-weather.min.js +2 -2
  403. package/dist/cdn/work-order/snice-work-order.js +3 -3
  404. package/dist/cdn/work-order/snice-work-order.js.map +1 -1
  405. package/dist/cdn/work-order/snice-work-order.min.js +3 -3
  406. package/dist/cdn/work-order/snice-work-order.min.js.map +1 -1
  407. package/dist/components/activity-feed/snice-activity-feed.js +1 -1
  408. package/dist/components/activity-feed/snice-activity-feed.js.map +1 -1
  409. package/dist/components/approval-flow/snice-approval-flow.js +1 -1
  410. package/dist/components/approval-flow/snice-approval-flow.js.map +1 -1
  411. package/dist/components/avatar-group/snice-avatar-group.js +1 -1
  412. package/dist/components/avatar-group/snice-avatar-group.js.map +1 -1
  413. package/dist/components/banner/snice-banner.js +1 -1
  414. package/dist/components/banner/snice-banner.js.map +1 -1
  415. package/dist/components/cart/snice-cart.js +1 -1
  416. package/dist/components/cart/snice-cart.js.map +1 -1
  417. package/dist/components/color-display/snice-color-display.js +1 -1
  418. package/dist/components/color-display/snice-color-display.js.map +1 -1
  419. package/dist/components/comments/snice-comments.js +1 -1
  420. package/dist/components/comments/snice-comments.js.map +1 -1
  421. package/dist/components/data-card/snice-data-card.js +1 -1
  422. package/dist/components/data-card/snice-data-card.js.map +1 -1
  423. package/dist/components/drawer/snice-drawer.js +10 -4
  424. package/dist/components/drawer/snice-drawer.js.map +1 -1
  425. package/dist/components/empty-state/snice-empty-state.js +1 -1
  426. package/dist/components/empty-state/snice-empty-state.js.map +1 -1
  427. package/dist/components/estimate/snice-estimate.js +1 -1
  428. package/dist/components/estimate/snice-estimate.js.map +1 -1
  429. package/dist/components/file-upload/snice-file-upload.js +1 -1
  430. package/dist/components/file-upload/snice-file-upload.js.map +1 -1
  431. package/dist/components/form-layout/snice-form-layout.js +1 -1
  432. package/dist/components/form-layout/snice-form-layout.js.map +1 -1
  433. package/dist/components/image/snice-image.js +1 -1
  434. package/dist/components/image/snice-image.js.map +1 -1
  435. package/dist/components/input/snice-input.js +1 -1
  436. package/dist/components/input/snice-input.js.map +1 -1
  437. package/dist/components/invoice/snice-invoice.js +1 -1
  438. package/dist/components/invoice/snice-invoice.js.map +1 -1
  439. package/dist/components/key-value/snice-key-value.js +1 -1
  440. package/dist/components/key-value/snice-key-value.js.map +1 -1
  441. package/dist/components/kpi/snice-kpi.js +1 -1
  442. package/dist/components/kpi/snice-kpi.js.map +1 -1
  443. package/dist/components/leaderboard/snice-leaderboard.js +1 -1
  444. package/dist/components/leaderboard/snice-leaderboard.js.map +1 -1
  445. package/dist/components/link/snice-link.js +1 -1
  446. package/dist/components/link/snice-link.js.map +1 -1
  447. package/dist/components/link-preview/snice-link-preview.js +1 -1
  448. package/dist/components/link-preview/snice-link-preview.js.map +1 -1
  449. package/dist/components/list/snice-list-item.js +1 -1
  450. package/dist/components/list/snice-list-item.js.map +1 -1
  451. package/dist/components/metric-table/snice-metric-table.js +1 -1
  452. package/dist/components/metric-table/snice-metric-table.js.map +1 -1
  453. package/dist/components/nav/snice-nav.js +1 -1
  454. package/dist/components/nav/snice-nav.js.map +1 -1
  455. package/dist/components/order-tracker/snice-order-tracker.js +1 -1
  456. package/dist/components/order-tracker/snice-order-tracker.js.map +1 -1
  457. package/dist/components/permission-matrix/snice-permission-matrix.js +1 -1
  458. package/dist/components/permission-matrix/snice-permission-matrix.js.map +1 -1
  459. package/dist/components/pricing-table/snice-pricing-table.js +1 -1
  460. package/dist/components/pricing-table/snice-pricing-table.js.map +1 -1
  461. package/dist/components/product-card/snice-product-card.js +1 -1
  462. package/dist/components/product-card/snice-product-card.js.map +1 -1
  463. package/dist/components/radio/snice-radio.js +1 -1
  464. package/dist/components/radio/snice-radio.js.map +1 -1
  465. package/dist/components/receipt/snice-receipt.js +1 -1
  466. package/dist/components/receipt/snice-receipt.js.map +1 -1
  467. package/dist/components/recipe/snice-recipe.js +1 -1
  468. package/dist/components/recipe/snice-recipe.js.map +1 -1
  469. package/dist/components/stat-group/snice-stat-group.js +1 -1
  470. package/dist/components/stat-group/snice-stat-group.js.map +1 -1
  471. package/dist/components/step-input/snice-step-input.js +1 -1
  472. package/dist/components/step-input/snice-step-input.js.map +1 -1
  473. package/dist/components/stepper/snice-stepper.js +1 -1
  474. package/dist/components/stepper/snice-stepper.js.map +1 -1
  475. package/dist/components/tag-input/snice-tag-input.js +1 -1
  476. package/dist/components/tag-input/snice-tag-input.js.map +1 -1
  477. package/dist/components/time-range-picker/snice-time-range-picker.js +1 -1
  478. package/dist/components/time-range-picker/snice-time-range-picker.js.map +1 -1
  479. package/dist/components/timeline/snice-timeline.js +1 -1
  480. package/dist/components/timeline/snice-timeline.js.map +1 -1
  481. package/dist/components/timer/snice-timer.js +1 -1
  482. package/dist/components/timer/snice-timer.js.map +1 -1
  483. package/dist/components/user-card/snice-user-card.js +1 -1
  484. package/dist/components/user-card/snice-user-card.js.map +1 -1
  485. package/dist/components/utils.d.ts +6 -2
  486. package/dist/components/utils.js +6 -2
  487. package/dist/components/utils.js.map +1 -1
  488. package/dist/components/work-order/snice-work-order.js +1 -1
  489. package/dist/components/work-order/snice-work-order.js.map +1 -1
  490. package/dist/index.cjs +2 -2
  491. package/dist/index.esm.js +2 -2
  492. package/dist/index.iife.js +2 -2
  493. package/dist/symbols.cjs +2 -2
  494. package/dist/symbols.esm.js +2 -2
  495. package/dist/transitions.cjs +2 -2
  496. package/dist/transitions.esm.js +2 -2
  497. package/docs/ai/components/alert.md +10 -9
  498. package/docs/ai/components/banner.md +8 -7
  499. package/docs/ai/components/breadcrumbs.md +4 -3
  500. package/docs/ai/components/button.md +20 -16
  501. package/docs/ai/components/chip.md +9 -8
  502. package/docs/ai/components/empty-state.md +9 -11
  503. package/docs/ai/components/input.md +16 -18
  504. package/docs/ai/components/location.md +1 -1
  505. package/docs/components/alert.md +8 -6
  506. package/docs/components/breadcrumbs.md +2 -2
  507. package/docs/components/button.md +58 -33
  508. package/docs/components/chip.md +8 -6
  509. package/docs/components/empty-state.md +1 -1
  510. package/docs/components/input.md +24 -10
  511. package/docs/components/location.md +1 -1
  512. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"file":"snice-table.min.js","sources":["../../../node_modules/tslib/tslib.es6.mjs","../../components/utils.js","../../components/input/snice-input.js","../../components/select/snice-option.js","../../components/select/snice-select.js","../../components/snice-cell-D9dSe0d4.js","../../components/table/snice-cell.js","../../components/table/snice-cell-text.js","../../components/table/snice-cell-number.js","../../components/table/snice-cell-date.js","../../components/table/snice-cell-boolean.js","../../components/table/snice-rating.js","../../components/table/snice-cell-rating.js","../../components/table/snice-progress.js","../../components/table/snice-cell-progress.js","../../components/table/snice-cell-duration.js","../../components/table/snice-cell-filesize.js","../../components/table/snice-cell-sparkline.js","../../components/table/snice-column.js","../../components/table/snice-cell-link.js","../../components/table/snice-cell-actions.js","../../components/table/snice-cell-tag.js","../../components/table/snice-cell-image.js","../../components/table/snice-cell-email.js","../../components/table/snice-cell-phone.js","../../components/table/snice-cell-status.js","../../components/table/snice-cell-color.js","../../components/table/snice-cell-json.js","../../components/table/snice-cell-currency.js","../../components/table/snice-cell-percentage.js","../../components/table/snice-cell-location.js","../../components/table/snice-row.js","../../components/table/snice-table.js"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","import { html } from 'snice';\n\n/**\n * Detects icon type and returns appropriate template\n *\n * Scheme overrides:\n * - img://path -> forces <img> element\n * - text://content -> forces text content\n *\n * Auto-detection (when no scheme):\n * - URLs (http://, https://, /, ./, ../, data:) -> <img>\n * - Image extensions (svg, png, jpg, jpeg, jfif, pjp, gif, webp, avif, jxl,\n * ico, cur, bmp, tif, tiff, heic, heif, apng) -> <img>\n * - Everything else -> span with text (emoji, font ligatures)\n *\n * Examples:\n * - \"/path/icon.svg\" -> <img>\n * - \"icon.png\" -> <img>\n * - \"img://filename\" -> <img> (forced)\n * - \"home\" -> <span> text (Material Symbols ligature)\n * - \"🏠\" -> <span> text (emoji)\n * - \"text:///not/a/path\" -> <span> text (forced)\n */\nfunction renderIcon(icon, className = 'icon') {\n if (!icon)\n return html ``;\n // Check for scheme overrides first\n if (icon.startsWith('img://')) {\n const src = icon.slice(6);\n return html `<img class=\"${className}\" src=\"${src}\" alt=\"\" part=\"icon\" />`;\n }\n if (icon.startsWith('text://')) {\n const content = icon.slice(7);\n return html `<span class=\"${className}\" part=\"icon\">${content}</span>`;\n }\n // Auto-detect: Check if it's a URL pattern\n if (/^(https?:\\/\\/|\\/|\\.\\/|\\.\\.\\/|data:)/.test(icon)) {\n return html `<img class=\"${className}\" src=\"${icon}\" alt=\"\" part=\"icon\" />`;\n }\n // Auto-detect: Check if it's a file with image extension\n // Must have at least one char before the dot, and no unsupported protocol prefix\n // Covers: SVG, PNG, JPEG variants, GIF, WebP, AVIF, JPEG XL, ICO, BMP, TIFF, HEIC/HEIF, APNG\n if (/^[^:]*\\w\\.(svg|png|jpe?g|jfif|pjp|gif|webp|avif|jxl|ico|cur|bmp|tiff?|heic|heif|apng)$/i.test(icon)) {\n return html `<img class=\"${className}\" src=\"${icon}\" alt=\"\" part=\"icon\" />`;\n }\n // Default: text content (emoji, font icon ligature names)\n // All content is escaped - no HTML injection possible\n return html `<span class=\"${className}\" part=\"icon\">${icon}</span>`;\n}\n\nexport { renderIcon };\n//# sourceMappingURL=utils.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, dispatch, html, css } from 'snice';\nimport { renderIcon } from '../utils.js';\n\nvar cssContent = \":host{display:inline-block;width:100%;max-width:100%;box-sizing:border-box;font-family:var(--snice-font-family);color-scheme:light dark}.input-wrapper{position:relative;width:100%;max-width:100%;height:100%;box-sizing:border-box}:host([align]) .input-wrapper{display:flex;flex-direction:column}:host([align=top]) .input-wrapper{justify-content:flex-start}:host([align=center]) .input-wrapper{justify-content:center}:host([align=bottom]) .input-wrapper{justify-content:flex-end}.input-container{position:relative;display:flex;align-items:center;width:100%;max-width:100%;box-sizing:border-box;transition:all var(--snice-transition-fast) ease}:host([stretch]) .input-wrapper{display:flex;flex-direction:column}:host([stretch]) .input-container{flex:1}:host([stretch]) .input{height:100%}.input{flex:1;min-width:0;box-sizing:border-box;font-family:inherit;font-size:var(--snice-font-size-md);background:var(--snice-color-background-input,rgb(248 247 245));color:var(--snice-color-text);border:1px solid var(--snice-color-border);border-radius:var(--snice-border-radius-md);box-shadow:var(--snice-shadow-inset-sm);transition:all var(--snice-transition-fast) ease;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.input:focus{border-color:var(--snice-color-primary);box-shadow:0 0 0 var(--snice-focus-ring-width) var(--snice-focus-ring-color),var(--snice-shadow-sm)}.input:disabled{background:var(--snice-color-background-secondary);color:var(--snice-color-text-secondary);cursor:not-allowed;opacity:.6}.input::placeholder{color:var(--snice-color-text-secondary);opacity:.7}.input--small{padding:.375rem .625rem;font-size:var(--snice-font-size-sm);min-height:2rem}.input--medium{padding:.5rem .75rem;font-size:var(--snice-font-size-md);min-height:2.5rem}.input--large{padding:.625rem .875rem;font-size:var(--snice-font-size-lg);min-height:3rem}.input--outlined{background:var(--snice-color-background-input,rgb(248 247 245));border:1px solid var(--snice-color-border)}.input--filled{background:var(--snice-color-background-secondary);border:1px solid transparent;border-bottom-color:var(--snice-color-border);border-radius:var(--snice-border-radius-md) var(--snice-border-radius-md) 0 0}.input--filled:focus{background:var(--snice-color-background-hover);border-bottom-color:var(--snice-color-primary)}.input--underlined{background:0 0;border:none;border-bottom:1px solid var(--snice-color-border);border-radius:0;padding-left:0;padding-right:0}.input--underlined:focus{border-bottom-color:var(--snice-color-primary);box-shadow:none}.input--invalid{border-color:var(--snice-color-danger)}.input--invalid:focus{border-color:var(--snice-color-danger);box-shadow:0 0 0 var(--snice-focus-ring-width) var(--snice-color-danger-alpha,hsl(var(--snice-color-red-500) / .4)),var(--snice-shadow-sm)}.input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7}.input::-webkit-calendar-picker-indicator:hover{opacity:1}.input--with-prefix-icon{padding-left:2.25rem}.input--clearable,.input--with-suffix-icon{padding-right:2.25rem}.input--with-suffix-icon.input--clearable{padding-right:3.75rem}.label{display:block;margin-bottom:.25rem;font-size:var(--snice-font-size-sm);font-weight:500;line-height:var(--snice-line-height-normal, 1.5);color:var(--snice-color-text);text-align:left}:host([label-align=center]) .label{text-align:center}:host([label-align=right]) .label{text-align:right}.label--required::after{content:' *';color:var(--snice-color-danger)}.error-text,.helper-text{display:block;margin-top:.25rem;font-size:var(--snice-font-size-xs)}.helper-text{color:var(--snice-color-text-secondary)}.error-text{color:var(--snice-color-danger)}.icon-slot{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;color:var(--snice-color-text-secondary);pointer-events:none;opacity:.7}.icon-slot:empty{display:none}.icon-slot--prefix{left:.625rem}.icon-slot--suffix{right:.625rem}.icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;color:var(--snice-color-text-secondary);pointer-events:none}.icon-slot ::slotted(*){display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;font-size:1.25rem;line-height:1}.icon-slot ::slotted(svg){width:1.25rem;height:1.25rem}.icon-slot ::slotted(img){width:1.25rem;height:1.25rem;object-fit:contain}.clear-button{position:absolute;right:.5rem;display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:.25rem;background:0 0;border:none;border-radius:var(--snice-border-radius-sm);color:var(--snice-color-text-secondary);cursor:pointer;transition:all var(--snice-transition-fast) ease;opacity:0;visibility:hidden}.clear-button:hover{background:var(--snice-color-background-hover);color:var(--snice-color-text)}.input-container:hover .clear-button--visible,.input:focus~.clear-button--visible{opacity:1;visibility:visible}.clear-button--with-suffix{right:2rem}.password-toggle{position:absolute;right:.5rem;display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:.25rem;background:0 0;border:none;border-radius:var(--snice-border-radius-sm);color:var(--snice-color-text-secondary);cursor:pointer;transition:all var(--snice-transition-fast) ease}.password-toggle:hover{background:var(--snice-color-background-hover);color:var(--snice-color-text)}.input[type=number]::-webkit-inner-spin-button,.input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input[type=number]{-moz-appearance:textfield}.input[type=search]::-webkit-search-cancel-button,.input[type=search]::-webkit-search-decoration,.input[type=search]::-webkit-search-results-button,.input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.input-container:focus-within{z-index:1}.input--loading{cursor:wait}.spinner{position:absolute;right:.75rem;width:1em;height:1em;pointer-events:none}.input--with-suffix-icon .spinner{right:2.5rem}.spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}\";\n\nlet SniceInput = (() => {\n let _classDecorators = [element('snice-input', { formAssociated: true })];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _size_decorators;\n let _size_initializers = [];\n let _size_extraInitializers = [];\n let _variant_decorators;\n let _variant_initializers = [];\n let _variant_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _placeholder_decorators;\n let _placeholder_initializers = [];\n let _placeholder_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _helperText_decorators;\n let _helperText_initializers = [];\n let _helperText_extraInitializers = [];\n let _errorText_decorators;\n let _errorText_initializers = [];\n let _errorText_extraInitializers = [];\n let _disabled_decorators;\n let _disabled_initializers = [];\n let _disabled_extraInitializers = [];\n let _readonly_decorators;\n let _readonly_initializers = [];\n let _readonly_extraInitializers = [];\n let _loading_decorators;\n let _loading_initializers = [];\n let _loading_extraInitializers = [];\n let _required_decorators;\n let _required_initializers = [];\n let _required_extraInitializers = [];\n let _invalid_decorators;\n let _invalid_initializers = [];\n let _invalid_extraInitializers = [];\n let _clearable_decorators;\n let _clearable_initializers = [];\n let _clearable_extraInitializers = [];\n let _password_decorators;\n let _password_initializers = [];\n let _password_extraInitializers = [];\n let _min_decorators;\n let _min_initializers = [];\n let _min_extraInitializers = [];\n let _max_decorators;\n let _max_initializers = [];\n let _max_extraInitializers = [];\n let _step_decorators;\n let _step_initializers = [];\n let _step_extraInitializers = [];\n let _pattern_decorators;\n let _pattern_initializers = [];\n let _pattern_extraInitializers = [];\n let _maxlength_decorators;\n let _maxlength_initializers = [];\n let _maxlength_extraInitializers = [];\n let _minlength_decorators;\n let _minlength_initializers = [];\n let _minlength_extraInitializers = [];\n let _autocomplete_decorators;\n let _autocomplete_initializers = [];\n let _autocomplete_extraInitializers = [];\n let _name_decorators;\n let _name_initializers = [];\n let _name_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _labelAlign_decorators;\n let _labelAlign_initializers = [];\n let _labelAlign_extraInitializers = [];\n let _stretch_decorators;\n let _stretch_initializers = [];\n let _stretch_extraInitializers = [];\n let _prefixIcon_decorators;\n let _prefixIcon_initializers = [];\n let _prefixIcon_extraInitializers = [];\n let _suffixIcon_decorators;\n let _suffixIcon_initializers = [];\n let _suffixIcon_extraInitializers = [];\n let _input_decorators;\n let _input_initializers = [];\n let _input_extraInitializers = [];\n let _clearButton_decorators;\n let _clearButton_initializers = [];\n let _clearButton_extraInitializers = [];\n let _passwordToggle_decorators;\n let _passwordToggle_initializers = [];\n let _passwordToggle_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _handleValueChange_decorators;\n let _handleInvalidChange_decorators;\n let _handleDisabledChange_decorators;\n let _handleLoadingChange_decorators;\n let _handleReadonlyChange_decorators;\n let _handlePlaceholderChange_decorators;\n let _handleMinChange_decorators;\n let _handleMaxChange_decorators;\n let _handleStepChange_decorators;\n let _handleMaxLengthChange_decorators;\n let _handleMinLengthChange_decorators;\n let _handlePatternChange_decorators;\n let _handleTypeChange_decorators;\n let _handleLabelChange_decorators;\n let _dispatchInputEvent_decorators;\n let _dispatchChangeEvent_decorators;\n let _dispatchFocusEvent_decorators;\n let _dispatchBlurEvent_decorators;\n let _dispatchClearEvent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _type_decorators = [property({})];\n _size_decorators = [property({})];\n _variant_decorators = [property({})];\n _value_decorators = [property({})];\n _placeholder_decorators = [property({})];\n _label_decorators = [property({})];\n _helperText_decorators = [property({ attribute: 'helper-text', })];\n _errorText_decorators = [property({ attribute: 'error-text', })];\n _disabled_decorators = [property({ type: Boolean, })];\n _readonly_decorators = [property({ type: Boolean, })];\n _loading_decorators = [property({ type: Boolean, })];\n _required_decorators = [property({ type: Boolean, })];\n _invalid_decorators = [property({ type: Boolean, })];\n _clearable_decorators = [property({ type: Boolean, })];\n _password_decorators = [property({ type: Boolean, })];\n _min_decorators = [property({})];\n _max_decorators = [property({})];\n _step_decorators = [property({})];\n _pattern_decorators = [property({})];\n _maxlength_decorators = [property({ type: Number, })];\n _minlength_decorators = [property({ type: Number, })];\n _autocomplete_decorators = [property({})];\n _name_decorators = [property({})];\n _align_decorators = [property({})];\n _labelAlign_decorators = [property({ attribute: 'label-align', })];\n _stretch_decorators = [property({ type: Boolean, })];\n _prefixIcon_decorators = [property({ attribute: 'prefix-icon', })];\n _suffixIcon_decorators = [property({ attribute: 'suffix-icon', })];\n _input_decorators = [query('.input')];\n _clearButton_decorators = [query('.clear-button')];\n _passwordToggle_decorators = [query('.password-toggle')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _handleValueChange_decorators = [watch('value')];\n _handleInvalidChange_decorators = [watch('invalid')];\n _handleDisabledChange_decorators = [watch('disabled')];\n _handleLoadingChange_decorators = [watch('loading')];\n _handleReadonlyChange_decorators = [watch('readonly')];\n _handlePlaceholderChange_decorators = [watch('placeholder')];\n _handleMinChange_decorators = [watch('min')];\n _handleMaxChange_decorators = [watch('max')];\n _handleStepChange_decorators = [watch('step')];\n _handleMaxLengthChange_decorators = [watch('maxlength')];\n _handleMinLengthChange_decorators = [watch('minlength')];\n _handlePatternChange_decorators = [watch('pattern')];\n _handleTypeChange_decorators = [watch('type')];\n _handleLabelChange_decorators = [watch('label')];\n _dispatchInputEvent_decorators = [dispatch('input-input', { bubbles: true, composed: true })];\n _dispatchChangeEvent_decorators = [dispatch('input-change', { bubbles: true, composed: true })];\n _dispatchFocusEvent_decorators = [dispatch('input-focus', { bubbles: true, composed: true })];\n _dispatchBlurEvent_decorators = [dispatch('input-blur', { bubbles: true, composed: true })];\n _dispatchClearEvent_decorators = [dispatch('input-clear', { bubbles: true, composed: true })];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleValueChange_decorators, { kind: \"method\", name: \"handleValueChange\", static: false, private: false, access: { has: obj => \"handleValueChange\" in obj, get: obj => obj.handleValueChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleInvalidChange_decorators, { kind: \"method\", name: \"handleInvalidChange\", static: false, private: false, access: { has: obj => \"handleInvalidChange\" in obj, get: obj => obj.handleInvalidChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleDisabledChange_decorators, { kind: \"method\", name: \"handleDisabledChange\", static: false, private: false, access: { has: obj => \"handleDisabledChange\" in obj, get: obj => obj.handleDisabledChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleLoadingChange_decorators, { kind: \"method\", name: \"handleLoadingChange\", static: false, private: false, access: { has: obj => \"handleLoadingChange\" in obj, get: obj => obj.handleLoadingChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleReadonlyChange_decorators, { kind: \"method\", name: \"handleReadonlyChange\", static: false, private: false, access: { has: obj => \"handleReadonlyChange\" in obj, get: obj => obj.handleReadonlyChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handlePlaceholderChange_decorators, { kind: \"method\", name: \"handlePlaceholderChange\", static: false, private: false, access: { has: obj => \"handlePlaceholderChange\" in obj, get: obj => obj.handlePlaceholderChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleMinChange_decorators, { kind: \"method\", name: \"handleMinChange\", static: false, private: false, access: { has: obj => \"handleMinChange\" in obj, get: obj => obj.handleMinChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleMaxChange_decorators, { kind: \"method\", name: \"handleMaxChange\", static: false, private: false, access: { has: obj => \"handleMaxChange\" in obj, get: obj => obj.handleMaxChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleStepChange_decorators, { kind: \"method\", name: \"handleStepChange\", static: false, private: false, access: { has: obj => \"handleStepChange\" in obj, get: obj => obj.handleStepChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleMaxLengthChange_decorators, { kind: \"method\", name: \"handleMaxLengthChange\", static: false, private: false, access: { has: obj => \"handleMaxLengthChange\" in obj, get: obj => obj.handleMaxLengthChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleMinLengthChange_decorators, { kind: \"method\", name: \"handleMinLengthChange\", static: false, private: false, access: { has: obj => \"handleMinLengthChange\" in obj, get: obj => obj.handleMinLengthChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handlePatternChange_decorators, { kind: \"method\", name: \"handlePatternChange\", static: false, private: false, access: { has: obj => \"handlePatternChange\" in obj, get: obj => obj.handlePatternChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleTypeChange_decorators, { kind: \"method\", name: \"handleTypeChange\", static: false, private: false, access: { has: obj => \"handleTypeChange\" in obj, get: obj => obj.handleTypeChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleLabelChange_decorators, { kind: \"method\", name: \"handleLabelChange\", static: false, private: false, access: { has: obj => \"handleLabelChange\" in obj, get: obj => obj.handleLabelChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchInputEvent_decorators, { kind: \"method\", name: \"dispatchInputEvent\", static: false, private: false, access: { has: obj => \"dispatchInputEvent\" in obj, get: obj => obj.dispatchInputEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchChangeEvent_decorators, { kind: \"method\", name: \"dispatchChangeEvent\", static: false, private: false, access: { has: obj => \"dispatchChangeEvent\" in obj, get: obj => obj.dispatchChangeEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchFocusEvent_decorators, { kind: \"method\", name: \"dispatchFocusEvent\", static: false, private: false, access: { has: obj => \"dispatchFocusEvent\" in obj, get: obj => obj.dispatchFocusEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchBlurEvent_decorators, { kind: \"method\", name: \"dispatchBlurEvent\", static: false, private: false, access: { has: obj => \"dispatchBlurEvent\" in obj, get: obj => obj.dispatchBlurEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchClearEvent_decorators, { kind: \"method\", name: \"dispatchClearEvent\", static: false, private: false, access: { has: obj => \"dispatchClearEvent\" in obj, get: obj => obj.dispatchClearEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _size_decorators, { kind: \"field\", name: \"size\", static: false, private: false, access: { has: obj => \"size\" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);\n __esDecorate(null, null, _variant_decorators, { kind: \"field\", name: \"variant\", static: false, private: false, access: { has: obj => \"variant\" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _placeholder_decorators, { kind: \"field\", name: \"placeholder\", static: false, private: false, access: { has: obj => \"placeholder\" in obj, get: obj => obj.placeholder, set: (obj, value) => { obj.placeholder = value; } }, metadata: _metadata }, _placeholder_initializers, _placeholder_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _helperText_decorators, { kind: \"field\", name: \"helperText\", static: false, private: false, access: { has: obj => \"helperText\" in obj, get: obj => obj.helperText, set: (obj, value) => { obj.helperText = value; } }, metadata: _metadata }, _helperText_initializers, _helperText_extraInitializers);\n __esDecorate(null, null, _errorText_decorators, { kind: \"field\", name: \"errorText\", static: false, private: false, access: { has: obj => \"errorText\" in obj, get: obj => obj.errorText, set: (obj, value) => { obj.errorText = value; } }, metadata: _metadata }, _errorText_initializers, _errorText_extraInitializers);\n __esDecorate(null, null, _disabled_decorators, { kind: \"field\", name: \"disabled\", static: false, private: false, access: { has: obj => \"disabled\" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);\n __esDecorate(null, null, _readonly_decorators, { kind: \"field\", name: \"readonly\", static: false, private: false, access: { has: obj => \"readonly\" in obj, get: obj => obj.readonly, set: (obj, value) => { obj.readonly = value; } }, metadata: _metadata }, _readonly_initializers, _readonly_extraInitializers);\n __esDecorate(null, null, _loading_decorators, { kind: \"field\", name: \"loading\", static: false, private: false, access: { has: obj => \"loading\" in obj, get: obj => obj.loading, set: (obj, value) => { obj.loading = value; } }, metadata: _metadata }, _loading_initializers, _loading_extraInitializers);\n __esDecorate(null, null, _required_decorators, { kind: \"field\", name: \"required\", static: false, private: false, access: { has: obj => \"required\" in obj, get: obj => obj.required, set: (obj, value) => { obj.required = value; } }, metadata: _metadata }, _required_initializers, _required_extraInitializers);\n __esDecorate(null, null, _invalid_decorators, { kind: \"field\", name: \"invalid\", static: false, private: false, access: { has: obj => \"invalid\" in obj, get: obj => obj.invalid, set: (obj, value) => { obj.invalid = value; } }, metadata: _metadata }, _invalid_initializers, _invalid_extraInitializers);\n __esDecorate(null, null, _clearable_decorators, { kind: \"field\", name: \"clearable\", static: false, private: false, access: { has: obj => \"clearable\" in obj, get: obj => obj.clearable, set: (obj, value) => { obj.clearable = value; } }, metadata: _metadata }, _clearable_initializers, _clearable_extraInitializers);\n __esDecorate(null, null, _password_decorators, { kind: \"field\", name: \"password\", static: false, private: false, access: { has: obj => \"password\" in obj, get: obj => obj.password, set: (obj, value) => { obj.password = value; } }, metadata: _metadata }, _password_initializers, _password_extraInitializers);\n __esDecorate(null, null, _min_decorators, { kind: \"field\", name: \"min\", static: false, private: false, access: { has: obj => \"min\" in obj, get: obj => obj.min, set: (obj, value) => { obj.min = value; } }, metadata: _metadata }, _min_initializers, _min_extraInitializers);\n __esDecorate(null, null, _max_decorators, { kind: \"field\", name: \"max\", static: false, private: false, access: { has: obj => \"max\" in obj, get: obj => obj.max, set: (obj, value) => { obj.max = value; } }, metadata: _metadata }, _max_initializers, _max_extraInitializers);\n __esDecorate(null, null, _step_decorators, { kind: \"field\", name: \"step\", static: false, private: false, access: { has: obj => \"step\" in obj, get: obj => obj.step, set: (obj, value) => { obj.step = value; } }, metadata: _metadata }, _step_initializers, _step_extraInitializers);\n __esDecorate(null, null, _pattern_decorators, { kind: \"field\", name: \"pattern\", static: false, private: false, access: { has: obj => \"pattern\" in obj, get: obj => obj.pattern, set: (obj, value) => { obj.pattern = value; } }, metadata: _metadata }, _pattern_initializers, _pattern_extraInitializers);\n __esDecorate(null, null, _maxlength_decorators, { kind: \"field\", name: \"maxlength\", static: false, private: false, access: { has: obj => \"maxlength\" in obj, get: obj => obj.maxlength, set: (obj, value) => { obj.maxlength = value; } }, metadata: _metadata }, _maxlength_initializers, _maxlength_extraInitializers);\n __esDecorate(null, null, _minlength_decorators, { kind: \"field\", name: \"minlength\", static: false, private: false, access: { has: obj => \"minlength\" in obj, get: obj => obj.minlength, set: (obj, value) => { obj.minlength = value; } }, metadata: _metadata }, _minlength_initializers, _minlength_extraInitializers);\n __esDecorate(null, null, _autocomplete_decorators, { kind: \"field\", name: \"autocomplete\", static: false, private: false, access: { has: obj => \"autocomplete\" in obj, get: obj => obj.autocomplete, set: (obj, value) => { obj.autocomplete = value; } }, metadata: _metadata }, _autocomplete_initializers, _autocomplete_extraInitializers);\n __esDecorate(null, null, _name_decorators, { kind: \"field\", name: \"name\", static: false, private: false, access: { has: obj => \"name\" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _labelAlign_decorators, { kind: \"field\", name: \"labelAlign\", static: false, private: false, access: { has: obj => \"labelAlign\" in obj, get: obj => obj.labelAlign, set: (obj, value) => { obj.labelAlign = value; } }, metadata: _metadata }, _labelAlign_initializers, _labelAlign_extraInitializers);\n __esDecorate(null, null, _stretch_decorators, { kind: \"field\", name: \"stretch\", static: false, private: false, access: { has: obj => \"stretch\" in obj, get: obj => obj.stretch, set: (obj, value) => { obj.stretch = value; } }, metadata: _metadata }, _stretch_initializers, _stretch_extraInitializers);\n __esDecorate(null, null, _prefixIcon_decorators, { kind: \"field\", name: \"prefixIcon\", static: false, private: false, access: { has: obj => \"prefixIcon\" in obj, get: obj => obj.prefixIcon, set: (obj, value) => { obj.prefixIcon = value; } }, metadata: _metadata }, _prefixIcon_initializers, _prefixIcon_extraInitializers);\n __esDecorate(null, null, _suffixIcon_decorators, { kind: \"field\", name: \"suffixIcon\", static: false, private: false, access: { has: obj => \"suffixIcon\" in obj, get: obj => obj.suffixIcon, set: (obj, value) => { obj.suffixIcon = value; } }, metadata: _metadata }, _suffixIcon_initializers, _suffixIcon_extraInitializers);\n __esDecorate(null, null, _input_decorators, { kind: \"field\", name: \"input\", static: false, private: false, access: { has: obj => \"input\" in obj, get: obj => obj.input, set: (obj, value) => { obj.input = value; } }, metadata: _metadata }, _input_initializers, _input_extraInitializers);\n __esDecorate(null, null, _clearButton_decorators, { kind: \"field\", name: \"clearButton\", static: false, private: false, access: { has: obj => \"clearButton\" in obj, get: obj => obj.clearButton, set: (obj, value) => { obj.clearButton = value; } }, metadata: _metadata }, _clearButton_initializers, _clearButton_extraInitializers);\n __esDecorate(null, null, _passwordToggle_decorators, { kind: \"field\", name: \"passwordToggle\", static: false, private: false, access: { has: obj => \"passwordToggle\" in obj, get: obj => obj.passwordToggle, set: (obj, value) => { obj.passwordToggle = value; } }, metadata: _metadata }, _passwordToggle_initializers, _passwordToggle_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n constructor() {\n super();\n this.internals = __runInitializers(this, _instanceExtraInitializers);\n this.type = __runInitializers(this, _type_initializers, 'text');\n this.size = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _size_initializers, 'medium'));\n this.variant = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _variant_initializers, 'outlined'));\n this.value = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.placeholder = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _placeholder_initializers, ''));\n this.label = (__runInitializers(this, _placeholder_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.helperText = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _helperText_initializers, ''));\n this.errorText = (__runInitializers(this, _helperText_extraInitializers), __runInitializers(this, _errorText_initializers, ''));\n this.disabled = (__runInitializers(this, _errorText_extraInitializers), __runInitializers(this, _disabled_initializers, false));\n this.readonly = (__runInitializers(this, _disabled_extraInitializers), __runInitializers(this, _readonly_initializers, false));\n this.loading = (__runInitializers(this, _readonly_extraInitializers), __runInitializers(this, _loading_initializers, false));\n this.required = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _required_initializers, false));\n this.invalid = (__runInitializers(this, _required_extraInitializers), __runInitializers(this, _invalid_initializers, false));\n this.clearable = (__runInitializers(this, _invalid_extraInitializers), __runInitializers(this, _clearable_initializers, false));\n this.password = (__runInitializers(this, _clearable_extraInitializers), __runInitializers(this, _password_initializers, false));\n this.min = (__runInitializers(this, _password_extraInitializers), __runInitializers(this, _min_initializers, ''));\n this.max = (__runInitializers(this, _min_extraInitializers), __runInitializers(this, _max_initializers, ''));\n this.step = (__runInitializers(this, _max_extraInitializers), __runInitializers(this, _step_initializers, ''));\n this.pattern = (__runInitializers(this, _step_extraInitializers), __runInitializers(this, _pattern_initializers, ''));\n this.maxlength = (__runInitializers(this, _pattern_extraInitializers), __runInitializers(this, _maxlength_initializers, -1));\n this.minlength = (__runInitializers(this, _maxlength_extraInitializers), __runInitializers(this, _minlength_initializers, -1));\n this.autocomplete = (__runInitializers(this, _minlength_extraInitializers), __runInitializers(this, _autocomplete_initializers, ''));\n this.name = (__runInitializers(this, _autocomplete_extraInitializers), __runInitializers(this, _name_initializers, ''));\n this.align = (__runInitializers(this, _name_extraInitializers), __runInitializers(this, _align_initializers, ''));\n this.labelAlign = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _labelAlign_initializers, 'left'));\n this.stretch = (__runInitializers(this, _labelAlign_extraInitializers), __runInitializers(this, _stretch_initializers, false));\n this.prefixIcon = (__runInitializers(this, _stretch_extraInitializers), __runInitializers(this, _prefixIcon_initializers, ''));\n this.suffixIcon = (__runInitializers(this, _prefixIcon_extraInitializers), __runInitializers(this, _suffixIcon_initializers, ''));\n this.input = (__runInitializers(this, _suffixIcon_extraInitializers), __runInitializers(this, _input_initializers, void 0));\n this.clearButton = (__runInitializers(this, _input_extraInitializers), __runInitializers(this, _clearButton_initializers, void 0));\n this.passwordToggle = (__runInitializers(this, _clearButton_extraInitializers), __runInitializers(this, _passwordToggle_initializers, void 0));\n this.showPassword = (__runInitializers(this, _passwordToggle_extraInitializers), false);\n if (typeof this.attachInternals == 'function') {\n this.internals = this.attachInternals();\n }\n }\n render() {\n const inputClasses = [\n 'input',\n `input--${this.size}`,\n `input--${this.variant}`,\n this.invalid ? 'input--invalid' : '',\n this.loading ? 'input--loading' : '',\n this.prefixIcon ? 'input--with-prefix-icon' : '',\n this.suffixIcon || (this.type === 'password' && this.password) || this.loading ? 'input--with-suffix-icon' : '',\n this.clearable ? 'input--clearable' : ''\n ].filter(Boolean).join(' ');\n const labelClasses = ['label', this.required ? 'label--required' : ''].filter(Boolean).join(' ');\n const clearButtonClasses = ['clear-button', this.suffixIcon || (this.type === 'password' && this.password) ? 'clear-button--with-suffix' : ''].filter(Boolean).join(' ');\n return html /*html*/ `\n <div class=\"input-wrapper\" part=\"wrapper\">\n <if ${this.label}>\n <label class=\"${labelClasses}\" part=\"label\">\n ${this.label}\n </label>\n </if>\n\n <div class=\"input-container\" part=\"container\">\n <span class=\"icon-slot icon-slot--prefix\" part=\"prefix-icon\">\n <slot name=\"prefix-icon\">\n <if ${this.prefixIcon}>\n ${renderIcon(this.prefixIcon, 'icon icon--prefix')}\n </if>\n </slot>\n </span>\n\n <input\n class=\"${inputClasses}\"\n type=\"${this.type}\"\n value=\"${this.value}\"\n placeholder=\"${this.placeholder}\"\n ?disabled=\"${this.disabled || this.loading}\"\n ?readonly=\"${this.readonly}\"\n ?required=\"${this.required}\"\n min=\"${this.min || ''}\"\n max=\"${this.max || ''}\"\n step=\"${this.step || ''}\"\n pattern=\"${this.pattern || ''}\"\n maxlength=\"${this.maxlength > 0 ? this.maxlength : ''}\"\n minlength=\"${this.minlength > 0 ? this.minlength : ''}\"\n autocomplete=\"${this.autocomplete || ''}\"\n name=\"${this.name || ''}\"\n part=\"input\"\n @input=${this.handleInput}\n @change=${this.handleChange}\n @focus=${this.handleFocus}\n @blur=${this.handleBlur}\n />\n\n <button\n class=\"${clearButtonClasses}\"\n type=\"button\"\n aria-label=\"Clear\"\n tabindex=\"-1\"\n part=\"clear\"\n style=\"display: none;\"\n @click=${this.handleClear}\n >\n <svg viewBox=\"0 0 24 24\" width=\"16\" height=\"16\">\n <path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\" fill=\"currentColor\"/>\n </svg>\n </button>\n\n <if ${this.loading}>\n <span class=\"spinner\" part=\"spinner\"></span>\n </if>\n\n <if ${this.type === 'password' && this.password}>\n <button\n class=\"password-toggle\"\n type=\"button\"\n aria-label=\"Show password\"\n tabindex=\"-1\"\n part=\"password-toggle\"\n @click=${this.handlePasswordToggle}\n >\n <svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" class=\"password-icon password-icon--hidden\">\n <path d=\"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\" fill=\"currentColor\"/>\n </svg>\n <svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" class=\"password-icon password-icon--visible\" style=\"display: none;\">\n <path d=\"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\" fill=\"currentColor\"/>\n </svg>\n </button>\n </if>\n <if ${!(this.type === 'password' && this.password)}>\n <span class=\"icon-slot icon-slot--suffix\" part=\"suffix-icon\">\n <slot name=\"suffix-icon\">\n <if ${this.suffixIcon}>\n ${renderIcon(this.suffixIcon, 'icon icon--suffix')}\n </if>\n </slot>\n </span>\n </if>\n </div>\n\n <case ${this.errorText ? 'error' : this.helperText ? 'helper' : 'empty'}>\n <when value=\"error\">\n <span class=\"error-text\" part=\"error-text\">${this.errorText}</span>\n </when>\n <when value=\"helper\">\n <span class=\"helper-text\" part=\"helper-text\">${this.helperText}</span>\n </when>\n <default>\n </default>\n </case>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n // Set initial form value\n if (this.internals) {\n this.internals.setFormValue(this.value);\n }\n // Set initial clear button visibility\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n // Set initial invalid state\n if (this.input && this.invalid) {\n this.input.setAttribute('aria-invalid', 'true');\n this.input.classList.add('input--invalid');\n }\n // Set initial input properties that may not be properly set via attributes\n if (this.input) {\n // Number input constraints\n if (this.type === 'number') {\n if (this.min)\n this.input.min = this.min;\n if (this.max)\n this.input.max = this.max;\n if (this.step)\n this.input.step = this.step;\n }\n // Text constraints\n if (this.maxlength > 0)\n this.input.maxLength = this.maxlength;\n if (this.minlength > 0)\n this.input.minLength = this.minlength;\n // Other properties\n if (this.pattern)\n this.input.pattern = this.pattern;\n if (this.placeholder)\n this.input.placeholder = this.placeholder;\n if (this.value)\n this.input.value = this.value;\n this.input.disabled = this.disabled;\n this.input.readOnly = this.readonly;\n this.input.required = this.required;\n }\n }\n handleInput(e) {\n const input = e.target;\n this.value = input.value;\n this.dispatchInputEvent();\n }\n handleChange(e) {\n const input = e.target;\n this.value = input.value;\n this.dispatchChangeEvent();\n }\n handleFocus(e) {\n this.dispatchFocusEvent();\n }\n handleBlur(e) {\n this.dispatchBlurEvent();\n }\n handleClear(e) {\n this.clear();\n }\n handlePasswordToggle(e) {\n this.showPassword = !this.showPassword;\n if (this.input) {\n this.input.type = this.showPassword ? 'text' : 'password';\n }\n if (this.passwordToggle) {\n const hiddenIcon = this.passwordToggle.querySelector('.password-icon--hidden');\n const visibleIcon = this.passwordToggle.querySelector('.password-icon--visible');\n if (hiddenIcon && visibleIcon) {\n hiddenIcon.style.display = this.showPassword ? 'none' : '';\n visibleIcon.style.display = this.showPassword ? '' : 'none';\n this.passwordToggle.setAttribute('aria-label', this.showPassword ? 'Hide password' : 'Show password');\n }\n }\n }\n handleValueChange() {\n // Only update input.value if it's different to avoid unnecessary DOM updates\n if (this.input && this.input.value !== this.value) {\n this.input.value = this.value;\n }\n // Update form value\n if (this.internals) {\n this.internals.setFormValue(this.value);\n }\n // Show/hide clear button based on value\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n }\n handleInvalidChange() {\n if (this.input) {\n this.input.setAttribute('aria-invalid', String(this.invalid));\n if (this.invalid) {\n this.input.classList.add('input--invalid');\n }\n else {\n this.input.classList.remove('input--invalid');\n }\n }\n }\n handleDisabledChange() {\n if (this.input) {\n this.input.disabled = this.disabled || this.loading;\n }\n // Update clear button visibility\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n }\n handleLoadingChange() {\n if (this.input) {\n this.input.disabled = this.disabled || this.loading;\n }\n // Update clear button visibility\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n }\n handleReadonlyChange() {\n if (this.input) {\n this.input.readOnly = this.readonly;\n }\n // Update clear button visibility\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n }\n handlePlaceholderChange() {\n if (this.input) {\n this.input.placeholder = this.placeholder;\n }\n }\n handleMinChange() {\n if (this.input && this.type === 'number') {\n this.input.min = this.min;\n }\n }\n handleMaxChange() {\n if (this.input && this.type === 'number') {\n this.input.max = this.max;\n }\n }\n handleStepChange() {\n if (this.input && this.type === 'number') {\n this.input.step = this.step;\n }\n }\n handleMaxLengthChange() {\n if (this.input && this.maxlength > 0) {\n this.input.maxLength = this.maxlength;\n }\n }\n handleMinLengthChange() {\n if (this.input && this.minlength > 0) {\n this.input.minLength = this.minlength;\n }\n }\n handlePatternChange() {\n if (this.input) {\n this.input.pattern = this.pattern;\n }\n }\n handleTypeChange() {\n if (this.input && this.type !== 'password') {\n // Don't change type for password fields (handled by toggle)\n this.input.type = this.type;\n }\n }\n handleLabelChange() {\n const labelEl = this.shadowRoot?.querySelector('.label');\n if (labelEl) {\n labelEl.textContent = this.label;\n // Show/hide the label wrapper\n const wrapper = labelEl.parentElement;\n if (wrapper) {\n wrapper.style.display = this.label ? '' : 'none';\n }\n }\n }\n dispatchInputEvent() {\n return { value: this.value, input: this };\n }\n dispatchChangeEvent() {\n return { value: this.value, input: this };\n }\n dispatchFocusEvent() {\n return { input: this };\n }\n dispatchBlurEvent() {\n return { input: this };\n }\n dispatchClearEvent() {\n return { input: this };\n }\n // Public API\n focus() {\n this.input?.focus();\n }\n blur() {\n this.input?.blur();\n }\n select() {\n this.input?.select();\n }\n clear() {\n this.value = '';\n if (this.input) {\n this.input.value = '';\n }\n this.dispatchClearEvent();\n this.dispatchInputEvent();\n this.dispatchChangeEvent();\n this.focus();\n }\n checkValidity() {\n return this.input?.checkValidity() ?? true;\n }\n reportValidity() {\n return this.input?.reportValidity() ?? true;\n }\n setCustomValidity(message) {\n this.input?.setCustomValidity(message);\n }\n });\n return _classThis;\n})();\n\nexport { SniceInput };\n//# sourceMappingURL=snice-input.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, html, css } from 'snice';\n\nlet SniceOption = (() => {\n let _classDecorators = [element('snice-option')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _disabled_decorators;\n let _disabled_initializers = [];\n let _disabled_extraInitializers = [];\n let _selected_decorators;\n let _selected_initializers = [];\n let _selected_extraInitializers = [];\n let _icon_decorators;\n let _icon_initializers = [];\n let _icon_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({})];\n _label_decorators = [property({})];\n _disabled_decorators = [property({ type: Boolean, })];\n _selected_decorators = [property({ type: Boolean, })];\n _icon_decorators = [property({})];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _disabled_decorators, { kind: \"field\", name: \"disabled\", static: false, private: false, access: { has: obj => \"disabled\" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);\n __esDecorate(null, null, _selected_decorators, { kind: \"field\", name: \"selected\", static: false, private: false, access: { has: obj => \"selected\" in obj, get: obj => obj.selected, set: (obj, value) => { obj.selected = value; } }, metadata: _metadata }, _selected_initializers, _selected_extraInitializers);\n __esDecorate(null, null, _icon_decorators, { kind: \"field\", name: \"icon\", static: false, private: false, access: { has: obj => \"icon\" in obj, get: obj => obj.icon, set: (obj, value) => { obj.icon = value; } }, metadata: _metadata }, _icon_initializers, _icon_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n // Options are data-only elements, no shadow DOM needed\n return html /*html*/ ``;\n }\n styles() {\n return css /*css*/ `:host { display: none; }`;\n }\n init() {\n // If no label is provided, use the text content\n if (!this.label && this.textContent) {\n this.label = this.textContent.trim();\n }\n // If no value is provided, use the label\n if (!this.value && this.label) {\n this.value = this.label;\n }\n }\n // Getter for the option data\n get optionData() {\n return {\n value: this.value,\n label: this.label || this.textContent?.trim() || this.value,\n disabled: this.disabled,\n selected: this.selected,\n icon: this.icon\n };\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.label = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.disabled = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _disabled_initializers, false));\n this.selected = (__runInitializers(this, _disabled_extraInitializers), __runInitializers(this, _selected_initializers, false));\n this.icon = (__runInitializers(this, _selected_extraInitializers), __runInitializers(this, _icon_initializers, ''));\n __runInitializers(this, _icon_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceOption };\n//# sourceMappingURL=snice-option.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, queryAll, render, styles, ready, dispose, watch, dispatch, html, css } from 'snice';\nimport './snice-option.js';\n\nvar cssContent = \":host{display:inline-block;font-family:var(--snice-font-family);position:relative;width:100%;max-width:18.75rem}[hidden]{display:none!important}img[src=\\\"\\\"]{display:none}.select-wrapper{position:relative;width:100%}.select-label{display:block;margin-bottom:.25rem;font-size:var(--snice-font-size-sm);font-weight:500;line-height:var(--snice-line-height-normal, 1.5);color:var(--snice-color-text);text-align:left}.select-label--required::after{content:' *';color:var(--snice-color-danger)}.select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--snice-color-background-input);border:1px solid var(--snice-color-border);border-radius:var(--snice-border-radius-md);cursor:pointer;transition:all var(--snice-transition-fast) ease;position:relative;text-align:left;font-family:inherit;color:var(--snice-color-text)}.select-trigger--small{padding:.375rem 2rem .375rem .625rem;font-size:var(--snice-font-size-sm);min-height:2rem}.select-trigger--medium{padding:.5rem 2.25rem .5rem .75rem;font-size:var(--snice-font-size-md);min-height:var(--snice-select-min-height,2.5rem)}.select-trigger--large{padding:.625rem 2.5rem .625rem .875rem;font-size:var(--snice-font-size-lg);min-height:3rem}.select-trigger:hover:not(.select-trigger--disabled){border-color:var(--snice-color-border-hover)}.select-trigger:focus-visible{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-color:var(--snice-color-primary)}.select-trigger--open{border-color:var(--snice-color-primary)}.select-trigger--disabled{background:var(--snice-color-background-secondary);cursor:not-allowed;opacity:.6}.select-trigger--readonly{background:var(--snice-color-background-secondary);cursor:default}.select-trigger--invalid{border-color:var(--snice-color-danger)}.select-placeholder{color:var(--snice-color-text-secondary)}.select-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-value--single{display:flex;align-items:center;gap:.5rem}.select-value-icon{width:1rem;height:1rem;object-fit:contain;flex-shrink:0}.select-value--multiple{display:flex;gap:.25rem;flex-wrap:wrap}.select-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;background:var(--snice-color-primary-light);color:var(--snice-color-primary);border-radius:var(--snice-border-radius-sm);font-size:var(--snice-font-size-xs)}.select-tag-icon{width:.75rem;height:.75rem;object-fit:contain;flex-shrink:0}.select-tag-remove{cursor:pointer;padding:0;background:0 0;border:none;color:inherit;font-size:.75rem;line-height:1}.select-tag-remove:hover{opacity:.7}.select-icons{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.25rem;pointer-events:none;z-index:1}.select-clear{padding:2px;background:0 0;border:none;cursor:pointer;color:var(--snice-color-text-secondary);display:flex;align-items:center;justify-content:center;border-radius:var(--snice-border-radius-sm);pointer-events:auto}.select-clear:hover{background:var(--snice-color-background-secondary);color:var(--snice-color-text)}.select-arrow{transition:transform var(--snice-transition-fast) ease;color:var(--snice-color-text-secondary);pointer-events:none}.select-arrow--open{transform:rotate(180deg)}.select-dropdown{position:absolute;top:100%;margin-top:4px;left:0;right:0;background:var(--snice-color-background-element);border:1px solid var(--snice-color-border);border-radius:var(--snice-border-radius-md);box-shadow:var(--snice-shadow-lg);z-index:1000;opacity:0;transform:translateY(-8px) scaleY(.95);transform-origin:top;pointer-events:none;transition:opacity var(--snice-transition-fast) ease,transform var(--snice-transition-fast) ease;display:flex;flex-direction:column;overflow:hidden}.select-dropdown--open{opacity:1;transform:translateY(0) scaleY(1);pointer-events:auto}.select-search{padding:8px;border-bottom:1px solid var(--snice-color-border);flex-shrink:0}.select-search-input{width:100%;padding:6px 10px;background:var(--snice-color-background-input);border:1px solid var(--snice-color-border);border-radius:var(--snice-border-radius-sm);font-size:var(--snice-font-size-sm);font-family:inherit;color:var(--snice-color-text);box-sizing:border-box}.select-search-input:focus{outline:0;border-color:var(--snice-color-primary)}.select-options{max-height:200px;overflow-y:auto;overflow-x:hidden;padding:4px;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--snice-color-border) var(--snice-color-background-secondary)}.select-options::-webkit-scrollbar-track{background:var(--snice-color-background-secondary);margin:4px 0}.select-options::-webkit-scrollbar-thumb{background:var(--snice-color-border);border:2px solid var(--snice-color-background)}.select-option{padding:8px 12px;cursor:pointer;border-radius:var(--snice-border-radius-sm);transition:background var(--snice-transition-fast) ease;display:flex;align-items:center;gap:8px}.select-option:hover:not(.select-option--disabled){background:var(--snice-color-background-secondary)}.select-option--selected{background:var(--snice-color-primary-light);color:var(--snice-color-primary);font-weight:500}.select-option--focused{background:var(--snice-color-background-secondary);outline:2px solid var(--snice-color-primary);outline-offset:-2px}.select-option--disabled{opacity:.5;cursor:not-allowed}.select-option-icon{width:16px;height:16px;object-fit:contain;flex-shrink:0}.select-option-check{width:16px;height:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.select-option-label{flex:1}.select-no-options{padding:16px;text-align:center;color:var(--snice-color-text-secondary);font-size:var(--snice-font-size-sm)}.select-native{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.select-options::-webkit-scrollbar{width:6px}.select-options::-webkit-scrollbar-track{background:var(--snice-color-background-secondary);border-radius:3px}.select-options::-webkit-scrollbar-thumb{background:var(--snice-color-border);border-radius:3px}.select-options::-webkit-scrollbar-thumb:hover{background:var(--snice-color-border-hover)}.select-trigger--loading{cursor:wait;opacity:.7}.select-spinner{display:inline-block;width:14px;height:14px;margin-right:4px}.select-spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.select-freetext-input{flex:1;border:none;outline:0;background:0 0;font-family:inherit;font-size:inherit;color:var(--snice-color-text,rgb(23 23 23));padding:0;min-width:0;width:100%}.select-freetext-input::placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82))}.select-editable-container{position:relative;display:flex;align-items:center;width:100%}.select-editable-input{width:100%;box-sizing:border-box;font-family:inherit;background:var(--snice-color-background-input,rgb(248 247 245));color:var(--snice-color-text,rgb(23 23 23));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);transition:all var(--snice-transition-fast, 150ms) ease;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.select-editable-input--small{padding:.375rem 2rem .375rem .625rem;font-size:var(--snice-font-size-sm, .875rem);min-height:2rem}.select-editable-input--medium{padding:.5rem 2.25rem .5rem .75rem;font-size:var(--snice-font-size-md, 1rem);min-height:2.5rem}.select-editable-input--large{padding:.625rem 2.5rem .625rem .875rem;font-size:var(--snice-font-size-lg, 1.125rem);min-height:3rem}.select-editable-input:hover:not(:disabled){border-color:var(--snice-color-border-hover,rgb(180 180 180))}.select-editable-input:focus{border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:0 0 0 var(--snice-focus-ring-width,2px) var(--snice-focus-ring-color,rgb(59 130 246 / .5))}.select-editable-input--open{border-color:var(--snice-color-primary,rgb(37 99 235))}.select-editable-input:disabled{background:var(--snice-color-background-secondary,rgb(245 245 245));color:var(--snice-color-text-secondary,rgb(82 82 82));cursor:not-allowed;opacity:.6}.select-editable-input:read-only{background:var(--snice-color-background-secondary,rgb(245 245 245));cursor:default}.select-editable-input::placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82));opacity:.7}.select-editable-arrow{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;color:var(--snice-color-text-secondary,rgb(82 82 82));pointer-events:none;transition:transform var(--snice-transition-fast, 150ms) ease}.select-editable-arrow--open{transform:translateY(-50%) rotate(180deg)}.select-loading-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;color:var(--snice-color-text-secondary,rgb(82 82 82));font-size:var(--snice-font-size-sm, .875rem)}.select-loading-spinner{display:inline-block;width:1rem;height:1rem;flex-shrink:0}.select-loading-spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid var(--snice-color-border,rgb(226 226 226));border-top-color:var(--snice-color-primary,rgb(37 99 235));border-radius:50%;animation:.6s linear infinite spin}\";\n\nlet SniceSelect = (() => {\n let _classDecorators = [element('snice-select', { formAssociated: true })];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _disabled_decorators;\n let _disabled_initializers = [];\n let _disabled_extraInitializers = [];\n let _required_decorators;\n let _required_initializers = [];\n let _required_extraInitializers = [];\n let _invalid_decorators;\n let _invalid_initializers = [];\n let _invalid_extraInitializers = [];\n let _readonly_decorators;\n let _readonly_initializers = [];\n let _readonly_extraInitializers = [];\n let _loading_decorators;\n let _loading_initializers = [];\n let _loading_extraInitializers = [];\n let _multiple_decorators;\n let _multiple_initializers = [];\n let _multiple_extraInitializers = [];\n let _searchable_decorators;\n let _searchable_initializers = [];\n let _searchable_extraInitializers = [];\n let _clearable_decorators;\n let _clearable_initializers = [];\n let _clearable_extraInitializers = [];\n let _allowFreeText_decorators;\n let _allowFreeText_initializers = [];\n let _allowFreeText_extraInitializers = [];\n let _editable_decorators;\n let _editable_initializers = [];\n let _editable_extraInitializers = [];\n let _open_decorators;\n let _open_initializers = [];\n let _open_extraInitializers = [];\n let _size_decorators;\n let _size_initializers = [];\n let _size_extraInitializers = [];\n let _name_decorators;\n let _name_initializers = [];\n let _name_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _placeholder_decorators;\n let _placeholder_initializers = [];\n let _placeholder_extraInitializers = [];\n let _maxHeight_decorators;\n let _maxHeight_initializers = [];\n let _maxHeight_extraInitializers = [];\n let _options_decorators;\n let _options_initializers = [];\n let _options_extraInitializers = [];\n let _trigger_decorators;\n let _trigger_initializers = [];\n let _trigger_extraInitializers = [];\n let _dropdown_decorators;\n let _dropdown_initializers = [];\n let _dropdown_extraInitializers = [];\n let _valueDisplay_decorators;\n let _valueDisplay_initializers = [];\n let _valueDisplay_extraInitializers = [];\n let _labelElement_decorators;\n let _labelElement_initializers = [];\n let _labelElement_extraInitializers = [];\n let _searchInput_decorators;\n let _searchInput_initializers = [];\n let _searchInput_extraInitializers = [];\n let _optionsList_decorators;\n let _optionsList_initializers = [];\n let _optionsList_extraInitializers = [];\n let _clearButton_decorators;\n let _clearButton_initializers = [];\n let _clearButton_extraInitializers = [];\n let _arrow_decorators;\n let _arrow_initializers = [];\n let _arrow_extraInitializers = [];\n let _searchContainer_decorators;\n let _searchContainer_initializers = [];\n let _searchContainer_extraInitializers = [];\n let _editableInput_decorators;\n let _editableInput_initializers = [];\n let _editableInput_extraInitializers = [];\n let _optionElements_decorators;\n let _optionElements_initializers = [];\n let _optionElements_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _cleanup_decorators;\n let _handleValueChange_decorators;\n let _handleOptionsPropertyChange_decorators;\n let _handleDisabledChange_decorators;\n let _handleLoadingChange_decorators;\n let _handleOpenChange_decorators;\n let _dispatchChangeEvent_decorators;\n let _dispatchOpenEvent_decorators;\n let _dispatchCloseEvent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _disabled_decorators = [property({ type: Boolean, })];\n _required_decorators = [property({ type: Boolean, })];\n _invalid_decorators = [property({ type: Boolean, })];\n _readonly_decorators = [property({ type: Boolean, })];\n _loading_decorators = [property({ type: Boolean, })];\n _multiple_decorators = [property({ type: Boolean, })];\n _searchable_decorators = [property({ type: Boolean, })];\n _clearable_decorators = [property({ type: Boolean, })];\n _allowFreeText_decorators = [property({ type: Boolean, attribute: 'allow-free-text' })];\n _editable_decorators = [property({ type: Boolean, })];\n _open_decorators = [property({ type: Boolean, })];\n _size_decorators = [property({})];\n _name_decorators = [property({})];\n _value_decorators = [property({})];\n _label_decorators = [property({})];\n _placeholder_decorators = [property({})];\n _maxHeight_decorators = [property({ attribute: 'max-height' })];\n _options_decorators = [property({ type: Array, attribute: false })];\n _trigger_decorators = [query('.select-trigger')];\n _dropdown_decorators = [query('.select-dropdown')];\n _valueDisplay_decorators = [query('.select-value')];\n _labelElement_decorators = [query('.select-label')];\n _searchInput_decorators = [query('.select-search-input')];\n _optionsList_decorators = [query('.select-options')];\n _clearButton_decorators = [query('.select-clear')];\n _arrow_decorators = [query('.select-arrow')];\n _searchContainer_decorators = [query('.select-search')];\n _editableInput_decorators = [query('.select-editable-input')];\n _optionElements_decorators = [queryAll('.select-option')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _cleanup_decorators = [dispose()];\n _handleValueChange_decorators = [watch('value')];\n _handleOptionsPropertyChange_decorators = [watch('options')];\n _handleDisabledChange_decorators = [watch('disabled')];\n _handleLoadingChange_decorators = [watch('loading')];\n _handleOpenChange_decorators = [watch('open')];\n _dispatchChangeEvent_decorators = [dispatch('select-change', { bubbles: true, composed: true })];\n _dispatchOpenEvent_decorators = [dispatch('select-open', { bubbles: true, composed: true })];\n _dispatchCloseEvent_decorators = [dispatch('select-close', { bubbles: true, composed: true })];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _cleanup_decorators, { kind: \"method\", name: \"cleanup\", static: false, private: false, access: { has: obj => \"cleanup\" in obj, get: obj => obj.cleanup }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleValueChange_decorators, { kind: \"method\", name: \"handleValueChange\", static: false, private: false, access: { has: obj => \"handleValueChange\" in obj, get: obj => obj.handleValueChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleOptionsPropertyChange_decorators, { kind: \"method\", name: \"handleOptionsPropertyChange\", static: false, private: false, access: { has: obj => \"handleOptionsPropertyChange\" in obj, get: obj => obj.handleOptionsPropertyChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleDisabledChange_decorators, { kind: \"method\", name: \"handleDisabledChange\", static: false, private: false, access: { has: obj => \"handleDisabledChange\" in obj, get: obj => obj.handleDisabledChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleLoadingChange_decorators, { kind: \"method\", name: \"handleLoadingChange\", static: false, private: false, access: { has: obj => \"handleLoadingChange\" in obj, get: obj => obj.handleLoadingChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleOpenChange_decorators, { kind: \"method\", name: \"handleOpenChange\", static: false, private: false, access: { has: obj => \"handleOpenChange\" in obj, get: obj => obj.handleOpenChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchChangeEvent_decorators, { kind: \"method\", name: \"dispatchChangeEvent\", static: false, private: false, access: { has: obj => \"dispatchChangeEvent\" in obj, get: obj => obj.dispatchChangeEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchOpenEvent_decorators, { kind: \"method\", name: \"dispatchOpenEvent\", static: false, private: false, access: { has: obj => \"dispatchOpenEvent\" in obj, get: obj => obj.dispatchOpenEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchCloseEvent_decorators, { kind: \"method\", name: \"dispatchCloseEvent\", static: false, private: false, access: { has: obj => \"dispatchCloseEvent\" in obj, get: obj => obj.dispatchCloseEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _disabled_decorators, { kind: \"field\", name: \"disabled\", static: false, private: false, access: { has: obj => \"disabled\" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);\n __esDecorate(null, null, _required_decorators, { kind: \"field\", name: \"required\", static: false, private: false, access: { has: obj => \"required\" in obj, get: obj => obj.required, set: (obj, value) => { obj.required = value; } }, metadata: _metadata }, _required_initializers, _required_extraInitializers);\n __esDecorate(null, null, _invalid_decorators, { kind: \"field\", name: \"invalid\", static: false, private: false, access: { has: obj => \"invalid\" in obj, get: obj => obj.invalid, set: (obj, value) => { obj.invalid = value; } }, metadata: _metadata }, _invalid_initializers, _invalid_extraInitializers);\n __esDecorate(null, null, _readonly_decorators, { kind: \"field\", name: \"readonly\", static: false, private: false, access: { has: obj => \"readonly\" in obj, get: obj => obj.readonly, set: (obj, value) => { obj.readonly = value; } }, metadata: _metadata }, _readonly_initializers, _readonly_extraInitializers);\n __esDecorate(null, null, _loading_decorators, { kind: \"field\", name: \"loading\", static: false, private: false, access: { has: obj => \"loading\" in obj, get: obj => obj.loading, set: (obj, value) => { obj.loading = value; } }, metadata: _metadata }, _loading_initializers, _loading_extraInitializers);\n __esDecorate(null, null, _multiple_decorators, { kind: \"field\", name: \"multiple\", static: false, private: false, access: { has: obj => \"multiple\" in obj, get: obj => obj.multiple, set: (obj, value) => { obj.multiple = value; } }, metadata: _metadata }, _multiple_initializers, _multiple_extraInitializers);\n __esDecorate(null, null, _searchable_decorators, { kind: \"field\", name: \"searchable\", static: false, private: false, access: { has: obj => \"searchable\" in obj, get: obj => obj.searchable, set: (obj, value) => { obj.searchable = value; } }, metadata: _metadata }, _searchable_initializers, _searchable_extraInitializers);\n __esDecorate(null, null, _clearable_decorators, { kind: \"field\", name: \"clearable\", static: false, private: false, access: { has: obj => \"clearable\" in obj, get: obj => obj.clearable, set: (obj, value) => { obj.clearable = value; } }, metadata: _metadata }, _clearable_initializers, _clearable_extraInitializers);\n __esDecorate(null, null, _allowFreeText_decorators, { kind: \"field\", name: \"allowFreeText\", static: false, private: false, access: { has: obj => \"allowFreeText\" in obj, get: obj => obj.allowFreeText, set: (obj, value) => { obj.allowFreeText = value; } }, metadata: _metadata }, _allowFreeText_initializers, _allowFreeText_extraInitializers);\n __esDecorate(null, null, _editable_decorators, { kind: \"field\", name: \"editable\", static: false, private: false, access: { has: obj => \"editable\" in obj, get: obj => obj.editable, set: (obj, value) => { obj.editable = value; } }, metadata: _metadata }, _editable_initializers, _editable_extraInitializers);\n __esDecorate(null, null, _open_decorators, { kind: \"field\", name: \"open\", static: false, private: false, access: { has: obj => \"open\" in obj, get: obj => obj.open, set: (obj, value) => { obj.open = value; } }, metadata: _metadata }, _open_initializers, _open_extraInitializers);\n __esDecorate(null, null, _size_decorators, { kind: \"field\", name: \"size\", static: false, private: false, access: { has: obj => \"size\" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);\n __esDecorate(null, null, _name_decorators, { kind: \"field\", name: \"name\", static: false, private: false, access: { has: obj => \"name\" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _placeholder_decorators, { kind: \"field\", name: \"placeholder\", static: false, private: false, access: { has: obj => \"placeholder\" in obj, get: obj => obj.placeholder, set: (obj, value) => { obj.placeholder = value; } }, metadata: _metadata }, _placeholder_initializers, _placeholder_extraInitializers);\n __esDecorate(null, null, _maxHeight_decorators, { kind: \"field\", name: \"maxHeight\", static: false, private: false, access: { has: obj => \"maxHeight\" in obj, get: obj => obj.maxHeight, set: (obj, value) => { obj.maxHeight = value; } }, metadata: _metadata }, _maxHeight_initializers, _maxHeight_extraInitializers);\n __esDecorate(null, null, _options_decorators, { kind: \"field\", name: \"options\", static: false, private: false, access: { has: obj => \"options\" in obj, get: obj => obj.options, set: (obj, value) => { obj.options = value; } }, metadata: _metadata }, _options_initializers, _options_extraInitializers);\n __esDecorate(null, null, _trigger_decorators, { kind: \"field\", name: \"trigger\", static: false, private: false, access: { has: obj => \"trigger\" in obj, get: obj => obj.trigger, set: (obj, value) => { obj.trigger = value; } }, metadata: _metadata }, _trigger_initializers, _trigger_extraInitializers);\n __esDecorate(null, null, _dropdown_decorators, { kind: \"field\", name: \"dropdown\", static: false, private: false, access: { has: obj => \"dropdown\" in obj, get: obj => obj.dropdown, set: (obj, value) => { obj.dropdown = value; } }, metadata: _metadata }, _dropdown_initializers, _dropdown_extraInitializers);\n __esDecorate(null, null, _valueDisplay_decorators, { kind: \"field\", name: \"valueDisplay\", static: false, private: false, access: { has: obj => \"valueDisplay\" in obj, get: obj => obj.valueDisplay, set: (obj, value) => { obj.valueDisplay = value; } }, metadata: _metadata }, _valueDisplay_initializers, _valueDisplay_extraInitializers);\n __esDecorate(null, null, _labelElement_decorators, { kind: \"field\", name: \"labelElement\", static: false, private: false, access: { has: obj => \"labelElement\" in obj, get: obj => obj.labelElement, set: (obj, value) => { obj.labelElement = value; } }, metadata: _metadata }, _labelElement_initializers, _labelElement_extraInitializers);\n __esDecorate(null, null, _searchInput_decorators, { kind: \"field\", name: \"searchInput\", static: false, private: false, access: { has: obj => \"searchInput\" in obj, get: obj => obj.searchInput, set: (obj, value) => { obj.searchInput = value; } }, metadata: _metadata }, _searchInput_initializers, _searchInput_extraInitializers);\n __esDecorate(null, null, _optionsList_decorators, { kind: \"field\", name: \"optionsList\", static: false, private: false, access: { has: obj => \"optionsList\" in obj, get: obj => obj.optionsList, set: (obj, value) => { obj.optionsList = value; } }, metadata: _metadata }, _optionsList_initializers, _optionsList_extraInitializers);\n __esDecorate(null, null, _clearButton_decorators, { kind: \"field\", name: \"clearButton\", static: false, private: false, access: { has: obj => \"clearButton\" in obj, get: obj => obj.clearButton, set: (obj, value) => { obj.clearButton = value; } }, metadata: _metadata }, _clearButton_initializers, _clearButton_extraInitializers);\n __esDecorate(null, null, _arrow_decorators, { kind: \"field\", name: \"arrow\", static: false, private: false, access: { has: obj => \"arrow\" in obj, get: obj => obj.arrow, set: (obj, value) => { obj.arrow = value; } }, metadata: _metadata }, _arrow_initializers, _arrow_extraInitializers);\n __esDecorate(null, null, _searchContainer_decorators, { kind: \"field\", name: \"searchContainer\", static: false, private: false, access: { has: obj => \"searchContainer\" in obj, get: obj => obj.searchContainer, set: (obj, value) => { obj.searchContainer = value; } }, metadata: _metadata }, _searchContainer_initializers, _searchContainer_extraInitializers);\n __esDecorate(null, null, _editableInput_decorators, { kind: \"field\", name: \"editableInput\", static: false, private: false, access: { has: obj => \"editableInput\" in obj, get: obj => obj.editableInput, set: (obj, value) => { obj.editableInput = value; } }, metadata: _metadata }, _editableInput_initializers, _editableInput_extraInitializers);\n __esDecorate(null, null, _optionElements_decorators, { kind: \"field\", name: \"optionElements\", static: false, private: false, access: { has: obj => \"optionElements\" in obj, get: obj => obj.optionElements, set: (obj, value) => { obj.optionElements = value; } }, metadata: _metadata }, _optionElements_initializers, _optionElements_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n constructor() {\n super();\n this.internals = __runInitializers(this, _instanceExtraInitializers);\n this.disabled = __runInitializers(this, _disabled_initializers, false);\n this.required = (__runInitializers(this, _disabled_extraInitializers), __runInitializers(this, _required_initializers, false));\n this.invalid = (__runInitializers(this, _required_extraInitializers), __runInitializers(this, _invalid_initializers, false));\n this.readonly = (__runInitializers(this, _invalid_extraInitializers), __runInitializers(this, _readonly_initializers, false));\n this.loading = (__runInitializers(this, _readonly_extraInitializers), __runInitializers(this, _loading_initializers, false));\n this.multiple = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _multiple_initializers, false));\n this.searchable = (__runInitializers(this, _multiple_extraInitializers), __runInitializers(this, _searchable_initializers, false));\n this.clearable = (__runInitializers(this, _searchable_extraInitializers), __runInitializers(this, _clearable_initializers, false));\n this.allowFreeText = (__runInitializers(this, _clearable_extraInitializers), __runInitializers(this, _allowFreeText_initializers, false));\n this.editable = (__runInitializers(this, _allowFreeText_extraInitializers), __runInitializers(this, _editable_initializers, false));\n this.open = (__runInitializers(this, _editable_extraInitializers), __runInitializers(this, _open_initializers, false));\n this.size = (__runInitializers(this, _open_extraInitializers), __runInitializers(this, _size_initializers, 'medium'));\n this.name = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _name_initializers, ''));\n this.value = (__runInitializers(this, _name_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.label = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.placeholder = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _placeholder_initializers, 'Select an option'));\n this.maxHeight = (__runInitializers(this, _placeholder_extraInitializers), __runInitializers(this, _maxHeight_initializers, '200px'));\n this.options = (__runInitializers(this, _maxHeight_extraInitializers), __runInitializers(this, _options_initializers, []));\n // Options read from child snice-option elements\n this.childOptions = (__runInitializers(this, _options_extraInitializers), []);\n this.trigger = __runInitializers(this, _trigger_initializers, void 0);\n this.dropdown = (__runInitializers(this, _trigger_extraInitializers), __runInitializers(this, _dropdown_initializers, void 0));\n this.valueDisplay = (__runInitializers(this, _dropdown_extraInitializers), __runInitializers(this, _valueDisplay_initializers, void 0));\n this.labelElement = (__runInitializers(this, _valueDisplay_extraInitializers), __runInitializers(this, _labelElement_initializers, void 0));\n this.searchInput = (__runInitializers(this, _labelElement_extraInitializers), __runInitializers(this, _searchInput_initializers, void 0));\n this.optionsList = (__runInitializers(this, _searchInput_extraInitializers), __runInitializers(this, _optionsList_initializers, void 0));\n this.clearButton = (__runInitializers(this, _optionsList_extraInitializers), __runInitializers(this, _clearButton_initializers, void 0));\n this.arrow = (__runInitializers(this, _clearButton_extraInitializers), __runInitializers(this, _arrow_initializers, void 0));\n this.searchContainer = (__runInitializers(this, _arrow_extraInitializers), __runInitializers(this, _searchContainer_initializers, void 0));\n this.editableInput = (__runInitializers(this, _searchContainer_extraInitializers), __runInitializers(this, _editableInput_initializers, void 0));\n this.optionElements = (__runInitializers(this, _editableInput_extraInitializers), __runInitializers(this, _optionElements_initializers, void 0));\n this.filteredOptions = (__runInitializers(this, _optionElements_extraInitializers), []);\n this.selectedValues = new Set();\n this.focusedIndex = -1;\n this.editableInputValue = '';\n if (typeof this.attachInternals == 'function') {\n this.internals = this.attachInternals();\n }\n }\n /** Merged options: programmatic `options` array + child `<snice-option>` elements */\n get mergedOptions() {\n // Child options take precedence if both provided (slot wins)\n if (this.childOptions.length > 0 && this.options.length > 0) {\n // Merge: children first, then programmatic options not already present\n const childValues = new Set(this.childOptions.map(o => o.value));\n return [...this.childOptions, ...this.options.filter(o => !childValues.has(o.value))];\n }\n return this.childOptions.length > 0 ? this.childOptions : this.options;\n }\n render() {\n const labelClasses = `select-label select-label--${this.size} ${this.required ? 'select-label--required' : ''}`;\n const triggerClasses = `select-trigger select-trigger--${this.size} ${this.loading ? 'select-trigger--loading' : ''} ${this.editable ? 'select-trigger--editable' : ''}`;\n const searchHidden = !this.searchable || this.editable;\n return html /*html*/ `\n <div class=\"select-wrapper\">\n <label class=\"${labelClasses}\" part=\"label\" ?hidden=\"${!this.label}\">\n ${this.label}\n </label>\n\n <if ${this.editable}>\n <div class=\"select-editable-container\">\n <input\n type=\"text\"\n class=\"select-editable-input select-editable-input--${this.size}\"\n placeholder=\"${this.placeholder}\"\n ?disabled=\"${this.disabled}\"\n ?readonly=\"${this.readonly}\"\n autocomplete=\"off\"\n role=\"combobox\"\n aria-expanded=\"false\"\n aria-autocomplete=\"list\"\n aria-label=\"${this.label || 'Select'}\"\n part=\"input\"\n @input=\"${(e) => this.handleEditableInput(e)}\"\n @focus=\"${() => this.handleEditableFocus()}\"\n @blur=\"${(e) => this.handleEditableBlur(e)}\"\n @keydown=\"${(e) => this.handleEditableKeydown(e)}\"\n @click=\"${() => this.handleEditableClick()}\"\n />\n <span class=\"select-editable-arrow\" part=\"arrow\"\n @mousedown=\"${(e) => this.handleEditableArrowClick(e)}\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"currentColor\">\n <path d=\"M6 9L1 4h10L6 9z\"/>\n </svg>\n </span>\n </div>\n </if>\n\n <if ${!this.editable}>\n <button\n type=\"button\"\n class=\"${triggerClasses}\"\n aria-haspopup=\"listbox\"\n aria-expanded=\"false\"\n aria-label=\"${this.label || 'Select'}\"\n part=\"trigger\"\n @keydown=\"${(e) => this.handleTriggerOpen(e)}\"\n @click=\"${(e) => this.handleTriggerClick(e)}\">\n\n <div class=\"select-value\" part=\"value\">\n <span class=\"select-placeholder\">${this.placeholder}</span>\n </div>\n\n <span class=\"select-icons\">\n <span class=\"select-clear\" aria-label=\"Clear selection\" style=\"display: none;\" @click=\"${(e) => this.handleClearClick(e)}\">\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"currentColor\">\n <path d=\"M14 1.41L12.59 0L7 5.59L1.41 0L0 1.41L5.59 7L0 12.59L1.41 14L7 8.41L12.59 14L14 12.59L8.41 7L14 1.41Z\"/>\n </svg>\n </span>\n <if ${this.loading}>\n <span class=\"select-spinner\" part=\"spinner\"></span>\n </if>\n <if ${!this.loading}>\n <span class=\"select-arrow\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"currentColor\">\n <path d=\"M6 9L1 4h10L6 9z\"/>\n </svg>\n </span>\n </if>\n </span>\n </button>\n </if>\n\n <div class=\"select-dropdown\"\n role=\"listbox\"\n aria-label=\"${this.label || 'Options'}\"\n part=\"dropdown\"\n @mousedown=\"${(e) => this.handleDropdownMousedown(e)}\"\n @click=\"${(e) => this.handleOptionsClick(e)}\">\n\n <div class=\"select-search\" part=\"search\" ?hidden=\"${searchHidden}\">\n <input\n type=\"text\"\n class=\"select-search-input\"\n placeholder=\"Search...\"\n aria-label=\"Search options\"\n part=\"search-input\"\n @keydown=\"${(e) => this.handleSearchKeydown(e)}\"\n @input=\"${(e) => this.handleSearchInput(e)}\" />\n </div>\n\n <div class=\"select-options\" part=\"options\">\n <!-- Options will be rendered in @ready() -->\n </div>\n </div>\n\n </div>\n `;\n }\n renderOptions() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n if (options.length === 0) {\n return /*html*/ `\n <div class=\"select-no-options\">\n <span class=\"select-no-options-text\" data-search=\"true\" ${!(this.searchable || this.editable) || this.filteredOptions.length > 0 ? 'hidden' : ''}>No matches found</span>\n <span class=\"select-no-options-text\" data-search=\"false\" ${(this.searchable || this.editable) && this.filteredOptions.length === 0 ? 'hidden' : ''}>No options available</span>\n </div>\n `;\n }\n return options.map((opt, index) => {\n const isSelected = this.multiple ?\n this.selectedValues.has(opt.value) :\n opt.value === this.value;\n return /*html*/ `\n <div class=\"select-option\n ${isSelected ? 'select-option--selected' : ''}\n ${opt.disabled ? 'select-option--disabled' : ''}\n ${index === this.focusedIndex ? 'select-option--focused' : ''}\n ${opt.icon ? 'select-option--has-icon' : ''}\"\n data-value=\"${opt.value}\"\n role=\"option\"\n aria-selected=\"${isSelected}\"\n aria-disabled=\"${opt.disabled}\"\n part=\"option\">\n <span class=\"select-option-check\" ${!this.multiple ? 'hidden' : ''}>\n <span class=\"select-option-check-mark\" ${!isSelected ? 'hidden' : ''}>✓</span>\n </span>\n <img class=\"select-option-icon\" src=\"${opt.icon || ''}\" alt=\"\" ${!opt.icon ? 'hidden' : ''} />\n <span class=\"select-option-label\">${opt.label}</span>\n </div>\n `;\n }).join('');\n }\n styles() {\n return css `${cssContent}`;\n }\n init() {\n // Read options from child snice-option elements\n this.readOptionsFromChildren();\n // Initialize selected values\n if (this.multiple && this.value) {\n this.selectedValues = new Set(this.value.split(',').map(v => v.trim()));\n }\n // Initialize filtered options\n this.filteredOptions = [...this.mergedOptions];\n // Set initial form value\n if (this.internals) {\n this.internals.setFormValue(this.value);\n }\n // Wait for @query decorators to populate shadow DOM elements\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n if (this.editable) {\n this.syncEditableInputToValue();\n this.updateEditableState();\n }\n else {\n // Set initial imperative state\n this.updateTriggerState();\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.updateDropdownState();\n this.updateDropdownContent();\n });\n });\n // Watch for changes to child options\n this.observeChildren();\n // Setup global event listeners\n this.setupGlobalListeners();\n }\n cleanup() {\n this.removeGlobalListeners();\n this.childObserver?.disconnect();\n }\n setupGlobalListeners() {\n // Create bound handlers\n this.outsideClickHandler = (e) => {\n if (!this.contains(e.target) && this.open) {\n if (this.editable) {\n this.commitEditableValue();\n }\n this.closeDropdown();\n }\n };\n this.globalKeyHandler = (e) => {\n if (!this.open || this.editable)\n return;\n switch (e.key) {\n case 'Escape':\n this.closeDropdown();\n this.trigger?.focus();\n break;\n case 'ArrowDown':\n e.preventDefault();\n this.focusNextOption();\n break;\n case 'ArrowUp':\n e.preventDefault();\n this.focusPreviousOption();\n break;\n case 'Enter':\n case ' ':\n e.preventDefault();\n if (this.focusedIndex >= 0) {\n const options = this.searchable ? this.filteredOptions : this.mergedOptions;\n const option = options[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleOptionSelect(option);\n }\n }\n break;\n }\n };\n // Add listeners\n document.addEventListener('click', this.outsideClickHandler);\n document.addEventListener('keydown', this.globalKeyHandler);\n }\n removeGlobalListeners() {\n if (this.outsideClickHandler) {\n document.removeEventListener('click', this.outsideClickHandler);\n }\n if (this.globalKeyHandler) {\n document.removeEventListener('keydown', this.globalKeyHandler);\n }\n }\n // Manual observation of light DOM children (snice-option elements)\n observeChildren() {\n const observer = new MutationObserver((mutations) => {\n this.handleChildrenChange(mutations);\n });\n // Observe the host element (this) for changes to its light DOM children\n observer.observe(this, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['value', 'label', 'disabled', 'selected']\n });\n // Store for cleanup\n this.childObserver = observer;\n }\n handleChildrenChange(mutations) {\n // Check if any of the mutations are relevant (snice-option elements or their attributes)\n const relevant = mutations.some(m => {\n if (m.type === 'childList')\n return true;\n if (m.type === 'attributes' && ['value', 'label', 'disabled', 'selected'].includes(m.attributeName)) {\n return m.target.nodeName === 'SNICE-OPTION';\n }\n return false;\n });\n if (relevant) {\n this.readOptionsFromChildren();\n this.filteredOptions = [...this.mergedOptions];\n if (!this.editable) {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.updateDropdownContent();\n }\n }\n readOptionsFromChildren() {\n // Get all snice-option children from light DOM\n const optionElements = Array.from(this.querySelectorAll('snice-option'));\n this.childOptions = optionElements.map(opt => {\n const sniceOption = opt;\n // Use the optionData getter if available, otherwise construct from properties\n if (sniceOption.optionData) {\n return sniceOption.optionData;\n }\n return {\n value: opt.getAttribute('value') || '',\n label: opt.getAttribute('label') || opt.textContent?.trim() || '',\n disabled: opt.hasAttribute('disabled'),\n selected: opt.hasAttribute('selected')\n };\n });\n }\n // ── Editable mode handlers ──\n handleEditableInput(e) {\n const input = e.target;\n this.editableInputValue = input.value;\n // Filter options as user types\n this.filterEditableOptions(this.editableInputValue);\n if (!this.open) {\n this.openDropdown();\n }\n }\n handleEditableFocus() {\n if (!this.open && !this.readonly) {\n this.openDropdown();\n }\n }\n handleEditableBlur(e) {\n // Delay close to allow option clicks via mousedown\n setTimeout(() => {\n if (this.open) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n }, 200);\n }\n handleEditableClick() {\n if (!this.open && !this.disabled && !this.readonly) {\n this.openDropdown();\n }\n }\n handleEditableArrowClick(e) {\n e.preventDefault();\n e.stopPropagation();\n if (this.disabled || this.readonly)\n return;\n if (this.open) {\n this.closeDropdown();\n }\n else {\n this.openDropdown();\n this.editableInput?.focus();\n }\n }\n handleEditableKeydown(e) {\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault();\n if (!this.open) {\n this.openDropdown();\n }\n else {\n this.focusNextOption();\n }\n break;\n case 'ArrowUp':\n e.preventDefault();\n if (this.open) {\n this.focusPreviousOption();\n }\n break;\n case 'Enter':\n e.preventDefault();\n if (this.open && this.focusedIndex >= 0) {\n const option = this.filteredOptions[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleEditableOptionSelect(option);\n }\n }\n else if (this.open) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n break;\n case 'Escape':\n if (this.open) {\n this.closeDropdown();\n this.syncEditableInputToValue();\n }\n break;\n case 'Tab':\n if (this.open) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n break;\n }\n }\n handleEditableOptionSelect(option) {\n this.value = option.value;\n this.editableInputValue = option.label;\n if (this.editableInput) {\n this.editableInput.value = option.label;\n }\n this.closeDropdown();\n this.dispatchChangeEvent(option);\n this.editableInput?.focus();\n }\n commitEditableValue() {\n if (!this.editableInput)\n return;\n const inputText = this.editableInput.value.trim();\n // Try to match an existing option\n const allOptions = this.mergedOptions;\n const match = allOptions.find(opt => opt.label.toLowerCase() === inputText.toLowerCase());\n if (match) {\n this.value = match.value;\n this.editableInputValue = match.label;\n this.editableInput.value = match.label;\n this.dispatchChangeEvent(match);\n }\n else if (this.allowFreeText && inputText) {\n this.value = inputText;\n this.editableInputValue = inputText;\n this.dispatchChangeEvent();\n }\n else {\n // Revert to current value\n this.syncEditableInputToValue();\n }\n }\n filterEditableOptions(query) {\n const allOptions = this.mergedOptions;\n if (!query) {\n this.filteredOptions = [...allOptions];\n }\n else {\n const lower = query.toLowerCase();\n this.filteredOptions = allOptions.filter(opt => opt.label.toLowerCase().includes(lower));\n }\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n syncEditableInputToValue() {\n if (!this.editableInput)\n return;\n if (this.value) {\n const allOptions = this.mergedOptions;\n const match = allOptions.find(opt => opt.value === this.value);\n if (match) {\n this.editableInput.value = match.label;\n this.editableInputValue = match.label;\n }\n else if (this.allowFreeText) {\n this.editableInput.value = this.value;\n this.editableInputValue = this.value;\n }\n else {\n this.editableInput.value = '';\n this.editableInputValue = '';\n }\n }\n else {\n this.editableInput.value = '';\n this.editableInputValue = '';\n }\n }\n updateEditableState() {\n if (!this.editableInput)\n return;\n this.editableInput.setAttribute('aria-expanded', String(this.open));\n this.editableInput.classList.toggle('select-editable-input--open', this.open);\n }\n // ── Dropdown mousedown (prevents blur in editable mode) ──\n handleDropdownMousedown(e) {\n if (this.editable) {\n e.preventDefault();\n }\n }\n // ── Standard (non-editable) mode handlers ──\n handleTriggerOpen(e) {\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault();\n if (!this.open) {\n this.openDropdown();\n }\n }\n }\n handleSearchKeydown(e) {\n switch (e.key) {\n case 'Escape':\n this.closeDropdown();\n this.trigger?.focus();\n break;\n case 'ArrowDown':\n e.preventDefault();\n this.focusNextOption();\n break;\n case 'ArrowUp':\n e.preventDefault();\n this.focusPreviousOption();\n break;\n case 'Enter':\n e.preventDefault();\n if (this.focusedIndex >= 0) {\n const options = this.searchable ? this.filteredOptions : this.mergedOptions;\n const option = options[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleOptionSelect(option);\n }\n }\n break;\n }\n }\n focusNextOption() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n const enabledOptions = options.filter(opt => !opt.disabled);\n if (enabledOptions.length === 0)\n return;\n this.focusedIndex++;\n if (this.focusedIndex >= options.length) {\n this.focusedIndex = 0;\n }\n while (options[this.focusedIndex]?.disabled) {\n this.focusedIndex++;\n if (this.focusedIndex >= options.length) {\n this.focusedIndex = 0;\n }\n }\n this.updateOptionFocus();\n }\n focusPreviousOption() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n const enabledOptions = options.filter(opt => !opt.disabled);\n if (enabledOptions.length === 0)\n return;\n this.focusedIndex--;\n if (this.focusedIndex < 0) {\n this.focusedIndex = options.length - 1;\n }\n while (options[this.focusedIndex]?.disabled) {\n this.focusedIndex--;\n if (this.focusedIndex < 0) {\n this.focusedIndex = options.length - 1;\n }\n }\n this.updateOptionFocus();\n }\n updateOptionFocus() {\n if (this.optionElements) {\n this.optionElements.forEach((el, index) => {\n el.classList.toggle('select-option--focused', index === this.focusedIndex);\n });\n // Scroll focused option into view\n const focusedEl = this.optionElements?.[this.focusedIndex];\n if (focusedEl) {\n focusedEl.scrollIntoView({ block: 'nearest' });\n }\n }\n }\n handleClearClick(e) {\n e.preventDefault();\n e.stopPropagation();\n this.clear();\n }\n handleTriggerClick(e) {\n const target = e.target;\n // Don't toggle if clicking on the clear button\n if (target.closest('.select-clear')) {\n return;\n }\n e.stopPropagation();\n if (!this.disabled && !this.readonly) {\n this.toggleDropdown();\n }\n }\n handleOptionsClick(e) {\n const target = e.target;\n // Handle tag remove click\n if (target.closest('.select-tag-remove')) {\n e.stopPropagation();\n const removeBtn = target.closest('.select-tag-remove');\n const value = removeBtn.getAttribute('data-value');\n if (value && this.multiple) {\n this.selectedValues.delete(value);\n this.value = Array.from(this.selectedValues).join(',');\n this.updateValueDisplay();\n this.updateClearButton();\n this.dispatchChangeEvent();\n }\n return;\n }\n const optionEl = target.closest('.select-option');\n if (!optionEl)\n return;\n e.stopPropagation();\n const value = optionEl.getAttribute('data-value');\n if (!value)\n return;\n const allOptions = this.mergedOptions;\n const option = allOptions.find(opt => opt.value === value);\n if (option && !option.disabled) {\n if (this.editable) {\n this.handleEditableOptionSelect(option);\n }\n else {\n this.handleOptionSelect(option);\n }\n }\n }\n handleSearchInput(e) {\n const input = e.target;\n const searchTerm = input.value.toLowerCase();\n if (searchTerm) {\n this.filteredOptions = this.mergedOptions.filter(opt => opt.label.toLowerCase().includes(searchTerm));\n }\n else {\n this.filteredOptions = [...this.mergedOptions];\n }\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n handleOptionSelect(option) {\n if (this.multiple) {\n if (this.selectedValues.has(option.value)) {\n this.selectedValues.delete(option.value);\n }\n else {\n this.selectedValues.add(option.value);\n }\n this.value = Array.from(this.selectedValues).join(',');\n this.updateDropdownContent();\n }\n else {\n this.value = option.value;\n this.closeDropdown();\n }\n this.updateValueDisplay();\n this.updateClearButton();\n this.dispatchChangeEvent(option);\n }\n handleValueChange() {\n if (this.multiple) {\n this.selectedValues = new Set(this.value ? this.value.split(',').map(v => v.trim()) : []);\n }\n if (this.editable) {\n this.syncEditableInputToValue();\n }\n else {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n if (this.internals) {\n this.internals.setFormValue(this.value);\n }\n }\n handleOptionsPropertyChange() {\n this.filteredOptions = [...this.mergedOptions];\n this.updateDropdownContent();\n if (this.editable) {\n this.syncEditableInputToValue();\n }\n }\n handleDisabledChange() {\n if (!this.editable) {\n this.updateTriggerState();\n this.updateClearButton();\n }\n // Side effect: close dropdown when disabled\n if (this.disabled && this.open) {\n this.closeDropdown();\n }\n }\n handleLoadingChange() {\n if (!this.editable) {\n this.updateTriggerState();\n this.updateClearButton();\n }\n // Side effect: close dropdown when loading\n if (this.loading && this.open) {\n this.closeDropdown();\n }\n }\n handleOpenChange() {\n this.updateDropdownState();\n if (this.editable) {\n this.updateEditableState();\n if (this.open) {\n // Reset filter to show all options when opening\n this.filteredOptions = [...this.mergedOptions];\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n if (!this.open) {\n this.focusedIndex = -1;\n }\n }\n else {\n this.updateTriggerState();\n // Side effect: focus search input when opened\n if (this.open && this.searchable && this.searchInput) {\n setTimeout(() => this.searchInput?.focus(), 100);\n }\n // Side effect: reset search when closed\n if (!this.open) {\n this.focusedIndex = -1;\n if (this.searchInput) {\n this.searchInput.value = '';\n this.filteredOptions = [...this.mergedOptions];\n this.updateDropdownContent();\n }\n }\n }\n }\n updateValueDisplay() {\n if (!this.valueDisplay)\n return;\n const allOptions = this.mergedOptions;\n const selectedOptions = allOptions.filter(opt => this.multiple ? this.selectedValues.has(opt.value) : opt.value === this.value);\n if (this.multiple && selectedOptions.length > 0) {\n this.valueDisplay.innerHTML = /*html*/ `\n <div class=\"select-value--multiple\">\n ${selectedOptions.map(opt => /*html*/ `\n <span class=\"select-tag\">\n <img class=\"select-tag-icon\" src=\"${opt.icon || ''}\" alt=\"\" ${!opt.icon ? 'hidden' : ''} />\n ${opt.label}\n <span class=\"select-tag-remove\" data-value=\"${opt.value}\" aria-label=\"Remove ${opt.label}\" ${this.disabled || this.readonly ? 'hidden' : ''}>×</span>\n </span>\n `).join('')}\n </div>\n `;\n }\n else if (selectedOptions.length > 0) {\n const selected = selectedOptions[0];\n this.valueDisplay.innerHTML = /*html*/ `\n <div class=\"select-value--single\">\n <img class=\"select-value-icon\" src=\"${selected.icon || ''}\" alt=\"\" ${!selected.icon ? 'hidden' : ''} />\n <span>${selected.label}</span>\n </div>\n `;\n }\n else {\n this.valueDisplay.innerHTML = /*html*/ `<span class=\"select-placeholder\">${this.placeholder}</span>`;\n }\n }\n updateClearButton() {\n if (!this.clearButton)\n return;\n const allOptions = this.mergedOptions;\n const selectedOptions = allOptions.filter(opt => this.multiple ? this.selectedValues.has(opt.value) : opt.value === this.value);\n const shouldShow = this.clearable && selectedOptions.length > 0 && !this.disabled && !this.readonly;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n }\n updateDropdownContent() {\n if (!this.optionsList)\n return;\n this.optionsList.innerHTML = this.renderOptions();\n }\n dispatchChangeEvent(option) {\n return {\n value: this.multiple ? Array.from(this.selectedValues) : this.value,\n option,\n select: this\n };\n }\n dispatchOpenEvent() {\n return { select: this };\n }\n dispatchCloseEvent() {\n return { select: this };\n }\n // Public API\n focus() {\n if (this.editable) {\n this.editableInput?.focus();\n }\n else {\n this.trigger?.focus();\n }\n }\n blur() {\n if (this.editable) {\n this.editableInput?.blur();\n }\n else {\n this.trigger?.blur();\n }\n if (this.open) {\n this.closeDropdown();\n }\n }\n clear() {\n if (this.multiple) {\n this.selectedValues.clear();\n this.value = '';\n }\n else {\n this.value = '';\n }\n if (this.editable) {\n this.syncEditableInputToValue();\n }\n else {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.dispatchChangeEvent();\n }\n openDropdown() {\n if (!this.open && !this.disabled && !this.readonly) {\n this.open = true;\n this.dispatchOpenEvent();\n }\n }\n closeDropdown() {\n if (this.open) {\n this.open = false;\n this.dispatchCloseEvent();\n }\n }\n toggleDropdown() {\n if (this.open) {\n this.closeDropdown();\n }\n else {\n this.openDropdown();\n }\n }\n selectOption(value) {\n const allOptions = this.mergedOptions;\n const option = allOptions.find(opt => opt.value === value);\n if (option && !option.disabled) {\n if (this.editable) {\n this.handleEditableOptionSelect(option);\n }\n else {\n this.handleOptionSelect(option);\n }\n }\n }\n updateTriggerState() {\n if (!this.trigger)\n return;\n this.trigger.classList.toggle('select-trigger--open', this.open);\n this.trigger.classList.toggle('select-trigger--disabled', this.disabled);\n this.trigger.classList.toggle('select-trigger--readonly', this.readonly);\n this.trigger.classList.toggle('select-trigger--invalid', this.invalid);\n this.trigger.classList.toggle('select-trigger--loading', this.loading);\n this.trigger.setAttribute('aria-expanded', String(this.open));\n this.trigger.disabled = this.disabled || this.loading;\n }\n updateDropdownState() {\n if (!this.dropdown)\n return;\n this.dropdown.classList.toggle('select-dropdown--open', this.open);\n if (this.arrow) {\n this.arrow.classList.toggle('select-arrow--open', this.open);\n }\n }\n });\n return _classThis;\n})();\n\nexport { SniceSelect };\n//# sourceMappingURL=snice-select.js.map\n","var cssContent = \":host{display:flex;align-items:center;padding:0 var(--snice-table-cell-padding,var(--snice-spacing-md,.75rem));min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem;color:var(--snice-color-text)}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;word-wrap:break-word}:host([align=left]){text-align:left}:host([align=center]){text-align:center}:host([align=right]){text-align:right}:host([type=accounting]),:host([type=currency]),:host([type=fraction]),:host([type=number]),:host([type=percent]),:host([type=scientific]){font-variant-numeric:tabular-nums;text-align:right}:host([type=date]){font-variant-numeric:tabular-nums}:host([type=boolean]){text-align:center;font-size:1rem}:host([type=rating]){text-align:center}:host([type=sparkline]){text-align:center}.cell-content--text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-content--text[data-multiline=true]{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.cell-content--date,.cell-content--number{font-feature-settings:'tnum'}:host([type=boolean]) .cell-content{display:inline-flex;align-items:center;justify-content:center}:host([type=rating]) .cell-content{display:inline-flex;align-items:center;justify-content:center;gap:.125rem}.cell-content--progress{width:100%;min-width:4rem}.cell-content--sparkline{display:flex;align-items:center;justify-content:center;min-width:3rem}:host(.positive){color:var(--snice-color-success)}:host(.negative){color:var(--snice-color-danger)}:host(.warning){color:var(--snice-color-warning);background-color:hsl(var(--snice-color-yellow-100))}:host(.danger){color:var(--snice-color-danger);background-color:hsl(var(--snice-color-red-100))}:host(.success){color:var(--snice-color-success);background-color:hsl(var(--snice-color-green-100))}:host(.info){color:var(--snice-color-primary);background-color:hsl(var(--snice-color-blue-100))}:host(.date--today){font-weight:var(--snice-font-weight-semibold);color:var(--snice-color-primary)}:host(.date--past){color:var(--snice-color-text-secondary)}:host(.date--future){color:var(--snice-color-success)}:host(.number--negative.number--negative-red){color:var(--snice-color-danger)}:host(.number--positive.number--highlighted){color:var(--snice-color-success);font-weight:var(--snice-font-weight-semibold)}:host(.number--zero){color:var(--snice-color-text-secondary)}:host([truncate]) .cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([wrap]) .cell-content{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}:host(:not([value])) .cell-content,:host([value=\\\"\\\"]) .cell-content{color:var(--snice-color-text-secondary)}:host(.loading){position:relative;overflow:hidden}:host(.loading) .cell-content{opacity:.6}:host(.loading)::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,hsl(0 0% 100% / .6),transparent);animation:1.5s infinite cell-shimmer}@keyframes cell-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}:host(:focus-within){outline:2px solid var(--snice-color-primary);outline-offset:-2px}.cell-content button,.cell-content input,.cell-content select{font-size:inherit;line-height:inherit}.cell-content a{color:var(--snice-color-primary);text-decoration:none}.cell-content a:hover{text-decoration:underline}@media (max-width:768px){:host{font-size:.75rem;line-height:1rem}:host([type=boolean]){font-size:.875rem}}@media (prefers-reduced-motion:reduce){:host(.loading)::after{animation:none}}@media (prefers-contrast:high){:host(.positive){background-color:hsl(var(--snice-color-green-100))}:host(.negative){background-color:hsl(var(--snice-color-red-100))}.cell-content a{text-decoration:underline}}@media print{:host{font-size:.75rem}:host(.loading)::after{display:none}.cell-content a{text-decoration:underline}}\";\n\nexport { cssContent as c };\n//# sourceMappingURL=snice-cell-D9dSe0d4.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCell = (() => {\n let _classDecorators = [element('snice-cell')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property()];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `\n <div class=\"cell-content\" part=\"content\">\n ${this.formatValue()}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n this.applyConditionalFormatting();\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n this.contentElement.innerHTML = this.formatValue();\n }\n this.applyConditionalFormatting();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n applyConditionalFormatting() {\n if (!this.column || !this.column.conditionalFormats)\n return;\n // Reset any previous conditional formatting\n this.removeAttribute('style');\n this.className = 'snice-cell';\n this.applyAlignment();\n // Apply column base style if defined\n if (this.column.style) {\n this.applyStyle(this.column.style);\n }\n // Check and apply conditional formats\n for (const format of this.column.conditionalFormats) {\n if (format.condition(this.value, this.rowData)) {\n if (format.style) {\n this.applyStyle(format.style);\n }\n if (format.className) {\n this.classList.add(format.className);\n }\n break; // Apply only the first matching format\n }\n }\n }\n applyStyle(style) {\n if (style.backgroundColor)\n this.style.backgroundColor = style.backgroundColor;\n if (style.color)\n this.style.color = style.color;\n if (style.fontWeight)\n this.style.fontWeight = style.fontWeight;\n if (style.fontStyle)\n this.style.fontStyle = style.fontStyle;\n if (style.fontSize)\n this.style.fontSize = style.fontSize;\n if (style.textDecoration)\n this.style.textDecoration = style.textDecoration;\n }\n formatValue() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Apply type-specific formatting\n switch (this.type) {\n case 'text':\n return this.formatText();\n case 'number':\n return this.formatNumber();\n case 'currency':\n return this.formatCurrency();\n case 'percent':\n return this.formatPercent();\n case 'accounting':\n return this.formatAccounting();\n case 'scientific':\n return this.formatScientific();\n case 'fraction':\n return this.formatFraction();\n case 'date':\n return this.formatDate();\n case 'boolean':\n return this.formatBoolean();\n case 'rating':\n return this.formatRating();\n case 'progress':\n return this.formatProgress();\n case 'sparkline':\n return this.formatSparkline();\n case 'duration':\n return this.formatDuration();\n case 'filesize':\n return this.formatFilesize();\n case 'custom':\n return String(this.value);\n default:\n return String(this.value);\n }\n }\n formatText() {\n return String(this.value);\n }\n formatNumber() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n let formatted = num.toFixed(format.decimals ?? 0);\n if (format.thousandsSeparator) {\n const parts = formatted.split('.');\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n formatted = parts.join('.');\n }\n if (num < 0 && format.negativeStyle === 'parentheses') {\n formatted = `(${formatted.replace('-', '')})`;\n }\n if (format.prefix)\n formatted = format.prefix + formatted;\n if (format.suffix)\n formatted = formatted + format.suffix;\n return formatted;\n }\n formatCurrency() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n const currencyFormat = {\n style: 'currency',\n currency: 'USD',\n minimumFractionDigits: format.decimals ?? 2,\n maximumFractionDigits: format.decimals ?? 2\n };\n return new Intl.NumberFormat('en-US', currencyFormat).format(num);\n }\n formatPercent() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n const percentFormat = {\n style: 'percent',\n minimumFractionDigits: format.decimals ?? 1,\n maximumFractionDigits: format.decimals ?? 1\n };\n return new Intl.NumberFormat('en-US', percentFormat).format(num);\n }\n formatAccounting() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n let formatted = Math.abs(num).toFixed(format.decimals ?? 2);\n if (format.thousandsSeparator) {\n const parts = formatted.split('.');\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n formatted = parts.join('.');\n }\n if (num < 0) {\n formatted = `(${formatted})`;\n }\n else {\n formatted = ` ${formatted} `;\n }\n return formatted;\n }\n formatScientific() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n return num.toExponential(format.decimals ?? 2);\n }\n formatFraction() {\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n // Simple fraction conversion\n const tolerance = 1e-6;\n let h1 = 1, h2 = 0, k1 = 0, k2 = 1;\n let b = num;\n do {\n const a = Math.floor(b);\n let aux = h1;\n h1 = a * h1 + h2;\n h2 = aux;\n aux = k1;\n k1 = a * k1 + k2;\n k2 = aux;\n b = 1 / (b - a);\n } while (Math.abs(num - h1 / k1) > num * tolerance);\n return `${h1}/${k1}`;\n }\n formatDate() {\n const format = this.column.dateFormat || {};\n const date = new Date(this.value);\n if (isNaN(date.getTime()))\n return String(this.value);\n if (format.customFormat) {\n // Simple custom format implementation\n return format.customFormat\n .replace('YYYY', date.getFullYear().toString())\n .replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'))\n .replace('DD', date.getDate().toString().padStart(2, '0'));\n }\n const options = {};\n switch (format.format) {\n case 'short':\n options.dateStyle = 'short';\n break;\n case 'medium':\n options.dateStyle = 'medium';\n break;\n case 'long':\n options.dateStyle = 'long';\n break;\n case 'full':\n options.dateStyle = 'full';\n break;\n default:\n options.dateStyle = 'short';\n }\n return new Intl.DateTimeFormat(format.locale || 'en-US', options).format(date);\n }\n formatBoolean() {\n const format = this.column.booleanFormat || {};\n const bool = Boolean(this.value);\n if (format.useSymbols) {\n return bool\n ? (format.trueSymbol || '✓')\n : (format.falseSymbol || '✗');\n }\n return bool\n ? (format.trueValue || 'true')\n : (format.falseValue || 'false');\n }\n formatRating() {\n const format = this.column.ratingFormat || {};\n const rating = Number(this.value);\n const max = format.max || 5;\n const symbol = format.symbol || '★';\n const emptySymbol = format.emptySymbol || '☆';\n if (isNaN(rating))\n return String(this.value);\n let html = '';\n const primaryColor = format.color || getComputedStyle(this).getPropertyValue('--snice-color-warning').trim();\n const emptyColor = getComputedStyle(this).getPropertyValue('--snice-color-border').trim();\n for (let i = 0; i < max; i++) {\n if (i < rating) {\n html += `<span style=\"color: ${primaryColor}\">${symbol}</span>`;\n }\n else {\n html += `<span style=\"color: ${emptyColor}\">${emptySymbol}</span>`;\n }\n }\n return html;\n }\n formatProgress() {\n const format = this.column.progressFormat || {};\n const value = Number(this.value);\n const max = format.max || 100;\n const percentage = Math.min(100, Math.max(0, (value / max) * 100));\n if (isNaN(value))\n return String(this.value);\n const color = format.color || getComputedStyle(this).getPropertyValue('--snice-color-primary').trim();\n const bgColor = format.backgroundColor || getComputedStyle(this).getPropertyValue('--snice-color-border').trim();\n const height = format.height || '1rem'; // Using rem for height\n let html = `\n <div style=\"\n width: 100%; \n height: ${height}; \n background-color: ${bgColor}; \n border-radius: 0.25rem; \n overflow: hidden;\n position: relative;\n \">\n <div style=\"\n width: ${percentage}%; \n height: 100%; \n background-color: ${color}; \n transition: width 0.3s ease;\n \"></div>\n `;\n if (format.showPercentage) {\n const textColor = percentage > 50\n ? getComputedStyle(this).getPropertyValue('--snice-color-text-inverse').trim()\n : getComputedStyle(this).getPropertyValue('--snice-color-text').trim();\n html += `\n <span style=\"\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n font-size: 0.75rem;\n font-weight: bold;\n color: ${textColor};\n \">${Math.round(percentage)}%</span>\n `;\n }\n html += '</div>';\n return html;\n }\n formatSparkline() {\n const format = this.column.sparklineFormat || {};\n const data = Array.isArray(this.value) ? this.value : [];\n if (data.length === 0)\n return '';\n const width = format.width || 60;\n const height = format.height || 20;\n const color = format.color || getComputedStyle(this).getPropertyValue('--snice-color-primary').trim();\n const type = format.type || 'line';\n const max = Math.max(...data);\n const min = Math.min(...data);\n const range = max - min || 1;\n if (type === 'line') {\n const points = data.map((val, i) => {\n const x = (i / (data.length - 1)) * width;\n const y = height - ((val - min) / range) * height;\n return `${x},${y}`;\n }).join(' ');\n return `\n <svg width=\"${width}\" height=\"${height}\" style=\"display: block;\">\n <polyline \n points=\"${points}\" \n fill=\"none\" \n stroke=\"${color}\" \n stroke-width=\"2\"\n />\n </svg>\n `;\n }\n else if (type === 'bar') {\n const barWidth = width / data.length;\n const bars = data.map((val, i) => {\n const barHeight = ((val - min) / range) * height;\n const x = i * barWidth;\n const y = height - barHeight;\n return `<rect x=\"${x}\" y=\"${y}\" width=\"${barWidth - 1}\" height=\"${barHeight}\" fill=\"${color}\" />`;\n }).join('');\n return `\n <svg width=\"${width}\" height=\"${height}\" style=\"display: block;\">\n ${bars}\n </svg>\n `;\n }\n return String(this.value);\n }\n formatDuration() {\n const seconds = Number(this.value);\n if (isNaN(seconds))\n return String(this.value);\n const hours = Math.floor(seconds / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const secs = seconds % 60;\n if (hours > 0) {\n return `${hours}:${minutes.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;\n }\n else {\n return `${minutes}:${secs.toString().padStart(2, '0')}`;\n }\n }\n formatFilesize() {\n const bytes = Number(this.value);\n if (isNaN(bytes))\n return String(this.value);\n const units = ['B', 'KB', 'MB', 'GB', 'TB'];\n let size = bytes;\n let unitIndex = 0;\n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex++;\n }\n return `${size.toFixed(unitIndex === 0 ? 0 : 1)} ${units[unitIndex]}`;\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'text'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'text',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCell };\n//# sourceMappingURL=snice-cell.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellText = (() => {\n let _classDecorators = [element('snice-cell-text')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _multiline_decorators;\n let _multiline_initializers = [];\n let _multiline_extraInitializers = [];\n let _maxLines_decorators;\n let _maxLines_initializers = [];\n let _maxLines_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _multiline_decorators = [property({ type: Boolean, })];\n _maxLines_decorators = [property({ type: Number, attribute: 'max-lines' })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _multiline_decorators, { kind: \"field\", name: \"multiline\", static: false, private: false, access: { has: obj => \"multiline\" in obj, get: obj => obj.multiline, set: (obj, value) => { obj.multiline = value; } }, metadata: _metadata }, _multiline_initializers, _multiline_extraInitializers);\n __esDecorate(null, null, _maxLines_decorators, { kind: \"field\", name: \"maxLines\", static: false, private: false, access: { has: obj => \"maxLines\" in obj, get: obj => obj.maxLines, set: (obj, value) => { obj.maxLines = value; } }, metadata: _metadata }, _maxLines_initializers, _maxLines_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const content = this.formatTextContent();\n const textStyles = this.getTextStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--text\" part=\"content\" style=\"${textStyles}\">\n ${content}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const content = this.formatTextContent();\n const styles = this.getTextStyles();\n this.contentElement.innerHTML = content;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatTextContent() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n let text = String(this.value);\n // Apply custom formatter if provided\n if (this.column.formatter) {\n text = this.column.formatter(this.value, this.rowData);\n }\n // Handle multiline text\n if (this.multiline) {\n text = text.replace(/\\n/g, '<br>');\n }\n // Handle ellipsis for single line\n if (!this.multiline && this.column.ellipsis) ;\n return text;\n }\n getTextStyles() {\n let styles = [];\n if (!this.multiline) {\n styles.push('white-space: nowrap');\n if (this.column.ellipsis) {\n styles.push('overflow: hidden');\n styles.push('text-overflow: ellipsis');\n }\n }\n else {\n if (this.column.wrap) {\n styles.push('white-space: pre-wrap');\n styles.push('word-wrap: break-word');\n }\n if (this.maxLines) {\n styles.push('display: -webkit-box');\n styles.push('-webkit-box-orient: vertical');\n styles.push(`-webkit-line-clamp: ${this.maxLines}`);\n styles.push('overflow: hidden');\n }\n }\n return styles.join('; ');\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'text'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'text',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.multiline = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _multiline_initializers, false));\n this.maxLines = (__runInitializers(this, _multiline_extraInitializers), __runInitializers(this, _maxLines_initializers, void 0));\n __runInitializers(this, _maxLines_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellText };\n//# sourceMappingURL=snice-cell-text.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellNumber = (() => {\n let _classDecorators = [element('snice-cell-number')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _decimals_decorators;\n let _decimals_initializers = [];\n let _decimals_extraInitializers = [];\n let _thousandsSeparator_decorators;\n let _thousandsSeparator_initializers = [];\n let _thousandsSeparator_extraInitializers = [];\n let _prefix_decorators;\n let _prefix_initializers = [];\n let _prefix_extraInitializers = [];\n let _suffix_decorators;\n let _suffix_initializers = [];\n let _suffix_extraInitializers = [];\n let _negativeStyle_decorators;\n let _negativeStyle_initializers = [];\n let _negativeStyle_extraInitializers = [];\n let _highlight_decorators;\n let _highlight_initializers = [];\n let _highlight_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _decimals_decorators = [property({ type: Number, })];\n _thousandsSeparator_decorators = [property({ type: Boolean, attribute: 'thousands-separator' })];\n _prefix_decorators = [property({})];\n _suffix_decorators = [property({})];\n _negativeStyle_decorators = [property({ attribute: 'negative-style' })];\n _highlight_decorators = [property({ type: Boolean, })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _decimals_decorators, { kind: \"field\", name: \"decimals\", static: false, private: false, access: { has: obj => \"decimals\" in obj, get: obj => obj.decimals, set: (obj, value) => { obj.decimals = value; } }, metadata: _metadata }, _decimals_initializers, _decimals_extraInitializers);\n __esDecorate(null, null, _thousandsSeparator_decorators, { kind: \"field\", name: \"thousandsSeparator\", static: false, private: false, access: { has: obj => \"thousandsSeparator\" in obj, get: obj => obj.thousandsSeparator, set: (obj, value) => { obj.thousandsSeparator = value; } }, metadata: _metadata }, _thousandsSeparator_initializers, _thousandsSeparator_extraInitializers);\n __esDecorate(null, null, _prefix_decorators, { kind: \"field\", name: \"prefix\", static: false, private: false, access: { has: obj => \"prefix\" in obj, get: obj => obj.prefix, set: (obj, value) => { obj.prefix = value; } }, metadata: _metadata }, _prefix_initializers, _prefix_extraInitializers);\n __esDecorate(null, null, _suffix_decorators, { kind: \"field\", name: \"suffix\", static: false, private: false, access: { has: obj => \"suffix\" in obj, get: obj => obj.suffix, set: (obj, value) => { obj.suffix = value; } }, metadata: _metadata }, _suffix_initializers, _suffix_extraInitializers);\n __esDecorate(null, null, _negativeStyle_decorators, { kind: \"field\", name: \"negativeStyle\", static: false, private: false, access: { has: obj => \"negativeStyle\" in obj, get: obj => obj.negativeStyle, set: (obj, value) => { obj.negativeStyle = value; } }, metadata: _metadata }, _negativeStyle_initializers, _negativeStyle_extraInitializers);\n __esDecorate(null, null, _highlight_decorators, { kind: \"field\", name: \"highlight\", static: false, private: false, access: { has: obj => \"highlight\" in obj, get: obj => obj.highlight, set: (obj, value) => { obj.highlight = value; } }, metadata: _metadata }, _highlight_initializers, _highlight_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const formattedValue = this.formatNumberValue();\n const styles = this.getNumberStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--number\" part=\"content\" style=\"${styles}\">\n ${formattedValue}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const formattedValue = this.formatNumberValue();\n const styles = this.getNumberStyles();\n this.contentElement.innerHTML = formattedValue;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatNumberValue() {\n if (this.value === null || this.value === undefined || this.value === '') {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Use column number format or component properties\n const format = this.column.numberFormat || {\n decimals: this.decimals,\n thousandsSeparator: this.thousandsSeparator,\n prefix: this.prefix,\n suffix: this.suffix,\n negativeStyle: this.negativeStyle\n };\n const num = Number(this.value);\n if (isNaN(num)) {\n return String(this.value);\n }\n let formatted = num.toFixed(format.decimals ?? this.decimals);\n // Add thousands separator\n if (format.thousandsSeparator ?? this.thousandsSeparator) {\n const parts = formatted.split('.');\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n formatted = parts.join('.');\n }\n // Handle negative numbers\n if (num < 0) {\n const negStyle = format.negativeStyle ?? this.negativeStyle;\n if (negStyle === 'parentheses') {\n formatted = `(${formatted.replace('-', '')})`;\n }\n else if (negStyle === 'red') {\n // Color will be handled in styles\n formatted = formatted.replace('-', '');\n }\n }\n // Add prefix and suffix\n const prefix = format.prefix ?? this.prefix;\n const suffix = format.suffix ?? this.suffix;\n if (prefix)\n formatted = prefix + formatted;\n if (suffix)\n formatted = formatted + suffix;\n return formatted;\n }\n getNumberStyles() {\n const num = Number(this.value);\n // Remove existing number classes\n this.classList.remove('number--negative', 'number--positive', 'number--zero', 'number--highlighted');\n // Apply CSS classes instead of direct styles\n if (num < 0) {\n this.classList.add('number--negative');\n const negStyle = this.column.numberFormat?.negativeStyle ?? this.negativeStyle;\n if (negStyle === 'red') {\n this.classList.add('number--negative-red');\n }\n }\n else if (num > 0) {\n this.classList.add('number--positive');\n if (this.highlight) {\n this.classList.add('number--highlighted');\n }\n }\n else if (num === 0) {\n this.classList.add('number--zero');\n }\n return 'text-align: right'; // Keep text alignment as style for now\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'number'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'number',\n align: 'right'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.decimals = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _decimals_initializers, 0));\n this.thousandsSeparator = (__runInitializers(this, _decimals_extraInitializers), __runInitializers(this, _thousandsSeparator_initializers, false));\n this.prefix = (__runInitializers(this, _thousandsSeparator_extraInitializers), __runInitializers(this, _prefix_initializers, ''));\n this.suffix = (__runInitializers(this, _prefix_extraInitializers), __runInitializers(this, _suffix_initializers, ''));\n this.negativeStyle = (__runInitializers(this, _suffix_extraInitializers), __runInitializers(this, _negativeStyle_initializers, 'minus'));\n this.highlight = (__runInitializers(this, _negativeStyle_extraInitializers), __runInitializers(this, _highlight_initializers, false));\n __runInitializers(this, _highlight_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellNumber };\n//# sourceMappingURL=snice-cell-number.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellDate = (() => {\n let _classDecorators = [element('snice-cell-date')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _dateFormat_decorators;\n let _dateFormat_initializers = [];\n let _dateFormat_extraInitializers = [];\n let _customFormat_decorators;\n let _customFormat_initializers = [];\n let _customFormat_extraInitializers = [];\n let _locale_decorators;\n let _locale_initializers = [];\n let _locale_extraInitializers = [];\n let _relativeTime_decorators;\n let _relativeTime_initializers = [];\n let _relativeTime_extraInitializers = [];\n let _showTime_decorators;\n let _showTime_initializers = [];\n let _showTime_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _dateFormat_decorators = [property({ attribute: 'date-format' })];\n _customFormat_decorators = [property({ attribute: 'custom-format' })];\n _locale_decorators = [property({})];\n _relativeTime_decorators = [property({ type: Boolean, attribute: 'relative-time' })];\n _showTime_decorators = [property({ type: Boolean, attribute: 'show-time' })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _dateFormat_decorators, { kind: \"field\", name: \"dateFormat\", static: false, private: false, access: { has: obj => \"dateFormat\" in obj, get: obj => obj.dateFormat, set: (obj, value) => { obj.dateFormat = value; } }, metadata: _metadata }, _dateFormat_initializers, _dateFormat_extraInitializers);\n __esDecorate(null, null, _customFormat_decorators, { kind: \"field\", name: \"customFormat\", static: false, private: false, access: { has: obj => \"customFormat\" in obj, get: obj => obj.customFormat, set: (obj, value) => { obj.customFormat = value; } }, metadata: _metadata }, _customFormat_initializers, _customFormat_extraInitializers);\n __esDecorate(null, null, _locale_decorators, { kind: \"field\", name: \"locale\", static: false, private: false, access: { has: obj => \"locale\" in obj, get: obj => obj.locale, set: (obj, value) => { obj.locale = value; } }, metadata: _metadata }, _locale_initializers, _locale_extraInitializers);\n __esDecorate(null, null, _relativeTime_decorators, { kind: \"field\", name: \"relativeTime\", static: false, private: false, access: { has: obj => \"relativeTime\" in obj, get: obj => obj.relativeTime, set: (obj, value) => { obj.relativeTime = value; } }, metadata: _metadata }, _relativeTime_initializers, _relativeTime_extraInitializers);\n __esDecorate(null, null, _showTime_decorators, { kind: \"field\", name: \"showTime\", static: false, private: false, access: { has: obj => \"showTime\" in obj, get: obj => obj.showTime, set: (obj, value) => { obj.showTime = value; } }, metadata: _metadata }, _showTime_initializers, _showTime_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const formattedValue = this.formatDateValue();\n const dateStyles = this.getDateStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--date\" part=\"content\" style=\"${dateStyles}\">\n ${formattedValue}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const formattedValue = this.formatDateValue();\n const styles = this.getDateStyles();\n this.contentElement.innerHTML = formattedValue;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatDateValue() {\n if (this.value === null || this.value === undefined || this.value === '') {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n const date = new Date(this.value);\n if (isNaN(date.getTime())) {\n return String(this.value);\n }\n // Show relative time if enabled\n if (this.relativeTime) {\n return this.formatRelativeTime(date);\n }\n // Use column date format or component properties\n const format = this.column.dateFormat || {\n format: this.dateFormat,\n customFormat: this.customFormat,\n locale: this.locale\n };\n // Handle custom format\n if (format.customFormat || this.customFormat) {\n return this.formatCustomDate(date, format.customFormat || this.customFormat);\n }\n // Use Intl.DateTimeFormat\n const options = {};\n const formatType = format.format ?? this.dateFormat;\n switch (formatType) {\n case 'short':\n options.dateStyle = 'short';\n break;\n case 'medium':\n options.dateStyle = 'medium';\n break;\n case 'long':\n options.dateStyle = 'long';\n break;\n case 'full':\n options.dateStyle = 'full';\n break;\n }\n // Add time if requested\n if (this.showTime) {\n options.timeStyle = 'short';\n }\n const locale = format.locale ?? this.locale;\n return new Intl.DateTimeFormat(locale, options).format(date);\n }\n formatCustomDate(date, format) {\n const tokens = {\n 'YYYY': date.getFullYear().toString(),\n 'YY': date.getFullYear().toString().slice(-2),\n 'MM': (date.getMonth() + 1).toString().padStart(2, '0'),\n 'M': (date.getMonth() + 1).toString(),\n 'DD': date.getDate().toString().padStart(2, '0'),\n 'D': date.getDate().toString(),\n 'HH': date.getHours().toString().padStart(2, '0'),\n 'H': date.getHours().toString(),\n 'mm': date.getMinutes().toString().padStart(2, '0'),\n 'm': date.getMinutes().toString(),\n 'ss': date.getSeconds().toString().padStart(2, '0'),\n 's': date.getSeconds().toString()\n };\n let formatted = format;\n for (const [token, value] of Object.entries(tokens)) {\n formatted = formatted.replace(new RegExp(token, 'g'), value);\n }\n return formatted;\n }\n formatRelativeTime(date) {\n const now = new Date();\n const diffMs = now.getTime() - date.getTime();\n const diffSecs = Math.floor(diffMs / 1000);\n const diffMins = Math.floor(diffSecs / 60);\n const diffHours = Math.floor(diffMins / 60);\n const diffDays = Math.floor(diffHours / 24);\n if (diffSecs < 60) {\n return 'Just now';\n }\n else if (diffMins < 60) {\n return `${diffMins} minute${diffMins === 1 ? '' : 's'} ago`;\n }\n else if (diffHours < 24) {\n return `${diffHours} hour${diffHours === 1 ? '' : 's'} ago`;\n }\n else if (diffDays < 7) {\n return `${diffDays} day${diffDays === 1 ? '' : 's'} ago`;\n }\n else {\n // Fall back to formatted date for older dates\n return new Intl.DateTimeFormat(this.locale, { dateStyle: 'short' }).format(date);\n }\n }\n getDateStyles() {\n const date = new Date(this.value);\n const now = new Date();\n const isToday = date.toDateString() === now.toDateString();\n const isPast = date < now;\n const isFuture = date > now;\n // Apply CSS classes instead of direct styles\n this.classList.remove('date--today', 'date--past', 'date--future');\n if (isToday) {\n this.classList.add('date--today');\n }\n else if (isPast) {\n this.classList.add('date--past');\n }\n else if (isFuture) {\n this.classList.add('date--future');\n }\n return '';\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'date'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'date',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.dateFormat = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _dateFormat_initializers, 'short'));\n this.customFormat = (__runInitializers(this, _dateFormat_extraInitializers), __runInitializers(this, _customFormat_initializers, void 0));\n this.locale = (__runInitializers(this, _customFormat_extraInitializers), __runInitializers(this, _locale_initializers, 'en-US'));\n this.relativeTime = (__runInitializers(this, _locale_extraInitializers), __runInitializers(this, _relativeTime_initializers, false));\n this.showTime = (__runInitializers(this, _relativeTime_extraInitializers), __runInitializers(this, _showTime_initializers, false));\n __runInitializers(this, _showTime_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellDate };\n//# sourceMappingURL=snice-cell-date.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellBoolean = (() => {\n let _classDecorators = [element('snice-cell-boolean')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _trueValue_decorators;\n let _trueValue_initializers = [];\n let _trueValue_extraInitializers = [];\n let _falseValue_decorators;\n let _falseValue_initializers = [];\n let _falseValue_extraInitializers = [];\n let _useSymbols_decorators;\n let _useSymbols_initializers = [];\n let _useSymbols_extraInitializers = [];\n let _trueSymbol_decorators;\n let _trueSymbol_initializers = [];\n let _trueSymbol_extraInitializers = [];\n let _falseSymbol_decorators;\n let _falseSymbol_initializers = [];\n let _falseSymbol_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _trueValue_decorators = [property({ attribute: 'true-value' })];\n _falseValue_decorators = [property({ attribute: 'false-value' })];\n _useSymbols_decorators = [property({ type: Boolean, attribute: 'use-symbols' })];\n _trueSymbol_decorators = [property({ attribute: 'true-symbol' })];\n _falseSymbol_decorators = [property({ attribute: 'false-symbol' })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _trueValue_decorators, { kind: \"field\", name: \"trueValue\", static: false, private: false, access: { has: obj => \"trueValue\" in obj, get: obj => obj.trueValue, set: (obj, value) => { obj.trueValue = value; } }, metadata: _metadata }, _trueValue_initializers, _trueValue_extraInitializers);\n __esDecorate(null, null, _falseValue_decorators, { kind: \"field\", name: \"falseValue\", static: false, private: false, access: { has: obj => \"falseValue\" in obj, get: obj => obj.falseValue, set: (obj, value) => { obj.falseValue = value; } }, metadata: _metadata }, _falseValue_initializers, _falseValue_extraInitializers);\n __esDecorate(null, null, _useSymbols_decorators, { kind: \"field\", name: \"useSymbols\", static: false, private: false, access: { has: obj => \"useSymbols\" in obj, get: obj => obj.useSymbols, set: (obj, value) => { obj.useSymbols = value; } }, metadata: _metadata }, _useSymbols_initializers, _useSymbols_extraInitializers);\n __esDecorate(null, null, _trueSymbol_decorators, { kind: \"field\", name: \"trueSymbol\", static: false, private: false, access: { has: obj => \"trueSymbol\" in obj, get: obj => obj.trueSymbol, set: (obj, value) => { obj.trueSymbol = value; } }, metadata: _metadata }, _trueSymbol_initializers, _trueSymbol_extraInitializers);\n __esDecorate(null, null, _falseSymbol_decorators, { kind: \"field\", name: \"falseSymbol\", static: false, private: false, access: { has: obj => \"falseSymbol\" in obj, get: obj => obj.falseSymbol, set: (obj, value) => { obj.falseSymbol = value; } }, metadata: _metadata }, _falseSymbol_initializers, _falseSymbol_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const content = this.formatBooleanContent();\n return html /*html*/ `\n <div class=\"cell-content cell-content--boolean\" part=\"content\">\n ${unsafeHTML(content)}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const content = this.formatBooleanContent();\n this.contentElement.innerHTML = content;\n }\n }\n formatBooleanContent() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Use column boolean format or component properties\n const format = this.column.booleanFormat || {\n trueValue: this.trueValue,\n falseValue: this.falseValue,\n useSymbols: this.useSymbols,\n trueSymbol: this.trueSymbol,\n falseSymbol: this.falseSymbol\n };\n const isTrue = Boolean(this.value);\n if (format.useSymbols ?? this.useSymbols) {\n const symbol = isTrue ? (format.trueSymbol ?? this.trueSymbol) : (format.falseSymbol ?? this.falseSymbol);\n const colorClass = isTrue ? 'boolean--true' : 'boolean--false';\n return `<span class=\"${colorClass}\">${symbol}</span>`;\n }\n else {\n const text = isTrue ? (format.trueValue ?? this.trueValue) : (format.falseValue ?? this.falseValue);\n const colorClass = isTrue ? 'boolean--true' : 'boolean--false';\n return `<span class=\"${colorClass}\">${text}</span>`;\n }\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'center'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'boolean'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, false));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'boolean',\n align: 'center'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.trueValue = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _trueValue_initializers, 'true'));\n this.falseValue = (__runInitializers(this, _trueValue_extraInitializers), __runInitializers(this, _falseValue_initializers, 'false'));\n this.useSymbols = (__runInitializers(this, _falseValue_extraInitializers), __runInitializers(this, _useSymbols_initializers, true));\n this.trueSymbol = (__runInitializers(this, _useSymbols_extraInitializers), __runInitializers(this, _trueSymbol_initializers, '✓'));\n this.falseSymbol = (__runInitializers(this, _trueSymbol_extraInitializers), __runInitializers(this, _falseSymbol_initializers, '✗'));\n __runInitializers(this, _falseSymbol_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellBoolean };\n//# sourceMappingURL=snice-cell-boolean.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, html, css } from 'snice';\n\nlet SniceRating = (() => {\n let _classDecorators = [element('snice-rating')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _max_decorators;\n let _max_initializers = [];\n let _max_extraInitializers = [];\n let _symbol_decorators;\n let _symbol_initializers = [];\n let _symbol_extraInitializers = [];\n let _emptySymbol_decorators;\n let _emptySymbol_initializers = [];\n let _emptySymbol_extraInitializers = [];\n let _color_decorators;\n let _color_initializers = [];\n let _color_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: Number })];\n _max_decorators = [property({ type: Number })];\n _symbol_decorators = [property()];\n _emptySymbol_decorators = [property()];\n _color_decorators = [property()];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _max_decorators, { kind: \"field\", name: \"max\", static: false, private: false, access: { has: obj => \"max\" in obj, get: obj => obj.max, set: (obj, value) => { obj.max = value; } }, metadata: _metadata }, _max_initializers, _max_extraInitializers);\n __esDecorate(null, null, _symbol_decorators, { kind: \"field\", name: \"symbol\", static: false, private: false, access: { has: obj => \"symbol\" in obj, get: obj => obj.symbol, set: (obj, value) => { obj.symbol = value; } }, metadata: _metadata }, _symbol_initializers, _symbol_extraInitializers);\n __esDecorate(null, null, _emptySymbol_decorators, { kind: \"field\", name: \"emptySymbol\", static: false, private: false, access: { has: obj => \"emptySymbol\" in obj, get: obj => obj.emptySymbol, set: (obj, value) => { obj.emptySymbol = value; } }, metadata: _metadata }, _emptySymbol_initializers, _emptySymbol_extraInitializers);\n __esDecorate(null, null, _color_decorators, { kind: \"field\", name: \"color\", static: false, private: false, access: { has: obj => \"color\" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const filled = Math.round(this.value);\n const empty = this.max - filled;\n return html /*html*/ `\n <span class=\"filled\">${this.symbol.repeat(filled)}</span><span class=\"empty\">${this.emptySymbol.repeat(empty)}</span>\n `;\n }\n styles() {\n return css /*css*/ `\n :host {\n display: inline-block;\n font-size: 1.2em;\n }\n\n .filled {\n color: ${this.color};\n }\n\n .empty {\n color: #d1d5db;\n }\n `;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, 0));\n this.max = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _max_initializers, 5));\n this.symbol = (__runInitializers(this, _max_extraInitializers), __runInitializers(this, _symbol_initializers, '★'));\n this.emptySymbol = (__runInitializers(this, _symbol_extraInitializers), __runInitializers(this, _emptySymbol_initializers, '☆'));\n this.color = (__runInitializers(this, _emptySymbol_extraInitializers), __runInitializers(this, _color_initializers, '#facc15'));\n __runInitializers(this, _color_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceRating };\n//# sourceMappingURL=snice-rating.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\nimport './snice-rating.js';\n\nlet SniceCellRating = (() => {\n let _classDecorators = [element('snice-cell-rating')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `\n <div class=\"cell-content cell-content--rating\" part=\"content\">\n <!-- Rating component will be created here -->\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n this.createRatingElement();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n this.createRatingElement();\n }\n createRatingElement() {\n if (!this.contentElement)\n return;\n // Clear existing content\n this.contentElement.innerHTML = '';\n // Create rating element\n const rating = document.createElement('snice-rating');\n rating.value = Number(this.value) || 0;\n // Apply format from column\n const format = this.column.ratingFormat || {};\n rating.max = format.max ?? 5;\n rating.symbol = format.symbol ?? '★';\n rating.emptySymbol = format.emptySymbol ?? '☆';\n rating.color = format.color ?? getComputedStyle(this).getPropertyValue('--snice-color-warning').trim();\n this.contentElement.appendChild(rating);\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'center'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'rating'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, 0));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'rating',\n align: 'center'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellRating };\n//# sourceMappingURL=snice-cell-rating.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, html, css } from 'snice';\n\nlet SniceProgress = (() => {\n let _classDecorators = [element('snice-progress')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _max_decorators;\n let _max_initializers = [];\n let _max_extraInitializers = [];\n let _color_decorators;\n let _color_initializers = [];\n let _color_extraInitializers = [];\n let _backgroundColor_decorators;\n let _backgroundColor_initializers = [];\n let _backgroundColor_extraInitializers = [];\n let _height_decorators;\n let _height_initializers = [];\n let _height_extraInitializers = [];\n let _showPercentage_decorators;\n let _showPercentage_initializers = [];\n let _showPercentage_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: Number })];\n _max_decorators = [property({ type: Number })];\n _color_decorators = [property()];\n _backgroundColor_decorators = [property()];\n _height_decorators = [property()];\n _showPercentage_decorators = [property({ type: Boolean })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _max_decorators, { kind: \"field\", name: \"max\", static: false, private: false, access: { has: obj => \"max\" in obj, get: obj => obj.max, set: (obj, value) => { obj.max = value; } }, metadata: _metadata }, _max_initializers, _max_extraInitializers);\n __esDecorate(null, null, _color_decorators, { kind: \"field\", name: \"color\", static: false, private: false, access: { has: obj => \"color\" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);\n __esDecorate(null, null, _backgroundColor_decorators, { kind: \"field\", name: \"backgroundColor\", static: false, private: false, access: { has: obj => \"backgroundColor\" in obj, get: obj => obj.backgroundColor, set: (obj, value) => { obj.backgroundColor = value; } }, metadata: _metadata }, _backgroundColor_initializers, _backgroundColor_extraInitializers);\n __esDecorate(null, null, _height_decorators, { kind: \"field\", name: \"height\", static: false, private: false, access: { has: obj => \"height\" in obj, get: obj => obj.height, set: (obj, value) => { obj.height = value; } }, metadata: _metadata }, _height_initializers, _height_extraInitializers);\n __esDecorate(null, null, _showPercentage_decorators, { kind: \"field\", name: \"showPercentage\", static: false, private: false, access: { has: obj => \"showPercentage\" in obj, get: obj => obj.showPercentage, set: (obj, value) => { obj.showPercentage = value; } }, metadata: _metadata }, _showPercentage_initializers, _showPercentage_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const percentage = Math.min(100, (this.value / this.max) * 100);\n return html /*html*/ `\n <div class=\"progress-container\">\n <div class=\"progress-bar\" style=\"width: ${percentage}%\"></div>\n </div>\n <if ${this.showPercentage}>\n <span class=\"percentage\">${percentage.toFixed(0)}%</span>\n </if>\n `;\n }\n styles() {\n return css /*css*/ `\n :host {\n display: inline-flex;\n align-items: center;\n width: 100%;\n gap: 0.5rem; /* 8px */\n }\n\n .progress-container {\n flex: 1;\n height: ${this.height};\n background: ${this.backgroundColor};\n border-radius: 0.25rem; /* 4px */\n overflow: hidden;\n }\n\n .progress-bar {\n height: 100%;\n background: ${this.color};\n transition: width 0.3s ease;\n }\n\n .percentage {\n font-size: 0.875rem; /* 14px */\n color: #6b7280;\n min-width: 2.1875rem; /* 35px */\n }\n `;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, 0));\n this.max = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _max_initializers, 100));\n this.color = (__runInitializers(this, _max_extraInitializers), __runInitializers(this, _color_initializers, '#3b82f6'));\n this.backgroundColor = (__runInitializers(this, _color_extraInitializers), __runInitializers(this, _backgroundColor_initializers, '#e5e7eb'));\n this.height = (__runInitializers(this, _backgroundColor_extraInitializers), __runInitializers(this, _height_initializers, '0.5rem')); /* 8px */\n this.showPercentage = (__runInitializers(this, _height_extraInitializers), __runInitializers(this, _showPercentage_initializers, false));\n __runInitializers(this, _showPercentage_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceProgress };\n//# sourceMappingURL=snice-progress.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\nimport './snice-progress.js';\n\nlet SniceCellProgress = (() => {\n let _classDecorators = [element('snice-cell-progress')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `\n <div class=\"cell-content cell-content--progress\" part=\"content\">\n <!-- Progress component will be created here -->\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n this.createProgressElement();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n this.createProgressElement();\n }\n createProgressElement() {\n if (!this.contentElement)\n return;\n // Clear existing content\n this.contentElement.innerHTML = '';\n // Create progress element\n const progress = document.createElement('snice-progress');\n progress.value = Number(this.value) || 0;\n // Apply format from column\n const format = this.column.progressFormat || {};\n progress.max = format.max ?? 100;\n progress.color = format.color ?? getComputedStyle(this).getPropertyValue('--snice-color-primary').trim();\n progress.backgroundColor = format.backgroundColor ?? getComputedStyle(this).getPropertyValue('--snice-color-border').trim();\n progress.height = format.height ?? '0.5rem';\n progress.showPercentage = format.showPercentage ?? false;\n this.contentElement.appendChild(progress);\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'progress'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, 0));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'progress',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellProgress };\n//# sourceMappingURL=snice-cell-progress.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellDuration = (() => {\n let _classDecorators = [element('snice-cell-duration')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const content = this.formatDuration();\n return html /*html*/ `\n <div class=\"cell-content cell-content--duration\" part=\"content\">\n ${content}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const content = this.formatDuration();\n this.contentElement.innerHTML = content;\n }\n }\n formatDuration() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n const seconds = Number(this.value);\n if (isNaN(seconds))\n return String(this.value);\n const hours = Math.floor(seconds / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const secs = Math.floor(seconds % 60);\n if (hours > 0) {\n return `${hours}h ${minutes}m ${secs}s`;\n }\n else if (minutes > 0) {\n return `${minutes}m ${secs}s`;\n }\n else {\n return `${secs}s`;\n }\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'duration'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, 0));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'duration',\n align: 'right'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellDuration };\n//# sourceMappingURL=snice-cell-duration.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellFilesize = (() => {\n let _classDecorators = [element('snice-cell-filesize')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const content = this.formatFileSize();\n return html /*html*/ `\n <div class=\"cell-content cell-content--filesize\" part=\"content\">\n ${content}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const content = this.formatFileSize();\n this.contentElement.innerHTML = content;\n }\n }\n formatFileSize() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n const bytes = Number(this.value);\n if (isNaN(bytes))\n return String(this.value);\n const units = ['B', 'KB', 'MB', 'GB', 'TB'];\n let size = bytes;\n let unitIndex = 0;\n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex++;\n }\n return `${size.toFixed(1)} ${units[unitIndex]}`;\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'filesize'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, 0));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'filesize',\n align: 'right'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellFilesize };\n//# sourceMappingURL=snice-cell-filesize.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, SimpleArray, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellSparkline = (() => {\n let _classDecorators = [element('snice-cell-sparkline')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _chartType_decorators;\n let _chartType_initializers = [];\n let _chartType_extraInitializers = [];\n let _color_decorators;\n let _color_initializers = [];\n let _color_extraInitializers = [];\n let _width_decorators;\n let _width_initializers = [];\n let _width_extraInitializers = [];\n let _height_decorators;\n let _height_initializers = [];\n let _height_extraInitializers = [];\n let _showDots_decorators;\n let _showDots_initializers = [];\n let _showDots_extraInitializers = [];\n let _showBaseline_decorators;\n let _showBaseline_initializers = [];\n let _showBaseline_extraInitializers = [];\n let _strokeWidth_decorators;\n let _strokeWidth_initializers = [];\n let _strokeWidth_extraInitializers = [];\n let _minValue_decorators;\n let _minValue_initializers = [];\n let _minValue_extraInitializers = [];\n let _maxValue_decorators;\n let _maxValue_initializers = [];\n let _maxValue_extraInitializers = [];\n let _data_decorators;\n let _data_initializers = [];\n let _data_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n let _updateSparkline_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _chartType_decorators = [property({ attribute: 'chart-type' })];\n _color_decorators = [property({})];\n _width_decorators = [property({ type: Number, })];\n _height_decorators = [property({ type: Number, })];\n _showDots_decorators = [property({ type: Boolean, attribute: 'show-dots' })];\n _showBaseline_decorators = [property({ type: Boolean, attribute: 'show-baseline' })];\n _strokeWidth_decorators = [property({ type: Number, attribute: 'stroke-width' })];\n _minValue_decorators = [property({ type: Number, attribute: 'min-value' })];\n _maxValue_decorators = [property({ type: Number, attribute: 'max-value' })];\n _data_decorators = [property({ type: SimpleArray, })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'data', 'column')];\n _updateSparkline_decorators = [watch('value', 'data', 'chartType', 'color', 'width', 'height', 'showDots', 'showBaseline', 'strokeWidth', 'minValue', 'maxValue')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateSparkline_decorators, { kind: \"method\", name: \"updateSparkline\", static: false, private: false, access: { has: obj => \"updateSparkline\" in obj, get: obj => obj.updateSparkline }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _chartType_decorators, { kind: \"field\", name: \"chartType\", static: false, private: false, access: { has: obj => \"chartType\" in obj, get: obj => obj.chartType, set: (obj, value) => { obj.chartType = value; } }, metadata: _metadata }, _chartType_initializers, _chartType_extraInitializers);\n __esDecorate(null, null, _color_decorators, { kind: \"field\", name: \"color\", static: false, private: false, access: { has: obj => \"color\" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);\n __esDecorate(null, null, _width_decorators, { kind: \"field\", name: \"width\", static: false, private: false, access: { has: obj => \"width\" in obj, get: obj => obj.width, set: (obj, value) => { obj.width = value; } }, metadata: _metadata }, _width_initializers, _width_extraInitializers);\n __esDecorate(null, null, _height_decorators, { kind: \"field\", name: \"height\", static: false, private: false, access: { has: obj => \"height\" in obj, get: obj => obj.height, set: (obj, value) => { obj.height = value; } }, metadata: _metadata }, _height_initializers, _height_extraInitializers);\n __esDecorate(null, null, _showDots_decorators, { kind: \"field\", name: \"showDots\", static: false, private: false, access: { has: obj => \"showDots\" in obj, get: obj => obj.showDots, set: (obj, value) => { obj.showDots = value; } }, metadata: _metadata }, _showDots_initializers, _showDots_extraInitializers);\n __esDecorate(null, null, _showBaseline_decorators, { kind: \"field\", name: \"showBaseline\", static: false, private: false, access: { has: obj => \"showBaseline\" in obj, get: obj => obj.showBaseline, set: (obj, value) => { obj.showBaseline = value; } }, metadata: _metadata }, _showBaseline_initializers, _showBaseline_extraInitializers);\n __esDecorate(null, null, _strokeWidth_decorators, { kind: \"field\", name: \"strokeWidth\", static: false, private: false, access: { has: obj => \"strokeWidth\" in obj, get: obj => obj.strokeWidth, set: (obj, value) => { obj.strokeWidth = value; } }, metadata: _metadata }, _strokeWidth_initializers, _strokeWidth_extraInitializers);\n __esDecorate(null, null, _minValue_decorators, { kind: \"field\", name: \"minValue\", static: false, private: false, access: { has: obj => \"minValue\" in obj, get: obj => obj.minValue, set: (obj, value) => { obj.minValue = value; } }, metadata: _metadata }, _minValue_initializers, _minValue_extraInitializers);\n __esDecorate(null, null, _maxValue_decorators, { kind: \"field\", name: \"maxValue\", static: false, private: false, access: { has: obj => \"maxValue\" in obj, get: obj => obj.maxValue, set: (obj, value) => { obj.maxValue = value; } }, metadata: _metadata }, _maxValue_initializers, _maxValue_extraInitializers);\n __esDecorate(null, null, _data_decorators, { kind: \"field\", name: \"data\", static: false, private: false, access: { has: obj => \"data\" in obj, get: obj => obj.data, set: (obj, value) => { obj.data = value; } }, metadata: _metadata }, _data_initializers, _data_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `\n <div class=\"cell-content cell-content--sparkline\" part=\"content\">\n ${unsafeHTML(this.renderSparkline())}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n this.updateSparkline();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n this.contentElement.innerHTML = this.renderSparkline();\n }\n }\n updateSparkline() {\n if (this.contentElement) {\n this.contentElement.innerHTML = this.renderSparkline();\n }\n }\n renderSparkline() {\n if ((this.value === null || this.value === undefined) && (!this.data || this.data.length === 0)) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n const data = this.parseData();\n if (data.length === 0) {\n return `<span style=\"color: ${getComputedStyle(this).getPropertyValue('--snice-color-text-secondary').trim()}; font-style: italic;\">No data</span>`;\n }\n // Use column sparkline format or component properties\n const format = this.column.sparklineFormat || {\n type: this.chartType,\n color: this.color,\n width: this.width,\n height: this.height\n };\n const width = format.width ?? this.width;\n const height = format.height ?? this.height;\n const color = format.color ?? this.color;\n const type = format.type ?? this.chartType;\n return this.createCanvas(data, width, height, color, type);\n }\n parseData() {\n // First, try the dedicated data property (using SimpleArray)\n if (this.data && Array.isArray(this.data) && this.data.length > 0) {\n return this.data.map(v => Number(v)).filter(n => !isNaN(n));\n }\n // Fallback to value property for backwards compatibility\n if (Array.isArray(this.value)) {\n return this.value.map(v => Number(v)).filter(n => !isNaN(n));\n }\n if (typeof this.value === 'string') {\n // Try to parse as JSON array first (e.g., \"[1,2,3]\")\n if (this.value.startsWith('[') && this.value.endsWith(']')) {\n try {\n const parsed = JSON.parse(this.value);\n if (Array.isArray(parsed)) {\n return parsed.map(v => Number(v)).filter(n => !isNaN(n));\n }\n }\n catch {\n // Fall through to comma-separated parsing\n }\n }\n // Try to parse comma-separated values\n try {\n return this.value.split(',').map(v => Number(v.trim())).filter(n => !isNaN(n));\n }\n catch {\n return [];\n }\n }\n return [];\n }\n createCanvas(data, width, height, color, type) {\n if (data.length === 0)\n return '';\n // Create a canvas element\n const canvas = document.createElement('canvas');\n canvas.width = width;\n canvas.height = height;\n const ctx = canvas.getContext('2d');\n if (!ctx)\n return '<div style=\"color: red;\">Canvas not supported</div>';\n const padding = 2;\n const chartWidth = width - (padding * 2);\n const chartHeight = height - (padding * 2);\n const min = this.minValue ?? Math.min(...data);\n const max = this.maxValue ?? Math.max(...data);\n const range = max - min || 1;\n // Clear canvas\n ctx.clearRect(0, 0, width, height);\n // Resolve CSS variables for canvas (canvas doesn't understand CSS vars)\n let resolvedColor = color;\n if (color.startsWith('var(')) {\n const match = color.match(/var\\(([^)]+)\\)/);\n if (match) {\n resolvedColor = getComputedStyle(this).getPropertyValue(match[1].split(',')[0].trim()).trim() || '#3b82f6';\n }\n }\n // Set color and line properties\n ctx.strokeStyle = resolvedColor;\n ctx.fillStyle = resolvedColor;\n ctx.lineWidth = this.strokeWidth;\n ctx.lineCap = 'round';\n ctx.lineJoin = 'round';\n if (type === 'line' || type === 'area') {\n const points = data.map((val, i) => {\n const x = padding + (i / (data.length - 1)) * chartWidth;\n const y = padding + chartHeight - ((val - min) / range) * chartHeight;\n return [x, y];\n });\n // Draw area fill if needed\n if (type === 'area') {\n ctx.beginPath();\n ctx.moveTo(points[0][0], points[0][1]);\n points.forEach(([x, y]) => ctx.lineTo(x, y));\n ctx.lineTo(points[points.length - 1][0], height - padding);\n ctx.lineTo(points[0][0], height - padding);\n ctx.closePath();\n ctx.globalAlpha = 0.3;\n ctx.fill();\n ctx.globalAlpha = 1;\n }\n // Draw line\n ctx.beginPath();\n ctx.moveTo(points[0][0], points[0][1]);\n points.forEach(([x, y]) => ctx.lineTo(x, y));\n ctx.stroke();\n // Draw dots if enabled\n if (this.showDots) {\n points.forEach(([x, y]) => {\n ctx.beginPath();\n ctx.arc(x, y, 1.5, 0, 2 * Math.PI);\n ctx.fill();\n });\n }\n }\n else if (type === 'bar') {\n const barWidth = (chartWidth / data.length) * 0.8;\n const barSpacing = (chartWidth / data.length) * 0.2;\n data.forEach((val, i) => {\n const barHeight = ((val - min) / range) * chartHeight;\n const x = padding + i * (barWidth + barSpacing);\n const y = padding + chartHeight - barHeight;\n ctx.fillRect(x, y, barWidth, barHeight);\n });\n }\n // Convert canvas to data URL\n try {\n const dataUrl = canvas.toDataURL('image/png');\n return `<img src=\"${dataUrl}\" width=\"${width}\" height=\"${height}\" alt=\"Sparkline chart\" style=\"display: block; vertical-align: middle;\">`;\n }\n catch (error) {\n console.error('Error creating canvas image:', error);\n return `<div style=\"color: red;\">Canvas error</div>`;\n }\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'sparkline'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'sparkline',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.chartType = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _chartType_initializers, 'line'));\n this.color = (__runInitializers(this, _chartType_extraInitializers), __runInitializers(this, _color_initializers, 'var(--snice-color-primary)'));\n this.width = (__runInitializers(this, _color_extraInitializers), __runInitializers(this, _width_initializers, 80));\n this.height = (__runInitializers(this, _width_extraInitializers), __runInitializers(this, _height_initializers, 24));\n this.showDots = (__runInitializers(this, _height_extraInitializers), __runInitializers(this, _showDots_initializers, false));\n this.showBaseline = (__runInitializers(this, _showDots_extraInitializers), __runInitializers(this, _showBaseline_initializers, false));\n this.strokeWidth = (__runInitializers(this, _showBaseline_extraInitializers), __runInitializers(this, _strokeWidth_initializers, 1.5));\n this.minValue = (__runInitializers(this, _strokeWidth_extraInitializers), __runInitializers(this, _minValue_initializers, void 0));\n this.maxValue = (__runInitializers(this, _minValue_extraInitializers), __runInitializers(this, _maxValue_initializers, void 0));\n this.data = (__runInitializers(this, _maxValue_extraInitializers), __runInitializers(this, _data_initializers, []));\n __runInitializers(this, _data_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellSparkline };\n//# sourceMappingURL=snice-cell-sparkline.js.map\n","import { __runInitializers, __esDecorate } from 'tslib';\nimport { element, property, render, watch, html } from 'snice';\n\nlet SniceColumn = (() => {\n let _classDecorators = [element('snice-column')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _key_decorators;\n let _key_initializers = [];\n let _key_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _width_decorators;\n let _width_initializers = [];\n let _width_extraInitializers = [];\n let _sortable_decorators;\n let _sortable_initializers = [];\n let _sortable_extraInitializers = [];\n let _filterable_decorators;\n let _filterable_initializers = [];\n let _filterable_extraInitializers = [];\n let _wrap_decorators;\n let _wrap_initializers = [];\n let _wrap_extraInitializers = [];\n let _ellipsis_decorators;\n let _ellipsis_initializers = [];\n let _ellipsis_extraInitializers = [];\n let _tooltip_decorators;\n let _tooltip_initializers = [];\n let _tooltip_extraInitializers = [];\n let _decimals_decorators;\n let _decimals_initializers = [];\n let _decimals_extraInitializers = [];\n let _thousandsSeparator_decorators;\n let _thousandsSeparator_initializers = [];\n let _thousandsSeparator_extraInitializers = [];\n let _numberPrefix_decorators;\n let _numberPrefix_initializers = [];\n let _numberPrefix_extraInitializers = [];\n let _numberSuffix_decorators;\n let _numberSuffix_initializers = [];\n let _numberSuffix_extraInitializers = [];\n let _negativeStyle_decorators;\n let _negativeStyle_initializers = [];\n let _negativeStyle_extraInitializers = [];\n let _dateFormat_decorators;\n let _dateFormat_initializers = [];\n let _dateFormat_extraInitializers = [];\n let _customDateFormat_decorators;\n let _customDateFormat_initializers = [];\n let _customDateFormat_extraInitializers = [];\n let _dateLocale_decorators;\n let _dateLocale_initializers = [];\n let _dateLocale_extraInitializers = [];\n let _trueValue_decorators;\n let _trueValue_initializers = [];\n let _trueValue_extraInitializers = [];\n let _falseValue_decorators;\n let _falseValue_initializers = [];\n let _falseValue_extraInitializers = [];\n let _useSymbols_decorators;\n let _useSymbols_initializers = [];\n let _useSymbols_extraInitializers = [];\n let _trueSymbol_decorators;\n let _trueSymbol_initializers = [];\n let _trueSymbol_extraInitializers = [];\n let _falseSymbol_decorators;\n let _falseSymbol_initializers = [];\n let _falseSymbol_extraInitializers = [];\n let _ratingMax_decorators;\n let _ratingMax_initializers = [];\n let _ratingMax_extraInitializers = [];\n let _ratingSymbol_decorators;\n let _ratingSymbol_initializers = [];\n let _ratingSymbol_extraInitializers = [];\n let _ratingEmptySymbol_decorators;\n let _ratingEmptySymbol_initializers = [];\n let _ratingEmptySymbol_extraInitializers = [];\n let _ratingColor_decorators;\n let _ratingColor_initializers = [];\n let _ratingColor_extraInitializers = [];\n let _progressMax_decorators;\n let _progressMax_initializers = [];\n let _progressMax_extraInitializers = [];\n let _showPercentage_decorators;\n let _showPercentage_initializers = [];\n let _showPercentage_extraInitializers = [];\n let _progressColor_decorators;\n let _progressColor_initializers = [];\n let _progressColor_extraInitializers = [];\n let _progressBgColor_decorators;\n let _progressBgColor_initializers = [];\n let _progressBgColor_extraInitializers = [];\n let _progressHeight_decorators;\n let _progressHeight_initializers = [];\n let _progressHeight_extraInitializers = [];\n let _sparklineType_decorators;\n let _sparklineType_initializers = [];\n let _sparklineType_extraInitializers = [];\n let _sparklineColor_decorators;\n let _sparklineColor_initializers = [];\n let _sparklineColor_extraInitializers = [];\n let _sparklineWidth_decorators;\n let _sparklineWidth_initializers = [];\n let _sparklineWidth_extraInitializers = [];\n let _sparklineHeight_decorators;\n let _sparklineHeight_initializers = [];\n let _sparklineHeight_extraInitializers = [];\n let _cellBgColor_decorators;\n let _cellBgColor_initializers = [];\n let _cellBgColor_extraInitializers = [];\n let _cellColor_decorators;\n let _cellColor_initializers = [];\n let _cellColor_extraInitializers = [];\n let _cellFontWeight_decorators;\n let _cellFontWeight_initializers = [];\n let _cellFontWeight_extraInitializers = [];\n let _cellFontStyle_decorators;\n let _cellFontStyle_initializers = [];\n let _cellFontStyle_extraInitializers = [];\n let _cellFontSize_decorators;\n let _cellFontSize_initializers = [];\n let _cellFontSize_extraInitializers = [];\n let _cellTextDecoration_decorators;\n let _cellTextDecoration_initializers = [];\n let _cellTextDecoration_extraInitializers = [];\n let _render_decorators;\n let _handleBasicPropsChange_decorators;\n let _handleNumberFormatChange_decorators;\n let _handleDateFormatChange_decorators;\n let _handleBooleanFormatChange_decorators;\n let _handleRatingFormatChange_decorators;\n let _handleProgressFormatChange_decorators;\n let _handleSparklineFormatChange_decorators;\n let _handleStyleChange_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n constructor() {\n super(...arguments);\n this.key = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _key_initializers, ''));\n this.label = (__runInitializers(this, _key_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.type = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _type_initializers, 'text'));\n this.align = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.width = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _width_initializers, ''));\n this.sortable = (__runInitializers(this, _width_extraInitializers), __runInitializers(this, _sortable_initializers, true));\n this.filterable = (__runInitializers(this, _sortable_extraInitializers), __runInitializers(this, _filterable_initializers, true));\n this.wrap = (__runInitializers(this, _filterable_extraInitializers), __runInitializers(this, _wrap_initializers, false));\n this.ellipsis = (__runInitializers(this, _wrap_extraInitializers), __runInitializers(this, _ellipsis_initializers, true));\n this.tooltip = (__runInitializers(this, _ellipsis_extraInitializers), __runInitializers(this, _tooltip_initializers, false));\n // Number formatting properties\n this.decimals = (__runInitializers(this, _tooltip_extraInitializers), __runInitializers(this, _decimals_initializers, void 0));\n this.thousandsSeparator = (__runInitializers(this, _decimals_extraInitializers), __runInitializers(this, _thousandsSeparator_initializers, void 0));\n this.numberPrefix = (__runInitializers(this, _thousandsSeparator_extraInitializers), __runInitializers(this, _numberPrefix_initializers, void 0));\n this.numberSuffix = (__runInitializers(this, _numberPrefix_extraInitializers), __runInitializers(this, _numberSuffix_initializers, void 0));\n this.negativeStyle = (__runInitializers(this, _numberSuffix_extraInitializers), __runInitializers(this, _negativeStyle_initializers, void 0));\n // Date formatting properties\n this.dateFormat = (__runInitializers(this, _negativeStyle_extraInitializers), __runInitializers(this, _dateFormat_initializers, void 0));\n this.customDateFormat = (__runInitializers(this, _dateFormat_extraInitializers), __runInitializers(this, _customDateFormat_initializers, void 0));\n this.dateLocale = (__runInitializers(this, _customDateFormat_extraInitializers), __runInitializers(this, _dateLocale_initializers, void 0));\n // Boolean formatting properties\n this.trueValue = (__runInitializers(this, _dateLocale_extraInitializers), __runInitializers(this, _trueValue_initializers, void 0));\n this.falseValue = (__runInitializers(this, _trueValue_extraInitializers), __runInitializers(this, _falseValue_initializers, void 0));\n this.useSymbols = (__runInitializers(this, _falseValue_extraInitializers), __runInitializers(this, _useSymbols_initializers, void 0));\n this.trueSymbol = (__runInitializers(this, _useSymbols_extraInitializers), __runInitializers(this, _trueSymbol_initializers, void 0));\n this.falseSymbol = (__runInitializers(this, _trueSymbol_extraInitializers), __runInitializers(this, _falseSymbol_initializers, void 0));\n // Rating formatting properties\n this.ratingMax = (__runInitializers(this, _falseSymbol_extraInitializers), __runInitializers(this, _ratingMax_initializers, void 0));\n this.ratingSymbol = (__runInitializers(this, _ratingMax_extraInitializers), __runInitializers(this, _ratingSymbol_initializers, void 0));\n this.ratingEmptySymbol = (__runInitializers(this, _ratingSymbol_extraInitializers), __runInitializers(this, _ratingEmptySymbol_initializers, void 0));\n this.ratingColor = (__runInitializers(this, _ratingEmptySymbol_extraInitializers), __runInitializers(this, _ratingColor_initializers, void 0));\n // Progress formatting properties\n this.progressMax = (__runInitializers(this, _ratingColor_extraInitializers), __runInitializers(this, _progressMax_initializers, void 0));\n this.showPercentage = (__runInitializers(this, _progressMax_extraInitializers), __runInitializers(this, _showPercentage_initializers, void 0));\n this.progressColor = (__runInitializers(this, _showPercentage_extraInitializers), __runInitializers(this, _progressColor_initializers, void 0));\n this.progressBgColor = (__runInitializers(this, _progressColor_extraInitializers), __runInitializers(this, _progressBgColor_initializers, void 0));\n this.progressHeight = (__runInitializers(this, _progressBgColor_extraInitializers), __runInitializers(this, _progressHeight_initializers, void 0));\n // Sparkline formatting properties\n this.sparklineType = (__runInitializers(this, _progressHeight_extraInitializers), __runInitializers(this, _sparklineType_initializers, void 0));\n this.sparklineColor = (__runInitializers(this, _sparklineType_extraInitializers), __runInitializers(this, _sparklineColor_initializers, void 0));\n this.sparklineWidth = (__runInitializers(this, _sparklineColor_extraInitializers), __runInitializers(this, _sparklineWidth_initializers, void 0));\n this.sparklineHeight = (__runInitializers(this, _sparklineWidth_extraInitializers), __runInitializers(this, _sparklineHeight_initializers, void 0));\n // Style properties\n this.cellBgColor = (__runInitializers(this, _sparklineHeight_extraInitializers), __runInitializers(this, _cellBgColor_initializers, void 0));\n this.cellColor = (__runInitializers(this, _cellBgColor_extraInitializers), __runInitializers(this, _cellColor_initializers, void 0));\n this.cellFontWeight = (__runInitializers(this, _cellColor_extraInitializers), __runInitializers(this, _cellFontWeight_initializers, void 0));\n this.cellFontStyle = (__runInitializers(this, _cellFontWeight_extraInitializers), __runInitializers(this, _cellFontStyle_initializers, void 0));\n this.cellFontSize = (__runInitializers(this, _cellFontStyle_extraInitializers), __runInitializers(this, _cellFontSize_initializers, void 0));\n this.cellTextDecoration = (__runInitializers(this, _cellFontSize_extraInitializers), __runInitializers(this, _cellTextDecoration_initializers, void 0));\n this.formatter = __runInitializers(this, _cellTextDecoration_extraInitializers);\n this.conditionalFormats = [];\n }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _key_decorators = [property({})];\n _label_decorators = [property({})];\n _type_decorators = [property({})];\n _align_decorators = [property({})];\n _width_decorators = [property({})];\n _sortable_decorators = [property({ type: Boolean, })];\n _filterable_decorators = [property({ type: Boolean, })];\n _wrap_decorators = [property({ type: Boolean, })];\n _ellipsis_decorators = [property({ type: Boolean, })];\n _tooltip_decorators = [property({ type: Boolean, })];\n _decimals_decorators = [property({ type: Number, attribute: 'decimals' })];\n _thousandsSeparator_decorators = [property({ type: Boolean, attribute: 'thousands-separator' })];\n _numberPrefix_decorators = [property({ attribute: 'number-prefix' })];\n _numberSuffix_decorators = [property({ attribute: 'number-suffix' })];\n _negativeStyle_decorators = [property({ attribute: 'negative-style' })];\n _dateFormat_decorators = [property({ attribute: 'date-format' })];\n _customDateFormat_decorators = [property({ attribute: 'custom-date-format' })];\n _dateLocale_decorators = [property({ attribute: 'date-locale' })];\n _trueValue_decorators = [property({ attribute: 'true-value' })];\n _falseValue_decorators = [property({ attribute: 'false-value' })];\n _useSymbols_decorators = [property({ type: Boolean, attribute: 'use-symbols' })];\n _trueSymbol_decorators = [property({ attribute: 'true-symbol' })];\n _falseSymbol_decorators = [property({ attribute: 'false-symbol' })];\n _ratingMax_decorators = [property({ type: Number, attribute: 'rating-max' })];\n _ratingSymbol_decorators = [property({ attribute: 'rating-symbol' })];\n _ratingEmptySymbol_decorators = [property({ attribute: 'rating-empty-symbol' })];\n _ratingColor_decorators = [property({ attribute: 'rating-color' })];\n _progressMax_decorators = [property({ type: Number, attribute: 'progress-max' })];\n _showPercentage_decorators = [property({ type: Boolean, attribute: 'show-percentage' })];\n _progressColor_decorators = [property({ attribute: 'progress-color' })];\n _progressBgColor_decorators = [property({ attribute: 'progress-bg-color' })];\n _progressHeight_decorators = [property({ attribute: 'progress-height' })];\n _sparklineType_decorators = [property({ attribute: 'sparkline-type' })];\n _sparklineColor_decorators = [property({ attribute: 'sparkline-color' })];\n _sparklineWidth_decorators = [property({ type: Number, attribute: 'sparkline-width' })];\n _sparklineHeight_decorators = [property({ type: Number, attribute: 'sparkline-height' })];\n _cellBgColor_decorators = [property({ attribute: 'cell-bg-color' })];\n _cellColor_decorators = [property({ attribute: 'cell-color' })];\n _cellFontWeight_decorators = [property({ attribute: 'cell-font-weight' })];\n _cellFontStyle_decorators = [property({ attribute: 'cell-font-style' })];\n _cellFontSize_decorators = [property({ attribute: 'cell-font-size' })];\n _cellTextDecoration_decorators = [property({ attribute: 'cell-text-decoration' })];\n _render_decorators = [render()];\n _handleBasicPropsChange_decorators = [watch('key', 'label', 'type', 'align', 'width', 'sortable', 'filterable', 'wrap', 'ellipsis', 'tooltip')];\n _handleNumberFormatChange_decorators = [watch('decimals', 'thousandsSeparator', 'numberPrefix', 'numberSuffix', 'negativeStyle')];\n _handleDateFormatChange_decorators = [watch('dateFormat', 'customDateFormat', 'dateLocale')];\n _handleBooleanFormatChange_decorators = [watch('trueValue', 'falseValue', 'useSymbols', 'trueSymbol', 'falseSymbol')];\n _handleRatingFormatChange_decorators = [watch('ratingMax', 'ratingSymbol', 'ratingEmptySymbol', 'ratingColor')];\n _handleProgressFormatChange_decorators = [watch('progressMax', 'showPercentage', 'progressColor', 'progressBgColor', 'progressHeight')];\n _handleSparklineFormatChange_decorators = [watch('sparklineType', 'sparklineColor', 'sparklineWidth', 'sparklineHeight')];\n _handleStyleChange_decorators = [watch('cellBgColor', 'cellColor', 'cellFontWeight', 'cellFontStyle', 'cellFontSize', 'cellTextDecoration')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleBasicPropsChange_decorators, { kind: \"method\", name: \"handleBasicPropsChange\", static: false, private: false, access: { has: obj => \"handleBasicPropsChange\" in obj, get: obj => obj.handleBasicPropsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleNumberFormatChange_decorators, { kind: \"method\", name: \"handleNumberFormatChange\", static: false, private: false, access: { has: obj => \"handleNumberFormatChange\" in obj, get: obj => obj.handleNumberFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleDateFormatChange_decorators, { kind: \"method\", name: \"handleDateFormatChange\", static: false, private: false, access: { has: obj => \"handleDateFormatChange\" in obj, get: obj => obj.handleDateFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleBooleanFormatChange_decorators, { kind: \"method\", name: \"handleBooleanFormatChange\", static: false, private: false, access: { has: obj => \"handleBooleanFormatChange\" in obj, get: obj => obj.handleBooleanFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleRatingFormatChange_decorators, { kind: \"method\", name: \"handleRatingFormatChange\", static: false, private: false, access: { has: obj => \"handleRatingFormatChange\" in obj, get: obj => obj.handleRatingFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleProgressFormatChange_decorators, { kind: \"method\", name: \"handleProgressFormatChange\", static: false, private: false, access: { has: obj => \"handleProgressFormatChange\" in obj, get: obj => obj.handleProgressFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSparklineFormatChange_decorators, { kind: \"method\", name: \"handleSparklineFormatChange\", static: false, private: false, access: { has: obj => \"handleSparklineFormatChange\" in obj, get: obj => obj.handleSparklineFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleStyleChange_decorators, { kind: \"method\", name: \"handleStyleChange\", static: false, private: false, access: { has: obj => \"handleStyleChange\" in obj, get: obj => obj.handleStyleChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _key_decorators, { kind: \"field\", name: \"key\", static: false, private: false, access: { has: obj => \"key\" in obj, get: obj => obj.key, set: (obj, value) => { obj.key = value; } }, metadata: _metadata }, _key_initializers, _key_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _width_decorators, { kind: \"field\", name: \"width\", static: false, private: false, access: { has: obj => \"width\" in obj, get: obj => obj.width, set: (obj, value) => { obj.width = value; } }, metadata: _metadata }, _width_initializers, _width_extraInitializers);\n __esDecorate(null, null, _sortable_decorators, { kind: \"field\", name: \"sortable\", static: false, private: false, access: { has: obj => \"sortable\" in obj, get: obj => obj.sortable, set: (obj, value) => { obj.sortable = value; } }, metadata: _metadata }, _sortable_initializers, _sortable_extraInitializers);\n __esDecorate(null, null, _filterable_decorators, { kind: \"field\", name: \"filterable\", static: false, private: false, access: { has: obj => \"filterable\" in obj, get: obj => obj.filterable, set: (obj, value) => { obj.filterable = value; } }, metadata: _metadata }, _filterable_initializers, _filterable_extraInitializers);\n __esDecorate(null, null, _wrap_decorators, { kind: \"field\", name: \"wrap\", static: false, private: false, access: { has: obj => \"wrap\" in obj, get: obj => obj.wrap, set: (obj, value) => { obj.wrap = value; } }, metadata: _metadata }, _wrap_initializers, _wrap_extraInitializers);\n __esDecorate(null, null, _ellipsis_decorators, { kind: \"field\", name: \"ellipsis\", static: false, private: false, access: { has: obj => \"ellipsis\" in obj, get: obj => obj.ellipsis, set: (obj, value) => { obj.ellipsis = value; } }, metadata: _metadata }, _ellipsis_initializers, _ellipsis_extraInitializers);\n __esDecorate(null, null, _tooltip_decorators, { kind: \"field\", name: \"tooltip\", static: false, private: false, access: { has: obj => \"tooltip\" in obj, get: obj => obj.tooltip, set: (obj, value) => { obj.tooltip = value; } }, metadata: _metadata }, _tooltip_initializers, _tooltip_extraInitializers);\n __esDecorate(null, null, _decimals_decorators, { kind: \"field\", name: \"decimals\", static: false, private: false, access: { has: obj => \"decimals\" in obj, get: obj => obj.decimals, set: (obj, value) => { obj.decimals = value; } }, metadata: _metadata }, _decimals_initializers, _decimals_extraInitializers);\n __esDecorate(null, null, _thousandsSeparator_decorators, { kind: \"field\", name: \"thousandsSeparator\", static: false, private: false, access: { has: obj => \"thousandsSeparator\" in obj, get: obj => obj.thousandsSeparator, set: (obj, value) => { obj.thousandsSeparator = value; } }, metadata: _metadata }, _thousandsSeparator_initializers, _thousandsSeparator_extraInitializers);\n __esDecorate(null, null, _numberPrefix_decorators, { kind: \"field\", name: \"numberPrefix\", static: false, private: false, access: { has: obj => \"numberPrefix\" in obj, get: obj => obj.numberPrefix, set: (obj, value) => { obj.numberPrefix = value; } }, metadata: _metadata }, _numberPrefix_initializers, _numberPrefix_extraInitializers);\n __esDecorate(null, null, _numberSuffix_decorators, { kind: \"field\", name: \"numberSuffix\", static: false, private: false, access: { has: obj => \"numberSuffix\" in obj, get: obj => obj.numberSuffix, set: (obj, value) => { obj.numberSuffix = value; } }, metadata: _metadata }, _numberSuffix_initializers, _numberSuffix_extraInitializers);\n __esDecorate(null, null, _negativeStyle_decorators, { kind: \"field\", name: \"negativeStyle\", static: false, private: false, access: { has: obj => \"negativeStyle\" in obj, get: obj => obj.negativeStyle, set: (obj, value) => { obj.negativeStyle = value; } }, metadata: _metadata }, _negativeStyle_initializers, _negativeStyle_extraInitializers);\n __esDecorate(null, null, _dateFormat_decorators, { kind: \"field\", name: \"dateFormat\", static: false, private: false, access: { has: obj => \"dateFormat\" in obj, get: obj => obj.dateFormat, set: (obj, value) => { obj.dateFormat = value; } }, metadata: _metadata }, _dateFormat_initializers, _dateFormat_extraInitializers);\n __esDecorate(null, null, _customDateFormat_decorators, { kind: \"field\", name: \"customDateFormat\", static: false, private: false, access: { has: obj => \"customDateFormat\" in obj, get: obj => obj.customDateFormat, set: (obj, value) => { obj.customDateFormat = value; } }, metadata: _metadata }, _customDateFormat_initializers, _customDateFormat_extraInitializers);\n __esDecorate(null, null, _dateLocale_decorators, { kind: \"field\", name: \"dateLocale\", static: false, private: false, access: { has: obj => \"dateLocale\" in obj, get: obj => obj.dateLocale, set: (obj, value) => { obj.dateLocale = value; } }, metadata: _metadata }, _dateLocale_initializers, _dateLocale_extraInitializers);\n __esDecorate(null, null, _trueValue_decorators, { kind: \"field\", name: \"trueValue\", static: false, private: false, access: { has: obj => \"trueValue\" in obj, get: obj => obj.trueValue, set: (obj, value) => { obj.trueValue = value; } }, metadata: _metadata }, _trueValue_initializers, _trueValue_extraInitializers);\n __esDecorate(null, null, _falseValue_decorators, { kind: \"field\", name: \"falseValue\", static: false, private: false, access: { has: obj => \"falseValue\" in obj, get: obj => obj.falseValue, set: (obj, value) => { obj.falseValue = value; } }, metadata: _metadata }, _falseValue_initializers, _falseValue_extraInitializers);\n __esDecorate(null, null, _useSymbols_decorators, { kind: \"field\", name: \"useSymbols\", static: false, private: false, access: { has: obj => \"useSymbols\" in obj, get: obj => obj.useSymbols, set: (obj, value) => { obj.useSymbols = value; } }, metadata: _metadata }, _useSymbols_initializers, _useSymbols_extraInitializers);\n __esDecorate(null, null, _trueSymbol_decorators, { kind: \"field\", name: \"trueSymbol\", static: false, private: false, access: { has: obj => \"trueSymbol\" in obj, get: obj => obj.trueSymbol, set: (obj, value) => { obj.trueSymbol = value; } }, metadata: _metadata }, _trueSymbol_initializers, _trueSymbol_extraInitializers);\n __esDecorate(null, null, _falseSymbol_decorators, { kind: \"field\", name: \"falseSymbol\", static: false, private: false, access: { has: obj => \"falseSymbol\" in obj, get: obj => obj.falseSymbol, set: (obj, value) => { obj.falseSymbol = value; } }, metadata: _metadata }, _falseSymbol_initializers, _falseSymbol_extraInitializers);\n __esDecorate(null, null, _ratingMax_decorators, { kind: \"field\", name: \"ratingMax\", static: false, private: false, access: { has: obj => \"ratingMax\" in obj, get: obj => obj.ratingMax, set: (obj, value) => { obj.ratingMax = value; } }, metadata: _metadata }, _ratingMax_initializers, _ratingMax_extraInitializers);\n __esDecorate(null, null, _ratingSymbol_decorators, { kind: \"field\", name: \"ratingSymbol\", static: false, private: false, access: { has: obj => \"ratingSymbol\" in obj, get: obj => obj.ratingSymbol, set: (obj, value) => { obj.ratingSymbol = value; } }, metadata: _metadata }, _ratingSymbol_initializers, _ratingSymbol_extraInitializers);\n __esDecorate(null, null, _ratingEmptySymbol_decorators, { kind: \"field\", name: \"ratingEmptySymbol\", static: false, private: false, access: { has: obj => \"ratingEmptySymbol\" in obj, get: obj => obj.ratingEmptySymbol, set: (obj, value) => { obj.ratingEmptySymbol = value; } }, metadata: _metadata }, _ratingEmptySymbol_initializers, _ratingEmptySymbol_extraInitializers);\n __esDecorate(null, null, _ratingColor_decorators, { kind: \"field\", name: \"ratingColor\", static: false, private: false, access: { has: obj => \"ratingColor\" in obj, get: obj => obj.ratingColor, set: (obj, value) => { obj.ratingColor = value; } }, metadata: _metadata }, _ratingColor_initializers, _ratingColor_extraInitializers);\n __esDecorate(null, null, _progressMax_decorators, { kind: \"field\", name: \"progressMax\", static: false, private: false, access: { has: obj => \"progressMax\" in obj, get: obj => obj.progressMax, set: (obj, value) => { obj.progressMax = value; } }, metadata: _metadata }, _progressMax_initializers, _progressMax_extraInitializers);\n __esDecorate(null, null, _showPercentage_decorators, { kind: \"field\", name: \"showPercentage\", static: false, private: false, access: { has: obj => \"showPercentage\" in obj, get: obj => obj.showPercentage, set: (obj, value) => { obj.showPercentage = value; } }, metadata: _metadata }, _showPercentage_initializers, _showPercentage_extraInitializers);\n __esDecorate(null, null, _progressColor_decorators, { kind: \"field\", name: \"progressColor\", static: false, private: false, access: { has: obj => \"progressColor\" in obj, get: obj => obj.progressColor, set: (obj, value) => { obj.progressColor = value; } }, metadata: _metadata }, _progressColor_initializers, _progressColor_extraInitializers);\n __esDecorate(null, null, _progressBgColor_decorators, { kind: \"field\", name: \"progressBgColor\", static: false, private: false, access: { has: obj => \"progressBgColor\" in obj, get: obj => obj.progressBgColor, set: (obj, value) => { obj.progressBgColor = value; } }, metadata: _metadata }, _progressBgColor_initializers, _progressBgColor_extraInitializers);\n __esDecorate(null, null, _progressHeight_decorators, { kind: \"field\", name: \"progressHeight\", static: false, private: false, access: { has: obj => \"progressHeight\" in obj, get: obj => obj.progressHeight, set: (obj, value) => { obj.progressHeight = value; } }, metadata: _metadata }, _progressHeight_initializers, _progressHeight_extraInitializers);\n __esDecorate(null, null, _sparklineType_decorators, { kind: \"field\", name: \"sparklineType\", static: false, private: false, access: { has: obj => \"sparklineType\" in obj, get: obj => obj.sparklineType, set: (obj, value) => { obj.sparklineType = value; } }, metadata: _metadata }, _sparklineType_initializers, _sparklineType_extraInitializers);\n __esDecorate(null, null, _sparklineColor_decorators, { kind: \"field\", name: \"sparklineColor\", static: false, private: false, access: { has: obj => \"sparklineColor\" in obj, get: obj => obj.sparklineColor, set: (obj, value) => { obj.sparklineColor = value; } }, metadata: _metadata }, _sparklineColor_initializers, _sparklineColor_extraInitializers);\n __esDecorate(null, null, _sparklineWidth_decorators, { kind: \"field\", name: \"sparklineWidth\", static: false, private: false, access: { has: obj => \"sparklineWidth\" in obj, get: obj => obj.sparklineWidth, set: (obj, value) => { obj.sparklineWidth = value; } }, metadata: _metadata }, _sparklineWidth_initializers, _sparklineWidth_extraInitializers);\n __esDecorate(null, null, _sparklineHeight_decorators, { kind: \"field\", name: \"sparklineHeight\", static: false, private: false, access: { has: obj => \"sparklineHeight\" in obj, get: obj => obj.sparklineHeight, set: (obj, value) => { obj.sparklineHeight = value; } }, metadata: _metadata }, _sparklineHeight_initializers, _sparklineHeight_extraInitializers);\n __esDecorate(null, null, _cellBgColor_decorators, { kind: \"field\", name: \"cellBgColor\", static: false, private: false, access: { has: obj => \"cellBgColor\" in obj, get: obj => obj.cellBgColor, set: (obj, value) => { obj.cellBgColor = value; } }, metadata: _metadata }, _cellBgColor_initializers, _cellBgColor_extraInitializers);\n __esDecorate(null, null, _cellColor_decorators, { kind: \"field\", name: \"cellColor\", static: false, private: false, access: { has: obj => \"cellColor\" in obj, get: obj => obj.cellColor, set: (obj, value) => { obj.cellColor = value; } }, metadata: _metadata }, _cellColor_initializers, _cellColor_extraInitializers);\n __esDecorate(null, null, _cellFontWeight_decorators, { kind: \"field\", name: \"cellFontWeight\", static: false, private: false, access: { has: obj => \"cellFontWeight\" in obj, get: obj => obj.cellFontWeight, set: (obj, value) => { obj.cellFontWeight = value; } }, metadata: _metadata }, _cellFontWeight_initializers, _cellFontWeight_extraInitializers);\n __esDecorate(null, null, _cellFontStyle_decorators, { kind: \"field\", name: \"cellFontStyle\", static: false, private: false, access: { has: obj => \"cellFontStyle\" in obj, get: obj => obj.cellFontStyle, set: (obj, value) => { obj.cellFontStyle = value; } }, metadata: _metadata }, _cellFontStyle_initializers, _cellFontStyle_extraInitializers);\n __esDecorate(null, null, _cellFontSize_decorators, { kind: \"field\", name: \"cellFontSize\", static: false, private: false, access: { has: obj => \"cellFontSize\" in obj, get: obj => obj.cellFontSize, set: (obj, value) => { obj.cellFontSize = value; } }, metadata: _metadata }, _cellFontSize_initializers, _cellFontSize_extraInitializers);\n __esDecorate(null, null, _cellTextDecoration_decorators, { kind: \"field\", name: \"cellTextDecoration\", static: false, private: false, access: { has: obj => \"cellTextDecoration\" in obj, get: obj => obj.cellTextDecoration, set: (obj, value) => { obj.cellTextDecoration = value; } }, metadata: _metadata }, _cellTextDecoration_initializers, _cellTextDecoration_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `<slot></slot>`;\n }\n // Set custom formatter function\n setFormatter(formatter) {\n this.formatter = formatter;\n this.notifyTableOfChange();\n }\n // Add conditional formatting rule\n addConditionalFormat(format) {\n this.conditionalFormats.push(format);\n this.notifyTableOfChange();\n }\n // Remove conditional formatting rule\n removeConditionalFormat(index) {\n this.conditionalFormats.splice(index, 1);\n this.notifyTableOfChange();\n }\n // Clear all conditional formatting\n clearConditionalFormats() {\n this.conditionalFormats = [];\n this.notifyTableOfChange();\n }\n // Get the complete column definition for the table\n getColumnDefinition() {\n const definition = {\n key: this.key,\n label: this.label,\n type: this.type,\n align: this.align,\n width: this.width,\n sortable: this.sortable,\n filterable: this.filterable,\n wrap: this.wrap,\n ellipsis: this.ellipsis,\n tooltip: this.tooltip,\n formatter: this.formatter,\n conditionalFormats: this.conditionalFormats\n };\n // Add type-specific formatting\n if (this.type === 'number' || this.type === 'currency' || this.type === 'percent' ||\n this.type === 'accounting' || this.type === 'scientific' || this.type === 'fraction') {\n const numberFormat = {};\n if (this.decimals !== undefined)\n numberFormat.decimals = this.decimals;\n if (this.thousandsSeparator !== undefined)\n numberFormat.thousandsSeparator = this.thousandsSeparator;\n if (this.numberPrefix)\n numberFormat.prefix = this.numberPrefix;\n if (this.numberSuffix)\n numberFormat.suffix = this.numberSuffix;\n if (this.negativeStyle)\n numberFormat.negativeStyle = this.negativeStyle;\n if (Object.keys(numberFormat).length > 0) {\n definition.numberFormat = numberFormat;\n }\n }\n if (this.type === 'date') {\n const dateFormat = {};\n if (this.dateFormat)\n dateFormat.format = this.dateFormat;\n if (this.customDateFormat)\n dateFormat.customFormat = this.customDateFormat;\n if (this.dateLocale)\n dateFormat.locale = this.dateLocale;\n if (Object.keys(dateFormat).length > 0) {\n definition.dateFormat = dateFormat;\n }\n }\n if (this.type === 'boolean') {\n const booleanFormat = {};\n if (this.trueValue)\n booleanFormat.trueValue = this.trueValue;\n if (this.falseValue)\n booleanFormat.falseValue = this.falseValue;\n if (this.useSymbols !== undefined)\n booleanFormat.useSymbols = this.useSymbols;\n if (this.trueSymbol)\n booleanFormat.trueSymbol = this.trueSymbol;\n if (this.falseSymbol)\n booleanFormat.falseSymbol = this.falseSymbol;\n if (Object.keys(booleanFormat).length > 0) {\n definition.booleanFormat = booleanFormat;\n }\n }\n if (this.type === 'rating') {\n const ratingFormat = {};\n if (this.ratingMax !== undefined)\n ratingFormat.max = this.ratingMax;\n if (this.ratingSymbol)\n ratingFormat.symbol = this.ratingSymbol;\n if (this.ratingEmptySymbol)\n ratingFormat.emptySymbol = this.ratingEmptySymbol;\n if (this.ratingColor)\n ratingFormat.color = this.ratingColor;\n if (Object.keys(ratingFormat).length > 0) {\n definition.ratingFormat = ratingFormat;\n }\n }\n if (this.type === 'progress') {\n const progressFormat = {};\n if (this.progressMax !== undefined)\n progressFormat.max = this.progressMax;\n if (this.showPercentage !== undefined)\n progressFormat.showPercentage = this.showPercentage;\n if (this.progressColor)\n progressFormat.color = this.progressColor;\n if (this.progressBgColor)\n progressFormat.backgroundColor = this.progressBgColor;\n if (this.progressHeight)\n progressFormat.height = this.progressHeight;\n if (Object.keys(progressFormat).length > 0) {\n definition.progressFormat = progressFormat;\n }\n }\n if (this.type === 'sparkline') {\n const sparklineFormat = {};\n if (this.sparklineType)\n sparklineFormat.type = this.sparklineType;\n if (this.sparklineColor)\n sparklineFormat.color = this.sparklineColor;\n if (this.sparklineWidth !== undefined)\n sparklineFormat.width = this.sparklineWidth;\n if (this.sparklineHeight !== undefined)\n sparklineFormat.height = this.sparklineHeight;\n if (Object.keys(sparklineFormat).length > 0) {\n definition.sparklineFormat = sparklineFormat;\n }\n }\n // Add cell style if any style properties are set\n const cellStyle = {};\n if (this.cellBgColor)\n cellStyle.backgroundColor = this.cellBgColor;\n if (this.cellColor)\n cellStyle.color = this.cellColor;\n if (this.cellFontWeight)\n cellStyle.fontWeight = this.cellFontWeight;\n if (this.cellFontStyle)\n cellStyle.fontStyle = this.cellFontStyle;\n if (this.cellFontSize)\n cellStyle.fontSize = this.cellFontSize;\n if (this.cellTextDecoration)\n cellStyle.textDecoration = this.cellTextDecoration;\n if (Object.keys(cellStyle).length > 0) {\n definition.style = cellStyle;\n }\n return definition;\n }\n handleBasicPropsChange() {\n this.notifyTableOfChange();\n }\n handleNumberFormatChange() {\n if (this.type === 'number' || this.type === 'currency' || this.type === 'percent' ||\n this.type === 'accounting' || this.type === 'scientific' || this.type === 'fraction') {\n this.notifyTableOfChange();\n }\n }\n handleDateFormatChange() {\n if (this.type === 'date') {\n this.notifyTableOfChange();\n }\n }\n handleBooleanFormatChange() {\n if (this.type === 'boolean') {\n this.notifyTableOfChange();\n }\n }\n handleRatingFormatChange() {\n if (this.type === 'rating') {\n this.notifyTableOfChange();\n }\n }\n handleProgressFormatChange() {\n if (this.type === 'progress') {\n this.notifyTableOfChange();\n }\n }\n handleSparklineFormatChange() {\n if (this.type === 'sparkline') {\n this.notifyTableOfChange();\n }\n }\n handleStyleChange() {\n this.notifyTableOfChange();\n }\n notifyTableOfChange() {\n // Dispatch event to parent table to notify of column definition change\n this.dispatchEvent(new CustomEvent('column-changed', {\n detail: { column: this.getColumnDefinition() },\n bubbles: true,\n composed: true\n }));\n }\n });\n return _classThis;\n})();\n\nexport { SniceColumn };\n//# sourceMappingURL=snice-column.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem}.cell-link{display:inline-flex;align-items:center;gap:.25rem;color:var(--snice-color-primary);text-decoration:none;transition:color .2s}.cell-link:hover{color:var(--snice-color-primary-dark);text-decoration:underline}.cell-link:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-radius:2px}.cell-link:visited{color:var(--snice-color-secondary)}.link-icon{display:inline-flex;align-items:center;font-size:1rem}.link-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.external-icon{display:inline-flex;align-items:center;font-size:.75rem;opacity:.7}:host([align=left]){text-align:left;justify-content:flex-start}:host([align=center]){text-align:center;justify-content:center}:host([align=right]){text-align:right;justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}}@media print{.cell-link{text-decoration:underline}.cell-link::after{content:\\\" (\\\" attr(href) \\\")\\\";font-size:.75rem;color:var(--snice-color-text-secondary)}}\";\n\nlet SniceCellLink = (() => {\n let _classDecorators = [element('snice-cell-link')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _href_decorators;\n let _href_initializers = [];\n let _href_extraInitializers = [];\n let _target_decorators;\n let _target_initializers = [];\n let _target_extraInitializers = [];\n let _external_decorators;\n let _external_initializers = [];\n let _external_extraInitializers = [];\n let _icon_decorators;\n let _icon_initializers = [];\n let _icon_extraInitializers = [];\n let _text_decorators;\n let _text_initializers = [];\n let _text_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateCellAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _href_decorators = [property({ type: String })];\n _target_decorators = [property({ type: String })];\n _external_decorators = [property({ type: Boolean, attribute: 'external' })];\n _icon_decorators = [property({ type: String })];\n _text_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateCellAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateCellAttributes_decorators, { kind: \"method\", name: \"updateCellAttributes\", static: false, private: false, access: { has: obj => \"updateCellAttributes\" in obj, get: obj => obj.updateCellAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _href_decorators, { kind: \"field\", name: \"href\", static: false, private: false, access: { has: obj => \"href\" in obj, get: obj => obj.href, set: (obj, value) => { obj.href = value; } }, metadata: _metadata }, _href_initializers, _href_extraInitializers);\n __esDecorate(null, null, _target_decorators, { kind: \"field\", name: \"target\", static: false, private: false, access: { has: obj => \"target\" in obj, get: obj => obj.target, set: (obj, value) => { obj.target = value; } }, metadata: _metadata }, _target_initializers, _target_extraInitializers);\n __esDecorate(null, null, _external_decorators, { kind: \"field\", name: \"external\", static: false, private: false, access: { has: obj => \"external\" in obj, get: obj => obj.external, set: (obj, value) => { obj.external = value; } }, metadata: _metadata }, _external_initializers, _external_extraInitializers);\n __esDecorate(null, null, _icon_decorators, { kind: \"field\", name: \"icon\", static: false, private: false, access: { has: obj => \"icon\" in obj, get: obj => obj.icon, set: (obj, value) => { obj.icon = value; } }, metadata: _metadata }, _icon_initializers, _icon_extraInitializers);\n __esDecorate(null, null, _text_decorators, { kind: \"field\", name: \"text\", static: false, private: false, access: { has: obj => \"text\" in obj, get: obj => obj.text, set: (obj, value) => { obj.text = value; } }, metadata: _metadata }, _text_initializers, _text_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const linkHref = this.href || this.value;\n const linkText = this.text || this.value;\n const isExternal = this.external || this.target === '_blank' || linkHref.startsWith('http');\n const iconHTML = this.icon ? `<span class=\"link-icon\">${this.icon}</span>` : '';\n const externalIcon = isExternal ? '<span class=\"external-icon\">↗</span>' : '';\n return html /*html*/ `\n <div class=\"cell-content cell-content--link\" part=\"content\">\n <a\n href=\"${linkHref}\"\n target=\"${isExternal ? '_blank' : this.target}\"\n rel=\"${isExternal ? 'noopener noreferrer' : ''}\"\n class=\"cell-link\"\n part=\"link\"\n >\n ${unsafeHTML(iconHTML)}\n <span class=\"link-text\">${linkText}</span>\n ${unsafeHTML(externalIcon)}\n </a>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateCellAttributes();\n }\n updateCellAttributes() {\n // Extract link properties from column config\n if (this.column?.linkFormat) {\n const format = this.column.linkFormat;\n this.href = format.href || this.value;\n this.target = format.target || '_self';\n this.external = format.external || false;\n this.icon = format.icon || '';\n this.text = format.text || this.value;\n }\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.href = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _href_initializers, ''));\n this.target = (__runInitializers(this, _href_extraInitializers), __runInitializers(this, _target_initializers, '_self'));\n this.external = (__runInitializers(this, _target_extraInitializers), __runInitializers(this, _external_initializers, false));\n this.icon = (__runInitializers(this, _external_extraInitializers), __runInitializers(this, _icon_initializers, ''));\n this.text = (__runInitializers(this, _icon_extraInitializers), __runInitializers(this, _text_initializers, ''));\n this.column = (__runInitializers(this, _text_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'link'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellLink };\n//# sourceMappingURL=snice-cell-link.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, dispatch, html, css, unsafeHTML } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem}.actions-container{display:inline-flex;gap:.5rem;align-items:center}.action-button{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border:1px solid transparent;border-radius:.25rem;background:0 0;cursor:pointer;transition:.2s;font-size:.875rem;line-height:1}.action-button:hover{background:hsl(0 0% 0% / .05)}.action-button:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px}.action-button:active{transform:scale(.95)}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button:disabled:hover{background:0 0}.action-button--primary{color:var(--snice-color-primary)}.action-button--primary:hover:not(:disabled){background:hsl(var(--snice-color-blue-500) / .1)}.action-button--secondary{color:var(--snice-color-text)}.action-button--danger{color:var(--snice-color-danger)}.action-button--danger:hover:not(:disabled){background:hsl(var(--snice-color-red-500) / .1)}.action-button--success{color:var(--snice-color-success)}.action-button--success:hover:not(:disabled){background:hsl(var(--snice-color-green-500) / .1)}.action-icon{display:inline-flex;align-items:center;font-size:1rem}.action-icon--image{width:1rem;height:1rem}.action-icon--image img{width:100%;height:100%;object-fit:contain}.action-label{font-weight:500}:host([align=left]){justify-content:flex-start}:host([align=center]){justify-content:center}:host([align=right]){justify-content:flex-end}@media (max-width:768px){.action-button{padding:.25rem}.action-label{display:none}}@media print{.actions-container{display:none}}\";\n\nlet SniceCellActions = (() => {\n let _classDecorators = [element('snice-cell-actions')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _actions_decorators;\n let _actions_initializers = [];\n let _actions_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _extractActionsFromColumn_decorators;\n let _dispatchAction_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _actions_decorators = [property({ type: Array, attribute: false })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _value_decorators = [property({ type: String })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _extractActionsFromColumn_decorators = [watch('column')];\n _dispatchAction_decorators = [dispatch('cell-action', { bubbles: true, composed: true })];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _extractActionsFromColumn_decorators, { kind: \"method\", name: \"extractActionsFromColumn\", static: false, private: false, access: { has: obj => \"extractActionsFromColumn\" in obj, get: obj => obj.extractActionsFromColumn }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchAction_decorators, { kind: \"method\", name: \"dispatchAction\", static: false, private: false, access: { has: obj => \"dispatchAction\" in obj, get: obj => obj.dispatchAction }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _actions_decorators, { kind: \"field\", name: \"actions\", static: false, private: false, access: { has: obj => \"actions\" in obj, get: obj => obj.actions, set: (obj, value) => { obj.actions = value; } }, metadata: _metadata }, _actions_initializers, _actions_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n if (this.actions.length === 0) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--actions\" part=\"content\">\n <div class=\"actions-container\"></div>\n </div>\n `;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--actions\" part=\"content\">\n <div class=\"actions-container\">\n ${this.actions.map(action => this.renderActionButton(action))}\n </div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.extractActionsFromColumn();\n }\n extractActionsFromColumn() {\n if (this.column?.actionsFormat?.actions) {\n this.actions = this.column.actionsFormat.actions;\n }\n }\n renderActionButton(action) {\n const icon = action.icon || '';\n const label = action.label || '';\n const variant = action.variant || 'secondary';\n const disabled = action.disabled || false;\n // Determine if icon is an image URL or text/emoji\n const isImageUrl = icon && (icon.startsWith('http://') || icon.startsWith('https://') || icon.startsWith('/') || icon.startsWith('./'));\n let iconHTML = '';\n if (icon) {\n if (isImageUrl) {\n iconHTML = `<span class=\"action-icon action-icon--image\"><img src=\"${icon}\" alt=\"\" /></span>`;\n }\n else {\n iconHTML = `<span class=\"action-icon\">${icon}</span>`;\n }\n }\n return html /*html*/ `\n <button\n class=\"action-button action-button--${variant}\"\n part=\"action-button\"\n title=\"${action.title || action.action}\"\n ?disabled=${disabled}\n @click=${(e) => this.handleActionClick(e, action.action)}\n >\n ${unsafeHTML(iconHTML)}\n ${label ? html /*html*/ `<span class=\"action-label\">${label}</span>` : ''}\n </button>\n `;\n }\n handleActionClick(e, action) {\n e.stopPropagation();\n this.dispatchAction(action);\n }\n dispatchAction(action) {\n return {\n action,\n rowData: this.rowData,\n column: this.column\n };\n }\n constructor() {\n super(...arguments);\n this.actions = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _actions_initializers, []));\n this.column = (__runInitializers(this, _actions_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.value = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.align = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'actions'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellActions };\n//# sourceMappingURL=snice-cell-actions.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem}.tags-container{display:inline-flex;flex-wrap:wrap;gap:.25rem;align-items:center}.tag{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:.75rem;font-size:.75rem;font-weight:500;line-height:1.25;white-space:nowrap}.tag--default{background:hsl(0 0% 0% / .08);color:var(--snice-color-text)}.tag--primary{background:hsl(var(--snice-color-blue-500) / .1);color:var(--snice-color-primary)}.tag--success{background:hsl(var(--snice-color-green-500) / .1);color:var(--snice-color-success)}.tag--danger{background:hsl(var(--snice-color-red-500) / .1);color:var(--snice-color-danger)}.tag--warning{background:hsl(var(--snice-color-yellow-500) / .1);color:var(--snice-color-warning)}.tag--info{background:hsl(var(--snice-color-blue-400) / .1);color:var(--snice-color-primary)}:host([align=left]){justify-content:flex-start}:host([align=center]){justify-content:center}:host([align=right]){justify-content:flex-end}@media (max-width:768px){.tag{font-size:.6875rem;padding:.0625rem .375rem}}@media print{.tag{border:1px solid currentColor}}\";\n\nlet SniceCellTag = (() => {\n let _classDecorators = [element('snice-cell-tag')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _tags_decorators;\n let _tags_initializers = [];\n let _tags_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _variant_decorators;\n let _variant_initializers = [];\n let _variant_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _extractTagsFromColumn_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _tags_decorators = [property({ type: Array, attribute: false })];\n _value_decorators = [property({ type: String })];\n _variant_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _extractTagsFromColumn_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _extractTagsFromColumn_decorators, { kind: \"method\", name: \"extractTagsFromColumn\", static: false, private: false, access: { has: obj => \"extractTagsFromColumn\" in obj, get: obj => obj.extractTagsFromColumn }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _tags_decorators, { kind: \"field\", name: \"tags\", static: false, private: false, access: { has: obj => \"tags\" in obj, get: obj => obj.tags, set: (obj, value) => { obj.tags = value; } }, metadata: _metadata }, _tags_initializers, _tags_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _variant_decorators, { kind: \"field\", name: \"variant\", static: false, private: false, access: { has: obj => \"variant\" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const tagList = this.tags.length > 0 ? this.tags : this.parseValue();\n return html /*html*/ `\n <div class=\"cell-content cell-content--tag\" part=\"content\">\n <div class=\"tags-container\">\n ${tagList.map(tag => this.renderTag(tag))}\n </div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.extractTagsFromColumn();\n }\n extractTagsFromColumn() {\n if (this.column?.tagFormat) {\n this.variant = this.column.tagFormat.variant || 'default';\n }\n }\n parseValue() {\n if (!this.value)\n return [];\n if (Array.isArray(this.value))\n return this.value;\n if (typeof this.value === 'string') {\n // Try parsing as JSON array first\n try {\n const parsed = JSON.parse(this.value);\n if (Array.isArray(parsed))\n return parsed;\n }\n catch { }\n // Otherwise split by comma\n return this.value.split(',').map(t => t.trim()).filter(t => t);\n }\n return [String(this.value)];\n }\n renderTag(tag) {\n return html /*html*/ `\n <span class=\"tag tag--${this.variant}\" part=\"tag\">\n ${tag}\n </span>\n `;\n }\n constructor() {\n super(...arguments);\n this.tags = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _tags_initializers, []));\n this.value = (__runInitializers(this, _tags_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.variant = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _variant_initializers, 'default'));\n this.column = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'tag'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellTag };\n//# sourceMappingURL=snice-cell-tag.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center}.cell-image{display:block;object-fit:cover;background-color:hsl(var(--snice-color-gray-100))}.image--small{width:1.5rem;height:1.5rem}.image--medium{width:2rem;height:2rem}.image--large{width:3rem;height:3rem}.image--rounded{border-radius:.25rem}.image--square{border-radius:0}.image--circle{border-radius:50%}.cell-image--placeholder{background:linear-gradient(135deg,hsl(var(--snice-color-gray-200)) 0,hsl(var(--snice-color-gray-300)) 100%);border:1px solid hsl(var(--snice-color-gray-300));position:relative}.cell-image--placeholder::after{content:'📷';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.875rem;opacity:.5}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}:host(.loading) .cell-image{opacity:.6;animation:1.5s ease-in-out infinite image-pulse}@keyframes image-pulse{0%,100%{opacity:.6}50%{opacity:.3}}@media (max-width:768px){.image--small{width:1.25rem;height:1.25rem}.image--medium{width:1.75rem;height:1.75rem}.image--large{width:2.5rem;height:2.5rem}}@media (prefers-reduced-motion:reduce){:host(.loading) .cell-image{animation:none}}@media print{.cell-image{max-width:2rem;max-height:2rem}}\";\n\nlet SniceCellImage = (() => {\n let _classDecorators = [element('snice-cell-image')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _src_decorators;\n let _src_initializers = [];\n let _src_extraInitializers = [];\n let _alt_decorators;\n let _alt_initializers = [];\n let _alt_extraInitializers = [];\n let _fallback_decorators;\n let _fallback_initializers = [];\n let _fallback_extraInitializers = [];\n let _variant_decorators;\n let _variant_initializers = [];\n let _variant_extraInitializers = [];\n let _size_decorators;\n let _size_initializers = [];\n let _size_extraInitializers = [];\n let _lazy_decorators;\n let _lazy_initializers = [];\n let _lazy_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _imageError_decorators;\n let _imageError_initializers = [];\n let _imageError_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateImageAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _src_decorators = [property({ type: String })];\n _alt_decorators = [property({ type: String })];\n _fallback_decorators = [property({ type: String })];\n _variant_decorators = [property({ type: String })];\n _size_decorators = [property({ type: String })];\n _lazy_decorators = [property({ type: Boolean })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _imageError_decorators = [property({ type: Boolean })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateImageAttributes_decorators = [watch('column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateImageAttributes_decorators, { kind: \"method\", name: \"updateImageAttributes\", static: false, private: false, access: { has: obj => \"updateImageAttributes\" in obj, get: obj => obj.updateImageAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _src_decorators, { kind: \"field\", name: \"src\", static: false, private: false, access: { has: obj => \"src\" in obj, get: obj => obj.src, set: (obj, value) => { obj.src = value; } }, metadata: _metadata }, _src_initializers, _src_extraInitializers);\n __esDecorate(null, null, _alt_decorators, { kind: \"field\", name: \"alt\", static: false, private: false, access: { has: obj => \"alt\" in obj, get: obj => obj.alt, set: (obj, value) => { obj.alt = value; } }, metadata: _metadata }, _alt_initializers, _alt_extraInitializers);\n __esDecorate(null, null, _fallback_decorators, { kind: \"field\", name: \"fallback\", static: false, private: false, access: { has: obj => \"fallback\" in obj, get: obj => obj.fallback, set: (obj, value) => { obj.fallback = value; } }, metadata: _metadata }, _fallback_initializers, _fallback_extraInitializers);\n __esDecorate(null, null, _variant_decorators, { kind: \"field\", name: \"variant\", static: false, private: false, access: { has: obj => \"variant\" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);\n __esDecorate(null, null, _size_decorators, { kind: \"field\", name: \"size\", static: false, private: false, access: { has: obj => \"size\" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);\n __esDecorate(null, null, _lazy_decorators, { kind: \"field\", name: \"lazy\", static: false, private: false, access: { has: obj => \"lazy\" in obj, get: obj => obj.lazy, set: (obj, value) => { obj.lazy = value; } }, metadata: _metadata }, _lazy_initializers, _lazy_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _imageError_decorators, { kind: \"field\", name: \"imageError\", static: false, private: false, access: { has: obj => \"imageError\" in obj, get: obj => obj.imageError, set: (obj, value) => { obj.imageError = value; } }, metadata: _metadata }, _imageError_initializers, _imageError_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const imageSrc = this.src || this.value;\n const imageAlt = this.alt || 'Image';\n const loadingAttr = this.lazy ? 'lazy' : 'eager';\n const variantClass = `image--${this.variant}`;\n const sizeClass = `image--${this.size}`;\n const classes = `cell-image ${variantClass} ${sizeClass}`;\n if (this.imageError && this.fallback) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--image\" part=\"content\">\n <img src=\"${this.fallback}\" alt=\"${imageAlt}\" class=\"${classes}\" />\n </div>\n `;\n }\n if (imageSrc) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--image\" part=\"content\">\n <img src=\"${imageSrc}\" alt=\"${imageAlt}\" loading=\"${loadingAttr}\" class=\"${classes}\" @error=${this.handleImageError} />\n </div>\n `;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--image\" part=\"content\">\n <div class=\"${classes} cell-image--placeholder\"></div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateImageAttributes();\n }\n updateImageAttributes() {\n if (this.column?.imageFormat) {\n const format = this.column.imageFormat;\n this.src = format.src || this.value;\n this.alt = format.alt || '';\n this.fallback = format.fallback || '';\n this.variant = format.variant || 'rounded';\n this.size = format.size || 'medium';\n this.lazy = format.lazy ?? true;\n }\n }\n handleImageError() {\n this.imageError = true;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.src = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _src_initializers, ''));\n this.alt = (__runInitializers(this, _src_extraInitializers), __runInitializers(this, _alt_initializers, ''));\n this.fallback = (__runInitializers(this, _alt_extraInitializers), __runInitializers(this, _fallback_initializers, ''));\n this.variant = (__runInitializers(this, _fallback_extraInitializers), __runInitializers(this, _variant_initializers, 'rounded'));\n this.size = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _size_initializers, 'medium'));\n this.lazy = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _lazy_initializers, true));\n this.column = (__runInitializers(this, _lazy_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'center'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'image'));\n this.imageError = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _imageError_initializers, false));\n __runInitializers(this, _imageError_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellImage };\n//# sourceMappingURL=snice-cell-image.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, unsafeHTML, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.375rem}.email-icon{display:inline-flex;align-items:center;font-size:.875rem;opacity:.7;flex-shrink:0}.email-link{color:var(--snice-color-primary);text-decoration:none;transition:color .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-link:hover{color:var(--snice-color-primary-dark);text-decoration:underline}.email-link:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-radius:2px}.email-link:visited{color:var(--snice-color-secondary)}.email-empty{color:var(--snice-color-text-secondary);font-style:italic}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.email-icon{font-size:.75rem}}@media print{.email-link{text-decoration:underline}.email-link::after{content:\\\" (\\\" attr(href) \\\")\\\";font-size:.75rem;color:var(--snice-color-text-secondary)}.email-icon{display:none}}\";\n\nlet SniceCellEmail = (() => {\n let _classDecorators = [element('snice-cell-email')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _email_decorators;\n let _email_initializers = [];\n let _email_extraInitializers = [];\n let _displayText_decorators;\n let _displayText_initializers = [];\n let _displayText_extraInitializers = [];\n let _showIcon_decorators;\n let _showIcon_initializers = [];\n let _showIcon_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateEmailAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _email_decorators = [property({ type: String })];\n _displayText_decorators = [property({ type: String })];\n _showIcon_decorators = [property({ type: Boolean })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateEmailAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateEmailAttributes_decorators, { kind: \"method\", name: \"updateEmailAttributes\", static: false, private: false, access: { has: obj => \"updateEmailAttributes\" in obj, get: obj => obj.updateEmailAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _email_decorators, { kind: \"field\", name: \"email\", static: false, private: false, access: { has: obj => \"email\" in obj, get: obj => obj.email, set: (obj, value) => { obj.email = value; } }, metadata: _metadata }, _email_initializers, _email_extraInitializers);\n __esDecorate(null, null, _displayText_decorators, { kind: \"field\", name: \"displayText\", static: false, private: false, access: { has: obj => \"displayText\" in obj, get: obj => obj.displayText, set: (obj, value) => { obj.displayText = value; } }, metadata: _metadata }, _displayText_initializers, _displayText_extraInitializers);\n __esDecorate(null, null, _showIcon_decorators, { kind: \"field\", name: \"showIcon\", static: false, private: false, access: { has: obj => \"showIcon\" in obj, get: obj => obj.showIcon, set: (obj, value) => { obj.showIcon = value; } }, metadata: _metadata }, _showIcon_initializers, _showIcon_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const emailAddress = this.email || this.value;\n const displayName = this.displayText || emailAddress;\n const iconHTML = this.showIcon ? '<span class=\"email-icon\">✉</span>' : '';\n if (!emailAddress) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--email\" part=\"content\">\n <span class=\"email-empty\"></span>\n </div>\n `;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--email\" part=\"content\">\n ${unsafeHTML(iconHTML)}\n <a href=\"mailto:${emailAddress}\" class=\"email-link\" part=\"link\">\n ${displayName}\n </a>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateEmailAttributes();\n }\n updateEmailAttributes() {\n if (this.column?.emailFormat) {\n const format = this.column.emailFormat;\n this.email = format.email || this.value;\n this.displayText = format.displayText || '';\n this.showIcon = format.showIcon ?? true;\n }\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.email = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _email_initializers, ''));\n this.displayText = (__runInitializers(this, _email_extraInitializers), __runInitializers(this, _displayText_initializers, ''));\n this.showIcon = (__runInitializers(this, _displayText_extraInitializers), __runInitializers(this, _showIcon_initializers, true));\n this.column = (__runInitializers(this, _showIcon_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'email'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellEmail };\n//# sourceMappingURL=snice-cell-email.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, unsafeHTML, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.375rem}.phone-icon{display:inline-flex;align-items:center;font-size:.875rem;opacity:.7;flex-shrink:0}.phone-link{color:var(--snice-color-primary);text-decoration:none;transition:color .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.phone-link:hover{color:var(--snice-color-primary-dark);text-decoration:underline}.phone-link:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-radius:2px}.phone-link:visited{color:var(--snice-color-secondary)}.phone-empty{color:var(--snice-color-text-secondary);font-style:italic}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.phone-icon{font-size:.75rem}}@media print{.phone-link{text-decoration:underline}.phone-link::after{content:\\\" (\\\" attr(href) \\\")\\\";font-size:.75rem;color:var(--snice-color-text-secondary)}.phone-icon{display:none}}\";\n\nlet SniceCellPhone = (() => {\n let _classDecorators = [element('snice-cell-phone')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _phone_decorators;\n let _phone_initializers = [];\n let _phone_extraInitializers = [];\n let _displayText_decorators;\n let _displayText_initializers = [];\n let _displayText_extraInitializers = [];\n let _showIcon_decorators;\n let _showIcon_initializers = [];\n let _showIcon_extraInitializers = [];\n let _format_decorators;\n let _format_initializers = [];\n let _format_extraInitializers = [];\n let _country_decorators;\n let _country_initializers = [];\n let _country_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updatePhoneAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _phone_decorators = [property({ type: String })];\n _displayText_decorators = [property({ type: String })];\n _showIcon_decorators = [property({ type: Boolean })];\n _format_decorators = [property({ type: Boolean })];\n _country_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updatePhoneAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updatePhoneAttributes_decorators, { kind: \"method\", name: \"updatePhoneAttributes\", static: false, private: false, access: { has: obj => \"updatePhoneAttributes\" in obj, get: obj => obj.updatePhoneAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _phone_decorators, { kind: \"field\", name: \"phone\", static: false, private: false, access: { has: obj => \"phone\" in obj, get: obj => obj.phone, set: (obj, value) => { obj.phone = value; } }, metadata: _metadata }, _phone_initializers, _phone_extraInitializers);\n __esDecorate(null, null, _displayText_decorators, { kind: \"field\", name: \"displayText\", static: false, private: false, access: { has: obj => \"displayText\" in obj, get: obj => obj.displayText, set: (obj, value) => { obj.displayText = value; } }, metadata: _metadata }, _displayText_initializers, _displayText_extraInitializers);\n __esDecorate(null, null, _showIcon_decorators, { kind: \"field\", name: \"showIcon\", static: false, private: false, access: { has: obj => \"showIcon\" in obj, get: obj => obj.showIcon, set: (obj, value) => { obj.showIcon = value; } }, metadata: _metadata }, _showIcon_initializers, _showIcon_extraInitializers);\n __esDecorate(null, null, _format_decorators, { kind: \"field\", name: \"format\", static: false, private: false, access: { has: obj => \"format\" in obj, get: obj => obj.format, set: (obj, value) => { obj.format = value; } }, metadata: _metadata }, _format_initializers, _format_extraInitializers);\n __esDecorate(null, null, _country_decorators, { kind: \"field\", name: \"country\", static: false, private: false, access: { has: obj => \"country\" in obj, get: obj => obj.country, set: (obj, value) => { obj.country = value; } }, metadata: _metadata }, _country_initializers, _country_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const phoneNumber = this.phone || this.value;\n const displayText = this.displayText || (this.format ? this.formatPhoneNumber(phoneNumber) : phoneNumber);\n const iconHTML = this.showIcon ? '<span class=\"phone-icon\">📞</span>' : '';\n if (!phoneNumber) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--phone\" part=\"content\">\n <span class=\"phone-empty\"></span>\n </div>\n `;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--phone\" part=\"content\">\n ${unsafeHTML(iconHTML)}\n <a href=\"tel:${phoneNumber}\" class=\"phone-link\" part=\"link\">\n ${displayText}\n </a>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updatePhoneAttributes();\n }\n updatePhoneAttributes() {\n if (this.column?.phoneFormat) {\n const format = this.column.phoneFormat;\n this.phone = format.phone || this.value;\n this.displayText = format.displayText || '';\n this.showIcon = format.showIcon ?? true;\n this.format = format.format ?? true;\n this.country = format.country || 'US';\n }\n }\n formatPhoneNumber(phone) {\n // Remove all non-numeric characters\n const cleaned = phone.replace(/\\D/g, '');\n // Format US phone numbers (10 digits)\n if (this.country === 'US' && cleaned.length === 10) {\n return `(${cleaned.slice(0, 3)}) ${cleaned.slice(3, 6)}-${cleaned.slice(6)}`;\n }\n // Format US phone numbers with country code (11 digits starting with 1)\n if (this.country === 'US' && cleaned.length === 11 && cleaned[0] === '1') {\n return `+1 (${cleaned.slice(1, 4)}) ${cleaned.slice(4, 7)}-${cleaned.slice(7)}`;\n }\n // For other formats, just return the original value\n return phone;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.phone = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _phone_initializers, ''));\n this.displayText = (__runInitializers(this, _phone_extraInitializers), __runInitializers(this, _displayText_initializers, ''));\n this.showIcon = (__runInitializers(this, _displayText_extraInitializers), __runInitializers(this, _showIcon_initializers, true));\n this.format = (__runInitializers(this, _showIcon_extraInitializers), __runInitializers(this, _format_initializers, true));\n this.country = (__runInitializers(this, _format_extraInitializers), __runInitializers(this, _country_initializers, 'US'));\n this.column = (__runInitializers(this, _country_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'phone'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellPhone };\n//# sourceMappingURL=snice-cell-phone.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.5rem}.status-dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0;position:relative}.status-dot--online{background-color:var(--snice-color-success);box-shadow:0 0 0 2px hsl(var(--snice-color-green-500) / .2)}.status-dot--offline{background-color:hsl(var(--snice-color-gray-400));box-shadow:0 0 0 2px hsl(var(--snice-color-gray-500) / .2)}.status-dot--busy{background-color:var(--snice-color-danger);box-shadow:0 0 0 2px hsl(var(--snice-color-red-500) / .2)}.status-dot--away{background-color:var(--snice-color-warning);box-shadow:0 0 0 2px hsl(var(--snice-color-yellow-500) / .2)}.status-dot--custom{background-color:var(--snice-color-primary);box-shadow:0 0 0 2px hsl(var(--snice-color-blue-500) / .2)}.status-dot--online::after{content:'';position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:50%;border:2px solid var(--snice-color-success);animation:2s ease-in-out infinite status-pulse;opacity:0}@keyframes status-pulse{0%{transform:scale(1);opacity:1}100%{transform:scale(1.5);opacity:0}}.status-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-label--online{color:var(--snice-color-success)}.status-label--offline{color:var(--snice-color-text-secondary)}.status-label--busy{color:var(--snice-color-danger)}.status-label--away{color:var(--snice-color-warning)}.status-label--custom{color:var(--snice-color-text)}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.status-dot{width:.375rem;height:.375rem}}@media (prefers-reduced-motion:reduce){.status-dot--online::after{animation:none}}@media print{.status-dot{border:1px solid var(--snice-color-text)}.status-dot--online{background-color:var(--snice-color-background);border-color:var(--snice-color-success)}.status-dot--offline{background-color:var(--snice-color-background);border-color:var(--snice-color-neutral)}.status-dot--busy{background-color:var(--snice-color-background);border-color:var(--snice-color-danger)}.status-dot--away{background-color:var(--snice-color-background);border-color:var(--snice-color-warning)}}\";\n\nlet SniceCellStatus = (() => {\n let _classDecorators = [element('snice-cell-status')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _status_decorators;\n let _status_initializers = [];\n let _status_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _showDot_decorators;\n let _showDot_initializers = [];\n let _showDot_extraInitializers = [];\n let _variant_decorators;\n let _variant_initializers = [];\n let _variant_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateStatusAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _status_decorators = [property({ type: String })];\n _label_decorators = [property({ type: String })];\n _showDot_decorators = [property({ type: Boolean })];\n _variant_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateStatusAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateStatusAttributes_decorators, { kind: \"method\", name: \"updateStatusAttributes\", static: false, private: false, access: { has: obj => \"updateStatusAttributes\" in obj, get: obj => obj.updateStatusAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _status_decorators, { kind: \"field\", name: \"status\", static: false, private: false, access: { has: obj => \"status\" in obj, get: obj => obj.status, set: (obj, value) => { obj.status = value; } }, metadata: _metadata }, _status_initializers, _status_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _showDot_decorators, { kind: \"field\", name: \"showDot\", static: false, private: false, access: { has: obj => \"showDot\" in obj, get: obj => obj.showDot, set: (obj, value) => { obj.showDot = value; } }, metadata: _metadata }, _showDot_initializers, _showDot_extraInitializers);\n __esDecorate(null, null, _variant_decorators, { kind: \"field\", name: \"variant\", static: false, private: false, access: { has: obj => \"variant\" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const statusValue = this.status || this.value;\n const statusLabel = this.label || statusValue;\n const statusVariant = this.getStatusVariant(statusValue);\n const dotHTML = this.showDot ? `<span class=\"status-dot status-dot--${statusVariant}\"></span>` : '';\n return html /*html*/ `\n <div class=\"cell-content cell-content--status\" part=\"content\">\n ${unsafeHTML(dotHTML)}\n <span class=\"status-label status-label--${statusVariant}\">${statusLabel}</span>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateStatusAttributes();\n }\n updateStatusAttributes() {\n if (this.column?.statusFormat) {\n const format = this.column.statusFormat;\n this.status = format.status || this.value;\n this.label = format.label || this.value;\n this.showDot = format.showDot ?? true;\n this.variant = format.variant || 'custom';\n }\n }\n getStatusVariant(status) {\n if (this.variant !== 'custom') {\n return this.variant;\n }\n // Auto-detect common status values\n const lowerStatus = status.toLowerCase();\n if (lowerStatus === 'online' || lowerStatus === 'active' || lowerStatus === 'available') {\n return 'online';\n }\n if (lowerStatus === 'offline' || lowerStatus === 'inactive' || lowerStatus === 'unavailable') {\n return 'offline';\n }\n if (lowerStatus === 'busy' || lowerStatus === 'dnd' || lowerStatus === 'do not disturb') {\n return 'busy';\n }\n if (lowerStatus === 'away' || lowerStatus === 'idle') {\n return 'away';\n }\n return 'custom';\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.status = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _status_initializers, ''));\n this.label = (__runInitializers(this, _status_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.showDot = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _showDot_initializers, true));\n this.variant = (__runInitializers(this, _showDot_extraInitializers), __runInitializers(this, _variant_initializers, 'custom'));\n this.column = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'status'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellStatus };\n//# sourceMappingURL=snice-cell-status.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.5rem}.color-swatch{border:1px solid var(--snice-color-border);border-radius:.25rem;flex-shrink:0;box-shadow:var(--snice-shadow-xs)}.color-swatch--small{width:1rem;height:1rem}.color-swatch--medium{width:1.5rem;height:1.5rem}.color-swatch--large{width:2rem;height:2rem}.color-text{font-family:monospace;font-size:.875rem;color:var(--snice-color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.color-swatch--small{width:.875rem;height:.875rem}.color-swatch--medium{width:1.25rem;height:1.25rem}.color-swatch--large{width:1.75rem;height:1.75rem}.color-text{font-size:.75rem}}@media print{.color-swatch{border:2px solid var(--snice-color-text)}.color-text{font-size:.75rem}}\";\n\nlet SniceCellColor = (() => {\n let _classDecorators = [element('snice-cell-color')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _color_decorators;\n let _color_initializers = [];\n let _color_extraInitializers = [];\n let _showSwatch_decorators;\n let _showSwatch_initializers = [];\n let _showSwatch_extraInitializers = [];\n let _showHex_decorators;\n let _showHex_initializers = [];\n let _showHex_extraInitializers = [];\n let _showRgb_decorators;\n let _showRgb_initializers = [];\n let _showRgb_extraInitializers = [];\n let _swatchSize_decorators;\n let _swatchSize_initializers = [];\n let _swatchSize_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateColorAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _color_decorators = [property({ type: String })];\n _showSwatch_decorators = [property({ type: Boolean })];\n _showHex_decorators = [property({ type: Boolean })];\n _showRgb_decorators = [property({ type: Boolean })];\n _swatchSize_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateColorAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateColorAttributes_decorators, { kind: \"method\", name: \"updateColorAttributes\", static: false, private: false, access: { has: obj => \"updateColorAttributes\" in obj, get: obj => obj.updateColorAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _color_decorators, { kind: \"field\", name: \"color\", static: false, private: false, access: { has: obj => \"color\" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);\n __esDecorate(null, null, _showSwatch_decorators, { kind: \"field\", name: \"showSwatch\", static: false, private: false, access: { has: obj => \"showSwatch\" in obj, get: obj => obj.showSwatch, set: (obj, value) => { obj.showSwatch = value; } }, metadata: _metadata }, _showSwatch_initializers, _showSwatch_extraInitializers);\n __esDecorate(null, null, _showHex_decorators, { kind: \"field\", name: \"showHex\", static: false, private: false, access: { has: obj => \"showHex\" in obj, get: obj => obj.showHex, set: (obj, value) => { obj.showHex = value; } }, metadata: _metadata }, _showHex_initializers, _showHex_extraInitializers);\n __esDecorate(null, null, _showRgb_decorators, { kind: \"field\", name: \"showRgb\", static: false, private: false, access: { has: obj => \"showRgb\" in obj, get: obj => obj.showRgb, set: (obj, value) => { obj.showRgb = value; } }, metadata: _metadata }, _showRgb_initializers, _showRgb_extraInitializers);\n __esDecorate(null, null, _swatchSize_decorators, { kind: \"field\", name: \"swatchSize\", static: false, private: false, access: { has: obj => \"swatchSize\" in obj, get: obj => obj.swatchSize, set: (obj, value) => { obj.swatchSize = value; } }, metadata: _metadata }, _swatchSize_initializers, _swatchSize_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const colorValue = this.color || this.value;\n const swatchHTML = this.showSwatch\n ? `<span class=\"color-swatch color-swatch--${this.swatchSize}\" style=\"background-color: ${colorValue};\"></span>`\n : '';\n let textDisplay = '';\n if (this.showHex) {\n textDisplay = colorValue;\n }\n if (this.showRgb && colorValue.startsWith('#')) {\n const rgb = this.hexToRgb(colorValue);\n textDisplay = rgb ? `rgb(${rgb.r}, ${rgb.g}, ${rgb.b})` : colorValue;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--color\" part=\"content\">\n ${unsafeHTML(swatchHTML)}\n ${textDisplay ? html `<span class=\"color-text\">${textDisplay}</span>` : ''}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateColorAttributes();\n }\n updateColorAttributes() {\n if (this.column?.colorFormat) {\n const format = this.column.colorFormat;\n this.color = format.color || this.value;\n this.showSwatch = format.showSwatch ?? true;\n this.showHex = format.showHex ?? true;\n this.showRgb = format.showRgb ?? false;\n this.swatchSize = format.swatchSize || 'medium';\n }\n }\n hexToRgb(hex) {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result\n ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n }\n : null;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.color = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _color_initializers, ''));\n this.showSwatch = (__runInitializers(this, _color_extraInitializers), __runInitializers(this, _showSwatch_initializers, true));\n this.showHex = (__runInitializers(this, _showSwatch_extraInitializers), __runInitializers(this, _showHex_initializers, true));\n this.showRgb = (__runInitializers(this, _showHex_extraInitializers), __runInitializers(this, _showRgb_initializers, false));\n this.swatchSize = (__runInitializers(this, _showRgb_extraInitializers), __runInitializers(this, _swatchSize_initializers, 'medium'));\n this.column = (__runInitializers(this, _swatchSize_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'color'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellColor };\n//# sourceMappingURL=snice-cell-color.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, on, html, unsafeHTML, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:auto;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0}.json-toggle{background:0 0;border:none;color:var(--snice-color-text-secondary);cursor:pointer;padding:.125rem .25rem;font-size:.75rem;line-height:1;border-radius:.25rem;transition:background-color .2s;flex-shrink:0}.json-toggle:hover{background-color:var(--snice-color-background-hover)}.json-toggle:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px}.json-viewer{font-family:'Courier New',Consolas,monospace;font-size:.8125rem;overflow:hidden;flex:1}.json-viewer--collapsed{white-space:nowrap;text-overflow:ellipsis}.json-viewer--expanded{white-space:pre-wrap;word-break:break-word}.json-preview{color:var(--snice-color-text-secondary);font-style:italic}.json-object{padding-left:1rem}.json-line{margin:.125rem 0}.json-key{color:var(--snice-color-primary);font-weight:500;margin-right:.25rem}.json-string{color:var(--snice-color-success)}.json-number{color:var(--snice-color-info)}.json-boolean{color:var(--snice-color-warning)}.json-empty,.json-null,.json-undefined{color:var(--snice-color-text-secondary);font-style:italic}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.json-viewer{font-size:.75rem}.json-toggle{font-size:.625rem}}@media print{.json-toggle{display:none}.json-viewer--collapsed{white-space:normal}.json-viewer{font-size:.625rem}}\";\n\nlet SniceCellJson = (() => {\n let _classDecorators = [element('snice-cell-json')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _collapsed_decorators;\n let _collapsed_initializers = [];\n let _collapsed_extraInitializers = [];\n let _maxDepth_decorators;\n let _maxDepth_initializers = [];\n let _maxDepth_extraInitializers = [];\n let _showToggle_decorators;\n let _showToggle_initializers = [];\n let _showToggle_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateJsonAttributes_decorators;\n let _handleToggle_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _collapsed_decorators = [property({ type: Boolean })];\n _maxDepth_decorators = [property({ type: Number })];\n _showToggle_decorators = [property({ type: Boolean })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateJsonAttributes_decorators = [watch('value', 'column')];\n _handleToggle_decorators = [on('click', '.json-toggle')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateJsonAttributes_decorators, { kind: \"method\", name: \"updateJsonAttributes\", static: false, private: false, access: { has: obj => \"updateJsonAttributes\" in obj, get: obj => obj.updateJsonAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleToggle_decorators, { kind: \"method\", name: \"handleToggle\", static: false, private: false, access: { has: obj => \"handleToggle\" in obj, get: obj => obj.handleToggle }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _collapsed_decorators, { kind: \"field\", name: \"collapsed\", static: false, private: false, access: { has: obj => \"collapsed\" in obj, get: obj => obj.collapsed, set: (obj, value) => { obj.collapsed = value; } }, metadata: _metadata }, _collapsed_initializers, _collapsed_extraInitializers);\n __esDecorate(null, null, _maxDepth_decorators, { kind: \"field\", name: \"maxDepth\", static: false, private: false, access: { has: obj => \"maxDepth\" in obj, get: obj => obj.maxDepth, set: (obj, value) => { obj.maxDepth = value; } }, metadata: _metadata }, _maxDepth_initializers, _maxDepth_extraInitializers);\n __esDecorate(null, null, _showToggle_decorators, { kind: \"field\", name: \"showToggle\", static: false, private: false, access: { has: obj => \"showToggle\" in obj, get: obj => obj.showToggle, set: (obj, value) => { obj.showToggle = value; } }, metadata: _metadata }, _showToggle_initializers, _showToggle_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const jsonValue = typeof this.value === 'string' ? this.tryParseJson(this.value) : this.value;\n if (jsonValue === null || jsonValue === undefined) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--json\" part=\"content\">\n <span class=\"json-empty\">null</span>\n </div>\n `;\n }\n const toggleHTML = this.showToggle\n ? `<button class=\"json-toggle\" part=\"toggle\" aria-label=\"${this.collapsed ? 'Expand' : 'Collapse'}\">${this.collapsed ? '▶' : '▼'}</button>`\n : '';\n const jsonHTML = this.collapsed\n ? this.renderCollapsed(jsonValue)\n : this.renderExpanded(jsonValue);\n return html /*html*/ `\n <div class=\"cell-content cell-content--json\" part=\"content\">\n ${unsafeHTML(toggleHTML)}\n <div class=\"json-viewer ${this.collapsed ? 'json-viewer--collapsed' : 'json-viewer--expanded'}\">\n ${unsafeHTML(jsonHTML)}\n </div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateJsonAttributes();\n }\n updateJsonAttributes() {\n if (this.column?.jsonFormat) {\n const format = this.column.jsonFormat;\n this.collapsed = format.collapsed ?? true;\n this.maxDepth = format.maxDepth ?? 3;\n this.showToggle = format.showToggle ?? true;\n }\n }\n handleToggle() {\n this.collapsed = !this.collapsed;\n }\n tryParseJson(str) {\n try {\n return JSON.parse(str);\n }\n catch {\n return str;\n }\n }\n renderCollapsed(json) {\n if (typeof json === 'object' && json !== null) {\n if (Array.isArray(json)) {\n return `<span class=\"json-preview\">[${json.length} items]</span>`;\n }\n const keys = Object.keys(json);\n return `<span class=\"json-preview\">{${keys.length} keys}</span>`;\n }\n return this.renderValue(json);\n }\n renderExpanded(json, depth = 0) {\n if (depth >= this.maxDepth) {\n return this.renderCollapsed(json);\n }\n if (typeof json === 'object' && json !== null) {\n if (Array.isArray(json)) {\n const items = json.map((item, i) => {\n const value = this.renderExpanded(item, depth + 1);\n return `<div class=\"json-line\"><span class=\"json-key\">${i}:</span> ${value}</div>`;\n }).join('');\n return `<div class=\"json-object\">[${items}]</div>`;\n }\n const entries = Object.entries(json).map(([key, value]) => {\n const renderedValue = this.renderExpanded(value, depth + 1);\n return `<div class=\"json-line\"><span class=\"json-key\">${key}:</span> ${renderedValue}</div>`;\n }).join('');\n return `<div class=\"json-object\">{${entries}}</div>`;\n }\n return this.renderValue(json);\n }\n renderValue(value) {\n if (value === null)\n return '<span class=\"json-null\">null</span>';\n if (value === undefined)\n return '<span class=\"json-undefined\">undefined</span>';\n if (typeof value === 'boolean')\n return `<span class=\"json-boolean\">${value}</span>`;\n if (typeof value === 'number')\n return `<span class=\"json-number\">${value}</span>`;\n if (typeof value === 'string')\n return `<span class=\"json-string\">\"${value}\"</span>`;\n return String(value);\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, null));\n this.collapsed = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _collapsed_initializers, true));\n this.maxDepth = (__runInitializers(this, _collapsed_extraInitializers), __runInitializers(this, _maxDepth_initializers, 3));\n this.showToggle = (__runInitializers(this, _maxDepth_extraInitializers), __runInitializers(this, _showToggle_initializers, true));\n this.column = (__runInitializers(this, _showToggle_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'json'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellJson };\n//# sourceMappingURL=snice-cell-json.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellCurrency = (() => {\n let _classDecorators = [element('snice-cell-currency')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _decimals_decorators;\n let _decimals_initializers = [];\n let _decimals_extraInitializers = [];\n let _thousandsSeparator_decorators;\n let _thousandsSeparator_initializers = [];\n let _thousandsSeparator_extraInitializers = [];\n let _currency_decorators;\n let _currency_initializers = [];\n let _currency_extraInitializers = [];\n let _currencyDisplay_decorators;\n let _currencyDisplay_initializers = [];\n let _currencyDisplay_extraInitializers = [];\n let _locale_decorators;\n let _locale_initializers = [];\n let _locale_extraInitializers = [];\n let _negativeStyle_decorators;\n let _negativeStyle_initializers = [];\n let _negativeStyle_extraInitializers = [];\n let _highlight_decorators;\n let _highlight_initializers = [];\n let _highlight_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _decimals_decorators = [property({ type: Number })];\n _thousandsSeparator_decorators = [property({ type: Boolean, attribute: 'thousands-separator' })];\n _currency_decorators = [property({ type: String })];\n _currencyDisplay_decorators = [property({ type: String })];\n _locale_decorators = [property({ type: String })];\n _negativeStyle_decorators = [property({ type: String, attribute: 'negative-style' })];\n _highlight_decorators = [property({ type: Boolean })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _decimals_decorators, { kind: \"field\", name: \"decimals\", static: false, private: false, access: { has: obj => \"decimals\" in obj, get: obj => obj.decimals, set: (obj, value) => { obj.decimals = value; } }, metadata: _metadata }, _decimals_initializers, _decimals_extraInitializers);\n __esDecorate(null, null, _thousandsSeparator_decorators, { kind: \"field\", name: \"thousandsSeparator\", static: false, private: false, access: { has: obj => \"thousandsSeparator\" in obj, get: obj => obj.thousandsSeparator, set: (obj, value) => { obj.thousandsSeparator = value; } }, metadata: _metadata }, _thousandsSeparator_initializers, _thousandsSeparator_extraInitializers);\n __esDecorate(null, null, _currency_decorators, { kind: \"field\", name: \"currency\", static: false, private: false, access: { has: obj => \"currency\" in obj, get: obj => obj.currency, set: (obj, value) => { obj.currency = value; } }, metadata: _metadata }, _currency_initializers, _currency_extraInitializers);\n __esDecorate(null, null, _currencyDisplay_decorators, { kind: \"field\", name: \"currencyDisplay\", static: false, private: false, access: { has: obj => \"currencyDisplay\" in obj, get: obj => obj.currencyDisplay, set: (obj, value) => { obj.currencyDisplay = value; } }, metadata: _metadata }, _currencyDisplay_initializers, _currencyDisplay_extraInitializers);\n __esDecorate(null, null, _locale_decorators, { kind: \"field\", name: \"locale\", static: false, private: false, access: { has: obj => \"locale\" in obj, get: obj => obj.locale, set: (obj, value) => { obj.locale = value; } }, metadata: _metadata }, _locale_initializers, _locale_extraInitializers);\n __esDecorate(null, null, _negativeStyle_decorators, { kind: \"field\", name: \"negativeStyle\", static: false, private: false, access: { has: obj => \"negativeStyle\" in obj, get: obj => obj.negativeStyle, set: (obj, value) => { obj.negativeStyle = value; } }, metadata: _metadata }, _negativeStyle_initializers, _negativeStyle_extraInitializers);\n __esDecorate(null, null, _highlight_decorators, { kind: \"field\", name: \"highlight\", static: false, private: false, access: { has: obj => \"highlight\" in obj, get: obj => obj.highlight, set: (obj, value) => { obj.highlight = value; } }, metadata: _metadata }, _highlight_initializers, _highlight_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const formattedValue = this.formatCurrencyValue();\n const styles = this.getCurrencyStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--number\" part=\"content\" style=\"${styles}\">\n ${formattedValue}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const formattedValue = this.formatCurrencyValue();\n const styles = this.getCurrencyStyles();\n this.contentElement.innerHTML = formattedValue;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatCurrencyValue() {\n if (this.value === null || this.value === undefined || this.value === '') {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Use column currency format or component properties\n const format = this.column.currencyFormat || {\n decimals: this.decimals,\n currency: this.currency,\n currencyDisplay: this.currencyDisplay,\n locale: this.locale,\n negativeStyle: this.negativeStyle\n };\n const num = Number(this.value);\n if (isNaN(num)) {\n return String(this.value);\n }\n try {\n const formatter = new Intl.NumberFormat(format.locale || this.locale, {\n style: 'currency',\n currency: format.currency || this.currency,\n currencyDisplay: format.currencyDisplay || this.currencyDisplay,\n minimumFractionDigits: format.decimals ?? this.decimals,\n maximumFractionDigits: format.decimals ?? this.decimals\n });\n let formatted = formatter.format(Math.abs(num));\n // Handle negative numbers\n if (num < 0) {\n const negStyle = format.negativeStyle ?? this.negativeStyle;\n if (negStyle === 'parentheses') {\n formatted = `(${formatted})`;\n }\n else if (negStyle === 'red') {\n formatted = `-${formatted}`;\n }\n else {\n formatted = `-${formatted}`;\n }\n }\n return formatted;\n }\n catch (error) {\n // Fallback to basic formatting if Intl.NumberFormat fails\n let formatted = num.toFixed(format.decimals ?? this.decimals);\n if (this.thousandsSeparator) {\n const parts = formatted.split('.');\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n formatted = parts.join('.');\n }\n return `$${formatted}`;\n }\n }\n getCurrencyStyles() {\n const num = Number(this.value);\n // Remove existing number classes\n this.classList.remove('number--negative', 'number--positive', 'number--zero', 'number--highlighted');\n // Apply CSS classes instead of direct styles\n if (num < 0) {\n this.classList.add('number--negative');\n const negStyle = this.column.currencyFormat?.negativeStyle ?? this.negativeStyle;\n if (negStyle === 'red') {\n this.classList.add('number--negative-red');\n }\n }\n else if (num > 0) {\n this.classList.add('number--positive');\n if (this.highlight) {\n this.classList.add('number--highlighted');\n }\n }\n else if (num === 0) {\n this.classList.add('number--zero');\n }\n return 'text-align: right';\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'currency'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'currency',\n align: 'right'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.decimals = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _decimals_initializers, 2));\n this.thousandsSeparator = (__runInitializers(this, _decimals_extraInitializers), __runInitializers(this, _thousandsSeparator_initializers, true));\n this.currency = (__runInitializers(this, _thousandsSeparator_extraInitializers), __runInitializers(this, _currency_initializers, 'USD'));\n this.currencyDisplay = (__runInitializers(this, _currency_extraInitializers), __runInitializers(this, _currencyDisplay_initializers, 'symbol'));\n this.locale = (__runInitializers(this, _currencyDisplay_extraInitializers), __runInitializers(this, _locale_initializers, 'en-US'));\n this.negativeStyle = (__runInitializers(this, _locale_extraInitializers), __runInitializers(this, _negativeStyle_initializers, 'red'));\n this.highlight = (__runInitializers(this, _negativeStyle_extraInitializers), __runInitializers(this, _highlight_initializers, false));\n __runInitializers(this, _highlight_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellCurrency };\n//# sourceMappingURL=snice-cell-currency.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem;font-variant-numeric:tabular-nums}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;word-wrap:break-word;display:flex;align-items:center;justify-content:flex-end;gap:.375rem}.cell-content--percentage{font-feature-settings:'tnum'}.percentage-trend{display:inline-flex;align-items:center;font-size:1rem;margin-left:.25rem}:host(.percentage--positive){color:var(--snice-color-success)}:host(.percentage--negative){color:var(--snice-color-danger)}:host(.percentage--zero){color:var(--snice-color-text-secondary)}:host(.percentage--trend-up) .percentage-trend{color:var(--snice-color-success)}:host(.percentage--trend-down) .percentage-trend{color:var(--snice-color-danger)}:host(.percentage--trend-neutral) .percentage-trend{color:var(--snice-color-text-secondary)}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.percentage-trend{font-size:.875rem}}@media print{:host{color:var(--snice-color-text);font-size:.75rem}.percentage-trend{font-size:.875rem}}\";\n\nlet SniceCellPercentage = (() => {\n let _classDecorators = [element('snice-cell-percentage')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _decimals_decorators;\n let _decimals_initializers = [];\n let _decimals_extraInitializers = [];\n let _showTrend_decorators;\n let _showTrend_initializers = [];\n let _showTrend_extraInitializers = [];\n let _trendValue_decorators;\n let _trendValue_initializers = [];\n let _trendValue_extraInitializers = [];\n let _colorize_decorators;\n let _colorize_initializers = [];\n let _colorize_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _decimals_decorators = [property({ type: Number })];\n _showTrend_decorators = [property({ type: Boolean })];\n _trendValue_decorators = [property({ type: Number })];\n _colorize_decorators = [property({ type: Boolean })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _decimals_decorators, { kind: \"field\", name: \"decimals\", static: false, private: false, access: { has: obj => \"decimals\" in obj, get: obj => obj.decimals, set: (obj, value) => { obj.decimals = value; } }, metadata: _metadata }, _decimals_initializers, _decimals_extraInitializers);\n __esDecorate(null, null, _showTrend_decorators, { kind: \"field\", name: \"showTrend\", static: false, private: false, access: { has: obj => \"showTrend\" in obj, get: obj => obj.showTrend, set: (obj, value) => { obj.showTrend = value; } }, metadata: _metadata }, _showTrend_initializers, _showTrend_extraInitializers);\n __esDecorate(null, null, _trendValue_decorators, { kind: \"field\", name: \"trendValue\", static: false, private: false, access: { has: obj => \"trendValue\" in obj, get: obj => obj.trendValue, set: (obj, value) => { obj.trendValue = value; } }, metadata: _metadata }, _trendValue_initializers, _trendValue_extraInitializers);\n __esDecorate(null, null, _colorize_decorators, { kind: \"field\", name: \"colorize\", static: false, private: false, access: { has: obj => \"colorize\" in obj, get: obj => obj.colorize, set: (obj, value) => { obj.colorize = value; } }, metadata: _metadata }, _colorize_initializers, _colorize_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const formattedValue = this.formatPercentageValue();\n const trendArrow = this.getTrendArrow();\n const styles = this.getPercentageStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--percentage\" part=\"content\" style=\"${styles}\">\n ${formattedValue}\n ${this.showTrend && trendArrow ? unsafeHTML(`<span class=\"percentage-trend\">${trendArrow}</span>`) : ''}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const formattedValue = this.formatPercentageValue();\n const trendArrow = this.getTrendArrow();\n const styles = this.getPercentageStyles();\n const trendHTML = this.showTrend && trendArrow\n ? `<span class=\"percentage-trend\">${trendArrow}</span>`\n : '';\n this.contentElement.innerHTML = formattedValue + trendHTML;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatPercentageValue() {\n if (this.value === null || this.value === undefined || this.value === '') {\n return '';\n }\n // Use custom formatter if provided\n if (this.column?.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Use column percentage format or component properties\n const format = this.column?.percentageFormat || {\n decimals: this.decimals,\n showTrend: this.showTrend,\n trendValue: this.trendValue,\n colorize: this.colorize\n };\n const num = Number(this.value);\n if (isNaN(num)) {\n return String(this.value);\n }\n const formatted = num.toFixed(format.decimals ?? this.decimals);\n return `${formatted}%`;\n }\n getTrendArrow() {\n const trend = this.column?.percentageFormat?.trendValue ?? this.trendValue;\n if (trend === null || trend === undefined) {\n return '';\n }\n if (trend > 0) {\n return '↑';\n }\n else if (trend < 0) {\n return '↓';\n }\n return '→';\n }\n getPercentageStyles() {\n const num = Number(this.value);\n const shouldColorize = this.column?.percentageFormat?.colorize ?? this.colorize;\n // Remove existing classes\n this.classList.remove('percentage--positive', 'percentage--negative', 'percentage--zero');\n if (shouldColorize) {\n if (num > 0) {\n this.classList.add('percentage--positive');\n }\n else if (num < 0) {\n this.classList.add('percentage--negative');\n }\n else if (num === 0) {\n this.classList.add('percentage--zero');\n }\n }\n // Apply trend arrow color\n const trend = this.column?.percentageFormat?.trendValue ?? this.trendValue;\n this.classList.remove('percentage--trend-up', 'percentage--trend-down', 'percentage--trend-neutral');\n if (trend !== null && trend !== undefined) {\n if (trend > 0) {\n this.classList.add('percentage--trend-up');\n }\n else if (trend < 0) {\n this.classList.add('percentage--trend-down');\n }\n else {\n this.classList.add('percentage--trend-neutral');\n }\n }\n return 'text-align: right';\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'percentage'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.decimals = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _decimals_initializers, 2));\n this.showTrend = (__runInitializers(this, _decimals_extraInitializers), __runInitializers(this, _showTrend_initializers, false));\n this.trendValue = (__runInitializers(this, _showTrend_extraInitializers), __runInitializers(this, _trendValue_initializers, null));\n this.colorize = (__runInitializers(this, _trendValue_extraInitializers), __runInitializers(this, _colorize_initializers, true));\n __runInitializers(this, _colorize_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellPercentage };\n//# sourceMappingURL=snice-cell-percentage.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, unsafeHTML, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.375rem}.location-icon{display:inline-flex;align-items:center;font-size:.875rem;opacity:.7;flex-shrink:0}.location-link{color:var(--snice-color-primary);text-decoration:none;transition:color .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-link:hover{color:var(--snice-color-primary-dark);text-decoration:underline}.location-link:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-radius:2px}.location-link:visited{color:var(--snice-color-secondary)}.location-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--snice-color-text)}.location-empty{color:var(--snice-color-text-secondary);font-style:italic}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.location-icon{font-size:.75rem}}@media print{.location-link{text-decoration:underline}.location-link::after{content:\\\" (\\\" attr(href) \\\")\\\";font-size:.75rem;color:var(--snice-color-text-secondary)}.location-icon{display:none}}\";\n\nlet SniceCellLocation = (() => {\n let _classDecorators = [element('snice-cell-location')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _address_decorators;\n let _address_initializers = [];\n let _address_extraInitializers = [];\n let _latitude_decorators;\n let _latitude_initializers = [];\n let _latitude_extraInitializers = [];\n let _longitude_decorators;\n let _longitude_initializers = [];\n let _longitude_extraInitializers = [];\n let _showMapLink_decorators;\n let _showMapLink_initializers = [];\n let _showMapLink_extraInitializers = [];\n let _mapProvider_decorators;\n let _mapProvider_initializers = [];\n let _mapProvider_extraInitializers = [];\n let _showIcon_decorators;\n let _showIcon_initializers = [];\n let _showIcon_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateLocationAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _address_decorators = [property({ type: String })];\n _latitude_decorators = [property({ type: String })];\n _longitude_decorators = [property({ type: String })];\n _showMapLink_decorators = [property({ type: Boolean })];\n _mapProvider_decorators = [property({ type: String })];\n _showIcon_decorators = [property({ type: Boolean })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateLocationAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateLocationAttributes_decorators, { kind: \"method\", name: \"updateLocationAttributes\", static: false, private: false, access: { has: obj => \"updateLocationAttributes\" in obj, get: obj => obj.updateLocationAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _address_decorators, { kind: \"field\", name: \"address\", static: false, private: false, access: { has: obj => \"address\" in obj, get: obj => obj.address, set: (obj, value) => { obj.address = value; } }, metadata: _metadata }, _address_initializers, _address_extraInitializers);\n __esDecorate(null, null, _latitude_decorators, { kind: \"field\", name: \"latitude\", static: false, private: false, access: { has: obj => \"latitude\" in obj, get: obj => obj.latitude, set: (obj, value) => { obj.latitude = value; } }, metadata: _metadata }, _latitude_initializers, _latitude_extraInitializers);\n __esDecorate(null, null, _longitude_decorators, { kind: \"field\", name: \"longitude\", static: false, private: false, access: { has: obj => \"longitude\" in obj, get: obj => obj.longitude, set: (obj, value) => { obj.longitude = value; } }, metadata: _metadata }, _longitude_initializers, _longitude_extraInitializers);\n __esDecorate(null, null, _showMapLink_decorators, { kind: \"field\", name: \"showMapLink\", static: false, private: false, access: { has: obj => \"showMapLink\" in obj, get: obj => obj.showMapLink, set: (obj, value) => { obj.showMapLink = value; } }, metadata: _metadata }, _showMapLink_initializers, _showMapLink_extraInitializers);\n __esDecorate(null, null, _mapProvider_decorators, { kind: \"field\", name: \"mapProvider\", static: false, private: false, access: { has: obj => \"mapProvider\" in obj, get: obj => obj.mapProvider, set: (obj, value) => { obj.mapProvider = value; } }, metadata: _metadata }, _mapProvider_initializers, _mapProvider_extraInitializers);\n __esDecorate(null, null, _showIcon_decorators, { kind: \"field\", name: \"showIcon\", static: false, private: false, access: { has: obj => \"showIcon\" in obj, get: obj => obj.showIcon, set: (obj, value) => { obj.showIcon = value; } }, metadata: _metadata }, _showIcon_initializers, _showIcon_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const locationValue = this.address || this.value;\n const iconHTML = this.showIcon ? '<span class=\"location-icon\">📍</span>' : '';\n const mapLink = this.getMapLink();\n if (!locationValue && !this.latitude && !this.longitude) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--location\" part=\"content\">\n <span class=\"location-empty\"></span>\n </div>\n `;\n }\n const displayText = locationValue || `${this.latitude}, ${this.longitude}`;\n return html /*html*/ `\n <div class=\"cell-content cell-content--location\" part=\"content\">\n ${unsafeHTML(iconHTML)}\n ${this.showMapLink && mapLink\n ? html `<a href=\"${mapLink}\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"location-link\" part=\"link\">\n ${displayText}\n </a>`\n : html `<span class=\"location-text\">${displayText}</span>`}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateLocationAttributes();\n }\n updateLocationAttributes() {\n if (this.column?.locationFormat) {\n const format = this.column.locationFormat;\n this.address = format.address || this.value;\n this.latitude = format.latitude ? String(format.latitude) : '';\n this.longitude = format.longitude ? String(format.longitude) : '';\n this.showMapLink = format.showMapLink ?? true;\n this.mapProvider = format.mapProvider || 'google';\n this.showIcon = format.showIcon ?? true;\n }\n }\n getMapLink() {\n if (!this.showMapLink) {\n return '';\n }\n const address = this.address || this.value;\n const lat = this.latitude;\n const lon = this.longitude;\n switch (this.mapProvider) {\n case 'google':\n if (lat && lon) {\n return `https://www.google.com/maps?q=${lat},${lon}`;\n }\n if (address) {\n return `https://www.google.com/maps/search/?api=1&query=${encodeURIComponent(address)}`;\n }\n return '';\n case 'openstreetmap':\n if (lat && lon) {\n return `https://www.openstreetmap.org/?mlat=${lat}&mlon=${lon}&zoom=15`;\n }\n if (address) {\n return `https://www.openstreetmap.org/search?query=${encodeURIComponent(address)}`;\n }\n return '';\n case 'apple':\n if (lat && lon) {\n return `https://maps.apple.com/?ll=${lat},${lon}`;\n }\n if (address) {\n return `https://maps.apple.com/?address=${encodeURIComponent(address)}`;\n }\n return '';\n default:\n return '';\n }\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.address = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _address_initializers, ''));\n this.latitude = (__runInitializers(this, _address_extraInitializers), __runInitializers(this, _latitude_initializers, ''));\n this.longitude = (__runInitializers(this, _latitude_extraInitializers), __runInitializers(this, _longitude_initializers, ''));\n this.showMapLink = (__runInitializers(this, _longitude_extraInitializers), __runInitializers(this, _showMapLink_initializers, true));\n this.mapProvider = (__runInitializers(this, _showMapLink_extraInitializers), __runInitializers(this, _mapProvider_initializers, 'google'));\n this.showIcon = (__runInitializers(this, _mapProvider_extraInitializers), __runInitializers(this, _showIcon_initializers, true));\n this.column = (__runInitializers(this, _showIcon_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'location'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellLocation };\n//# sourceMappingURL=snice-cell-location.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, dispatch, html, css, unsafeHTML } from 'snice';\nimport './snice-cell.js';\nimport './snice-cell-text.js';\nimport './snice-cell-number.js';\nimport './snice-cell-date.js';\nimport './snice-cell-sparkline.js';\nimport './snice-cell-link.js';\nimport './snice-cell-actions.js';\nimport './snice-cell-tag.js';\nimport './snice-cell-image.js';\nimport './snice-cell-email.js';\nimport './snice-cell-phone.js';\nimport './snice-cell-status.js';\nimport './snice-cell-color.js';\nimport './snice-cell-json.js';\nimport './snice-cell-currency.js';\nimport './snice-cell-percentage.js';\nimport './snice-cell-location.js';\nimport '../snice-cell-D9dSe0d4.js';\n\nvar cssContent = \":host{display:block;width:100%;min-height:2.5rem}.row-container{display:flex;align-items:stretch;width:100%;min-height:2.5rem;height:2.5rem;background:0 0;color:var(--snice-color-text);border-bottom:1px solid var(--snice-color-border);transition:background-color .15s}.cell{display:flex;align-items:center;border-right:1px solid var(--snice-color-border);min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;word-wrap:break-word;overflow:hidden;color:var(--snice-color-text)}.cell:last-child{border-right:none}.cell--checkbox{width:3rem;min-width:3rem;max-width:3rem;padding:.75rem;justify-content:center}.row-checkbox{width:1rem;height:1rem;cursor:pointer}.cells-container{display:flex;flex:1;align-items:stretch}.cell--text{text-align:left}.cell--accounting,.cell--currency,.cell--fraction,.cell--number,.cell--percent,.cell--scientific{text-align:right;font-variant-numeric:tabular-nums}.cell--date{min-width:8rem;font-variant-numeric:tabular-nums}.cell--boolean{text-align:center;font-size:1rem}.cell--rating{text-align:center;min-width:6rem}.cell--progress{min-width:8rem}.cell--sparkline{text-align:center;min-width:6rem}.cell--duration,.cell--filesize{text-align:right;font-variant-numeric:tabular-nums}:host(.row--hoverable) .row-container:hover{background-color:var(--snice-color-background-secondary)}:host(.row--clickable) .row-container{cursor:pointer}:host(.row--clickable) .row-container:hover{background-color:var(--snice-color-background-tertiary)}:host(.row--selected) .row-container{background-color:var(--snice-color-primary-light)}:host(.row--selected.row--hoverable) .row-container:hover{background-color:var(--snice-color-primary-lighter)}:host(.row--highlighted) .row-container{background-color:var(--snice-color-warning-light)!important;animation:2s ease-out row-highlight-fade}@keyframes row-highlight-fade{0%{background-color:var(--snice-color-warning-lighter)}100%{background-color:var(--snice-color-warning-light)}}:host(:focus) .row-container{outline:2px solid var(--snice-color-primary);outline-offset:-2px}:host(.row--selectable){tabindex:0}:host(.row--striped) .row-container{background-color:var(--snice-color-background-secondary)}:host(.row--bordered) .row-container{border-bottom:1px solid var(--snice-color-border)}:host(.row--small) .cell{padding:.5rem .75rem;min-height:2rem;font-size:.75rem}:host(.row--small) .row-container{min-height:2rem}:host(.row--large) .cell{padding:1rem 1.25rem;min-height:3.5rem;font-size:1rem}:host(.row--large) .row-container{min-height:3.5rem}@media (max-width:768px){.cell{padding:.5rem .75rem;font-size:.875rem}.cell--checkbox{width:2.5rem;min-width:2.5rem;max-width:2.5rem;padding:.5rem}.row-checkbox{width:.875rem;height:.875rem}}:host(.row--loading) .row-container{opacity:.6;pointer-events:none}:host(.row--loading) .row-container::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,hsl(0 0% 100% / .6),transparent);animation:1.5s infinite loading-shimmer}@keyframes loading-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}@media (prefers-reduced-motion:reduce){.row-container{transition:none}:host(.row--highlighted) .row-container{animation:none;background-color:var(--snice-color-warning-light)!important}:host(.row--loading) .row-container::after{animation:none}}@media (prefers-contrast:high){.cell{border-right:1px solid}.row-container{border-bottom:1px solid}:host(.row--selected) .row-container{border:2px solid}}\";\n\nlet SniceRow = (() => {\n let _classDecorators = [element('snice-row')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _selected_decorators;\n let _selected_initializers = [];\n let _selected_extraInitializers = [];\n let _hoverable_decorators;\n let _hoverable_initializers = [];\n let _hoverable_extraInitializers = [];\n let _clickable_decorators;\n let _clickable_initializers = [];\n let _clickable_extraInitializers = [];\n let _selectable_decorators;\n let _selectable_initializers = [];\n let _selectable_extraInitializers = [];\n let _data_decorators;\n let _data_initializers = [];\n let _data_extraInitializers = [];\n let _index_decorators;\n let _index_initializers = [];\n let _index_extraInitializers = [];\n let _columns_decorators;\n let _columns_initializers = [];\n let _columns_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateSelection_decorators;\n let _updateRowAttributes_decorators;\n let _updateCells_decorators;\n let _dispatchRowClick_decorators;\n let _dispatchRowSelect_decorators;\n let _dispatchRowHover_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _selected_decorators = [property({ type: Boolean, })];\n _hoverable_decorators = [property({ type: Boolean, })];\n _clickable_decorators = [property({ type: Boolean, })];\n _selectable_decorators = [property({ type: Boolean, })];\n _data_decorators = [property({ type: Object, attribute: false })];\n _index_decorators = [property({ type: Number, })];\n _columns_decorators = [property({ type: Array, attribute: false })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateSelection_decorators = [watch('selected')];\n _updateRowAttributes_decorators = [watch('hoverable', 'clickable', 'selectable')];\n _updateCells_decorators = [watch('data', 'columns')];\n _dispatchRowClick_decorators = [dispatch('row-click', { bubbles: true, composed: true })];\n _dispatchRowSelect_decorators = [dispatch('row-select', { bubbles: true, composed: true })];\n _dispatchRowHover_decorators = [dispatch('row-hover', { bubbles: true, composed: true })];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateSelection_decorators, { kind: \"method\", name: \"updateSelection\", static: false, private: false, access: { has: obj => \"updateSelection\" in obj, get: obj => obj.updateSelection }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateRowAttributes_decorators, { kind: \"method\", name: \"updateRowAttributes\", static: false, private: false, access: { has: obj => \"updateRowAttributes\" in obj, get: obj => obj.updateRowAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateCells_decorators, { kind: \"method\", name: \"updateCells\", static: false, private: false, access: { has: obj => \"updateCells\" in obj, get: obj => obj.updateCells }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchRowClick_decorators, { kind: \"method\", name: \"dispatchRowClick\", static: false, private: false, access: { has: obj => \"dispatchRowClick\" in obj, get: obj => obj.dispatchRowClick }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchRowSelect_decorators, { kind: \"method\", name: \"dispatchRowSelect\", static: false, private: false, access: { has: obj => \"dispatchRowSelect\" in obj, get: obj => obj.dispatchRowSelect }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchRowHover_decorators, { kind: \"method\", name: \"dispatchRowHover\", static: false, private: false, access: { has: obj => \"dispatchRowHover\" in obj, get: obj => obj.dispatchRowHover }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _selected_decorators, { kind: \"field\", name: \"selected\", static: false, private: false, access: { has: obj => \"selected\" in obj, get: obj => obj.selected, set: (obj, value) => { obj.selected = value; } }, metadata: _metadata }, _selected_initializers, _selected_extraInitializers);\n __esDecorate(null, null, _hoverable_decorators, { kind: \"field\", name: \"hoverable\", static: false, private: false, access: { has: obj => \"hoverable\" in obj, get: obj => obj.hoverable, set: (obj, value) => { obj.hoverable = value; } }, metadata: _metadata }, _hoverable_initializers, _hoverable_extraInitializers);\n __esDecorate(null, null, _clickable_decorators, { kind: \"field\", name: \"clickable\", static: false, private: false, access: { has: obj => \"clickable\" in obj, get: obj => obj.clickable, set: (obj, value) => { obj.clickable = value; } }, metadata: _metadata }, _clickable_initializers, _clickable_extraInitializers);\n __esDecorate(null, null, _selectable_decorators, { kind: \"field\", name: \"selectable\", static: false, private: false, access: { has: obj => \"selectable\" in obj, get: obj => obj.selectable, set: (obj, value) => { obj.selectable = value; } }, metadata: _metadata }, _selectable_initializers, _selectable_extraInitializers);\n __esDecorate(null, null, _data_decorators, { kind: \"field\", name: \"data\", static: false, private: false, access: { has: obj => \"data\" in obj, get: obj => obj.data, set: (obj, value) => { obj.data = value; } }, metadata: _metadata }, _data_initializers, _data_extraInitializers);\n __esDecorate(null, null, _index_decorators, { kind: \"field\", name: \"index\", static: false, private: false, access: { has: obj => \"index\" in obj, get: obj => obj.index, set: (obj, value) => { obj.index = value; } }, metadata: _metadata }, _index_initializers, _index_extraInitializers);\n __esDecorate(null, null, _columns_decorators, { kind: \"field\", name: \"columns\", static: false, private: false, access: { has: obj => \"columns\" in obj, get: obj => obj.columns, set: (obj, value) => { obj.columns = value; } }, metadata: _metadata }, _columns_initializers, _columns_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n // Extract data from data-* attributes - pass raw values, let cells handle conversion\n extractDataFromAttributes() {\n const data = {};\n // Get all attribute names that start with data-\n const attrNames = this.getAttributeNames().filter(name => name.startsWith('data-') && name !== 'data-column-index');\n attrNames.forEach(attrName => {\n const key = attrName.slice(5); // Remove 'data-' prefix\n const value = this.getAttribute(attrName);\n if (value !== null) {\n data[key] = value; // Keep as raw string, let cells convert\n }\n });\n return data;\n }\n render() {\n return html /*html*/ `\n <div class=\"row-container\" part=\"container\" @click=${(e) => this.handleRowClick(e)} @keydown=${(e) => this.handleKeyDown(e)}>\n <if ${this.selectable}>\n ${this.renderCheckbox()}\n </if>\n <div class=\"cells-container\">\n <if ${this.columns && this.columns.length}>\n ${this.columns.map((column, columnIndex) => this.renderCell(column, columnIndex))}\n </if>\n <if ${!this.columns || !this.columns.length}>\n <!-- No columns set yet -->\n </if>\n </div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n // Extract data from data-* attributes if data object is empty\n if (!this.data || Object.keys(this.data).length === 0) {\n this.data = this.extractDataFromAttributes();\n }\n this.updateRowAttributes();\n this.configureCells();\n }\n configureCells() {\n if (!this.columns) {\n return;\n }\n this.columns.forEach((column, index) => {\n const cellElement = this.shadowRoot?.querySelector(`[data-column-index=\"${index}\"]`);\n if (cellElement) {\n const value = this.data[column.key];\n cellElement.value = value;\n cellElement.column = column;\n cellElement.rowData = this.data;\n // For sparkline cells, also set the data property if value is an array\n if (column.type === 'sparkline' && Array.isArray(value)) {\n cellElement.data = value;\n }\n }\n });\n }\n updateSelection() {\n this.updateRowAttributes();\n const checkbox = this.shadowRoot?.querySelector('.row-checkbox');\n if (checkbox) {\n checkbox.checked = this.selected;\n }\n }\n updateRowAttributes() {\n this.classList.toggle('row--hoverable', this.hoverable);\n this.classList.toggle('row--clickable', this.clickable);\n this.classList.toggle('row--selectable', this.selectable);\n this.classList.toggle('row--selected', this.selected);\n }\n updateCells() {\n // Re-render is handled automatically by @render decorator\n // Just need to reconfigure cells after the template updates\n setTimeout(() => this.configureCells(), 0);\n }\n handleRowClick(e) {\n const target = e.target;\n // Handle checkbox change separately\n if (target.matches('.row-checkbox')) {\n return; // Let the change event handle this\n }\n // Don't trigger row click if clicking on other interactive elements\n if (target.matches('button, a, .interactive')) {\n return;\n }\n if (this.clickable) {\n this.dispatchRowClick();\n }\n if (this.selectable) {\n this.toggleSelection();\n }\n }\n handleChange(e) {\n const target = e.target;\n if (!target.matches('.row-checkbox'))\n return;\n const checkbox = target;\n this.selected = checkbox.checked;\n this.dispatchRowSelect();\n }\n handleKeyDown(e) {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n if (this.selectable) {\n this.toggleSelection();\n }\n else if (this.clickable) {\n this.dispatchRowClick();\n }\n }\n }\n renderCheckbox() {\n return html /*html*/ `\n <div class=\"cell cell--checkbox\" part=\"checkbox-cell\">\n <input\n type=\"checkbox\"\n class=\"row-checkbox\"\n ?checked=${this.selected}\n tabindex=\"-1\"\n @change=${(e) => this.handleChange(e)}\n />\n </div>\n `;\n }\n renderCell(column, columnIndex) {\n this.data[column.key];\n const cellComponent = this.getCellComponent(column.type);\n return html /*html*/ `\n <div class=\"cell cell--${column.type}\" part=\"cell\" style=\"${this.getCellStyles(column)}\">\n ${unsafeHTML(`<${cellComponent}\n type=\"${column.type}\"\n align=\"${column.align || 'left'}\"\n data-column-index=\"${columnIndex}\"\n ></${cellComponent}>`)}\n </div>\n `;\n }\n getCellComponent(type) {\n switch (type) {\n case 'text':\n return 'snice-cell-text';\n case 'number':\n case 'accounting':\n case 'scientific':\n case 'fraction':\n return 'snice-cell-number';\n case 'date':\n return 'snice-cell-date';\n case 'boolean':\n return 'snice-cell-boolean';\n case 'sparkline':\n return 'snice-cell-sparkline';\n case 'rating':\n return 'snice-cell-rating';\n case 'progress':\n return 'snice-cell-progress';\n case 'duration':\n return 'snice-cell-duration';\n case 'filesize':\n return 'snice-cell-filesize';\n case 'link':\n case 'url':\n return 'snice-cell-link';\n case 'actions':\n return 'snice-cell-actions';\n case 'tag':\n case 'tags':\n case 'badge':\n case 'badges':\n return 'snice-cell-tag';\n case 'image':\n case 'avatar':\n case 'thumbnail':\n return 'snice-cell-image';\n case 'email':\n return 'snice-cell-email';\n case 'phone':\n case 'tel':\n case 'telephone':\n return 'snice-cell-phone';\n case 'status':\n return 'snice-cell-status';\n case 'color':\n return 'snice-cell-color';\n case 'json':\n case 'object':\n return 'snice-cell-json';\n case 'currency':\n case 'money':\n return 'snice-cell-currency';\n case 'percent':\n case 'percentage':\n return 'snice-cell-percentage';\n case 'location':\n case 'address':\n case 'coordinates':\n return 'snice-cell-location';\n case 'custom':\n default:\n return 'snice-cell';\n }\n }\n getCellStyles(column) {\n let styles = [];\n if (column.width) {\n styles.push(`width: ${column.width}`);\n styles.push(`min-width: ${column.width}`);\n styles.push(`max-width: ${column.width}`);\n }\n if (column.align) {\n styles.push(`text-align: ${column.align}`);\n }\n return styles.join('; ');\n }\n escapeHtml(value) {\n if (value === null || value === undefined) {\n return '';\n }\n const str = String(value);\n const div = document.createElement('div');\n div.textContent = str;\n return div.innerHTML;\n }\n toggleSelection() {\n this.selected = !this.selected;\n this.dispatchRowSelect();\n }\n dispatchRowClick() {\n return {\n data: this.data,\n index: this.index,\n element: this\n };\n }\n dispatchRowSelect() {\n return {\n selected: this.selected,\n data: this.data,\n index: this.index,\n element: this\n };\n }\n dispatchRowHover() {\n return {\n data: this.data,\n index: this.index,\n element: this\n };\n }\n // Public API methods\n select() {\n this.selected = true;\n this.dispatchRowSelect();\n }\n deselect() {\n this.selected = false;\n this.dispatchRowSelect();\n }\n focusRow() {\n super.focus();\n this.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n }\n getCellValue(columnKey) {\n return this.data[columnKey];\n }\n setCellValue(columnKey, value) {\n this.data = { ...this.data, [columnKey]: value };\n this.updateCells();\n }\n getCellElement(columnKey) {\n const column = this.columns.find(col => col.key === columnKey);\n if (!column)\n return null;\n const columnIndex = this.columns.indexOf(column);\n return this.shadowRoot?.querySelector(`[data-column-index=\"${columnIndex}\"]`) || null;\n }\n // Highlight row temporarily (useful for showing updates)\n highlight(duration = 2000) {\n this.classList.add('row--highlighted');\n setTimeout(() => {\n this.classList.remove('row--highlighted');\n }, duration);\n }\n constructor() {\n super(...arguments);\n this.selected = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _selected_initializers, false));\n this.hoverable = (__runInitializers(this, _selected_extraInitializers), __runInitializers(this, _hoverable_initializers, true));\n this.clickable = (__runInitializers(this, _hoverable_extraInitializers), __runInitializers(this, _clickable_initializers, false));\n this.selectable = (__runInitializers(this, _clickable_extraInitializers), __runInitializers(this, _selectable_initializers, false));\n this.data = (__runInitializers(this, _selectable_extraInitializers), __runInitializers(this, _data_initializers, {}));\n this.index = (__runInitializers(this, _data_extraInitializers), __runInitializers(this, _index_initializers, 0));\n this.columns = (__runInitializers(this, _index_extraInitializers), __runInitializers(this, _columns_initializers, []));\n __runInitializers(this, _columns_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceRow };\n//# sourceMappingURL=snice-row.js.map\n","import { __runInitializers, __esDecorate } from 'tslib';\nimport { element, property, query, request, styles, render, ready, watch, dispatch, css, html } from 'snice';\nimport '../input/snice-input.js';\nimport '../select/snice-select.js';\nimport './snice-cell.js';\nimport './snice-cell-text.js';\nimport './snice-cell-number.js';\nimport './snice-cell-date.js';\nimport './snice-cell-boolean.js';\nimport './snice-cell-rating.js';\nimport './snice-cell-progress.js';\nimport './snice-cell-duration.js';\nimport './snice-cell-filesize.js';\nimport './snice-cell-sparkline.js';\nimport './snice-column.js';\nimport './snice-row.js';\nimport '../utils.js';\nimport '../select/snice-option.js';\nimport '../snice-cell-D9dSe0d4.js';\nimport './snice-rating.js';\nimport './snice-progress.js';\nimport './snice-cell-link.js';\nimport './snice-cell-actions.js';\nimport './snice-cell-tag.js';\nimport './snice-cell-image.js';\nimport './snice-cell-email.js';\nimport './snice-cell-phone.js';\nimport './snice-cell-status.js';\nimport './snice-cell-color.js';\nimport './snice-cell-json.js';\nimport './snice-cell-currency.js';\nimport './snice-cell-percentage.js';\nimport './snice-cell-location.js';\n\nlet SniceTable = (() => {\n let _classDecorators = [element('snice-table')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _striped_decorators;\n let _striped_initializers = [];\n let _striped_extraInitializers = [];\n let _searchable_decorators;\n let _searchable_initializers = [];\n let _searchable_extraInitializers = [];\n let _filterable_decorators;\n let _filterable_initializers = [];\n let _filterable_extraInitializers = [];\n let _sortable_decorators;\n let _sortable_initializers = [];\n let _sortable_extraInitializers = [];\n let _selectable_decorators;\n let _selectable_initializers = [];\n let _selectable_extraInitializers = [];\n let _hoverable_decorators;\n let _hoverable_initializers = [];\n let _hoverable_extraInitializers = [];\n let _clickable_decorators;\n let _clickable_initializers = [];\n let _clickable_extraInitializers = [];\n let _list_decorators;\n let _list_initializers = [];\n let _list_extraInitializers = [];\n let _searchDebounce_decorators;\n let _searchDebounce_initializers = [];\n let _searchDebounce_extraInitializers = [];\n let _currentSort_decorators;\n let _currentSort_initializers = [];\n let _currentSort_extraInitializers = [];\n let _selector_decorators;\n let _selector_initializers = [];\n let _selector_extraInitializers = [];\n let _selectorOptions_decorators;\n let _selectorOptions_initializers = [];\n let _selectorOptions_extraInitializers = [];\n let _loading_decorators;\n let _loading_initializers = [];\n let _loading_extraInitializers = [];\n let _selectedRows_decorators;\n let _selectedRows_initializers = [];\n let _selectedRows_extraInitializers = [];\n let _table_decorators;\n let _table_initializers = [];\n let _table_extraInitializers = [];\n let _thead_decorators;\n let _thead_initializers = [];\n let _thead_extraInitializers = [];\n let _tbody_decorators;\n let _tbody_initializers = [];\n let _tbody_extraInitializers = [];\n let _getTableConfig_decorators;\n let _getTableData_decorators;\n let _styles_decorators;\n let _render_decorators;\n let _initialize_decorators;\n let _handleSelectorOptionsChange_decorators;\n let _handleSortableChange_decorators;\n let _handleSelectableChange_decorators;\n let _handleColumnsChange_decorators;\n let _handleDataChange_decorators;\n let _handleSelectedRowsChange_decorators;\n let _handleSortChange_decorators;\n let _handleControlsChange_decorators;\n let _dispatchRowSelectionChanged_decorators;\n let _dispatchSelectAllChanged_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n constructor() {\n super(...arguments);\n this.striped = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _striped_initializers, false));\n this.searchable = (__runInitializers(this, _striped_extraInitializers), __runInitializers(this, _searchable_initializers, false));\n this.filterable = (__runInitializers(this, _searchable_extraInitializers), __runInitializers(this, _filterable_initializers, false));\n this.sortable = (__runInitializers(this, _filterable_extraInitializers), __runInitializers(this, _sortable_initializers, false));\n this.selectable = (__runInitializers(this, _sortable_extraInitializers), __runInitializers(this, _selectable_initializers, false));\n this.hoverable = (__runInitializers(this, _selectable_extraInitializers), __runInitializers(this, _hoverable_initializers, true));\n this.clickable = (__runInitializers(this, _hoverable_extraInitializers), __runInitializers(this, _clickable_initializers, false));\n this.list = (__runInitializers(this, _clickable_extraInitializers), __runInitializers(this, _list_initializers, false));\n this.searchDebounce = (__runInitializers(this, _list_extraInitializers), __runInitializers(this, _searchDebounce_initializers, 500));\n // Plain properties - no reflection to attributes\n this.columns = (__runInitializers(this, _searchDebounce_extraInitializers), []);\n this.data = [];\n this.currentSort = __runInitializers(this, _currentSort_initializers, []);\n // Don't use @property decorator to avoid auto-rendering on searchText change\n // This would cause the input to lose focus while typing\n this.searchText = (__runInitializers(this, _currentSort_extraInitializers), '');\n this.selector = __runInitializers(this, _selector_initializers, '');\n this.selectorOptions = (__runInitializers(this, _selector_extraInitializers), __runInitializers(this, _selectorOptions_initializers, []));\n this.loading = (__runInitializers(this, _selectorOptions_extraInitializers), __runInitializers(this, _loading_initializers, false));\n this.selectedRows = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _selectedRows_initializers, []));\n this.table = (__runInitializers(this, _selectedRows_extraInitializers), __runInitializers(this, _table_initializers, void 0));\n this.thead = (__runInitializers(this, _table_extraInitializers), __runInitializers(this, _thead_initializers, void 0));\n this.tbody = (__runInitializers(this, _thead_extraInitializers), __runInitializers(this, _tbody_initializers, void 0));\n this._hasController = (__runInitializers(this, _tbody_extraInitializers), false);\n this._unsortedData = [];\n this.dataRequestTimeout = null;\n this.handleClick = (e) => {\n const target = e.target;\n // Handle sortable header click\n const th = target.closest('th.sortable');\n if (th) {\n const columnKey = th.getAttribute('data-key');\n if (columnKey) {\n this.toggleSort(columnKey, true); // Always multi-sort\n }\n return;\n }\n // Handle row click\n const tr = target.closest('tbody tr');\n if (tr) {\n // Don't trigger if clicking on checkbox or other interactive elements\n if (target.matches('input[type=\"checkbox\"], button, a, .interactive')) {\n return;\n }\n const rowIndex = parseInt(tr.getAttribute('data-index') || '0');\n const rowData = this.data[rowIndex];\n // Handle row selection if selectable\n if (this.selectable) {\n const isCurrentlySelected = this.selectedRows.includes(rowIndex);\n if (isCurrentlySelected) {\n this.selectedRows = this.selectedRows.filter(i => i !== rowIndex);\n }\n else {\n this.selectedRows = [...this.selectedRows, rowIndex];\n }\n this.updateRowSelectionState();\n this.updateSelectAllState();\n this.dispatchRowSelectionChanged(rowIndex, !isCurrentlySelected);\n }\n // Handle clickable row event\n if (this.clickable) {\n this.dispatchEvent(new CustomEvent('row-clicked', {\n detail: { rowData, rowIndex }\n }));\n }\n }\n };\n this.handleChange = (e) => {\n const target = e.target;\n // Handle row select checkbox\n if (target.matches('.row-select')) {\n const checkbox = target;\n const rowIndex = parseInt(checkbox.getAttribute('data-row-index') || '0');\n if (checkbox.checked) {\n if (!this.selectedRows.includes(rowIndex)) {\n this.selectedRows = [...this.selectedRows, rowIndex];\n }\n }\n else {\n this.selectedRows = this.selectedRows.filter(i => i !== rowIndex);\n }\n this.updateRowSelectionState();\n this.updateSelectAllState();\n this.dispatchRowSelectionChanged(rowIndex, checkbox.checked);\n return;\n }\n // Handle select all checkbox\n if (target.matches('.select-all')) {\n const checkbox = target;\n if (checkbox.checked) {\n this.selectedRows = this.data.map((_, index) => index);\n }\n else {\n this.selectedRows = [];\n }\n this.updateRowSelectionState();\n this.dispatchSelectAllChanged(checkbox.checked);\n }\n };\n this.onAttached = () => {\n this._hasController = true;\n this.getTableConfig();\n this.getTableData();\n };\n this.searchDebounceTimeout = null;\n this.handleSearchInput = (e) => {\n const target = e.target;\n const input = target;\n this.searchText = input.value;\n // Manual debounce implementation\n if (this.searchDebounceTimeout) {\n clearTimeout(this.searchDebounceTimeout);\n }\n this.searchDebounceTimeout = setTimeout(() => {\n this.debouncedDataRequest();\n }, this.searchDebounce);\n };\n this.selectorDebounceTimeout = null;\n this.handleSelectorChange = (e) => {\n this.selector = Array.isArray(e.detail.value) ? e.detail.value.join(',') : e.detail.value;\n // Manual debounce implementation\n if (this.selectorDebounceTimeout) {\n clearTimeout(this.selectorDebounceTimeout);\n }\n this.selectorDebounceTimeout = setTimeout(() => {\n this.debouncedDataRequest();\n }, 150);\n };\n }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _striped_decorators = [property({ type: Boolean, attribute: 'striped' })];\n _searchable_decorators = [property({ type: Boolean, attribute: 'searchable' })];\n _filterable_decorators = [property({ type: Boolean, attribute: 'filterable' })];\n _sortable_decorators = [property({ type: Boolean, attribute: 'sortable' })];\n _selectable_decorators = [property({ type: Boolean, attribute: 'selectable' })];\n _hoverable_decorators = [property({ type: Boolean, attribute: 'hoverable' })];\n _clickable_decorators = [property({ type: Boolean, attribute: 'clickable' })];\n _list_decorators = [property({ type: Boolean, attribute: 'list' })];\n _searchDebounce_decorators = [property({ type: Number, attribute: 'search-debounce' })];\n _currentSort_decorators = [property({ type: Array, attribute: false })];\n _selector_decorators = [property({ type: String, attribute: 'selector' })];\n _selectorOptions_decorators = [property({ type: Array, attribute: false })];\n _loading_decorators = [property({ type: Boolean, attribute: 'loading' })];\n _selectedRows_decorators = [property({ type: Array, attribute: false })];\n _table_decorators = [query('table')];\n _thead_decorators = [query('thead')];\n _tbody_decorators = [query('tbody')];\n _getTableConfig_decorators = [request('table/config')];\n _getTableData_decorators = [request('table/data')];\n _styles_decorators = [styles()];\n _render_decorators = [render()];\n _initialize_decorators = [ready()];\n _handleSelectorOptionsChange_decorators = [watch('selector-options')];\n _handleSortableChange_decorators = [watch('sortable')];\n _handleSelectableChange_decorators = [watch('selectable')];\n _handleColumnsChange_decorators = [watch('columns')];\n _handleDataChange_decorators = [watch('data', 'loading')];\n _handleSelectedRowsChange_decorators = [watch('selected-rows')];\n _handleSortChange_decorators = [watch('current-sort')];\n _handleControlsChange_decorators = [watch('searchable', 'filterable')];\n _dispatchRowSelectionChanged_decorators = [dispatch('table-row-selection-changed', { bubbles: true, composed: true })];\n _dispatchSelectAllChanged_decorators = [dispatch('table-select-all-changed', { bubbles: true, composed: true })];\n __esDecorate(this, null, _getTableConfig_decorators, { kind: \"method\", name: \"getTableConfig\", static: false, private: false, access: { has: obj => \"getTableConfig\" in obj, get: obj => obj.getTableConfig }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _getTableData_decorators, { kind: \"method\", name: \"getTableData\", static: false, private: false, access: { has: obj => \"getTableData\" in obj, get: obj => obj.getTableData }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _initialize_decorators, { kind: \"method\", name: \"initialize\", static: false, private: false, access: { has: obj => \"initialize\" in obj, get: obj => obj.initialize }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSelectorOptionsChange_decorators, { kind: \"method\", name: \"handleSelectorOptionsChange\", static: false, private: false, access: { has: obj => \"handleSelectorOptionsChange\" in obj, get: obj => obj.handleSelectorOptionsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSortableChange_decorators, { kind: \"method\", name: \"handleSortableChange\", static: false, private: false, access: { has: obj => \"handleSortableChange\" in obj, get: obj => obj.handleSortableChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSelectableChange_decorators, { kind: \"method\", name: \"handleSelectableChange\", static: false, private: false, access: { has: obj => \"handleSelectableChange\" in obj, get: obj => obj.handleSelectableChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleColumnsChange_decorators, { kind: \"method\", name: \"handleColumnsChange\", static: false, private: false, access: { has: obj => \"handleColumnsChange\" in obj, get: obj => obj.handleColumnsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleDataChange_decorators, { kind: \"method\", name: \"handleDataChange\", static: false, private: false, access: { has: obj => \"handleDataChange\" in obj, get: obj => obj.handleDataChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSelectedRowsChange_decorators, { kind: \"method\", name: \"handleSelectedRowsChange\", static: false, private: false, access: { has: obj => \"handleSelectedRowsChange\" in obj, get: obj => obj.handleSelectedRowsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSortChange_decorators, { kind: \"method\", name: \"handleSortChange\", static: false, private: false, access: { has: obj => \"handleSortChange\" in obj, get: obj => obj.handleSortChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleControlsChange_decorators, { kind: \"method\", name: \"handleControlsChange\", static: false, private: false, access: { has: obj => \"handleControlsChange\" in obj, get: obj => obj.handleControlsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchRowSelectionChanged_decorators, { kind: \"method\", name: \"dispatchRowSelectionChanged\", static: false, private: false, access: { has: obj => \"dispatchRowSelectionChanged\" in obj, get: obj => obj.dispatchRowSelectionChanged }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchSelectAllChanged_decorators, { kind: \"method\", name: \"dispatchSelectAllChanged\", static: false, private: false, access: { has: obj => \"dispatchSelectAllChanged\" in obj, get: obj => obj.dispatchSelectAllChanged }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _striped_decorators, { kind: \"field\", name: \"striped\", static: false, private: false, access: { has: obj => \"striped\" in obj, get: obj => obj.striped, set: (obj, value) => { obj.striped = value; } }, metadata: _metadata }, _striped_initializers, _striped_extraInitializers);\n __esDecorate(null, null, _searchable_decorators, { kind: \"field\", name: \"searchable\", static: false, private: false, access: { has: obj => \"searchable\" in obj, get: obj => obj.searchable, set: (obj, value) => { obj.searchable = value; } }, metadata: _metadata }, _searchable_initializers, _searchable_extraInitializers);\n __esDecorate(null, null, _filterable_decorators, { kind: \"field\", name: \"filterable\", static: false, private: false, access: { has: obj => \"filterable\" in obj, get: obj => obj.filterable, set: (obj, value) => { obj.filterable = value; } }, metadata: _metadata }, _filterable_initializers, _filterable_extraInitializers);\n __esDecorate(null, null, _sortable_decorators, { kind: \"field\", name: \"sortable\", static: false, private: false, access: { has: obj => \"sortable\" in obj, get: obj => obj.sortable, set: (obj, value) => { obj.sortable = value; } }, metadata: _metadata }, _sortable_initializers, _sortable_extraInitializers);\n __esDecorate(null, null, _selectable_decorators, { kind: \"field\", name: \"selectable\", static: false, private: false, access: { has: obj => \"selectable\" in obj, get: obj => obj.selectable, set: (obj, value) => { obj.selectable = value; } }, metadata: _metadata }, _selectable_initializers, _selectable_extraInitializers);\n __esDecorate(null, null, _hoverable_decorators, { kind: \"field\", name: \"hoverable\", static: false, private: false, access: { has: obj => \"hoverable\" in obj, get: obj => obj.hoverable, set: (obj, value) => { obj.hoverable = value; } }, metadata: _metadata }, _hoverable_initializers, _hoverable_extraInitializers);\n __esDecorate(null, null, _clickable_decorators, { kind: \"field\", name: \"clickable\", static: false, private: false, access: { has: obj => \"clickable\" in obj, get: obj => obj.clickable, set: (obj, value) => { obj.clickable = value; } }, metadata: _metadata }, _clickable_initializers, _clickable_extraInitializers);\n __esDecorate(null, null, _list_decorators, { kind: \"field\", name: \"list\", static: false, private: false, access: { has: obj => \"list\" in obj, get: obj => obj.list, set: (obj, value) => { obj.list = value; } }, metadata: _metadata }, _list_initializers, _list_extraInitializers);\n __esDecorate(null, null, _searchDebounce_decorators, { kind: \"field\", name: \"searchDebounce\", static: false, private: false, access: { has: obj => \"searchDebounce\" in obj, get: obj => obj.searchDebounce, set: (obj, value) => { obj.searchDebounce = value; } }, metadata: _metadata }, _searchDebounce_initializers, _searchDebounce_extraInitializers);\n __esDecorate(null, null, _currentSort_decorators, { kind: \"field\", name: \"currentSort\", static: false, private: false, access: { has: obj => \"currentSort\" in obj, get: obj => obj.currentSort, set: (obj, value) => { obj.currentSort = value; } }, metadata: _metadata }, _currentSort_initializers, _currentSort_extraInitializers);\n __esDecorate(null, null, _selector_decorators, { kind: \"field\", name: \"selector\", static: false, private: false, access: { has: obj => \"selector\" in obj, get: obj => obj.selector, set: (obj, value) => { obj.selector = value; } }, metadata: _metadata }, _selector_initializers, _selector_extraInitializers);\n __esDecorate(null, null, _selectorOptions_decorators, { kind: \"field\", name: \"selectorOptions\", static: false, private: false, access: { has: obj => \"selectorOptions\" in obj, get: obj => obj.selectorOptions, set: (obj, value) => { obj.selectorOptions = value; } }, metadata: _metadata }, _selectorOptions_initializers, _selectorOptions_extraInitializers);\n __esDecorate(null, null, _loading_decorators, { kind: \"field\", name: \"loading\", static: false, private: false, access: { has: obj => \"loading\" in obj, get: obj => obj.loading, set: (obj, value) => { obj.loading = value; } }, metadata: _metadata }, _loading_initializers, _loading_extraInitializers);\n __esDecorate(null, null, _selectedRows_decorators, { kind: \"field\", name: \"selectedRows\", static: false, private: false, access: { has: obj => \"selectedRows\" in obj, get: obj => obj.selectedRows, set: (obj, value) => { obj.selectedRows = value; } }, metadata: _metadata }, _selectedRows_initializers, _selectedRows_extraInitializers);\n __esDecorate(null, null, _table_decorators, { kind: \"field\", name: \"table\", static: false, private: false, access: { has: obj => \"table\" in obj, get: obj => obj.table, set: (obj, value) => { obj.table = value; } }, metadata: _metadata }, _table_initializers, _table_extraInitializers);\n __esDecorate(null, null, _thead_decorators, { kind: \"field\", name: \"thead\", static: false, private: false, access: { has: obj => \"thead\" in obj, get: obj => obj.thead, set: (obj, value) => { obj.thead = value; } }, metadata: _metadata }, _thead_initializers, _thead_extraInitializers);\n __esDecorate(null, null, _tbody_decorators, { kind: \"field\", name: \"tbody\", static: false, private: false, access: { has: obj => \"tbody\" in obj, get: obj => obj.tbody, set: (obj, value) => { obj.tbody = value; } }, metadata: _metadata }, _tbody_initializers, _tbody_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n setData(data) {\n this._unsortedData = [...data];\n this.data = data;\n this.render();\n }\n setColumns(columns) {\n this.columns = columns;\n this.render();\n }\n async *getTableConfig() {\n const config = await (yield {});\n this.columns = config.columns || [];\n this.selectorOptions = config.selectorOptions || [];\n // Wait for next frame to ensure DOM is updated\n await new Promise(resolve => requestAnimationFrame(resolve));\n this.renderHeader();\n this.renderControls();\n return config;\n }\n async *getTableData() {\n this.loading = true;\n this.selectedRows = []; // Clear selections when loading new data\n try {\n const params = {\n search: this.searchText,\n sort: this.currentSort,\n selector: this.selector\n };\n const response = await (yield params);\n this.data = response.data || [];\n this.loading = false;\n // Wait for next frame to ensure DOM is updated\n await new Promise(resolve => requestAnimationFrame(resolve));\n this.renderBody();\n return response;\n }\n catch (error) {\n console.error('Error loading table data:', error);\n this.data = [];\n this.loading = false;\n // Wait for next frame to ensure DOM is updated\n await new Promise(resolve => requestAnimationFrame(resolve));\n this.renderBody();\n }\n }\n debouncedDataRequest() {\n // Set loading immediately for instant feedback\n if (!this.loading) {\n this.loading = true;\n }\n if (this.dataRequestTimeout) {\n clearTimeout(this.dataRequestTimeout);\n }\n this.dataRequestTimeout = setTimeout(() => {\n this.getTableData();\n this.dataRequestTimeout = null;\n }, 150);\n }\n styles() {\n return css /*css*/ `\n :host {\n display: block;\n }\n\n .snice-table {\n width: 100%;\n overflow: auto;\n }\n\n table {\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n border-radius: var(--snice-border-radius-lg);\n border: 1px solid var(--snice-color-border);\n }\n\n th, td {\n padding: var(--snice-spacing-xsm) var(--snice-spacing-xsm);\n border: 1px solid var(--snice-color-border);\n text-align: left;\n color: var(--snice-color-text);\n max-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n th {\n padding: var(--snice-spacing-sm) var(--snice-spacing-sm);\n }\n\n th.select-column,\n td.select-column {\n width: 2.5rem;\n max-width: 2.5rem;\n text-align: center;\n padding: var(--snice-spacing-xs);\n }\n\n th {\n background-color: var(--snice-color-background-secondary);\n color: var(--snice-color-text);\n font-weight: var(--snice-font-weight-semibold);\n border-bottom: 2px solid var(--snice-color-border);\n }\n\n th.sortable {\n cursor: pointer;\n user-select: none;\n }\n\n th.sortable:hover {\n background-color: var(--snice-color-background-tertiary);\n }\n\n /* Row styling */\n :host([striped]) tbody tr:nth-child(even) {\n background-color: var(--snice-color-background-secondary);\n }\n\n :host([hoverable]) tbody tr:hover {\n background-color: var(--snice-color-background-tertiary);\n }\n\n :host([clickable]) tbody tr {\n cursor: pointer;\n }\n\n :host([selectable]) tbody tr {\n cursor: pointer;\n }\n\n tbody tr[data-selected=\"true\"] {\n background-color: var(--snice-color-background-tertiary);\n border-left: 3px solid var(--snice-color-primary);\n }\n\n tbody tr[data-selected=\"true\"]:hover {\n background-color: var(--snice-color-background-tertiary);\n }\n\n /* List mode - hide vertical borders */\n :host([list]) th,\n :host([list]) td {\n border-left: none;\n border-right: none;\n }\n\n :host([list]) th:first-child,\n :host([list]) td:first-child {\n border-left: none;\n }\n\n :host([list]) th:last-child,\n :host([list]) td:last-child {\n border-right: none;\n }\n\n :host([list]) table {\n border-left: none;\n border-right: none;\n }\n\n [part=\"header\"] {\n background-color: var(--snice-color-background);\n }\n\n [part=\"body\"] {\n background-color: var(--snice-table-body-bg, --snice-color-background);\n display: block;\n }\n\n .table-controls {\n display: flex;\n gap: var(--snice-spacing-md);\n align-items: center;\n flex-wrap: wrap;\n }\n\n :host(:not([searchable])) .search-input {\n display: none;\n }\n\n :host(.selector-options-empty) .selector-input {\n display: none;\n }\n\n .search-input,\n .selector-input {\n height: 2.5rem;\n }\n\n .search-input {\n min-width: 12.5rem;\n flex: 1;\n }\n\n .selector-input {\n min-width: 9.375rem;\n --snice-select-min-height: 2rem;\n }\n\n /* Sort indicators */\n .sort-header {\n display: flex;\n align-items: center;\n gap: var(--snice-spacing-xs);\n justify-content: space-between;\n }\n\n\n .sort-indicator {\n display: flex;\n flex-direction: column;\n font-size: 0.7em;\n line-height: 1;\n opacity: 0.3;\n transition: opacity var(--snice-transition-fast);\n }\n\n .sort-indicator.active {\n opacity: 1;\n }\n\n .sort-order {\n font-size: 0.6em;\n background: var(--snice-color-primary);\n color: var(--snice-color-text-inverse);\n border-radius: var(--snice-border-radius-sm);\n padding: 1px 3px;\n min-width: 12px;\n text-align: center;\n }\n\n /* Loading fade */\n tbody {\n transition: opacity var(--snice-transition-normal);\n }\n\n :host([loading]) tbody {\n opacity: 0.5;\n }\n\n .no-data {\n text-align: center;\n padding: var(--snice-spacing-lg);\n color: var(--snice-color-text-secondary);\n }\n\n /* Slotted table layout */\n .snice-table--slotted {\n border: 1px solid var(--snice-color-border);\n border-radius: var(--snice-border-radius-lg);\n overflow: hidden;\n }\n\n .snice-table--slotted .table-header {\n display: grid;\n grid-auto-flow: column;\n grid-auto-columns: 1fr;\n background-color: var(--snice-color-background-secondary);\n border-bottom: 2px solid var(--snice-color-border);\n padding: var(--snice-spacing-sm);\n font-weight: var(--snice-font-weight-semibold);\n color: var(--snice-color-text);\n }\n\n .snice-table--slotted .header-cell {\n color: var(--snice-color-text);\n }\n\n .snice-table--slotted .table-header::slotted(snice-column) {\n padding: var(--snice-spacing-sm);\n }\n\n .snice-table--slotted .table-body {\n display: flex;\n flex-direction: column;\n }\n\n .snice-table--slotted .table-body::slotted(snice-row) {\n border-bottom: 1px solid var(--snice-color-border);\n }\n\n .snice-table--slotted .table-body::slotted(snice-row:last-child) {\n border-bottom: none;\n }\n\n :host([striped]) .snice-table--slotted .table-body::slotted(snice-row:nth-child(even)) {\n background-color: var(--snice-color-background-secondary);\n }\n\n :host([hoverable]) .snice-table--slotted .table-body::slotted(snice-row:hover) {\n background-color: var(--snice-color-background-tertiary);\n }\n `;\n }\n render() {\n // Check if we have slotted rows\n const hasSlottedRows = this.querySelectorAll('snice-row[slot=\"rows\"]').length > 0;\n if (hasSlottedRows) {\n // Use slotted rows layout\n return html /*html*/ `\n <div class=\"snice-table snice-table--slotted\" @click=${this.handleClick} @change=${this.handleChange}>\n <div class=\"table-controls-container\"></div>\n <div class=\"table-header\" id=\"slotted-header\"></div>\n <div class=\"table-body\">\n <slot name=\"rows\"></slot>\n </div>\n <slot name=\"columns\" style=\"display: none;\"></slot>\n </div>\n `;\n }\n else {\n // Use traditional table layout\n return html /*html*/ `\n <div class=\"snice-table\" @click=${this.handleClick} @change=${this.handleChange}>\n <div class=\"table-controls-container\"></div>\n <table>\n <thead></thead>\n <tbody></tbody>\n </table>\n </div>\n `;\n }\n }\n renderControls() {\n const container = this.shadowRoot?.querySelector('.table-controls-container');\n if (!container)\n return;\n const showControls = this.searchable || this.filterable;\n if (!showControls) {\n container.innerHTML = '';\n return;\n }\n // Only render if container is empty (first time)\n if (container.children.length === 0) {\n const controlsDiv = document.createElement('div');\n controlsDiv.className = 'table-controls';\n controlsDiv.setAttribute('part', 'controls');\n if (this.searchable) {\n const searchInput = document.createElement('snice-input');\n searchInput.className = 'search-input';\n searchInput.setAttribute('type', 'search');\n searchInput.setAttribute('placeholder', 'Search...');\n searchInput.setAttribute('size', 'medium');\n searchInput.addEventListener('input', this.handleSearchInput);\n controlsDiv.appendChild(searchInput);\n }\n if (this.filterable) {\n const select = document.createElement('snice-select');\n select.className = 'selector-input';\n select.setAttribute('multiple', '');\n select.setAttribute('searchable', '');\n select.setAttribute('clearable', '');\n select.setAttribute('placeholder', 'Filter...');\n select.setAttribute('size', 'medium');\n this.selectorOptions.forEach(opt => {\n const option = document.createElement('snice-option');\n option.setAttribute('value', opt.value);\n option.textContent = opt.label;\n select.appendChild(option);\n });\n controlsDiv.appendChild(select);\n }\n container.appendChild(controlsDiv);\n }\n }\n async initialize() {\n // Listen for controller attached event\n this.addEventListener('controller-attached', this.onAttached);\n // Listen for select change events from the filter dropdown\n this.addEventListener('select-change', this.handleSelectorChange);\n // Wait for snice-column to be defined\n await customElements.whenDefined('snice-column');\n await customElements.whenDefined('snice-row');\n // Process slotted columns and rows\n await this.processSlottedContent();\n // Render controls after initial setup\n this.renderControls();\n }\n async processSlottedContent() {\n // Get slotted column elements\n const columnElements = Array.from(this.querySelectorAll('snice-column[slot=\"columns\"]'));\n if (columnElements.length > 0) {\n // Extract column definitions from snice-column elements\n this.columns = columnElements.map((col) => col.getColumnDefinition());\n // Pass column definitions to slotted rows\n const rowElements = Array.from(this.querySelectorAll('snice-row[slot=\"rows\"]'));\n rowElements.forEach((row, index) => {\n row.columns = this.columns;\n row.index = index;\n row.hoverable = this.hoverable;\n row.clickable = this.clickable;\n row.selectable = this.selectable;\n });\n // Render the header for slotted mode (after next tick to ensure DOM is updated)\n requestAnimationFrame(() => this.renderSlottedHeader());\n }\n }\n renderSlottedHeader() {\n const headerContainer = this.shadowRoot?.querySelector('#slotted-header');\n if (!headerContainer || this.columns.length === 0)\n return;\n // Render column headers\n headerContainer.innerHTML = this.columns.map(col => `<div class=\"header-cell\">${col.label}</div>`).join('');\n }\n handleSelectorOptionsChange() {\n // Update CSS class to show/hide selector\n if (this.selectorOptions.length === 0) {\n this.classList.add('selector-options-empty');\n }\n else {\n this.classList.remove('selector-options-empty');\n }\n }\n handleSortableChange() {\n this.renderHeader(); // Re-render header to show/hide sort indicators\n }\n handleSelectableChange() {\n this.render(); // Re-render both header and body for checkbox columns\n }\n handleColumnsChange() {\n this.renderHeader();\n }\n handleDataChange() {\n this.renderBody();\n }\n handleSelectedRowsChange() {\n this.updateRowSelectionState();\n this.updateSelectAllState();\n }\n handleSortChange() {\n this.renderHeader();\n }\n handleControlsChange() {\n this.renderControls();\n }\n renderHeader() {\n if (!this.thead)\n return;\n const headerRow = document.createElement('tr');\n if (this.selectable) {\n const selectCell = document.createElement('th');\n selectCell.className = 'select-column';\n const allSelected = this.selectedRows.length === this.data.length && this.data.length > 0;\n const someSelected = this.selectedRows.length > 0 && this.selectedRows.length < this.data.length;\n selectCell.innerHTML = `<input type=\"checkbox\" class=\"select-all\" ${allSelected ? 'checked' : ''} />`;\n headerRow.appendChild(selectCell);\n // Set indeterminate after insertion\n setTimeout(() => {\n const checkbox = selectCell.querySelector('.select-all');\n if (checkbox) {\n checkbox.indeterminate = someSelected;\n }\n }, 0);\n }\n this.columns.forEach(column => {\n const th = document.createElement('th');\n th.setAttribute('data-key', column.key);\n if (this.sortable && column.sortable !== false) {\n th.classList.add('sortable');\n th.setAttribute('role', 'button');\n th.innerHTML = this.renderSortableHeader(column);\n }\n else {\n th.textContent = column.label;\n }\n headerRow.appendChild(th);\n });\n this.thead.innerHTML = '';\n this.thead.appendChild(headerRow);\n }\n renderSortableHeader(column) {\n const sortItem = this.currentSort.find(s => s.column === column.key);\n const sortIndex = this.currentSort.findIndex(s => s.column === column.key);\n const isActive = !!sortItem;\n let indicator = '▲▼'; // Default unsorted state\n let orderNumber = '';\n if (sortItem) {\n if (sortItem.direction === 'asc') {\n indicator = '▲';\n }\n else if (sortItem.direction === 'desc') {\n indicator = '▼';\n }\n if (this.currentSort.length > 1) {\n orderNumber = `<span class=\"sort-order\">${sortIndex + 1}</span>`;\n }\n }\n const indicatorClasses = ['sort-indicator', isActive ? 'active' : ''].filter(Boolean).join(' ');\n return `\n <div class=\"sort-header\">\n <span>${column.label}</span>\n <div class=\"${indicatorClasses}\">\n ${indicator}\n ${orderNumber}\n </div>\n </div>\n `;\n }\n renderBody() {\n if (!this.tbody)\n return;\n this.tbody.innerHTML = '';\n if (this.data.length === 0 && this.columns.length > 0) {\n if (this.loading) {\n // Show loading spinner\n const tr = document.createElement('tr');\n const td = document.createElement('td');\n const colSpan = this.columns.length + (this.selectable ? 1 : 0);\n td.colSpan = colSpan;\n td.className = 'no-data';\n td.innerHTML = '<snice-progress variant=\"circular\" indeterminate size=\"small\"></snice-progress>';\n tr.appendChild(td);\n this.tbody.appendChild(tr);\n return;\n }\n else {\n // Show \"No Data\" message\n const tr = document.createElement('tr');\n const td = document.createElement('td');\n const colSpan = this.columns.length + (this.selectable ? 1 : 0);\n td.colSpan = colSpan;\n td.className = 'no-data';\n td.textContent = 'No Data';\n tr.appendChild(td);\n this.tbody.appendChild(tr);\n return;\n }\n }\n const fragment = document.createDocumentFragment();\n this.data.forEach((rowData, index) => {\n const tr = document.createElement('tr');\n tr.setAttribute('data-index', String(index));\n // Set row selection state\n const isSelected = this.selectedRows.includes(index);\n tr.setAttribute('data-selected', String(isSelected));\n if (this.selectable) {\n const selectCell = document.createElement('td');\n selectCell.className = 'select-column';\n selectCell.innerHTML = `<input type=\"checkbox\" class=\"row-select\" ${isSelected ? 'checked' : ''} data-row-index=\"${index}\" />`;\n tr.appendChild(selectCell);\n }\n this.columns.forEach(column => {\n const td = document.createElement('td');\n const value = rowData[column.key];\n // Create cell component as HTML string\n const cellTagName = this.getCellTagName(column.type);\n const attributes = this.getCellAttributes(column, value);\n td.innerHTML = `<${cellTagName} ${attributes}></${cellTagName}>`;\n tr.appendChild(td);\n });\n fragment.appendChild(tr);\n });\n this.tbody.appendChild(fragment);\n }\n getCellAttributes(column, value) {\n const attributes = [\n `type=\"${column.type}\"`,\n `align=\"${column.align || 'left'}\"`,\n `value=\"${String(value || '').replace(/\"/g, '&quot;')}\"`,\n `in-table=\"true\"`\n ];\n // Add type-specific attributes\n if (column.type === 'number' || column.type === 'currency') {\n if (column.decimals !== undefined)\n attributes.push(`decimals=\"${column.decimals}\"`);\n if (column.thousandsSeparator)\n attributes.push(`thousands-separator=\"true\"`);\n if (column.prefix)\n attributes.push(`prefix=\"${column.prefix}\"`);\n if (column.suffix)\n attributes.push(`suffix=\"${column.suffix}\"`);\n }\n if (column.type === 'date') {\n if (column.dateFormat)\n attributes.push(`date-format=\"${column.dateFormat}\"`);\n }\n if (column.type === 'boolean') {\n if (column.useSymbols)\n attributes.push(`use-symbols=\"true\"`);\n if (column.trueSymbol)\n attributes.push(`true-symbol=\"${column.trueSymbol}\"`);\n if (column.falseSymbol)\n attributes.push(`false-symbol=\"${column.falseSymbol}\"`);\n if (column.trueValue)\n attributes.push(`true-value=\"${column.trueValue}\"`);\n if (column.falseValue)\n attributes.push(`false-value=\"${column.falseValue}\"`);\n }\n return attributes.join(' ');\n }\n getCellTagName(type) {\n switch (type) {\n case 'text':\n return 'snice-cell-text';\n case 'number':\n case 'currency':\n return 'snice-cell-number';\n case 'date':\n return 'snice-cell-date';\n case 'boolean':\n return 'snice-cell-boolean';\n case 'rating':\n return 'snice-cell-rating';\n case 'progress':\n return 'snice-cell-progress';\n case 'duration':\n return 'snice-cell-duration';\n case 'filesize':\n return 'snice-cell-filesize';\n case 'sparkline':\n return 'snice-cell-sparkline';\n case 'image':\n return 'snice-cell-image';\n default:\n return 'snice-cell';\n }\n }\n updateRowSelectionState() {\n if (!this.tbody)\n return;\n const rows = this.tbody.querySelectorAll('tr');\n rows.forEach((row, index) => {\n const isSelected = this.selectedRows.includes(index);\n row.setAttribute('data-selected', String(isSelected));\n const checkbox = row.querySelector('.row-select');\n if (checkbox) {\n checkbox.checked = isSelected;\n }\n });\n }\n updateSelectAllState() {\n const selectAllCheckbox = this.thead?.querySelector('.select-all');\n if (!selectAllCheckbox)\n return;\n const allSelected = this.selectedRows.length === this.data.length;\n const someSelected = this.selectedRows.length > 0 && this.selectedRows.length < this.data.length;\n selectAllCheckbox.checked = allSelected;\n selectAllCheckbox.indeterminate = someSelected;\n }\n toggleSort(columnKey, multiSort = false) {\n if (!multiSort) {\n // Single column sort - clear all other sorts\n const existingSort = this.currentSort.find(s => s.column === columnKey);\n if (!existingSort) {\n this.currentSort = [{ column: columnKey, direction: 'asc' }];\n }\n else if (existingSort.direction === 'asc') {\n this.currentSort = [{ column: columnKey, direction: 'desc' }];\n }\n else {\n this.currentSort = [];\n }\n }\n else {\n // Multi column sort - modify existing or add new\n const existingSortIndex = this.currentSort.findIndex(s => s.column === columnKey);\n if (existingSortIndex === -1) {\n // Add new sort\n this.currentSort = [...this.currentSort, { column: columnKey, direction: 'asc' }];\n }\n else {\n const existingSort = this.currentSort[existingSortIndex];\n if (existingSort.direction === 'asc') {\n // Change to desc - create new array to trigger reactivity\n this.currentSort = this.currentSort.map((sort, index) => index === existingSortIndex ? { ...sort, direction: 'desc' } : sort);\n }\n else {\n // Remove this sort\n this.currentSort = this.currentSort.filter(s => s.column !== columnKey);\n }\n }\n }\n this.renderHeader(); // Update sort indicators immediately\n if (this._hasController) {\n this.debouncedDataRequest(); // Delegate to controller for server-side sort\n }\n else {\n this.sortLocalData(); // Sort in-memory data\n }\n }\n sortLocalData() {\n if (!this._unsortedData.length) {\n this._unsortedData = [...this.data];\n }\n if (this.currentSort.length === 0) {\n this.data = [...this._unsortedData];\n }\n else {\n this.data = [...this._unsortedData].sort((a, b) => {\n for (const { column, direction } of this.currentSort) {\n const aVal = a[column] ?? '';\n const bVal = b[column] ?? '';\n const cmp = String(aVal).localeCompare(String(bVal), undefined, { numeric: true });\n if (cmp !== 0)\n return direction === 'asc' ? cmp : -cmp;\n }\n return 0;\n });\n }\n this.renderBody();\n }\n dispatchRowSelectionChanged(rowIndex, selected) {\n return {\n selectedRows: this.selectedRows,\n rowIndex,\n selected\n };\n }\n dispatchSelectAllChanged(allSelected) {\n return {\n selectedRows: this.selectedRows,\n allSelected\n };\n }\n });\n return _classThis;\n})();\n\nexport { SniceTable };\n//# sourceMappingURL=snice-table.js.map\n"],"names":["__esDecorate","ctor","descriptorIn","decorators","contextIn","initializers","extraInitializers","accept","f","TypeError","_","kind","key","target","prototype","descriptor","Object","getOwnPropertyDescriptor","name","done","i","length","context","p","access","addInitializer","push","result","get","set","init","unshift","defineProperty","__runInitializers","thisArg","value","useValue","arguments","call","renderIcon","icon","className","html","startsWith","src","slice","content","test","SuppressedError","_classDescriptor","_classThis","_type_decorators","_size_decorators","_variant_decorators","_value_decorators","_placeholder_decorators","_label_decorators","_helperText_decorators","_errorText_decorators","_disabled_decorators","_readonly_decorators","_loading_decorators","_required_decorators","_invalid_decorators","_clearable_decorators","_password_decorators","_min_decorators","_max_decorators","_step_decorators","_pattern_decorators","_maxlength_decorators","_minlength_decorators","_autocomplete_decorators","_name_decorators","_align_decorators","_labelAlign_decorators","_stretch_decorators","_prefixIcon_decorators","_suffixIcon_decorators","_input_decorators","_clearButton_decorators","_passwordToggle_decorators","_render_decorators","_styles_decorators","_init_decorators","_handleValueChange_decorators","_handleInvalidChange_decorators","_handleDisabledChange_decorators","_handleLoadingChange_decorators","_handleReadonlyChange_decorators","_handlePlaceholderChange_decorators","_handleMinChange_decorators","_handleMaxChange_decorators","_handleStepChange_decorators","_handleMaxLengthChange_decorators","_handleMinLengthChange_decorators","_handlePatternChange_decorators","_handleTypeChange_decorators","_handleLabelChange_decorators","_dispatchInputEvent_decorators","_dispatchChangeEvent_decorators","_dispatchFocusEvent_decorators","_dispatchBlurEvent_decorators","_dispatchClearEvent_decorators","_classDecorators","element","formAssociated","_classExtraInitializers","_classSuper","HTMLElement","_instanceExtraInitializers","_type_initializers","_type_extraInitializers","_size_initializers","_size_extraInitializers","_variant_initializers","_variant_extraInitializers","_value_initializers","_value_extraInitializers","_placeholder_initializers","_placeholder_extraInitializers","_label_initializers","_label_extraInitializers","_helperText_initializers","_helperText_extraInitializers","_errorText_initializers","_errorText_extraInitializers","_disabled_initializers","_disabled_extraInitializers","_readonly_initializers","_readonly_extraInitializers","_loading_initializers","_loading_extraInitializers","_required_initializers","_required_extraInitializers","_invalid_initializers","_invalid_extraInitializers","_clearable_initializers","_clearable_extraInitializers","_password_initializers","_password_extraInitializers","_min_initializers","_min_extraInitializers","_max_initializers","_max_extraInitializers","_step_initializers","_step_extraInitializers","_pattern_initializers","_pattern_extraInitializers","_maxlength_initializers","_maxlength_extraInitializers","_minlength_initializers","_minlength_extraInitializers","_autocomplete_initializers","_autocomplete_extraInitializers","_name_initializers","_name_extraInitializers","_align_initializers","_align_extraInitializers","_labelAlign_initializers","_labelAlign_extraInitializers","_stretch_initializers","_stretch_extraInitializers","_prefixIcon_initializers","_prefixIcon_extraInitializers","_suffixIcon_initializers","_suffixIcon_extraInitializers","_input_initializers","_input_extraInitializers","_clearButton_initializers","_clearButton_extraInitializers","_passwordToggle_initializers","_passwordToggle_extraInitializers","this","_metadata","Symbol","metadata","create","property","attribute","type","Boolean","Number","query","render","styles","ready","watch","dispatch","bubbles","composed","static","private","has","obj","handleValueChange","handleInvalidChange","handleDisabledChange","handleLoadingChange","handleReadonlyChange","handlePlaceholderChange","handleMinChange","handleMaxChange","handleStepChange","handleMaxLengthChange","handleMinLengthChange","handlePatternChange","handleTypeChange","handleLabelChange","dispatchInputEvent","dispatchChangeEvent","dispatchFocusEvent","dispatchBlurEvent","dispatchClearEvent","size","variant","placeholder","label","helperText","errorText","disabled","readonly","loading","required","invalid","clearable","password","min","max","step","pattern","maxlength","minlength","autocomplete","align","labelAlign","stretch","prefixIcon","suffixIcon","input","clearButton","passwordToggle","enumerable","configurable","writable","constructor","super","internals","showPassword","attachInternals","inputClasses","filter","join","labelClasses","clearButtonClasses","handleInput","handleChange","handleFocus","handleBlur","handleClear","handlePasswordToggle","css","setFormValue","shouldShow","style","display","classList","toggle","setAttribute","add","maxLength","minLength","readOnly","e","clear","hiddenIcon","querySelector","visibleIcon","String","remove","labelEl","shadowRoot","textContent","wrapper","parentElement","focus","blur","select","checkValidity","reportValidity","setCustomValidity","message","_selected_decorators","_icon_decorators","_selected_initializers","_selected_extraInitializers","_icon_initializers","_icon_extraInitializers","selected","trim","optionData","_multiple_decorators","_searchable_decorators","_allowFreeText_decorators","_editable_decorators","_open_decorators","_maxHeight_decorators","_options_decorators","_trigger_decorators","_dropdown_decorators","_valueDisplay_decorators","_labelElement_decorators","_searchInput_decorators","_optionsList_decorators","_arrow_decorators","_searchContainer_decorators","_editableInput_decorators","_optionElements_decorators","_cleanup_decorators","_handleOptionsPropertyChange_decorators","_handleOpenChange_decorators","_dispatchOpenEvent_decorators","_dispatchCloseEvent_decorators","_multiple_initializers","_multiple_extraInitializers","_searchable_initializers","_searchable_extraInitializers","_allowFreeText_initializers","_allowFreeText_extraInitializers","_editable_initializers","_editable_extraInitializers","_open_initializers","_open_extraInitializers","_maxHeight_initializers","_maxHeight_extraInitializers","_options_initializers","_options_extraInitializers","_trigger_initializers","_trigger_extraInitializers","_dropdown_initializers","_dropdown_extraInitializers","_valueDisplay_initializers","_valueDisplay_extraInitializers","_labelElement_initializers","_labelElement_extraInitializers","_searchInput_initializers","_searchInput_extraInitializers","_optionsList_initializers","_optionsList_extraInitializers","_arrow_initializers","_arrow_extraInitializers","_searchContainer_initializers","_searchContainer_extraInitializers","_editableInput_initializers","_editableInput_extraInitializers","_optionElements_initializers","_optionElements_extraInitializers","Array","queryAll","dispose","cleanup","handleOptionsPropertyChange","handleOpenChange","dispatchOpenEvent","dispatchCloseEvent","multiple","searchable","allowFreeText","editable","open","maxHeight","options","trigger","dropdown","valueDisplay","labelElement","searchInput","optionsList","arrow","searchContainer","editableInput","optionElements","childOptions","filteredOptions","selectedValues","Set","focusedIndex","editableInputValue","mergedOptions","childValues","map","o","triggerClasses","searchHidden","handleEditableInput","handleEditableFocus","handleEditableBlur","handleEditableKeydown","handleEditableClick","handleEditableArrowClick","handleTriggerOpen","handleTriggerClick","handleClearClick","handleDropdownMousedown","handleOptionsClick","handleSearchKeydown","handleSearchInput","renderOptions","opt","index","isSelected","readOptionsFromChildren","split","v","requestAnimationFrame","syncEditableInputToValue","updateEditableState","updateTriggerState","updateValueDisplay","updateClearButton","updateDropdownState","updateDropdownContent","observeChildren","setupGlobalListeners","removeGlobalListeners","childObserver","disconnect","outsideClickHandler","contains","commitEditableValue","closeDropdown","globalKeyHandler","preventDefault","focusNextOption","focusPreviousOption","option","handleOptionSelect","document","addEventListener","removeEventListener","observer","MutationObserver","mutations","handleChildrenChange","observe","childList","subtree","attributes","attributeFilter","some","m","includes","attributeName","nodeName","from","querySelectorAll","sniceOption","getAttribute","hasAttribute","filterEditableOptions","openDropdown","setTimeout","stopPropagation","handleEditableOptionSelect","inputText","match","find","toLowerCase","allOptions","lower","updateOptionFocus","forEach","el","focusedEl","scrollIntoView","block","closest","toggleDropdown","delete","optionEl","searchTerm","selectedOptions","innerHTML","selectOption","cssContent","_column_decorators","_rowData_decorators","_contentElement_decorators","_updateAlignment_decorators","_updateContent_decorators","_column_initializers","_column_extraInitializers","_rowData_initializers","_rowData_extraInitializers","_contentElement_initializers","_contentElement_extraInitializers","updateAlignment","updateContent","column","rowData","contentElement","formatValue","applyAlignment","applyConditionalFormatting","textAlign","conditionalFormats","removeAttribute","applyStyle","format","condition","backgroundColor","color","fontWeight","fontStyle","fontSize","textDecoration","undefined","formatter","formatText","formatNumber","formatCurrency","formatPercent","formatAccounting","formatScientific","formatFraction","formatDate","formatBoolean","formatRating","formatProgress","formatSparkline","formatDuration","formatFilesize","numberFormat","num","isNaN","formatted","toFixed","decimals","thousandsSeparator","parts","replace","negativeStyle","prefix","suffix","currencyFormat","currency","minimumFractionDigits","maximumFractionDigits","Intl","NumberFormat","percentFormat","Math","abs","toExponential","h1","h2","k1","k2","b","a","floor","aux","dateFormat","date","Date","getTime","customFormat","getFullYear","toString","getMonth","padStart","getDate","dateStyle","DateTimeFormat","locale","booleanFormat","bool","useSymbols","trueSymbol","falseSymbol","trueValue","falseValue","ratingFormat","rating","symbol","emptySymbol","primaryColor","getComputedStyle","getPropertyValue","emptyColor","progressFormat","percentage","bgColor","height","showPercentage","round","sparklineFormat","data","isArray","width","range","points","val","barWidth","bars","barHeight","seconds","hours","minutes","secs","bytes","units","unitIndex","_multiline_decorators","_maxLines_decorators","_multiline_initializers","_multiline_extraInitializers","_maxLines_initializers","_maxLines_extraInitializers","multiline","maxLines","formatTextContent","textStyles","getTextStyles","text","ellipsis","wrap","_decimals_decorators","_thousandsSeparator_decorators","_prefix_decorators","_suffix_decorators","_negativeStyle_decorators","_highlight_decorators","_decimals_initializers","_decimals_extraInitializers","_thousandsSeparator_initializers","_thousandsSeparator_extraInitializers","_prefix_initializers","_prefix_extraInitializers","_suffix_initializers","_suffix_extraInitializers","_negativeStyle_initializers","_negativeStyle_extraInitializers","_highlight_initializers","_highlight_extraInitializers","highlight","formattedValue","formatNumberValue","getNumberStyles","negStyle","_dateFormat_decorators","_customFormat_decorators","_locale_decorators","_relativeTime_decorators","_showTime_decorators","_dateFormat_initializers","_dateFormat_extraInitializers","_customFormat_initializers","_customFormat_extraInitializers","_locale_initializers","_locale_extraInitializers","_relativeTime_initializers","_relativeTime_extraInitializers","_showTime_initializers","_showTime_extraInitializers","relativeTime","showTime","formatDateValue","dateStyles","getDateStyles","formatRelativeTime","formatCustomDate","timeStyle","tokens","YYYY","YY","MM","M","DD","D","HH","getHours","H","mm","getMinutes","ss","getSeconds","s","token","entries","RegExp","diffMs","diffSecs","diffMins","diffHours","diffDays","now","isToday","toDateString","isPast","isFuture","_trueValue_decorators","_falseValue_decorators","_useSymbols_decorators","_trueSymbol_decorators","_falseSymbol_decorators","_trueValue_initializers","_trueValue_extraInitializers","_falseValue_initializers","_falseValue_extraInitializers","_useSymbols_initializers","_useSymbols_extraInitializers","_trueSymbol_initializers","_trueSymbol_extraInitializers","_falseSymbol_initializers","_falseSymbol_extraInitializers","formatBooleanContent","unsafeHTML","isTrue","_symbol_decorators","_emptySymbol_decorators","_color_decorators","_symbol_initializers","_symbol_extraInitializers","_emptySymbol_initializers","_emptySymbol_extraInitializers","_color_initializers","_color_extraInitializers","filled","empty","repeat","createRatingElement","createElement","appendChild","_backgroundColor_decorators","_height_decorators","_showPercentage_decorators","_backgroundColor_initializers","_backgroundColor_extraInitializers","_height_initializers","_height_extraInitializers","_showPercentage_initializers","_showPercentage_extraInitializers","createProgressElement","progress","formatFileSize","_chartType_decorators","_width_decorators","_showDots_decorators","_showBaseline_decorators","_strokeWidth_decorators","_minValue_decorators","_maxValue_decorators","_data_decorators","_updateSparkline_decorators","_chartType_initializers","_chartType_extraInitializers","_width_initializers","_width_extraInitializers","_showDots_initializers","_showDots_extraInitializers","_showBaseline_initializers","_showBaseline_extraInitializers","_strokeWidth_initializers","_strokeWidth_extraInitializers","_minValue_initializers","_minValue_extraInitializers","_maxValue_initializers","_maxValue_extraInitializers","_data_initializers","_data_extraInitializers","SimpleArray","updateSparkline","chartType","showDots","showBaseline","strokeWidth","minValue","maxValue","renderSparkline","parseData","createCanvas","n","endsWith","parsed","JSON","parse","canvas","ctx","getContext","chartWidth","chartHeight","clearRect","resolvedColor","strokeStyle","fillStyle","lineWidth","lineCap","lineJoin","beginPath","moveTo","x","y","lineTo","closePath","globalAlpha","fill","stroke","arc","PI","barSpacing","fillRect","toDataURL","error","console","_key_decorators","_sortable_decorators","_filterable_decorators","_wrap_decorators","_ellipsis_decorators","_tooltip_decorators","_numberPrefix_decorators","_numberSuffix_decorators","_customDateFormat_decorators","_dateLocale_decorators","_ratingMax_decorators","_ratingSymbol_decorators","_ratingEmptySymbol_decorators","_ratingColor_decorators","_progressMax_decorators","_progressColor_decorators","_progressBgColor_decorators","_progressHeight_decorators","_sparklineType_decorators","_sparklineColor_decorators","_sparklineWidth_decorators","_sparklineHeight_decorators","_cellBgColor_decorators","_cellColor_decorators","_cellFontWeight_decorators","_cellFontStyle_decorators","_cellFontSize_decorators","_cellTextDecoration_decorators","_handleBasicPropsChange_decorators","_handleNumberFormatChange_decorators","_handleDateFormatChange_decorators","_handleBooleanFormatChange_decorators","_handleRatingFormatChange_decorators","_handleProgressFormatChange_decorators","_handleSparklineFormatChange_decorators","_handleStyleChange_decorators","_key_initializers","_key_extraInitializers","_sortable_initializers","_sortable_extraInitializers","_filterable_initializers","_filterable_extraInitializers","_wrap_initializers","_wrap_extraInitializers","_ellipsis_initializers","_ellipsis_extraInitializers","_tooltip_initializers","_tooltip_extraInitializers","_numberPrefix_initializers","_numberPrefix_extraInitializers","_numberSuffix_initializers","_numberSuffix_extraInitializers","_customDateFormat_initializers","_customDateFormat_extraInitializers","_dateLocale_initializers","_dateLocale_extraInitializers","_ratingMax_initializers","_ratingMax_extraInitializers","_ratingSymbol_initializers","_ratingSymbol_extraInitializers","_ratingEmptySymbol_initializers","_ratingEmptySymbol_extraInitializers","_ratingColor_initializers","_ratingColor_extraInitializers","_progressMax_initializers","_progressMax_extraInitializers","_progressColor_initializers","_progressColor_extraInitializers","_progressBgColor_initializers","_progressBgColor_extraInitializers","_progressHeight_initializers","_progressHeight_extraInitializers","_sparklineType_initializers","_sparklineType_extraInitializers","_sparklineColor_initializers","_sparklineColor_extraInitializers","_sparklineWidth_initializers","_sparklineWidth_extraInitializers","_sparklineHeight_initializers","_sparklineHeight_extraInitializers","_cellBgColor_initializers","_cellBgColor_extraInitializers","_cellColor_initializers","_cellColor_extraInitializers","_cellFontWeight_initializers","_cellFontWeight_extraInitializers","_cellFontStyle_initializers","_cellFontStyle_extraInitializers","_cellFontSize_initializers","_cellFontSize_extraInitializers","_cellTextDecoration_initializers","_cellTextDecoration_extraInitializers","sortable","filterable","tooltip","numberPrefix","numberSuffix","customDateFormat","dateLocale","ratingMax","ratingSymbol","ratingEmptySymbol","ratingColor","progressMax","progressColor","progressBgColor","progressHeight","sparklineType","sparklineColor","sparklineWidth","sparklineHeight","cellBgColor","cellColor","cellFontWeight","cellFontStyle","cellFontSize","cellTextDecoration","handleBasicPropsChange","handleNumberFormatChange","handleDateFormatChange","handleBooleanFormatChange","handleRatingFormatChange","handleProgressFormatChange","handleSparklineFormatChange","handleStyleChange","setFormatter","notifyTableOfChange","addConditionalFormat","removeConditionalFormat","splice","clearConditionalFormats","getColumnDefinition","definition","keys","cellStyle","dispatchEvent","CustomEvent","detail","_href_decorators","_target_decorators","_external_decorators","_text_decorators","_updateCellAttributes_decorators","_href_initializers","_href_extraInitializers","_target_initializers","_target_extraInitializers","_external_initializers","_external_extraInitializers","_text_initializers","_text_extraInitializers","updateCellAttributes","href","external","linkHref","linkText","isExternal","iconHTML","externalIcon","linkFormat","_actions_decorators","_extractActionsFromColumn_decorators","_dispatchAction_decorators","_actions_initializers","_actions_extraInitializers","extractActionsFromColumn","dispatchAction","actions","action","renderActionButton","actionsFormat","isImageUrl","title","handleActionClick","_tags_decorators","_extractTagsFromColumn_decorators","_tags_initializers","_tags_extraInitializers","extractTagsFromColumn","tags","tagList","parseValue","tag","renderTag","tagFormat","t","_src_decorators","_alt_decorators","_fallback_decorators","_lazy_decorators","_imageError_decorators","_updateImageAttributes_decorators","_src_initializers","_src_extraInitializers","_alt_initializers","_alt_extraInitializers","_fallback_initializers","_fallback_extraInitializers","_lazy_initializers","_lazy_extraInitializers","_imageError_initializers","_imageError_extraInitializers","updateImageAttributes","alt","fallback","lazy","imageError","imageSrc","imageAlt","loadingAttr","classes","handleImageError","imageFormat","_email_decorators","_displayText_decorators","_showIcon_decorators","_updateEmailAttributes_decorators","_email_initializers","_email_extraInitializers","_displayText_initializers","_displayText_extraInitializers","_showIcon_initializers","_showIcon_extraInitializers","updateEmailAttributes","email","displayText","showIcon","emailAddress","displayName","emailFormat","_phone_decorators","_format_decorators","_country_decorators","_updatePhoneAttributes_decorators","_phone_initializers","_phone_extraInitializers","_format_initializers","_format_extraInitializers","_country_initializers","_country_extraInitializers","updatePhoneAttributes","phone","country","phoneNumber","formatPhoneNumber","phoneFormat","cleaned","_status_decorators","_showDot_decorators","_updateStatusAttributes_decorators","_status_initializers","_status_extraInitializers","_showDot_initializers","_showDot_extraInitializers","updateStatusAttributes","status","showDot","statusValue","statusLabel","statusVariant","getStatusVariant","dotHTML","statusFormat","lowerStatus","_showSwatch_decorators","_showHex_decorators","_showRgb_decorators","_swatchSize_decorators","_updateColorAttributes_decorators","_showSwatch_initializers","_showSwatch_extraInitializers","_showHex_initializers","_showHex_extraInitializers","_showRgb_initializers","_showRgb_extraInitializers","_swatchSize_initializers","_swatchSize_extraInitializers","updateColorAttributes","showSwatch","showHex","showRgb","swatchSize","colorValue","swatchHTML","textDisplay","rgb","hexToRgb","r","g","colorFormat","hex","exec","parseInt","_collapsed_decorators","_maxDepth_decorators","_showToggle_decorators","_updateJsonAttributes_decorators","_handleToggle_decorators","_collapsed_initializers","_collapsed_extraInitializers","_maxDepth_initializers","_maxDepth_extraInitializers","_showToggle_initializers","_showToggle_extraInitializers","on","updateJsonAttributes","handleToggle","collapsed","maxDepth","showToggle","jsonValue","tryParseJson","toggleHTML","jsonHTML","renderCollapsed","renderExpanded","jsonFormat","str","json","renderValue","depth","item","_currency_decorators","_currencyDisplay_decorators","_currency_initializers","_currency_extraInitializers","_currencyDisplay_initializers","_currencyDisplay_extraInitializers","currencyDisplay","formatCurrencyValue","getCurrencyStyles","_showTrend_decorators","_trendValue_decorators","_colorize_decorators","_showTrend_initializers","_showTrend_extraInitializers","_trendValue_initializers","_trendValue_extraInitializers","_colorize_initializers","_colorize_extraInitializers","showTrend","trendValue","colorize","formatPercentageValue","trendArrow","getTrendArrow","getPercentageStyles","trendHTML","percentageFormat","trend","shouldColorize","_address_decorators","_latitude_decorators","_longitude_decorators","_showMapLink_decorators","_mapProvider_decorators","_updateLocationAttributes_decorators","_address_initializers","_address_extraInitializers","_latitude_initializers","_latitude_extraInitializers","_longitude_initializers","_longitude_extraInitializers","_showMapLink_initializers","_showMapLink_extraInitializers","_mapProvider_initializers","_mapProvider_extraInitializers","updateLocationAttributes","address","latitude","longitude","showMapLink","mapProvider","locationValue","mapLink","getMapLink","locationFormat","lat","lon","encodeURIComponent","_hoverable_decorators","_clickable_decorators","_selectable_decorators","_index_decorators","_columns_decorators","_updateSelection_decorators","_updateRowAttributes_decorators","_updateCells_decorators","_dispatchRowClick_decorators","_dispatchRowSelect_decorators","_dispatchRowHover_decorators","_hoverable_initializers","_hoverable_extraInitializers","_clickable_initializers","_clickable_extraInitializers","_selectable_initializers","_selectable_extraInitializers","_index_initializers","_index_extraInitializers","_columns_initializers","_columns_extraInitializers","updateSelection","updateRowAttributes","updateCells","dispatchRowClick","dispatchRowSelect","dispatchRowHover","hoverable","clickable","selectable","columns","extractDataFromAttributes","getAttributeNames","attrName","handleRowClick","handleKeyDown","renderCheckbox","columnIndex","renderCell","configureCells","cellElement","checkbox","checked","matches","toggleSelection","cellComponent","getCellComponent","getCellStyles","escapeHtml","div","deselect","focusRow","behavior","getCellValue","columnKey","setCellValue","getCellElement","col","indexOf","duration","SniceTable","_striped_decorators","_list_decorators","_searchDebounce_decorators","_currentSort_decorators","_selector_decorators","_selectorOptions_decorators","_selectedRows_decorators","_table_decorators","_thead_decorators","_tbody_decorators","_getTableConfig_decorators","_getTableData_decorators","_initialize_decorators","_handleSelectorOptionsChange_decorators","_handleSortableChange_decorators","_handleSelectableChange_decorators","_handleColumnsChange_decorators","_handleDataChange_decorators","_handleSelectedRowsChange_decorators","_handleSortChange_decorators","_handleControlsChange_decorators","_dispatchRowSelectionChanged_decorators","_dispatchSelectAllChanged_decorators","_striped_initializers","_striped_extraInitializers","_list_initializers","_list_extraInitializers","_searchDebounce_initializers","_searchDebounce_extraInitializers","_currentSort_initializers","_currentSort_extraInitializers","_selector_initializers","_selector_extraInitializers","_selectorOptions_initializers","_selectorOptions_extraInitializers","_selectedRows_initializers","_selectedRows_extraInitializers","_table_initializers","_table_extraInitializers","_thead_initializers","_thead_extraInitializers","_tbody_initializers","_tbody_extraInitializers","striped","list","searchDebounce","currentSort","searchText","selector","selectorOptions","selectedRows","table","thead","tbody","_hasController","_unsortedData","dataRequestTimeout","handleClick","th","toggleSort","tr","rowIndex","isCurrentlySelected","updateRowSelectionState","updateSelectAllState","dispatchRowSelectionChanged","dispatchSelectAllChanged","onAttached","getTableConfig","getTableData","searchDebounceTimeout","clearTimeout","debouncedDataRequest","selectorDebounceTimeout","handleSelectorChange","request","initialize","handleSelectorOptionsChange","handleSortableChange","handleSelectableChange","handleColumnsChange","handleDataChange","handleSelectedRowsChange","handleSortChange","handleControlsChange","setData","setColumns","config","Promise","resolve","renderHeader","renderControls","params","search","sort","response","renderBody","container","children","controlsDiv","customElements","whenDefined","processSlottedContent","columnElements","row","renderSlottedHeader","headerContainer","headerRow","selectCell","allSelected","someSelected","indeterminate","renderSortableHeader","sortItem","sortIndex","findIndex","isActive","indicator","orderNumber","direction","indicatorClasses","td","colSpan","fragment","createDocumentFragment","cellTagName","getCellTagName","getCellAttributes","selectAllCheckbox","multiSort","existingSortIndex","existingSort","sortLocalData","aVal","bVal","cmp","localeCompare","numeric"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"snice-table.min.js","sources":["../../../node_modules/tslib/tslib.es6.mjs","../../components/utils.js","../../components/input/snice-input.js","../../components/select/snice-option.js","../../components/select/snice-select.js","../../components/snice-cell-D9dSe0d4.js","../../components/table/snice-cell.js","../../components/table/snice-cell-text.js","../../components/table/snice-cell-number.js","../../components/table/snice-cell-date.js","../../components/table/snice-cell-boolean.js","../../components/table/snice-rating.js","../../components/table/snice-cell-rating.js","../../components/table/snice-progress.js","../../components/table/snice-cell-progress.js","../../components/table/snice-cell-duration.js","../../components/table/snice-cell-filesize.js","../../components/table/snice-cell-sparkline.js","../../components/table/snice-column.js","../../components/table/snice-cell-link.js","../../components/table/snice-cell-actions.js","../../components/table/snice-cell-tag.js","../../components/table/snice-cell-image.js","../../components/table/snice-cell-email.js","../../components/table/snice-cell-phone.js","../../components/table/snice-cell-status.js","../../components/table/snice-cell-color.js","../../components/table/snice-cell-json.js","../../components/table/snice-cell-currency.js","../../components/table/snice-cell-percentage.js","../../components/table/snice-cell-location.js","../../components/table/snice-row.js","../../components/table/snice-table.js"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","import { html } from 'snice';\n\n/**\n * Detects icon type and returns appropriate template\n *\n * Scheme overrides:\n * - img://path -> forces <img> element\n * - text://content -> forces text content\n *\n * Auto-detection (when no scheme):\n * - URLs (http://, https://, /, ./, ../, data:) -> <img>\n * - Image extensions (svg, png, jpg, jpeg, jfif, pjp, gif, webp, avif, jxl,\n * ico, cur, bmp, tif, tiff, heic, heif, apng) -> <img>\n * - Everything else -> span with text content (emoji, plain text)\n *\n * ⚠️ \"home\" or \"settings\" renders as PLAIN TEXT, not a Material icon.\n * For Material Symbols, use the icon slot instead:\n * <span slot=\"icon\" class=\"material-symbols-outlined\">home</span>\n *\n * Examples:\n * - \"/path/icon.svg\" -> <img>\n * - \"icon.png\" -> <img>\n * - \"img://filename\" -> <img> (forced)\n * - \"🏠\" -> <span> text (emoji)\n * - \"home\" -> <span> text (plain text, NOT a Material icon)\n * - \"text:///not/a/path\" -> <span> text (forced)\n */\nfunction renderIcon(icon, className = 'icon') {\n if (!icon)\n return html ``;\n // Check for scheme overrides first\n if (icon.startsWith('img://')) {\n const src = icon.slice(6);\n return html `<img class=\"${className}\" src=\"${src}\" alt=\"\" part=\"icon\" />`;\n }\n if (icon.startsWith('text://')) {\n const content = icon.slice(7);\n return html `<span class=\"${className}\" part=\"icon\">${content}</span>`;\n }\n // Auto-detect: Check if it's a URL pattern\n if (/^(https?:\\/\\/|\\/|\\.\\/|\\.\\.\\/|data:)/.test(icon)) {\n return html `<img class=\"${className}\" src=\"${icon}\" alt=\"\" part=\"icon\" />`;\n }\n // Auto-detect: Check if it's a file with image extension\n // Must have at least one char before the dot, and no unsupported protocol prefix\n // Covers: SVG, PNG, JPEG variants, GIF, WebP, AVIF, JPEG XL, ICO, BMP, TIFF, HEIC/HEIF, APNG\n if (/^[^:]*\\w\\.(svg|png|jpe?g|jfif|pjp|gif|webp|avif|jxl|ico|cur|bmp|tiff?|heic|heif|apng)$/i.test(icon)) {\n return html `<img class=\"${className}\" src=\"${icon}\" alt=\"\" part=\"icon\" />`;\n }\n // Default: text content (emoji, font icon ligature names)\n // All content is escaped - no HTML injection possible\n return html `<span class=\"${className}\" part=\"icon\">${icon}</span>`;\n}\n\nexport { renderIcon };\n//# sourceMappingURL=utils.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, dispatch, html, css } from 'snice';\nimport { renderIcon } from '../utils.js';\n\nvar cssContent = \":host{display:inline-block;width:100%;max-width:100%;box-sizing:border-box;font-family:var(--snice-font-family);color-scheme:light dark}.input-wrapper{position:relative;width:100%;max-width:100%;height:100%;box-sizing:border-box}:host([align]) .input-wrapper{display:flex;flex-direction:column}:host([align=top]) .input-wrapper{justify-content:flex-start}:host([align=center]) .input-wrapper{justify-content:center}:host([align=bottom]) .input-wrapper{justify-content:flex-end}.input-container{position:relative;display:flex;align-items:center;width:100%;max-width:100%;box-sizing:border-box;transition:all var(--snice-transition-fast) ease}:host([stretch]) .input-wrapper{display:flex;flex-direction:column}:host([stretch]) .input-container{flex:1}:host([stretch]) .input{height:100%}.input{flex:1;min-width:0;box-sizing:border-box;font-family:inherit;font-size:var(--snice-font-size-md);background:var(--snice-color-background-input,rgb(248 247 245));color:var(--snice-color-text);border:1px solid var(--snice-color-border);border-radius:var(--snice-border-radius-md);box-shadow:var(--snice-shadow-inset-sm);transition:all var(--snice-transition-fast) ease;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.input:focus{border-color:var(--snice-color-primary);box-shadow:0 0 0 var(--snice-focus-ring-width) var(--snice-focus-ring-color),var(--snice-shadow-sm)}.input:disabled{background:var(--snice-color-background-secondary);color:var(--snice-color-text-secondary);cursor:not-allowed;opacity:.6}.input::placeholder{color:var(--snice-color-text-secondary);opacity:.7}.input--small{padding:.375rem .625rem;font-size:var(--snice-font-size-sm);min-height:2rem}.input--medium{padding:.5rem .75rem;font-size:var(--snice-font-size-md);min-height:2.5rem}.input--large{padding:.625rem .875rem;font-size:var(--snice-font-size-lg);min-height:3rem}.input--outlined{background:var(--snice-color-background-input,rgb(248 247 245));border:1px solid var(--snice-color-border)}.input--filled{background:var(--snice-color-background-secondary);border:1px solid transparent;border-bottom-color:var(--snice-color-border);border-radius:var(--snice-border-radius-md) var(--snice-border-radius-md) 0 0}.input--filled:focus{background:var(--snice-color-background-hover);border-bottom-color:var(--snice-color-primary)}.input--underlined{background:0 0;border:none;border-bottom:1px solid var(--snice-color-border);border-radius:0;padding-left:0;padding-right:0}.input--underlined:focus{border-bottom-color:var(--snice-color-primary);box-shadow:none}.input--invalid{border-color:var(--snice-color-danger)}.input--invalid:focus{border-color:var(--snice-color-danger);box-shadow:0 0 0 var(--snice-focus-ring-width) var(--snice-color-danger-alpha,hsl(var(--snice-color-red-500) / .4)),var(--snice-shadow-sm)}.input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7}.input::-webkit-calendar-picker-indicator:hover{opacity:1}.input--with-prefix-icon{padding-left:2.5rem}.input--clearable,.input--with-suffix-icon{padding-right:2.5rem}.input--with-suffix-icon.input--clearable{padding-right:4rem}.label{display:block;margin-bottom:.25rem;font-size:var(--snice-font-size-sm);font-weight:500;line-height:var(--snice-line-height-normal, 1.5);color:var(--snice-color-text);text-align:left}:host([label-align=center]) .label{text-align:center}:host([label-align=right]) .label{text-align:right}.label--required::after{content:' *';color:var(--snice-color-danger)}.error-text,.helper-text{display:block;margin-top:.25rem;font-size:var(--snice-font-size-xs)}.helper-text{color:var(--snice-color-text-secondary)}.error-text{color:var(--snice-color-danger)}.icon-slot{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;color:var(--snice-color-text-secondary);pointer-events:none;opacity:.7}.icon-slot:empty{display:none}.icon-slot--prefix{left:.625rem}.icon-slot--suffix{right:.625rem}.icon{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;font-size:1.25rem;line-height:1;color:var(--snice-color-text-secondary);pointer-events:none}.icon-slot ::slotted(*){display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;font-size:1.25rem;line-height:1}.icon-slot ::slotted(svg){width:1.5rem;height:1.5rem}.icon-slot ::slotted(img){width:1.5rem;height:1.5rem;object-fit:contain}.clear-button{position:absolute;right:.5rem;display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:.25rem;background:0 0;border:none;border-radius:var(--snice-border-radius-sm);color:var(--snice-color-text-secondary);cursor:pointer;transition:all var(--snice-transition-fast) ease;opacity:0;visibility:hidden}.clear-button:hover{background:var(--snice-color-background-hover);color:var(--snice-color-text)}.input-container:hover .clear-button--visible,.input:focus~.clear-button--visible{opacity:1;visibility:visible}.clear-button--with-suffix{right:2rem}.password-toggle{position:absolute;right:.5rem;display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:.25rem;background:0 0;border:none;border-radius:var(--snice-border-radius-sm);color:var(--snice-color-text-secondary);cursor:pointer;transition:all var(--snice-transition-fast) ease}.password-toggle:hover{background:var(--snice-color-background-hover);color:var(--snice-color-text)}.input[type=number]::-webkit-inner-spin-button,.input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input[type=number]{-moz-appearance:textfield}.input[type=search]::-webkit-search-cancel-button,.input[type=search]::-webkit-search-decoration,.input[type=search]::-webkit-search-results-button,.input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none}.input-container:focus-within{z-index:1}.input--loading{cursor:wait}.spinner{position:absolute;right:.75rem;width:1em;height:1em;pointer-events:none}.input--with-suffix-icon .spinner{right:2.5rem}.spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}\";\n\nlet SniceInput = (() => {\n let _classDecorators = [element('snice-input', { formAssociated: true })];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _size_decorators;\n let _size_initializers = [];\n let _size_extraInitializers = [];\n let _variant_decorators;\n let _variant_initializers = [];\n let _variant_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _placeholder_decorators;\n let _placeholder_initializers = [];\n let _placeholder_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _helperText_decorators;\n let _helperText_initializers = [];\n let _helperText_extraInitializers = [];\n let _errorText_decorators;\n let _errorText_initializers = [];\n let _errorText_extraInitializers = [];\n let _disabled_decorators;\n let _disabled_initializers = [];\n let _disabled_extraInitializers = [];\n let _readonly_decorators;\n let _readonly_initializers = [];\n let _readonly_extraInitializers = [];\n let _loading_decorators;\n let _loading_initializers = [];\n let _loading_extraInitializers = [];\n let _required_decorators;\n let _required_initializers = [];\n let _required_extraInitializers = [];\n let _invalid_decorators;\n let _invalid_initializers = [];\n let _invalid_extraInitializers = [];\n let _clearable_decorators;\n let _clearable_initializers = [];\n let _clearable_extraInitializers = [];\n let _password_decorators;\n let _password_initializers = [];\n let _password_extraInitializers = [];\n let _min_decorators;\n let _min_initializers = [];\n let _min_extraInitializers = [];\n let _max_decorators;\n let _max_initializers = [];\n let _max_extraInitializers = [];\n let _step_decorators;\n let _step_initializers = [];\n let _step_extraInitializers = [];\n let _pattern_decorators;\n let _pattern_initializers = [];\n let _pattern_extraInitializers = [];\n let _maxlength_decorators;\n let _maxlength_initializers = [];\n let _maxlength_extraInitializers = [];\n let _minlength_decorators;\n let _minlength_initializers = [];\n let _minlength_extraInitializers = [];\n let _autocomplete_decorators;\n let _autocomplete_initializers = [];\n let _autocomplete_extraInitializers = [];\n let _name_decorators;\n let _name_initializers = [];\n let _name_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _labelAlign_decorators;\n let _labelAlign_initializers = [];\n let _labelAlign_extraInitializers = [];\n let _stretch_decorators;\n let _stretch_initializers = [];\n let _stretch_extraInitializers = [];\n let _prefixIcon_decorators;\n let _prefixIcon_initializers = [];\n let _prefixIcon_extraInitializers = [];\n let _suffixIcon_decorators;\n let _suffixIcon_initializers = [];\n let _suffixIcon_extraInitializers = [];\n let _input_decorators;\n let _input_initializers = [];\n let _input_extraInitializers = [];\n let _clearButton_decorators;\n let _clearButton_initializers = [];\n let _clearButton_extraInitializers = [];\n let _passwordToggle_decorators;\n let _passwordToggle_initializers = [];\n let _passwordToggle_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _handleValueChange_decorators;\n let _handleInvalidChange_decorators;\n let _handleDisabledChange_decorators;\n let _handleLoadingChange_decorators;\n let _handleReadonlyChange_decorators;\n let _handlePlaceholderChange_decorators;\n let _handleMinChange_decorators;\n let _handleMaxChange_decorators;\n let _handleStepChange_decorators;\n let _handleMaxLengthChange_decorators;\n let _handleMinLengthChange_decorators;\n let _handlePatternChange_decorators;\n let _handleTypeChange_decorators;\n let _handleLabelChange_decorators;\n let _dispatchInputEvent_decorators;\n let _dispatchChangeEvent_decorators;\n let _dispatchFocusEvent_decorators;\n let _dispatchBlurEvent_decorators;\n let _dispatchClearEvent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _type_decorators = [property({})];\n _size_decorators = [property({})];\n _variant_decorators = [property({})];\n _value_decorators = [property({})];\n _placeholder_decorators = [property({})];\n _label_decorators = [property({})];\n _helperText_decorators = [property({ attribute: 'helper-text', })];\n _errorText_decorators = [property({ attribute: 'error-text', })];\n _disabled_decorators = [property({ type: Boolean, })];\n _readonly_decorators = [property({ type: Boolean, })];\n _loading_decorators = [property({ type: Boolean, })];\n _required_decorators = [property({ type: Boolean, })];\n _invalid_decorators = [property({ type: Boolean, })];\n _clearable_decorators = [property({ type: Boolean, })];\n _password_decorators = [property({ type: Boolean, })];\n _min_decorators = [property({})];\n _max_decorators = [property({})];\n _step_decorators = [property({})];\n _pattern_decorators = [property({})];\n _maxlength_decorators = [property({ type: Number, })];\n _minlength_decorators = [property({ type: Number, })];\n _autocomplete_decorators = [property({})];\n _name_decorators = [property({})];\n _align_decorators = [property({})];\n _labelAlign_decorators = [property({ attribute: 'label-align', })];\n _stretch_decorators = [property({ type: Boolean, })];\n _prefixIcon_decorators = [property({ attribute: 'prefix-icon', })];\n _suffixIcon_decorators = [property({ attribute: 'suffix-icon', })];\n _input_decorators = [query('.input')];\n _clearButton_decorators = [query('.clear-button')];\n _passwordToggle_decorators = [query('.password-toggle')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _handleValueChange_decorators = [watch('value')];\n _handleInvalidChange_decorators = [watch('invalid')];\n _handleDisabledChange_decorators = [watch('disabled')];\n _handleLoadingChange_decorators = [watch('loading')];\n _handleReadonlyChange_decorators = [watch('readonly')];\n _handlePlaceholderChange_decorators = [watch('placeholder')];\n _handleMinChange_decorators = [watch('min')];\n _handleMaxChange_decorators = [watch('max')];\n _handleStepChange_decorators = [watch('step')];\n _handleMaxLengthChange_decorators = [watch('maxlength')];\n _handleMinLengthChange_decorators = [watch('minlength')];\n _handlePatternChange_decorators = [watch('pattern')];\n _handleTypeChange_decorators = [watch('type')];\n _handleLabelChange_decorators = [watch('label')];\n _dispatchInputEvent_decorators = [dispatch('input-input', { bubbles: true, composed: true })];\n _dispatchChangeEvent_decorators = [dispatch('input-change', { bubbles: true, composed: true })];\n _dispatchFocusEvent_decorators = [dispatch('input-focus', { bubbles: true, composed: true })];\n _dispatchBlurEvent_decorators = [dispatch('input-blur', { bubbles: true, composed: true })];\n _dispatchClearEvent_decorators = [dispatch('input-clear', { bubbles: true, composed: true })];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleValueChange_decorators, { kind: \"method\", name: \"handleValueChange\", static: false, private: false, access: { has: obj => \"handleValueChange\" in obj, get: obj => obj.handleValueChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleInvalidChange_decorators, { kind: \"method\", name: \"handleInvalidChange\", static: false, private: false, access: { has: obj => \"handleInvalidChange\" in obj, get: obj => obj.handleInvalidChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleDisabledChange_decorators, { kind: \"method\", name: \"handleDisabledChange\", static: false, private: false, access: { has: obj => \"handleDisabledChange\" in obj, get: obj => obj.handleDisabledChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleLoadingChange_decorators, { kind: \"method\", name: \"handleLoadingChange\", static: false, private: false, access: { has: obj => \"handleLoadingChange\" in obj, get: obj => obj.handleLoadingChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleReadonlyChange_decorators, { kind: \"method\", name: \"handleReadonlyChange\", static: false, private: false, access: { has: obj => \"handleReadonlyChange\" in obj, get: obj => obj.handleReadonlyChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handlePlaceholderChange_decorators, { kind: \"method\", name: \"handlePlaceholderChange\", static: false, private: false, access: { has: obj => \"handlePlaceholderChange\" in obj, get: obj => obj.handlePlaceholderChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleMinChange_decorators, { kind: \"method\", name: \"handleMinChange\", static: false, private: false, access: { has: obj => \"handleMinChange\" in obj, get: obj => obj.handleMinChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleMaxChange_decorators, { kind: \"method\", name: \"handleMaxChange\", static: false, private: false, access: { has: obj => \"handleMaxChange\" in obj, get: obj => obj.handleMaxChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleStepChange_decorators, { kind: \"method\", name: \"handleStepChange\", static: false, private: false, access: { has: obj => \"handleStepChange\" in obj, get: obj => obj.handleStepChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleMaxLengthChange_decorators, { kind: \"method\", name: \"handleMaxLengthChange\", static: false, private: false, access: { has: obj => \"handleMaxLengthChange\" in obj, get: obj => obj.handleMaxLengthChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleMinLengthChange_decorators, { kind: \"method\", name: \"handleMinLengthChange\", static: false, private: false, access: { has: obj => \"handleMinLengthChange\" in obj, get: obj => obj.handleMinLengthChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handlePatternChange_decorators, { kind: \"method\", name: \"handlePatternChange\", static: false, private: false, access: { has: obj => \"handlePatternChange\" in obj, get: obj => obj.handlePatternChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleTypeChange_decorators, { kind: \"method\", name: \"handleTypeChange\", static: false, private: false, access: { has: obj => \"handleTypeChange\" in obj, get: obj => obj.handleTypeChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleLabelChange_decorators, { kind: \"method\", name: \"handleLabelChange\", static: false, private: false, access: { has: obj => \"handleLabelChange\" in obj, get: obj => obj.handleLabelChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchInputEvent_decorators, { kind: \"method\", name: \"dispatchInputEvent\", static: false, private: false, access: { has: obj => \"dispatchInputEvent\" in obj, get: obj => obj.dispatchInputEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchChangeEvent_decorators, { kind: \"method\", name: \"dispatchChangeEvent\", static: false, private: false, access: { has: obj => \"dispatchChangeEvent\" in obj, get: obj => obj.dispatchChangeEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchFocusEvent_decorators, { kind: \"method\", name: \"dispatchFocusEvent\", static: false, private: false, access: { has: obj => \"dispatchFocusEvent\" in obj, get: obj => obj.dispatchFocusEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchBlurEvent_decorators, { kind: \"method\", name: \"dispatchBlurEvent\", static: false, private: false, access: { has: obj => \"dispatchBlurEvent\" in obj, get: obj => obj.dispatchBlurEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchClearEvent_decorators, { kind: \"method\", name: \"dispatchClearEvent\", static: false, private: false, access: { has: obj => \"dispatchClearEvent\" in obj, get: obj => obj.dispatchClearEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _size_decorators, { kind: \"field\", name: \"size\", static: false, private: false, access: { has: obj => \"size\" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);\n __esDecorate(null, null, _variant_decorators, { kind: \"field\", name: \"variant\", static: false, private: false, access: { has: obj => \"variant\" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _placeholder_decorators, { kind: \"field\", name: \"placeholder\", static: false, private: false, access: { has: obj => \"placeholder\" in obj, get: obj => obj.placeholder, set: (obj, value) => { obj.placeholder = value; } }, metadata: _metadata }, _placeholder_initializers, _placeholder_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _helperText_decorators, { kind: \"field\", name: \"helperText\", static: false, private: false, access: { has: obj => \"helperText\" in obj, get: obj => obj.helperText, set: (obj, value) => { obj.helperText = value; } }, metadata: _metadata }, _helperText_initializers, _helperText_extraInitializers);\n __esDecorate(null, null, _errorText_decorators, { kind: \"field\", name: \"errorText\", static: false, private: false, access: { has: obj => \"errorText\" in obj, get: obj => obj.errorText, set: (obj, value) => { obj.errorText = value; } }, metadata: _metadata }, _errorText_initializers, _errorText_extraInitializers);\n __esDecorate(null, null, _disabled_decorators, { kind: \"field\", name: \"disabled\", static: false, private: false, access: { has: obj => \"disabled\" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);\n __esDecorate(null, null, _readonly_decorators, { kind: \"field\", name: \"readonly\", static: false, private: false, access: { has: obj => \"readonly\" in obj, get: obj => obj.readonly, set: (obj, value) => { obj.readonly = value; } }, metadata: _metadata }, _readonly_initializers, _readonly_extraInitializers);\n __esDecorate(null, null, _loading_decorators, { kind: \"field\", name: \"loading\", static: false, private: false, access: { has: obj => \"loading\" in obj, get: obj => obj.loading, set: (obj, value) => { obj.loading = value; } }, metadata: _metadata }, _loading_initializers, _loading_extraInitializers);\n __esDecorate(null, null, _required_decorators, { kind: \"field\", name: \"required\", static: false, private: false, access: { has: obj => \"required\" in obj, get: obj => obj.required, set: (obj, value) => { obj.required = value; } }, metadata: _metadata }, _required_initializers, _required_extraInitializers);\n __esDecorate(null, null, _invalid_decorators, { kind: \"field\", name: \"invalid\", static: false, private: false, access: { has: obj => \"invalid\" in obj, get: obj => obj.invalid, set: (obj, value) => { obj.invalid = value; } }, metadata: _metadata }, _invalid_initializers, _invalid_extraInitializers);\n __esDecorate(null, null, _clearable_decorators, { kind: \"field\", name: \"clearable\", static: false, private: false, access: { has: obj => \"clearable\" in obj, get: obj => obj.clearable, set: (obj, value) => { obj.clearable = value; } }, metadata: _metadata }, _clearable_initializers, _clearable_extraInitializers);\n __esDecorate(null, null, _password_decorators, { kind: \"field\", name: \"password\", static: false, private: false, access: { has: obj => \"password\" in obj, get: obj => obj.password, set: (obj, value) => { obj.password = value; } }, metadata: _metadata }, _password_initializers, _password_extraInitializers);\n __esDecorate(null, null, _min_decorators, { kind: \"field\", name: \"min\", static: false, private: false, access: { has: obj => \"min\" in obj, get: obj => obj.min, set: (obj, value) => { obj.min = value; } }, metadata: _metadata }, _min_initializers, _min_extraInitializers);\n __esDecorate(null, null, _max_decorators, { kind: \"field\", name: \"max\", static: false, private: false, access: { has: obj => \"max\" in obj, get: obj => obj.max, set: (obj, value) => { obj.max = value; } }, metadata: _metadata }, _max_initializers, _max_extraInitializers);\n __esDecorate(null, null, _step_decorators, { kind: \"field\", name: \"step\", static: false, private: false, access: { has: obj => \"step\" in obj, get: obj => obj.step, set: (obj, value) => { obj.step = value; } }, metadata: _metadata }, _step_initializers, _step_extraInitializers);\n __esDecorate(null, null, _pattern_decorators, { kind: \"field\", name: \"pattern\", static: false, private: false, access: { has: obj => \"pattern\" in obj, get: obj => obj.pattern, set: (obj, value) => { obj.pattern = value; } }, metadata: _metadata }, _pattern_initializers, _pattern_extraInitializers);\n __esDecorate(null, null, _maxlength_decorators, { kind: \"field\", name: \"maxlength\", static: false, private: false, access: { has: obj => \"maxlength\" in obj, get: obj => obj.maxlength, set: (obj, value) => { obj.maxlength = value; } }, metadata: _metadata }, _maxlength_initializers, _maxlength_extraInitializers);\n __esDecorate(null, null, _minlength_decorators, { kind: \"field\", name: \"minlength\", static: false, private: false, access: { has: obj => \"minlength\" in obj, get: obj => obj.minlength, set: (obj, value) => { obj.minlength = value; } }, metadata: _metadata }, _minlength_initializers, _minlength_extraInitializers);\n __esDecorate(null, null, _autocomplete_decorators, { kind: \"field\", name: \"autocomplete\", static: false, private: false, access: { has: obj => \"autocomplete\" in obj, get: obj => obj.autocomplete, set: (obj, value) => { obj.autocomplete = value; } }, metadata: _metadata }, _autocomplete_initializers, _autocomplete_extraInitializers);\n __esDecorate(null, null, _name_decorators, { kind: \"field\", name: \"name\", static: false, private: false, access: { has: obj => \"name\" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _labelAlign_decorators, { kind: \"field\", name: \"labelAlign\", static: false, private: false, access: { has: obj => \"labelAlign\" in obj, get: obj => obj.labelAlign, set: (obj, value) => { obj.labelAlign = value; } }, metadata: _metadata }, _labelAlign_initializers, _labelAlign_extraInitializers);\n __esDecorate(null, null, _stretch_decorators, { kind: \"field\", name: \"stretch\", static: false, private: false, access: { has: obj => \"stretch\" in obj, get: obj => obj.stretch, set: (obj, value) => { obj.stretch = value; } }, metadata: _metadata }, _stretch_initializers, _stretch_extraInitializers);\n __esDecorate(null, null, _prefixIcon_decorators, { kind: \"field\", name: \"prefixIcon\", static: false, private: false, access: { has: obj => \"prefixIcon\" in obj, get: obj => obj.prefixIcon, set: (obj, value) => { obj.prefixIcon = value; } }, metadata: _metadata }, _prefixIcon_initializers, _prefixIcon_extraInitializers);\n __esDecorate(null, null, _suffixIcon_decorators, { kind: \"field\", name: \"suffixIcon\", static: false, private: false, access: { has: obj => \"suffixIcon\" in obj, get: obj => obj.suffixIcon, set: (obj, value) => { obj.suffixIcon = value; } }, metadata: _metadata }, _suffixIcon_initializers, _suffixIcon_extraInitializers);\n __esDecorate(null, null, _input_decorators, { kind: \"field\", name: \"input\", static: false, private: false, access: { has: obj => \"input\" in obj, get: obj => obj.input, set: (obj, value) => { obj.input = value; } }, metadata: _metadata }, _input_initializers, _input_extraInitializers);\n __esDecorate(null, null, _clearButton_decorators, { kind: \"field\", name: \"clearButton\", static: false, private: false, access: { has: obj => \"clearButton\" in obj, get: obj => obj.clearButton, set: (obj, value) => { obj.clearButton = value; } }, metadata: _metadata }, _clearButton_initializers, _clearButton_extraInitializers);\n __esDecorate(null, null, _passwordToggle_decorators, { kind: \"field\", name: \"passwordToggle\", static: false, private: false, access: { has: obj => \"passwordToggle\" in obj, get: obj => obj.passwordToggle, set: (obj, value) => { obj.passwordToggle = value; } }, metadata: _metadata }, _passwordToggle_initializers, _passwordToggle_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n constructor() {\n super();\n this.internals = __runInitializers(this, _instanceExtraInitializers);\n this.type = __runInitializers(this, _type_initializers, 'text');\n this.size = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _size_initializers, 'medium'));\n this.variant = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _variant_initializers, 'outlined'));\n this.value = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.placeholder = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _placeholder_initializers, ''));\n this.label = (__runInitializers(this, _placeholder_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.helperText = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _helperText_initializers, ''));\n this.errorText = (__runInitializers(this, _helperText_extraInitializers), __runInitializers(this, _errorText_initializers, ''));\n this.disabled = (__runInitializers(this, _errorText_extraInitializers), __runInitializers(this, _disabled_initializers, false));\n this.readonly = (__runInitializers(this, _disabled_extraInitializers), __runInitializers(this, _readonly_initializers, false));\n this.loading = (__runInitializers(this, _readonly_extraInitializers), __runInitializers(this, _loading_initializers, false));\n this.required = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _required_initializers, false));\n this.invalid = (__runInitializers(this, _required_extraInitializers), __runInitializers(this, _invalid_initializers, false));\n this.clearable = (__runInitializers(this, _invalid_extraInitializers), __runInitializers(this, _clearable_initializers, false));\n this.password = (__runInitializers(this, _clearable_extraInitializers), __runInitializers(this, _password_initializers, false));\n this.min = (__runInitializers(this, _password_extraInitializers), __runInitializers(this, _min_initializers, ''));\n this.max = (__runInitializers(this, _min_extraInitializers), __runInitializers(this, _max_initializers, ''));\n this.step = (__runInitializers(this, _max_extraInitializers), __runInitializers(this, _step_initializers, ''));\n this.pattern = (__runInitializers(this, _step_extraInitializers), __runInitializers(this, _pattern_initializers, ''));\n this.maxlength = (__runInitializers(this, _pattern_extraInitializers), __runInitializers(this, _maxlength_initializers, -1));\n this.minlength = (__runInitializers(this, _maxlength_extraInitializers), __runInitializers(this, _minlength_initializers, -1));\n this.autocomplete = (__runInitializers(this, _minlength_extraInitializers), __runInitializers(this, _autocomplete_initializers, ''));\n this.name = (__runInitializers(this, _autocomplete_extraInitializers), __runInitializers(this, _name_initializers, ''));\n this.align = (__runInitializers(this, _name_extraInitializers), __runInitializers(this, _align_initializers, ''));\n this.labelAlign = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _labelAlign_initializers, 'left'));\n this.stretch = (__runInitializers(this, _labelAlign_extraInitializers), __runInitializers(this, _stretch_initializers, false));\n this.prefixIcon = (__runInitializers(this, _stretch_extraInitializers), __runInitializers(this, _prefixIcon_initializers, ''));\n this.suffixIcon = (__runInitializers(this, _prefixIcon_extraInitializers), __runInitializers(this, _suffixIcon_initializers, ''));\n this.input = (__runInitializers(this, _suffixIcon_extraInitializers), __runInitializers(this, _input_initializers, void 0));\n this.clearButton = (__runInitializers(this, _input_extraInitializers), __runInitializers(this, _clearButton_initializers, void 0));\n this.passwordToggle = (__runInitializers(this, _clearButton_extraInitializers), __runInitializers(this, _passwordToggle_initializers, void 0));\n this.showPassword = (__runInitializers(this, _passwordToggle_extraInitializers), false);\n if (typeof this.attachInternals == 'function') {\n this.internals = this.attachInternals();\n }\n }\n render() {\n const inputClasses = [\n 'input',\n `input--${this.size}`,\n `input--${this.variant}`,\n this.invalid ? 'input--invalid' : '',\n this.loading ? 'input--loading' : '',\n this.prefixIcon ? 'input--with-prefix-icon' : '',\n this.suffixIcon || (this.type === 'password' && this.password) || this.loading ? 'input--with-suffix-icon' : '',\n this.clearable ? 'input--clearable' : ''\n ].filter(Boolean).join(' ');\n const labelClasses = ['label', this.required ? 'label--required' : ''].filter(Boolean).join(' ');\n const clearButtonClasses = ['clear-button', this.suffixIcon || (this.type === 'password' && this.password) ? 'clear-button--with-suffix' : ''].filter(Boolean).join(' ');\n return html /*html*/ `\n <div class=\"input-wrapper\" part=\"wrapper\">\n <if ${this.label}>\n <label class=\"${labelClasses}\" part=\"label\">\n ${this.label}\n </label>\n </if>\n\n <div class=\"input-container\" part=\"container\">\n <span class=\"icon-slot icon-slot--prefix\" part=\"prefix-icon\">\n <slot name=\"prefix-icon\">\n <if ${this.prefixIcon}>\n ${renderIcon(this.prefixIcon, 'icon icon--prefix')}\n </if>\n </slot>\n </span>\n\n <input\n class=\"${inputClasses}\"\n type=\"${this.type}\"\n value=\"${this.value}\"\n placeholder=\"${this.placeholder}\"\n ?disabled=\"${this.disabled || this.loading}\"\n ?readonly=\"${this.readonly}\"\n ?required=\"${this.required}\"\n min=\"${this.min || ''}\"\n max=\"${this.max || ''}\"\n step=\"${this.step || ''}\"\n pattern=\"${this.pattern || ''}\"\n maxlength=\"${this.maxlength > 0 ? this.maxlength : ''}\"\n minlength=\"${this.minlength > 0 ? this.minlength : ''}\"\n autocomplete=\"${this.autocomplete || ''}\"\n name=\"${this.name || ''}\"\n part=\"input\"\n @input=${this.handleInput}\n @change=${this.handleChange}\n @focus=${this.handleFocus}\n @blur=${this.handleBlur}\n />\n\n <button\n class=\"${clearButtonClasses}\"\n type=\"button\"\n aria-label=\"Clear\"\n tabindex=\"-1\"\n part=\"clear\"\n style=\"display: none;\"\n @click=${this.handleClear}\n >\n <svg viewBox=\"0 0 24 24\" width=\"16\" height=\"16\">\n <path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\" fill=\"currentColor\"/>\n </svg>\n </button>\n\n <if ${this.loading}>\n <span class=\"spinner\" part=\"spinner\"></span>\n </if>\n\n <if ${this.type === 'password' && this.password}>\n <button\n class=\"password-toggle\"\n type=\"button\"\n aria-label=\"Show password\"\n tabindex=\"-1\"\n part=\"password-toggle\"\n @click=${this.handlePasswordToggle}\n >\n <svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" class=\"password-icon password-icon--hidden\">\n <path d=\"M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46C3.08 8.3 1.78 10.02 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78l3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z\" fill=\"currentColor\"/>\n </svg>\n <svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" class=\"password-icon password-icon--visible\" style=\"display: none;\">\n <path d=\"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z\" fill=\"currentColor\"/>\n </svg>\n </button>\n </if>\n <if ${!(this.type === 'password' && this.password)}>\n <span class=\"icon-slot icon-slot--suffix\" part=\"suffix-icon\">\n <slot name=\"suffix-icon\">\n <if ${this.suffixIcon}>\n ${renderIcon(this.suffixIcon, 'icon icon--suffix')}\n </if>\n </slot>\n </span>\n </if>\n </div>\n\n <case ${this.errorText ? 'error' : this.helperText ? 'helper' : 'empty'}>\n <when value=\"error\">\n <span class=\"error-text\" part=\"error-text\">${this.errorText}</span>\n </when>\n <when value=\"helper\">\n <span class=\"helper-text\" part=\"helper-text\">${this.helperText}</span>\n </when>\n <default>\n </default>\n </case>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n // Set initial form value\n if (this.internals) {\n this.internals.setFormValue(this.value);\n }\n // Set initial clear button visibility\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n // Set initial invalid state\n if (this.input && this.invalid) {\n this.input.setAttribute('aria-invalid', 'true');\n this.input.classList.add('input--invalid');\n }\n // Set initial input properties that may not be properly set via attributes\n if (this.input) {\n // Number input constraints\n if (this.type === 'number') {\n if (this.min)\n this.input.min = this.min;\n if (this.max)\n this.input.max = this.max;\n if (this.step)\n this.input.step = this.step;\n }\n // Text constraints\n if (this.maxlength > 0)\n this.input.maxLength = this.maxlength;\n if (this.minlength > 0)\n this.input.minLength = this.minlength;\n // Other properties\n if (this.pattern)\n this.input.pattern = this.pattern;\n if (this.placeholder)\n this.input.placeholder = this.placeholder;\n if (this.value)\n this.input.value = this.value;\n this.input.disabled = this.disabled;\n this.input.readOnly = this.readonly;\n this.input.required = this.required;\n }\n }\n handleInput(e) {\n const input = e.target;\n this.value = input.value;\n this.dispatchInputEvent();\n }\n handleChange(e) {\n const input = e.target;\n this.value = input.value;\n this.dispatchChangeEvent();\n }\n handleFocus(e) {\n this.dispatchFocusEvent();\n }\n handleBlur(e) {\n this.dispatchBlurEvent();\n }\n handleClear(e) {\n this.clear();\n }\n handlePasswordToggle(e) {\n this.showPassword = !this.showPassword;\n if (this.input) {\n this.input.type = this.showPassword ? 'text' : 'password';\n }\n if (this.passwordToggle) {\n const hiddenIcon = this.passwordToggle.querySelector('.password-icon--hidden');\n const visibleIcon = this.passwordToggle.querySelector('.password-icon--visible');\n if (hiddenIcon && visibleIcon) {\n hiddenIcon.style.display = this.showPassword ? 'none' : '';\n visibleIcon.style.display = this.showPassword ? '' : 'none';\n this.passwordToggle.setAttribute('aria-label', this.showPassword ? 'Hide password' : 'Show password');\n }\n }\n }\n handleValueChange() {\n // Only update input.value if it's different to avoid unnecessary DOM updates\n if (this.input && this.input.value !== this.value) {\n this.input.value = this.value;\n }\n // Update form value\n if (this.internals) {\n this.internals.setFormValue(this.value);\n }\n // Show/hide clear button based on value\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n }\n handleInvalidChange() {\n if (this.input) {\n this.input.setAttribute('aria-invalid', String(this.invalid));\n if (this.invalid) {\n this.input.classList.add('input--invalid');\n }\n else {\n this.input.classList.remove('input--invalid');\n }\n }\n }\n handleDisabledChange() {\n if (this.input) {\n this.input.disabled = this.disabled || this.loading;\n }\n // Update clear button visibility\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n }\n handleLoadingChange() {\n if (this.input) {\n this.input.disabled = this.disabled || this.loading;\n }\n // Update clear button visibility\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n }\n handleReadonlyChange() {\n if (this.input) {\n this.input.readOnly = this.readonly;\n }\n // Update clear button visibility\n if (this.clearButton && this.clearable) {\n const shouldShow = this.value && !this.disabled && !this.readonly && !this.loading;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n this.clearButton.classList.toggle('clear-button--visible', !!shouldShow);\n }\n }\n handlePlaceholderChange() {\n if (this.input) {\n this.input.placeholder = this.placeholder;\n }\n }\n handleMinChange() {\n if (this.input && this.type === 'number') {\n this.input.min = this.min;\n }\n }\n handleMaxChange() {\n if (this.input && this.type === 'number') {\n this.input.max = this.max;\n }\n }\n handleStepChange() {\n if (this.input && this.type === 'number') {\n this.input.step = this.step;\n }\n }\n handleMaxLengthChange() {\n if (this.input && this.maxlength > 0) {\n this.input.maxLength = this.maxlength;\n }\n }\n handleMinLengthChange() {\n if (this.input && this.minlength > 0) {\n this.input.minLength = this.minlength;\n }\n }\n handlePatternChange() {\n if (this.input) {\n this.input.pattern = this.pattern;\n }\n }\n handleTypeChange() {\n if (this.input && this.type !== 'password') {\n // Don't change type for password fields (handled by toggle)\n this.input.type = this.type;\n }\n }\n handleLabelChange() {\n const labelEl = this.shadowRoot?.querySelector('.label');\n if (labelEl) {\n labelEl.textContent = this.label;\n // Show/hide the label wrapper\n const wrapper = labelEl.parentElement;\n if (wrapper) {\n wrapper.style.display = this.label ? '' : 'none';\n }\n }\n }\n dispatchInputEvent() {\n return { value: this.value, input: this };\n }\n dispatchChangeEvent() {\n return { value: this.value, input: this };\n }\n dispatchFocusEvent() {\n return { input: this };\n }\n dispatchBlurEvent() {\n return { input: this };\n }\n dispatchClearEvent() {\n return { input: this };\n }\n // Public API\n focus() {\n this.input?.focus();\n }\n blur() {\n this.input?.blur();\n }\n select() {\n this.input?.select();\n }\n clear() {\n this.value = '';\n if (this.input) {\n this.input.value = '';\n }\n this.dispatchClearEvent();\n this.dispatchInputEvent();\n this.dispatchChangeEvent();\n this.focus();\n }\n checkValidity() {\n return this.input?.checkValidity() ?? true;\n }\n reportValidity() {\n return this.input?.reportValidity() ?? true;\n }\n setCustomValidity(message) {\n this.input?.setCustomValidity(message);\n }\n });\n return _classThis;\n})();\n\nexport { SniceInput };\n//# sourceMappingURL=snice-input.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, html, css } from 'snice';\n\nlet SniceOption = (() => {\n let _classDecorators = [element('snice-option')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _disabled_decorators;\n let _disabled_initializers = [];\n let _disabled_extraInitializers = [];\n let _selected_decorators;\n let _selected_initializers = [];\n let _selected_extraInitializers = [];\n let _icon_decorators;\n let _icon_initializers = [];\n let _icon_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({})];\n _label_decorators = [property({})];\n _disabled_decorators = [property({ type: Boolean, })];\n _selected_decorators = [property({ type: Boolean, })];\n _icon_decorators = [property({})];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _disabled_decorators, { kind: \"field\", name: \"disabled\", static: false, private: false, access: { has: obj => \"disabled\" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);\n __esDecorate(null, null, _selected_decorators, { kind: \"field\", name: \"selected\", static: false, private: false, access: { has: obj => \"selected\" in obj, get: obj => obj.selected, set: (obj, value) => { obj.selected = value; } }, metadata: _metadata }, _selected_initializers, _selected_extraInitializers);\n __esDecorate(null, null, _icon_decorators, { kind: \"field\", name: \"icon\", static: false, private: false, access: { has: obj => \"icon\" in obj, get: obj => obj.icon, set: (obj, value) => { obj.icon = value; } }, metadata: _metadata }, _icon_initializers, _icon_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n // Options are data-only elements, no shadow DOM needed\n return html /*html*/ ``;\n }\n styles() {\n return css /*css*/ `:host { display: none; }`;\n }\n init() {\n // If no label is provided, use the text content\n if (!this.label && this.textContent) {\n this.label = this.textContent.trim();\n }\n // If no value is provided, use the label\n if (!this.value && this.label) {\n this.value = this.label;\n }\n }\n // Getter for the option data\n get optionData() {\n return {\n value: this.value,\n label: this.label || this.textContent?.trim() || this.value,\n disabled: this.disabled,\n selected: this.selected,\n icon: this.icon\n };\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.label = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.disabled = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _disabled_initializers, false));\n this.selected = (__runInitializers(this, _disabled_extraInitializers), __runInitializers(this, _selected_initializers, false));\n this.icon = (__runInitializers(this, _selected_extraInitializers), __runInitializers(this, _icon_initializers, ''));\n __runInitializers(this, _icon_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceOption };\n//# sourceMappingURL=snice-option.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, queryAll, render, styles, ready, dispose, watch, dispatch, html, css } from 'snice';\nimport './snice-option.js';\n\nvar cssContent = \":host{display:inline-block;font-family:var(--snice-font-family);position:relative;width:100%;max-width:18.75rem}[hidden]{display:none!important}img[src=\\\"\\\"]{display:none}.select-wrapper{position:relative;width:100%}.select-label{display:block;margin-bottom:.25rem;font-size:var(--snice-font-size-sm);font-weight:500;line-height:var(--snice-line-height-normal, 1.5);color:var(--snice-color-text);text-align:left}.select-label--required::after{content:' *';color:var(--snice-color-danger)}.select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--snice-color-background-input);border:1px solid var(--snice-color-border);border-radius:var(--snice-border-radius-md);cursor:pointer;transition:all var(--snice-transition-fast) ease;position:relative;text-align:left;font-family:inherit;color:var(--snice-color-text)}.select-trigger--small{padding:.375rem 2rem .375rem .625rem;font-size:var(--snice-font-size-sm);min-height:2rem}.select-trigger--medium{padding:.5rem 2.25rem .5rem .75rem;font-size:var(--snice-font-size-md);min-height:var(--snice-select-min-height,2.5rem)}.select-trigger--large{padding:.625rem 2.5rem .625rem .875rem;font-size:var(--snice-font-size-lg);min-height:3rem}.select-trigger:hover:not(.select-trigger--disabled){border-color:var(--snice-color-border-hover)}.select-trigger:focus-visible{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-color:var(--snice-color-primary)}.select-trigger--open{border-color:var(--snice-color-primary)}.select-trigger--disabled{background:var(--snice-color-background-secondary);cursor:not-allowed;opacity:.6}.select-trigger--readonly{background:var(--snice-color-background-secondary);cursor:default}.select-trigger--invalid{border-color:var(--snice-color-danger)}.select-placeholder{color:var(--snice-color-text-secondary)}.select-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-value--single{display:flex;align-items:center;gap:.5rem}.select-value-icon{width:1rem;height:1rem;object-fit:contain;flex-shrink:0}.select-value--multiple{display:flex;gap:.25rem;flex-wrap:wrap}.select-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;background:var(--snice-color-primary-light);color:var(--snice-color-primary);border-radius:var(--snice-border-radius-sm);font-size:var(--snice-font-size-xs)}.select-tag-icon{width:.75rem;height:.75rem;object-fit:contain;flex-shrink:0}.select-tag-remove{cursor:pointer;padding:0;background:0 0;border:none;color:inherit;font-size:.75rem;line-height:1}.select-tag-remove:hover{opacity:.7}.select-icons{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.25rem;pointer-events:none;z-index:1}.select-clear{padding:2px;background:0 0;border:none;cursor:pointer;color:var(--snice-color-text-secondary);display:flex;align-items:center;justify-content:center;border-radius:var(--snice-border-radius-sm);pointer-events:auto}.select-clear:hover{background:var(--snice-color-background-secondary);color:var(--snice-color-text)}.select-arrow{transition:transform var(--snice-transition-fast) ease;color:var(--snice-color-text-secondary);pointer-events:none}.select-arrow--open{transform:rotate(180deg)}.select-dropdown{position:absolute;top:100%;margin-top:4px;left:0;right:0;background:var(--snice-color-background-element);border:1px solid var(--snice-color-border);border-radius:var(--snice-border-radius-md);box-shadow:var(--snice-shadow-lg);z-index:1000;opacity:0;transform:translateY(-8px) scaleY(.95);transform-origin:top;pointer-events:none;transition:opacity var(--snice-transition-fast) ease,transform var(--snice-transition-fast) ease;display:flex;flex-direction:column;overflow:hidden}.select-dropdown--open{opacity:1;transform:translateY(0) scaleY(1);pointer-events:auto}.select-search{padding:8px;border-bottom:1px solid var(--snice-color-border);flex-shrink:0}.select-search-input{width:100%;padding:6px 10px;background:var(--snice-color-background-input);border:1px solid var(--snice-color-border);border-radius:var(--snice-border-radius-sm);font-size:var(--snice-font-size-sm);font-family:inherit;color:var(--snice-color-text);box-sizing:border-box}.select-search-input:focus{outline:0;border-color:var(--snice-color-primary)}.select-options{max-height:200px;overflow-y:auto;overflow-x:hidden;padding:4px;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--snice-color-border) var(--snice-color-background-secondary)}.select-options::-webkit-scrollbar-track{background:var(--snice-color-background-secondary);margin:4px 0}.select-options::-webkit-scrollbar-thumb{background:var(--snice-color-border);border:2px solid var(--snice-color-background)}.select-option{padding:8px 12px;cursor:pointer;border-radius:var(--snice-border-radius-sm);transition:background var(--snice-transition-fast) ease;display:flex;align-items:center;gap:8px}.select-option:hover:not(.select-option--disabled){background:var(--snice-color-background-secondary)}.select-option--selected{background:var(--snice-color-primary-light);color:var(--snice-color-primary);font-weight:500}.select-option--focused{background:var(--snice-color-background-secondary);outline:2px solid var(--snice-color-primary);outline-offset:-2px}.select-option--disabled{opacity:.5;cursor:not-allowed}.select-option-icon{width:16px;height:16px;object-fit:contain;flex-shrink:0}.select-option-check{width:16px;height:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.select-option-label{flex:1}.select-no-options{padding:16px;text-align:center;color:var(--snice-color-text-secondary);font-size:var(--snice-font-size-sm)}.select-native{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.select-options::-webkit-scrollbar{width:6px}.select-options::-webkit-scrollbar-track{background:var(--snice-color-background-secondary);border-radius:3px}.select-options::-webkit-scrollbar-thumb{background:var(--snice-color-border);border-radius:3px}.select-options::-webkit-scrollbar-thumb:hover{background:var(--snice-color-border-hover)}.select-trigger--loading{cursor:wait;opacity:.7}.select-spinner{display:inline-block;width:14px;height:14px;margin-right:4px}.select-spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.select-freetext-input{flex:1;border:none;outline:0;background:0 0;font-family:inherit;font-size:inherit;color:var(--snice-color-text,rgb(23 23 23));padding:0;min-width:0;width:100%}.select-freetext-input::placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82))}.select-editable-container{position:relative;display:flex;align-items:center;width:100%}.select-editable-input{width:100%;box-sizing:border-box;font-family:inherit;background:var(--snice-color-background-input,rgb(248 247 245));color:var(--snice-color-text,rgb(23 23 23));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);transition:all var(--snice-transition-fast, 150ms) ease;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.select-editable-input--small{padding:.375rem 2rem .375rem .625rem;font-size:var(--snice-font-size-sm, .875rem);min-height:2rem}.select-editable-input--medium{padding:.5rem 2.25rem .5rem .75rem;font-size:var(--snice-font-size-md, 1rem);min-height:2.5rem}.select-editable-input--large{padding:.625rem 2.5rem .625rem .875rem;font-size:var(--snice-font-size-lg, 1.125rem);min-height:3rem}.select-editable-input:hover:not(:disabled){border-color:var(--snice-color-border-hover,rgb(180 180 180))}.select-editable-input:focus{border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:0 0 0 var(--snice-focus-ring-width,2px) var(--snice-focus-ring-color,rgb(59 130 246 / .5))}.select-editable-input--open{border-color:var(--snice-color-primary,rgb(37 99 235))}.select-editable-input:disabled{background:var(--snice-color-background-secondary,rgb(245 245 245));color:var(--snice-color-text-secondary,rgb(82 82 82));cursor:not-allowed;opacity:.6}.select-editable-input:read-only{background:var(--snice-color-background-secondary,rgb(245 245 245));cursor:default}.select-editable-input::placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82));opacity:.7}.select-editable-arrow{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;color:var(--snice-color-text-secondary,rgb(82 82 82));pointer-events:none;transition:transform var(--snice-transition-fast, 150ms) ease}.select-editable-arrow--open{transform:translateY(-50%) rotate(180deg)}.select-loading-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;color:var(--snice-color-text-secondary,rgb(82 82 82));font-size:var(--snice-font-size-sm, .875rem)}.select-loading-spinner{display:inline-block;width:1rem;height:1rem;flex-shrink:0}.select-loading-spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid var(--snice-color-border,rgb(226 226 226));border-top-color:var(--snice-color-primary,rgb(37 99 235));border-radius:50%;animation:.6s linear infinite spin}\";\n\nlet SniceSelect = (() => {\n let _classDecorators = [element('snice-select', { formAssociated: true })];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _disabled_decorators;\n let _disabled_initializers = [];\n let _disabled_extraInitializers = [];\n let _required_decorators;\n let _required_initializers = [];\n let _required_extraInitializers = [];\n let _invalid_decorators;\n let _invalid_initializers = [];\n let _invalid_extraInitializers = [];\n let _readonly_decorators;\n let _readonly_initializers = [];\n let _readonly_extraInitializers = [];\n let _loading_decorators;\n let _loading_initializers = [];\n let _loading_extraInitializers = [];\n let _multiple_decorators;\n let _multiple_initializers = [];\n let _multiple_extraInitializers = [];\n let _searchable_decorators;\n let _searchable_initializers = [];\n let _searchable_extraInitializers = [];\n let _clearable_decorators;\n let _clearable_initializers = [];\n let _clearable_extraInitializers = [];\n let _allowFreeText_decorators;\n let _allowFreeText_initializers = [];\n let _allowFreeText_extraInitializers = [];\n let _editable_decorators;\n let _editable_initializers = [];\n let _editable_extraInitializers = [];\n let _open_decorators;\n let _open_initializers = [];\n let _open_extraInitializers = [];\n let _size_decorators;\n let _size_initializers = [];\n let _size_extraInitializers = [];\n let _name_decorators;\n let _name_initializers = [];\n let _name_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _placeholder_decorators;\n let _placeholder_initializers = [];\n let _placeholder_extraInitializers = [];\n let _maxHeight_decorators;\n let _maxHeight_initializers = [];\n let _maxHeight_extraInitializers = [];\n let _options_decorators;\n let _options_initializers = [];\n let _options_extraInitializers = [];\n let _trigger_decorators;\n let _trigger_initializers = [];\n let _trigger_extraInitializers = [];\n let _dropdown_decorators;\n let _dropdown_initializers = [];\n let _dropdown_extraInitializers = [];\n let _valueDisplay_decorators;\n let _valueDisplay_initializers = [];\n let _valueDisplay_extraInitializers = [];\n let _labelElement_decorators;\n let _labelElement_initializers = [];\n let _labelElement_extraInitializers = [];\n let _searchInput_decorators;\n let _searchInput_initializers = [];\n let _searchInput_extraInitializers = [];\n let _optionsList_decorators;\n let _optionsList_initializers = [];\n let _optionsList_extraInitializers = [];\n let _clearButton_decorators;\n let _clearButton_initializers = [];\n let _clearButton_extraInitializers = [];\n let _arrow_decorators;\n let _arrow_initializers = [];\n let _arrow_extraInitializers = [];\n let _searchContainer_decorators;\n let _searchContainer_initializers = [];\n let _searchContainer_extraInitializers = [];\n let _editableInput_decorators;\n let _editableInput_initializers = [];\n let _editableInput_extraInitializers = [];\n let _optionElements_decorators;\n let _optionElements_initializers = [];\n let _optionElements_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _cleanup_decorators;\n let _handleValueChange_decorators;\n let _handleOptionsPropertyChange_decorators;\n let _handleDisabledChange_decorators;\n let _handleLoadingChange_decorators;\n let _handleOpenChange_decorators;\n let _dispatchChangeEvent_decorators;\n let _dispatchOpenEvent_decorators;\n let _dispatchCloseEvent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _disabled_decorators = [property({ type: Boolean, })];\n _required_decorators = [property({ type: Boolean, })];\n _invalid_decorators = [property({ type: Boolean, })];\n _readonly_decorators = [property({ type: Boolean, })];\n _loading_decorators = [property({ type: Boolean, })];\n _multiple_decorators = [property({ type: Boolean, })];\n _searchable_decorators = [property({ type: Boolean, })];\n _clearable_decorators = [property({ type: Boolean, })];\n _allowFreeText_decorators = [property({ type: Boolean, attribute: 'allow-free-text' })];\n _editable_decorators = [property({ type: Boolean, })];\n _open_decorators = [property({ type: Boolean, })];\n _size_decorators = [property({})];\n _name_decorators = [property({})];\n _value_decorators = [property({})];\n _label_decorators = [property({})];\n _placeholder_decorators = [property({})];\n _maxHeight_decorators = [property({ attribute: 'max-height' })];\n _options_decorators = [property({ type: Array, attribute: false })];\n _trigger_decorators = [query('.select-trigger')];\n _dropdown_decorators = [query('.select-dropdown')];\n _valueDisplay_decorators = [query('.select-value')];\n _labelElement_decorators = [query('.select-label')];\n _searchInput_decorators = [query('.select-search-input')];\n _optionsList_decorators = [query('.select-options')];\n _clearButton_decorators = [query('.select-clear')];\n _arrow_decorators = [query('.select-arrow')];\n _searchContainer_decorators = [query('.select-search')];\n _editableInput_decorators = [query('.select-editable-input')];\n _optionElements_decorators = [queryAll('.select-option')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _cleanup_decorators = [dispose()];\n _handleValueChange_decorators = [watch('value')];\n _handleOptionsPropertyChange_decorators = [watch('options')];\n _handleDisabledChange_decorators = [watch('disabled')];\n _handleLoadingChange_decorators = [watch('loading')];\n _handleOpenChange_decorators = [watch('open')];\n _dispatchChangeEvent_decorators = [dispatch('select-change', { bubbles: true, composed: true })];\n _dispatchOpenEvent_decorators = [dispatch('select-open', { bubbles: true, composed: true })];\n _dispatchCloseEvent_decorators = [dispatch('select-close', { bubbles: true, composed: true })];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _cleanup_decorators, { kind: \"method\", name: \"cleanup\", static: false, private: false, access: { has: obj => \"cleanup\" in obj, get: obj => obj.cleanup }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleValueChange_decorators, { kind: \"method\", name: \"handleValueChange\", static: false, private: false, access: { has: obj => \"handleValueChange\" in obj, get: obj => obj.handleValueChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleOptionsPropertyChange_decorators, { kind: \"method\", name: \"handleOptionsPropertyChange\", static: false, private: false, access: { has: obj => \"handleOptionsPropertyChange\" in obj, get: obj => obj.handleOptionsPropertyChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleDisabledChange_decorators, { kind: \"method\", name: \"handleDisabledChange\", static: false, private: false, access: { has: obj => \"handleDisabledChange\" in obj, get: obj => obj.handleDisabledChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleLoadingChange_decorators, { kind: \"method\", name: \"handleLoadingChange\", static: false, private: false, access: { has: obj => \"handleLoadingChange\" in obj, get: obj => obj.handleLoadingChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleOpenChange_decorators, { kind: \"method\", name: \"handleOpenChange\", static: false, private: false, access: { has: obj => \"handleOpenChange\" in obj, get: obj => obj.handleOpenChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchChangeEvent_decorators, { kind: \"method\", name: \"dispatchChangeEvent\", static: false, private: false, access: { has: obj => \"dispatchChangeEvent\" in obj, get: obj => obj.dispatchChangeEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchOpenEvent_decorators, { kind: \"method\", name: \"dispatchOpenEvent\", static: false, private: false, access: { has: obj => \"dispatchOpenEvent\" in obj, get: obj => obj.dispatchOpenEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchCloseEvent_decorators, { kind: \"method\", name: \"dispatchCloseEvent\", static: false, private: false, access: { has: obj => \"dispatchCloseEvent\" in obj, get: obj => obj.dispatchCloseEvent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _disabled_decorators, { kind: \"field\", name: \"disabled\", static: false, private: false, access: { has: obj => \"disabled\" in obj, get: obj => obj.disabled, set: (obj, value) => { obj.disabled = value; } }, metadata: _metadata }, _disabled_initializers, _disabled_extraInitializers);\n __esDecorate(null, null, _required_decorators, { kind: \"field\", name: \"required\", static: false, private: false, access: { has: obj => \"required\" in obj, get: obj => obj.required, set: (obj, value) => { obj.required = value; } }, metadata: _metadata }, _required_initializers, _required_extraInitializers);\n __esDecorate(null, null, _invalid_decorators, { kind: \"field\", name: \"invalid\", static: false, private: false, access: { has: obj => \"invalid\" in obj, get: obj => obj.invalid, set: (obj, value) => { obj.invalid = value; } }, metadata: _metadata }, _invalid_initializers, _invalid_extraInitializers);\n __esDecorate(null, null, _readonly_decorators, { kind: \"field\", name: \"readonly\", static: false, private: false, access: { has: obj => \"readonly\" in obj, get: obj => obj.readonly, set: (obj, value) => { obj.readonly = value; } }, metadata: _metadata }, _readonly_initializers, _readonly_extraInitializers);\n __esDecorate(null, null, _loading_decorators, { kind: \"field\", name: \"loading\", static: false, private: false, access: { has: obj => \"loading\" in obj, get: obj => obj.loading, set: (obj, value) => { obj.loading = value; } }, metadata: _metadata }, _loading_initializers, _loading_extraInitializers);\n __esDecorate(null, null, _multiple_decorators, { kind: \"field\", name: \"multiple\", static: false, private: false, access: { has: obj => \"multiple\" in obj, get: obj => obj.multiple, set: (obj, value) => { obj.multiple = value; } }, metadata: _metadata }, _multiple_initializers, _multiple_extraInitializers);\n __esDecorate(null, null, _searchable_decorators, { kind: \"field\", name: \"searchable\", static: false, private: false, access: { has: obj => \"searchable\" in obj, get: obj => obj.searchable, set: (obj, value) => { obj.searchable = value; } }, metadata: _metadata }, _searchable_initializers, _searchable_extraInitializers);\n __esDecorate(null, null, _clearable_decorators, { kind: \"field\", name: \"clearable\", static: false, private: false, access: { has: obj => \"clearable\" in obj, get: obj => obj.clearable, set: (obj, value) => { obj.clearable = value; } }, metadata: _metadata }, _clearable_initializers, _clearable_extraInitializers);\n __esDecorate(null, null, _allowFreeText_decorators, { kind: \"field\", name: \"allowFreeText\", static: false, private: false, access: { has: obj => \"allowFreeText\" in obj, get: obj => obj.allowFreeText, set: (obj, value) => { obj.allowFreeText = value; } }, metadata: _metadata }, _allowFreeText_initializers, _allowFreeText_extraInitializers);\n __esDecorate(null, null, _editable_decorators, { kind: \"field\", name: \"editable\", static: false, private: false, access: { has: obj => \"editable\" in obj, get: obj => obj.editable, set: (obj, value) => { obj.editable = value; } }, metadata: _metadata }, _editable_initializers, _editable_extraInitializers);\n __esDecorate(null, null, _open_decorators, { kind: \"field\", name: \"open\", static: false, private: false, access: { has: obj => \"open\" in obj, get: obj => obj.open, set: (obj, value) => { obj.open = value; } }, metadata: _metadata }, _open_initializers, _open_extraInitializers);\n __esDecorate(null, null, _size_decorators, { kind: \"field\", name: \"size\", static: false, private: false, access: { has: obj => \"size\" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);\n __esDecorate(null, null, _name_decorators, { kind: \"field\", name: \"name\", static: false, private: false, access: { has: obj => \"name\" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _placeholder_decorators, { kind: \"field\", name: \"placeholder\", static: false, private: false, access: { has: obj => \"placeholder\" in obj, get: obj => obj.placeholder, set: (obj, value) => { obj.placeholder = value; } }, metadata: _metadata }, _placeholder_initializers, _placeholder_extraInitializers);\n __esDecorate(null, null, _maxHeight_decorators, { kind: \"field\", name: \"maxHeight\", static: false, private: false, access: { has: obj => \"maxHeight\" in obj, get: obj => obj.maxHeight, set: (obj, value) => { obj.maxHeight = value; } }, metadata: _metadata }, _maxHeight_initializers, _maxHeight_extraInitializers);\n __esDecorate(null, null, _options_decorators, { kind: \"field\", name: \"options\", static: false, private: false, access: { has: obj => \"options\" in obj, get: obj => obj.options, set: (obj, value) => { obj.options = value; } }, metadata: _metadata }, _options_initializers, _options_extraInitializers);\n __esDecorate(null, null, _trigger_decorators, { kind: \"field\", name: \"trigger\", static: false, private: false, access: { has: obj => \"trigger\" in obj, get: obj => obj.trigger, set: (obj, value) => { obj.trigger = value; } }, metadata: _metadata }, _trigger_initializers, _trigger_extraInitializers);\n __esDecorate(null, null, _dropdown_decorators, { kind: \"field\", name: \"dropdown\", static: false, private: false, access: { has: obj => \"dropdown\" in obj, get: obj => obj.dropdown, set: (obj, value) => { obj.dropdown = value; } }, metadata: _metadata }, _dropdown_initializers, _dropdown_extraInitializers);\n __esDecorate(null, null, _valueDisplay_decorators, { kind: \"field\", name: \"valueDisplay\", static: false, private: false, access: { has: obj => \"valueDisplay\" in obj, get: obj => obj.valueDisplay, set: (obj, value) => { obj.valueDisplay = value; } }, metadata: _metadata }, _valueDisplay_initializers, _valueDisplay_extraInitializers);\n __esDecorate(null, null, _labelElement_decorators, { kind: \"field\", name: \"labelElement\", static: false, private: false, access: { has: obj => \"labelElement\" in obj, get: obj => obj.labelElement, set: (obj, value) => { obj.labelElement = value; } }, metadata: _metadata }, _labelElement_initializers, _labelElement_extraInitializers);\n __esDecorate(null, null, _searchInput_decorators, { kind: \"field\", name: \"searchInput\", static: false, private: false, access: { has: obj => \"searchInput\" in obj, get: obj => obj.searchInput, set: (obj, value) => { obj.searchInput = value; } }, metadata: _metadata }, _searchInput_initializers, _searchInput_extraInitializers);\n __esDecorate(null, null, _optionsList_decorators, { kind: \"field\", name: \"optionsList\", static: false, private: false, access: { has: obj => \"optionsList\" in obj, get: obj => obj.optionsList, set: (obj, value) => { obj.optionsList = value; } }, metadata: _metadata }, _optionsList_initializers, _optionsList_extraInitializers);\n __esDecorate(null, null, _clearButton_decorators, { kind: \"field\", name: \"clearButton\", static: false, private: false, access: { has: obj => \"clearButton\" in obj, get: obj => obj.clearButton, set: (obj, value) => { obj.clearButton = value; } }, metadata: _metadata }, _clearButton_initializers, _clearButton_extraInitializers);\n __esDecorate(null, null, _arrow_decorators, { kind: \"field\", name: \"arrow\", static: false, private: false, access: { has: obj => \"arrow\" in obj, get: obj => obj.arrow, set: (obj, value) => { obj.arrow = value; } }, metadata: _metadata }, _arrow_initializers, _arrow_extraInitializers);\n __esDecorate(null, null, _searchContainer_decorators, { kind: \"field\", name: \"searchContainer\", static: false, private: false, access: { has: obj => \"searchContainer\" in obj, get: obj => obj.searchContainer, set: (obj, value) => { obj.searchContainer = value; } }, metadata: _metadata }, _searchContainer_initializers, _searchContainer_extraInitializers);\n __esDecorate(null, null, _editableInput_decorators, { kind: \"field\", name: \"editableInput\", static: false, private: false, access: { has: obj => \"editableInput\" in obj, get: obj => obj.editableInput, set: (obj, value) => { obj.editableInput = value; } }, metadata: _metadata }, _editableInput_initializers, _editableInput_extraInitializers);\n __esDecorate(null, null, _optionElements_decorators, { kind: \"field\", name: \"optionElements\", static: false, private: false, access: { has: obj => \"optionElements\" in obj, get: obj => obj.optionElements, set: (obj, value) => { obj.optionElements = value; } }, metadata: _metadata }, _optionElements_initializers, _optionElements_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n constructor() {\n super();\n this.internals = __runInitializers(this, _instanceExtraInitializers);\n this.disabled = __runInitializers(this, _disabled_initializers, false);\n this.required = (__runInitializers(this, _disabled_extraInitializers), __runInitializers(this, _required_initializers, false));\n this.invalid = (__runInitializers(this, _required_extraInitializers), __runInitializers(this, _invalid_initializers, false));\n this.readonly = (__runInitializers(this, _invalid_extraInitializers), __runInitializers(this, _readonly_initializers, false));\n this.loading = (__runInitializers(this, _readonly_extraInitializers), __runInitializers(this, _loading_initializers, false));\n this.multiple = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _multiple_initializers, false));\n this.searchable = (__runInitializers(this, _multiple_extraInitializers), __runInitializers(this, _searchable_initializers, false));\n this.clearable = (__runInitializers(this, _searchable_extraInitializers), __runInitializers(this, _clearable_initializers, false));\n this.allowFreeText = (__runInitializers(this, _clearable_extraInitializers), __runInitializers(this, _allowFreeText_initializers, false));\n this.editable = (__runInitializers(this, _allowFreeText_extraInitializers), __runInitializers(this, _editable_initializers, false));\n this.open = (__runInitializers(this, _editable_extraInitializers), __runInitializers(this, _open_initializers, false));\n this.size = (__runInitializers(this, _open_extraInitializers), __runInitializers(this, _size_initializers, 'medium'));\n this.name = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _name_initializers, ''));\n this.value = (__runInitializers(this, _name_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.label = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.placeholder = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _placeholder_initializers, 'Select an option'));\n this.maxHeight = (__runInitializers(this, _placeholder_extraInitializers), __runInitializers(this, _maxHeight_initializers, '200px'));\n this.options = (__runInitializers(this, _maxHeight_extraInitializers), __runInitializers(this, _options_initializers, []));\n // Options read from child snice-option elements\n this.childOptions = (__runInitializers(this, _options_extraInitializers), []);\n this.trigger = __runInitializers(this, _trigger_initializers, void 0);\n this.dropdown = (__runInitializers(this, _trigger_extraInitializers), __runInitializers(this, _dropdown_initializers, void 0));\n this.valueDisplay = (__runInitializers(this, _dropdown_extraInitializers), __runInitializers(this, _valueDisplay_initializers, void 0));\n this.labelElement = (__runInitializers(this, _valueDisplay_extraInitializers), __runInitializers(this, _labelElement_initializers, void 0));\n this.searchInput = (__runInitializers(this, _labelElement_extraInitializers), __runInitializers(this, _searchInput_initializers, void 0));\n this.optionsList = (__runInitializers(this, _searchInput_extraInitializers), __runInitializers(this, _optionsList_initializers, void 0));\n this.clearButton = (__runInitializers(this, _optionsList_extraInitializers), __runInitializers(this, _clearButton_initializers, void 0));\n this.arrow = (__runInitializers(this, _clearButton_extraInitializers), __runInitializers(this, _arrow_initializers, void 0));\n this.searchContainer = (__runInitializers(this, _arrow_extraInitializers), __runInitializers(this, _searchContainer_initializers, void 0));\n this.editableInput = (__runInitializers(this, _searchContainer_extraInitializers), __runInitializers(this, _editableInput_initializers, void 0));\n this.optionElements = (__runInitializers(this, _editableInput_extraInitializers), __runInitializers(this, _optionElements_initializers, void 0));\n this.filteredOptions = (__runInitializers(this, _optionElements_extraInitializers), []);\n this.selectedValues = new Set();\n this.focusedIndex = -1;\n this.editableInputValue = '';\n if (typeof this.attachInternals == 'function') {\n this.internals = this.attachInternals();\n }\n }\n /** Merged options: programmatic `options` array + child `<snice-option>` elements */\n get mergedOptions() {\n // Child options take precedence if both provided (slot wins)\n if (this.childOptions.length > 0 && this.options.length > 0) {\n // Merge: children first, then programmatic options not already present\n const childValues = new Set(this.childOptions.map(o => o.value));\n return [...this.childOptions, ...this.options.filter(o => !childValues.has(o.value))];\n }\n return this.childOptions.length > 0 ? this.childOptions : this.options;\n }\n render() {\n const labelClasses = `select-label select-label--${this.size} ${this.required ? 'select-label--required' : ''}`;\n const triggerClasses = `select-trigger select-trigger--${this.size} ${this.loading ? 'select-trigger--loading' : ''} ${this.editable ? 'select-trigger--editable' : ''}`;\n const searchHidden = !this.searchable || this.editable;\n return html /*html*/ `\n <div class=\"select-wrapper\">\n <label class=\"${labelClasses}\" part=\"label\" ?hidden=\"${!this.label}\">\n ${this.label}\n </label>\n\n <if ${this.editable}>\n <div class=\"select-editable-container\">\n <input\n type=\"text\"\n class=\"select-editable-input select-editable-input--${this.size}\"\n placeholder=\"${this.placeholder}\"\n ?disabled=\"${this.disabled}\"\n ?readonly=\"${this.readonly}\"\n autocomplete=\"off\"\n role=\"combobox\"\n aria-expanded=\"false\"\n aria-autocomplete=\"list\"\n aria-label=\"${this.label || 'Select'}\"\n part=\"input\"\n @input=\"${(e) => this.handleEditableInput(e)}\"\n @focus=\"${() => this.handleEditableFocus()}\"\n @blur=\"${(e) => this.handleEditableBlur(e)}\"\n @keydown=\"${(e) => this.handleEditableKeydown(e)}\"\n @click=\"${() => this.handleEditableClick()}\"\n />\n <span class=\"select-editable-arrow\" part=\"arrow\"\n @mousedown=\"${(e) => this.handleEditableArrowClick(e)}\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"currentColor\">\n <path d=\"M6 9L1 4h10L6 9z\"/>\n </svg>\n </span>\n </div>\n </if>\n\n <if ${!this.editable}>\n <button\n type=\"button\"\n class=\"${triggerClasses}\"\n aria-haspopup=\"listbox\"\n aria-expanded=\"false\"\n aria-label=\"${this.label || 'Select'}\"\n part=\"trigger\"\n @keydown=\"${(e) => this.handleTriggerOpen(e)}\"\n @click=\"${(e) => this.handleTriggerClick(e)}\">\n\n <div class=\"select-value\" part=\"value\">\n <span class=\"select-placeholder\">${this.placeholder}</span>\n </div>\n\n <span class=\"select-icons\">\n <span class=\"select-clear\" aria-label=\"Clear selection\" style=\"display: none;\" @click=\"${(e) => this.handleClearClick(e)}\">\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"currentColor\">\n <path d=\"M14 1.41L12.59 0L7 5.59L1.41 0L0 1.41L5.59 7L0 12.59L1.41 14L7 8.41L12.59 14L14 12.59L8.41 7L14 1.41Z\"/>\n </svg>\n </span>\n <if ${this.loading}>\n <span class=\"select-spinner\" part=\"spinner\"></span>\n </if>\n <if ${!this.loading}>\n <span class=\"select-arrow\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"currentColor\">\n <path d=\"M6 9L1 4h10L6 9z\"/>\n </svg>\n </span>\n </if>\n </span>\n </button>\n </if>\n\n <div class=\"select-dropdown\"\n role=\"listbox\"\n aria-label=\"${this.label || 'Options'}\"\n part=\"dropdown\"\n @mousedown=\"${(e) => this.handleDropdownMousedown(e)}\"\n @click=\"${(e) => this.handleOptionsClick(e)}\">\n\n <div class=\"select-search\" part=\"search\" ?hidden=\"${searchHidden}\">\n <input\n type=\"text\"\n class=\"select-search-input\"\n placeholder=\"Search...\"\n aria-label=\"Search options\"\n part=\"search-input\"\n @keydown=\"${(e) => this.handleSearchKeydown(e)}\"\n @input=\"${(e) => this.handleSearchInput(e)}\" />\n </div>\n\n <div class=\"select-options\" part=\"options\">\n <!-- Options will be rendered in @ready() -->\n </div>\n </div>\n\n </div>\n `;\n }\n renderOptions() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n if (options.length === 0) {\n return /*html*/ `\n <div class=\"select-no-options\">\n <span class=\"select-no-options-text\" data-search=\"true\" ${!(this.searchable || this.editable) || this.filteredOptions.length > 0 ? 'hidden' : ''}>No matches found</span>\n <span class=\"select-no-options-text\" data-search=\"false\" ${(this.searchable || this.editable) && this.filteredOptions.length === 0 ? 'hidden' : ''}>No options available</span>\n </div>\n `;\n }\n return options.map((opt, index) => {\n const isSelected = this.multiple ?\n this.selectedValues.has(opt.value) :\n opt.value === this.value;\n return /*html*/ `\n <div class=\"select-option\n ${isSelected ? 'select-option--selected' : ''}\n ${opt.disabled ? 'select-option--disabled' : ''}\n ${index === this.focusedIndex ? 'select-option--focused' : ''}\n ${opt.icon ? 'select-option--has-icon' : ''}\"\n data-value=\"${opt.value}\"\n role=\"option\"\n aria-selected=\"${isSelected}\"\n aria-disabled=\"${opt.disabled}\"\n part=\"option\">\n <span class=\"select-option-check\" ${!this.multiple ? 'hidden' : ''}>\n <span class=\"select-option-check-mark\" ${!isSelected ? 'hidden' : ''}>✓</span>\n </span>\n <img class=\"select-option-icon\" src=\"${opt.icon || ''}\" alt=\"\" ${!opt.icon ? 'hidden' : ''} />\n <span class=\"select-option-label\">${opt.label}</span>\n </div>\n `;\n }).join('');\n }\n styles() {\n return css `${cssContent}`;\n }\n init() {\n // Read options from child snice-option elements\n this.readOptionsFromChildren();\n // Initialize selected values\n if (this.multiple && this.value) {\n this.selectedValues = new Set(this.value.split(',').map(v => v.trim()));\n }\n // Initialize filtered options\n this.filteredOptions = [...this.mergedOptions];\n // Set initial form value\n if (this.internals) {\n this.internals.setFormValue(this.value);\n }\n // Wait for @query decorators to populate shadow DOM elements\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n if (this.editable) {\n this.syncEditableInputToValue();\n this.updateEditableState();\n }\n else {\n // Set initial imperative state\n this.updateTriggerState();\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.updateDropdownState();\n this.updateDropdownContent();\n });\n });\n // Watch for changes to child options\n this.observeChildren();\n // Setup global event listeners\n this.setupGlobalListeners();\n }\n cleanup() {\n this.removeGlobalListeners();\n this.childObserver?.disconnect();\n }\n setupGlobalListeners() {\n // Create bound handlers\n this.outsideClickHandler = (e) => {\n if (!this.contains(e.target) && this.open) {\n if (this.editable) {\n this.commitEditableValue();\n }\n this.closeDropdown();\n }\n };\n this.globalKeyHandler = (e) => {\n if (!this.open || this.editable)\n return;\n switch (e.key) {\n case 'Escape':\n this.closeDropdown();\n this.trigger?.focus();\n break;\n case 'ArrowDown':\n e.preventDefault();\n this.focusNextOption();\n break;\n case 'ArrowUp':\n e.preventDefault();\n this.focusPreviousOption();\n break;\n case 'Enter':\n case ' ':\n e.preventDefault();\n if (this.focusedIndex >= 0) {\n const options = this.searchable ? this.filteredOptions : this.mergedOptions;\n const option = options[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleOptionSelect(option);\n }\n }\n break;\n }\n };\n // Add listeners\n document.addEventListener('click', this.outsideClickHandler);\n document.addEventListener('keydown', this.globalKeyHandler);\n }\n removeGlobalListeners() {\n if (this.outsideClickHandler) {\n document.removeEventListener('click', this.outsideClickHandler);\n }\n if (this.globalKeyHandler) {\n document.removeEventListener('keydown', this.globalKeyHandler);\n }\n }\n // Manual observation of light DOM children (snice-option elements)\n observeChildren() {\n const observer = new MutationObserver((mutations) => {\n this.handleChildrenChange(mutations);\n });\n // Observe the host element (this) for changes to its light DOM children\n observer.observe(this, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['value', 'label', 'disabled', 'selected']\n });\n // Store for cleanup\n this.childObserver = observer;\n }\n handleChildrenChange(mutations) {\n // Check if any of the mutations are relevant (snice-option elements or their attributes)\n const relevant = mutations.some(m => {\n if (m.type === 'childList')\n return true;\n if (m.type === 'attributes' && ['value', 'label', 'disabled', 'selected'].includes(m.attributeName)) {\n return m.target.nodeName === 'SNICE-OPTION';\n }\n return false;\n });\n if (relevant) {\n this.readOptionsFromChildren();\n this.filteredOptions = [...this.mergedOptions];\n if (!this.editable) {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.updateDropdownContent();\n }\n }\n readOptionsFromChildren() {\n // Get all snice-option children from light DOM\n const optionElements = Array.from(this.querySelectorAll('snice-option'));\n this.childOptions = optionElements.map(opt => {\n const sniceOption = opt;\n // Use the optionData getter if available, otherwise construct from properties\n if (sniceOption.optionData) {\n return sniceOption.optionData;\n }\n return {\n value: opt.getAttribute('value') || '',\n label: opt.getAttribute('label') || opt.textContent?.trim() || '',\n disabled: opt.hasAttribute('disabled'),\n selected: opt.hasAttribute('selected')\n };\n });\n }\n // ── Editable mode handlers ──\n handleEditableInput(e) {\n const input = e.target;\n this.editableInputValue = input.value;\n // Filter options as user types\n this.filterEditableOptions(this.editableInputValue);\n if (!this.open) {\n this.openDropdown();\n }\n }\n handleEditableFocus() {\n if (!this.open && !this.readonly) {\n this.openDropdown();\n }\n }\n handleEditableBlur(e) {\n // Delay close to allow option clicks via mousedown\n setTimeout(() => {\n if (this.open) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n }, 200);\n }\n handleEditableClick() {\n if (!this.open && !this.disabled && !this.readonly) {\n this.openDropdown();\n }\n }\n handleEditableArrowClick(e) {\n e.preventDefault();\n e.stopPropagation();\n if (this.disabled || this.readonly)\n return;\n if (this.open) {\n this.closeDropdown();\n }\n else {\n this.openDropdown();\n this.editableInput?.focus();\n }\n }\n handleEditableKeydown(e) {\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault();\n if (!this.open) {\n this.openDropdown();\n }\n else {\n this.focusNextOption();\n }\n break;\n case 'ArrowUp':\n e.preventDefault();\n if (this.open) {\n this.focusPreviousOption();\n }\n break;\n case 'Enter':\n e.preventDefault();\n if (this.open && this.focusedIndex >= 0) {\n const option = this.filteredOptions[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleEditableOptionSelect(option);\n }\n }\n else if (this.open) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n break;\n case 'Escape':\n if (this.open) {\n this.closeDropdown();\n this.syncEditableInputToValue();\n }\n break;\n case 'Tab':\n if (this.open) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n break;\n }\n }\n handleEditableOptionSelect(option) {\n this.value = option.value;\n this.editableInputValue = option.label;\n if (this.editableInput) {\n this.editableInput.value = option.label;\n }\n this.closeDropdown();\n this.dispatchChangeEvent(option);\n this.editableInput?.focus();\n }\n commitEditableValue() {\n if (!this.editableInput)\n return;\n const inputText = this.editableInput.value.trim();\n // Try to match an existing option\n const allOptions = this.mergedOptions;\n const match = allOptions.find(opt => opt.label.toLowerCase() === inputText.toLowerCase());\n if (match) {\n this.value = match.value;\n this.editableInputValue = match.label;\n this.editableInput.value = match.label;\n this.dispatchChangeEvent(match);\n }\n else if (this.allowFreeText && inputText) {\n this.value = inputText;\n this.editableInputValue = inputText;\n this.dispatchChangeEvent();\n }\n else {\n // Revert to current value\n this.syncEditableInputToValue();\n }\n }\n filterEditableOptions(query) {\n const allOptions = this.mergedOptions;\n if (!query) {\n this.filteredOptions = [...allOptions];\n }\n else {\n const lower = query.toLowerCase();\n this.filteredOptions = allOptions.filter(opt => opt.label.toLowerCase().includes(lower));\n }\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n syncEditableInputToValue() {\n if (!this.editableInput)\n return;\n if (this.value) {\n const allOptions = this.mergedOptions;\n const match = allOptions.find(opt => opt.value === this.value);\n if (match) {\n this.editableInput.value = match.label;\n this.editableInputValue = match.label;\n }\n else if (this.allowFreeText) {\n this.editableInput.value = this.value;\n this.editableInputValue = this.value;\n }\n else {\n this.editableInput.value = '';\n this.editableInputValue = '';\n }\n }\n else {\n this.editableInput.value = '';\n this.editableInputValue = '';\n }\n }\n updateEditableState() {\n if (!this.editableInput)\n return;\n this.editableInput.setAttribute('aria-expanded', String(this.open));\n this.editableInput.classList.toggle('select-editable-input--open', this.open);\n }\n // ── Dropdown mousedown (prevents blur in editable mode) ──\n handleDropdownMousedown(e) {\n if (this.editable) {\n e.preventDefault();\n }\n }\n // ── Standard (non-editable) mode handlers ──\n handleTriggerOpen(e) {\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault();\n if (!this.open) {\n this.openDropdown();\n }\n }\n }\n handleSearchKeydown(e) {\n switch (e.key) {\n case 'Escape':\n this.closeDropdown();\n this.trigger?.focus();\n break;\n case 'ArrowDown':\n e.preventDefault();\n this.focusNextOption();\n break;\n case 'ArrowUp':\n e.preventDefault();\n this.focusPreviousOption();\n break;\n case 'Enter':\n e.preventDefault();\n if (this.focusedIndex >= 0) {\n const options = this.searchable ? this.filteredOptions : this.mergedOptions;\n const option = options[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleOptionSelect(option);\n }\n }\n break;\n }\n }\n focusNextOption() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n const enabledOptions = options.filter(opt => !opt.disabled);\n if (enabledOptions.length === 0)\n return;\n this.focusedIndex++;\n if (this.focusedIndex >= options.length) {\n this.focusedIndex = 0;\n }\n while (options[this.focusedIndex]?.disabled) {\n this.focusedIndex++;\n if (this.focusedIndex >= options.length) {\n this.focusedIndex = 0;\n }\n }\n this.updateOptionFocus();\n }\n focusPreviousOption() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n const enabledOptions = options.filter(opt => !opt.disabled);\n if (enabledOptions.length === 0)\n return;\n this.focusedIndex--;\n if (this.focusedIndex < 0) {\n this.focusedIndex = options.length - 1;\n }\n while (options[this.focusedIndex]?.disabled) {\n this.focusedIndex--;\n if (this.focusedIndex < 0) {\n this.focusedIndex = options.length - 1;\n }\n }\n this.updateOptionFocus();\n }\n updateOptionFocus() {\n if (this.optionElements) {\n this.optionElements.forEach((el, index) => {\n el.classList.toggle('select-option--focused', index === this.focusedIndex);\n });\n // Scroll focused option into view\n const focusedEl = this.optionElements?.[this.focusedIndex];\n if (focusedEl) {\n focusedEl.scrollIntoView({ block: 'nearest' });\n }\n }\n }\n handleClearClick(e) {\n e.preventDefault();\n e.stopPropagation();\n this.clear();\n }\n handleTriggerClick(e) {\n const target = e.target;\n // Don't toggle if clicking on the clear button\n if (target.closest('.select-clear')) {\n return;\n }\n e.stopPropagation();\n if (!this.disabled && !this.readonly) {\n this.toggleDropdown();\n }\n }\n handleOptionsClick(e) {\n const target = e.target;\n // Handle tag remove click\n if (target.closest('.select-tag-remove')) {\n e.stopPropagation();\n const removeBtn = target.closest('.select-tag-remove');\n const value = removeBtn.getAttribute('data-value');\n if (value && this.multiple) {\n this.selectedValues.delete(value);\n this.value = Array.from(this.selectedValues).join(',');\n this.updateValueDisplay();\n this.updateClearButton();\n this.dispatchChangeEvent();\n }\n return;\n }\n const optionEl = target.closest('.select-option');\n if (!optionEl)\n return;\n e.stopPropagation();\n const value = optionEl.getAttribute('data-value');\n if (!value)\n return;\n const allOptions = this.mergedOptions;\n const option = allOptions.find(opt => opt.value === value);\n if (option && !option.disabled) {\n if (this.editable) {\n this.handleEditableOptionSelect(option);\n }\n else {\n this.handleOptionSelect(option);\n }\n }\n }\n handleSearchInput(e) {\n const input = e.target;\n const searchTerm = input.value.toLowerCase();\n if (searchTerm) {\n this.filteredOptions = this.mergedOptions.filter(opt => opt.label.toLowerCase().includes(searchTerm));\n }\n else {\n this.filteredOptions = [...this.mergedOptions];\n }\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n handleOptionSelect(option) {\n if (this.multiple) {\n if (this.selectedValues.has(option.value)) {\n this.selectedValues.delete(option.value);\n }\n else {\n this.selectedValues.add(option.value);\n }\n this.value = Array.from(this.selectedValues).join(',');\n this.updateDropdownContent();\n }\n else {\n this.value = option.value;\n this.closeDropdown();\n }\n this.updateValueDisplay();\n this.updateClearButton();\n this.dispatchChangeEvent(option);\n }\n handleValueChange() {\n if (this.multiple) {\n this.selectedValues = new Set(this.value ? this.value.split(',').map(v => v.trim()) : []);\n }\n if (this.editable) {\n this.syncEditableInputToValue();\n }\n else {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n if (this.internals) {\n this.internals.setFormValue(this.value);\n }\n }\n handleOptionsPropertyChange() {\n this.filteredOptions = [...this.mergedOptions];\n this.updateDropdownContent();\n if (this.editable) {\n this.syncEditableInputToValue();\n }\n }\n handleDisabledChange() {\n if (!this.editable) {\n this.updateTriggerState();\n this.updateClearButton();\n }\n // Side effect: close dropdown when disabled\n if (this.disabled && this.open) {\n this.closeDropdown();\n }\n }\n handleLoadingChange() {\n if (!this.editable) {\n this.updateTriggerState();\n this.updateClearButton();\n }\n // Side effect: close dropdown when loading\n if (this.loading && this.open) {\n this.closeDropdown();\n }\n }\n handleOpenChange() {\n this.updateDropdownState();\n if (this.editable) {\n this.updateEditableState();\n if (this.open) {\n // Reset filter to show all options when opening\n this.filteredOptions = [...this.mergedOptions];\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n if (!this.open) {\n this.focusedIndex = -1;\n }\n }\n else {\n this.updateTriggerState();\n // Side effect: focus search input when opened\n if (this.open && this.searchable && this.searchInput) {\n setTimeout(() => this.searchInput?.focus(), 100);\n }\n // Side effect: reset search when closed\n if (!this.open) {\n this.focusedIndex = -1;\n if (this.searchInput) {\n this.searchInput.value = '';\n this.filteredOptions = [...this.mergedOptions];\n this.updateDropdownContent();\n }\n }\n }\n }\n updateValueDisplay() {\n if (!this.valueDisplay)\n return;\n const allOptions = this.mergedOptions;\n const selectedOptions = allOptions.filter(opt => this.multiple ? this.selectedValues.has(opt.value) : opt.value === this.value);\n if (this.multiple && selectedOptions.length > 0) {\n this.valueDisplay.innerHTML = /*html*/ `\n <div class=\"select-value--multiple\">\n ${selectedOptions.map(opt => /*html*/ `\n <span class=\"select-tag\">\n <img class=\"select-tag-icon\" src=\"${opt.icon || ''}\" alt=\"\" ${!opt.icon ? 'hidden' : ''} />\n ${opt.label}\n <span class=\"select-tag-remove\" data-value=\"${opt.value}\" aria-label=\"Remove ${opt.label}\" ${this.disabled || this.readonly ? 'hidden' : ''}>×</span>\n </span>\n `).join('')}\n </div>\n `;\n }\n else if (selectedOptions.length > 0) {\n const selected = selectedOptions[0];\n this.valueDisplay.innerHTML = /*html*/ `\n <div class=\"select-value--single\">\n <img class=\"select-value-icon\" src=\"${selected.icon || ''}\" alt=\"\" ${!selected.icon ? 'hidden' : ''} />\n <span>${selected.label}</span>\n </div>\n `;\n }\n else {\n this.valueDisplay.innerHTML = /*html*/ `<span class=\"select-placeholder\">${this.placeholder}</span>`;\n }\n }\n updateClearButton() {\n if (!this.clearButton)\n return;\n const allOptions = this.mergedOptions;\n const selectedOptions = allOptions.filter(opt => this.multiple ? this.selectedValues.has(opt.value) : opt.value === this.value);\n const shouldShow = this.clearable && selectedOptions.length > 0 && !this.disabled && !this.readonly;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n }\n updateDropdownContent() {\n if (!this.optionsList)\n return;\n this.optionsList.innerHTML = this.renderOptions();\n }\n dispatchChangeEvent(option) {\n return {\n value: this.multiple ? Array.from(this.selectedValues) : this.value,\n option,\n select: this\n };\n }\n dispatchOpenEvent() {\n return { select: this };\n }\n dispatchCloseEvent() {\n return { select: this };\n }\n // Public API\n focus() {\n if (this.editable) {\n this.editableInput?.focus();\n }\n else {\n this.trigger?.focus();\n }\n }\n blur() {\n if (this.editable) {\n this.editableInput?.blur();\n }\n else {\n this.trigger?.blur();\n }\n if (this.open) {\n this.closeDropdown();\n }\n }\n clear() {\n if (this.multiple) {\n this.selectedValues.clear();\n this.value = '';\n }\n else {\n this.value = '';\n }\n if (this.editable) {\n this.syncEditableInputToValue();\n }\n else {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.dispatchChangeEvent();\n }\n openDropdown() {\n if (!this.open && !this.disabled && !this.readonly) {\n this.open = true;\n this.dispatchOpenEvent();\n }\n }\n closeDropdown() {\n if (this.open) {\n this.open = false;\n this.dispatchCloseEvent();\n }\n }\n toggleDropdown() {\n if (this.open) {\n this.closeDropdown();\n }\n else {\n this.openDropdown();\n }\n }\n selectOption(value) {\n const allOptions = this.mergedOptions;\n const option = allOptions.find(opt => opt.value === value);\n if (option && !option.disabled) {\n if (this.editable) {\n this.handleEditableOptionSelect(option);\n }\n else {\n this.handleOptionSelect(option);\n }\n }\n }\n updateTriggerState() {\n if (!this.trigger)\n return;\n this.trigger.classList.toggle('select-trigger--open', this.open);\n this.trigger.classList.toggle('select-trigger--disabled', this.disabled);\n this.trigger.classList.toggle('select-trigger--readonly', this.readonly);\n this.trigger.classList.toggle('select-trigger--invalid', this.invalid);\n this.trigger.classList.toggle('select-trigger--loading', this.loading);\n this.trigger.setAttribute('aria-expanded', String(this.open));\n this.trigger.disabled = this.disabled || this.loading;\n }\n updateDropdownState() {\n if (!this.dropdown)\n return;\n this.dropdown.classList.toggle('select-dropdown--open', this.open);\n if (this.arrow) {\n this.arrow.classList.toggle('select-arrow--open', this.open);\n }\n }\n });\n return _classThis;\n})();\n\nexport { SniceSelect };\n//# sourceMappingURL=snice-select.js.map\n","var cssContent = \":host{display:flex;align-items:center;padding:0 var(--snice-table-cell-padding,var(--snice-spacing-md,.75rem));min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem;color:var(--snice-color-text)}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;word-wrap:break-word}:host([align=left]){text-align:left}:host([align=center]){text-align:center}:host([align=right]){text-align:right}:host([type=accounting]),:host([type=currency]),:host([type=fraction]),:host([type=number]),:host([type=percent]),:host([type=scientific]){font-variant-numeric:tabular-nums;text-align:right}:host([type=date]){font-variant-numeric:tabular-nums}:host([type=boolean]){text-align:center;font-size:1rem}:host([type=rating]){text-align:center}:host([type=sparkline]){text-align:center}.cell-content--text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-content--text[data-multiline=true]{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.cell-content--date,.cell-content--number{font-feature-settings:'tnum'}:host([type=boolean]) .cell-content{display:inline-flex;align-items:center;justify-content:center}:host([type=rating]) .cell-content{display:inline-flex;align-items:center;justify-content:center;gap:.125rem}.cell-content--progress{width:100%;min-width:4rem}.cell-content--sparkline{display:flex;align-items:center;justify-content:center;min-width:3rem}:host(.positive){color:var(--snice-color-success)}:host(.negative){color:var(--snice-color-danger)}:host(.warning){color:var(--snice-color-warning);background-color:hsl(var(--snice-color-yellow-100))}:host(.danger){color:var(--snice-color-danger);background-color:hsl(var(--snice-color-red-100))}:host(.success){color:var(--snice-color-success);background-color:hsl(var(--snice-color-green-100))}:host(.info){color:var(--snice-color-primary);background-color:hsl(var(--snice-color-blue-100))}:host(.date--today){font-weight:var(--snice-font-weight-semibold);color:var(--snice-color-primary)}:host(.date--past){color:var(--snice-color-text-secondary)}:host(.date--future){color:var(--snice-color-success)}:host(.number--negative.number--negative-red){color:var(--snice-color-danger)}:host(.number--positive.number--highlighted){color:var(--snice-color-success);font-weight:var(--snice-font-weight-semibold)}:host(.number--zero){color:var(--snice-color-text-secondary)}:host([truncate]) .cell-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([wrap]) .cell-content{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}:host(:not([value])) .cell-content,:host([value=\\\"\\\"]) .cell-content{color:var(--snice-color-text-secondary)}:host(.loading){position:relative;overflow:hidden}:host(.loading) .cell-content{opacity:.6}:host(.loading)::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,hsl(0 0% 100% / .6),transparent);animation:1.5s infinite cell-shimmer}@keyframes cell-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}:host(:focus-within){outline:2px solid var(--snice-color-primary);outline-offset:-2px}.cell-content button,.cell-content input,.cell-content select{font-size:inherit;line-height:inherit}.cell-content a{color:var(--snice-color-primary);text-decoration:none}.cell-content a:hover{text-decoration:underline}@media (max-width:768px){:host{font-size:.75rem;line-height:1rem}:host([type=boolean]){font-size:.875rem}}@media (prefers-reduced-motion:reduce){:host(.loading)::after{animation:none}}@media (prefers-contrast:high){:host(.positive){background-color:hsl(var(--snice-color-green-100))}:host(.negative){background-color:hsl(var(--snice-color-red-100))}.cell-content a{text-decoration:underline}}@media print{:host{font-size:.75rem}:host(.loading)::after{display:none}.cell-content a{text-decoration:underline}}\";\n\nexport { cssContent as c };\n//# sourceMappingURL=snice-cell-D9dSe0d4.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCell = (() => {\n let _classDecorators = [element('snice-cell')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property()];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `\n <div class=\"cell-content\" part=\"content\">\n ${this.formatValue()}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n this.applyConditionalFormatting();\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n this.contentElement.innerHTML = this.formatValue();\n }\n this.applyConditionalFormatting();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n applyConditionalFormatting() {\n if (!this.column || !this.column.conditionalFormats)\n return;\n // Reset any previous conditional formatting\n this.removeAttribute('style');\n this.className = 'snice-cell';\n this.applyAlignment();\n // Apply column base style if defined\n if (this.column.style) {\n this.applyStyle(this.column.style);\n }\n // Check and apply conditional formats\n for (const format of this.column.conditionalFormats) {\n if (format.condition(this.value, this.rowData)) {\n if (format.style) {\n this.applyStyle(format.style);\n }\n if (format.className) {\n this.classList.add(format.className);\n }\n break; // Apply only the first matching format\n }\n }\n }\n applyStyle(style) {\n if (style.backgroundColor)\n this.style.backgroundColor = style.backgroundColor;\n if (style.color)\n this.style.color = style.color;\n if (style.fontWeight)\n this.style.fontWeight = style.fontWeight;\n if (style.fontStyle)\n this.style.fontStyle = style.fontStyle;\n if (style.fontSize)\n this.style.fontSize = style.fontSize;\n if (style.textDecoration)\n this.style.textDecoration = style.textDecoration;\n }\n formatValue() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Apply type-specific formatting\n switch (this.type) {\n case 'text':\n return this.formatText();\n case 'number':\n return this.formatNumber();\n case 'currency':\n return this.formatCurrency();\n case 'percent':\n return this.formatPercent();\n case 'accounting':\n return this.formatAccounting();\n case 'scientific':\n return this.formatScientific();\n case 'fraction':\n return this.formatFraction();\n case 'date':\n return this.formatDate();\n case 'boolean':\n return this.formatBoolean();\n case 'rating':\n return this.formatRating();\n case 'progress':\n return this.formatProgress();\n case 'sparkline':\n return this.formatSparkline();\n case 'duration':\n return this.formatDuration();\n case 'filesize':\n return this.formatFilesize();\n case 'custom':\n return String(this.value);\n default:\n return String(this.value);\n }\n }\n formatText() {\n return String(this.value);\n }\n formatNumber() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n let formatted = num.toFixed(format.decimals ?? 0);\n if (format.thousandsSeparator) {\n const parts = formatted.split('.');\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n formatted = parts.join('.');\n }\n if (num < 0 && format.negativeStyle === 'parentheses') {\n formatted = `(${formatted.replace('-', '')})`;\n }\n if (format.prefix)\n formatted = format.prefix + formatted;\n if (format.suffix)\n formatted = formatted + format.suffix;\n return formatted;\n }\n formatCurrency() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n const currencyFormat = {\n style: 'currency',\n currency: 'USD',\n minimumFractionDigits: format.decimals ?? 2,\n maximumFractionDigits: format.decimals ?? 2\n };\n return new Intl.NumberFormat('en-US', currencyFormat).format(num);\n }\n formatPercent() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n const percentFormat = {\n style: 'percent',\n minimumFractionDigits: format.decimals ?? 1,\n maximumFractionDigits: format.decimals ?? 1\n };\n return new Intl.NumberFormat('en-US', percentFormat).format(num);\n }\n formatAccounting() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n let formatted = Math.abs(num).toFixed(format.decimals ?? 2);\n if (format.thousandsSeparator) {\n const parts = formatted.split('.');\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n formatted = parts.join('.');\n }\n if (num < 0) {\n formatted = `(${formatted})`;\n }\n else {\n formatted = ` ${formatted} `;\n }\n return formatted;\n }\n formatScientific() {\n const format = this.column.numberFormat || {};\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n return num.toExponential(format.decimals ?? 2);\n }\n formatFraction() {\n const num = Number(this.value);\n if (isNaN(num))\n return String(this.value);\n // Simple fraction conversion\n const tolerance = 1e-6;\n let h1 = 1, h2 = 0, k1 = 0, k2 = 1;\n let b = num;\n do {\n const a = Math.floor(b);\n let aux = h1;\n h1 = a * h1 + h2;\n h2 = aux;\n aux = k1;\n k1 = a * k1 + k2;\n k2 = aux;\n b = 1 / (b - a);\n } while (Math.abs(num - h1 / k1) > num * tolerance);\n return `${h1}/${k1}`;\n }\n formatDate() {\n const format = this.column.dateFormat || {};\n const date = new Date(this.value);\n if (isNaN(date.getTime()))\n return String(this.value);\n if (format.customFormat) {\n // Simple custom format implementation\n return format.customFormat\n .replace('YYYY', date.getFullYear().toString())\n .replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'))\n .replace('DD', date.getDate().toString().padStart(2, '0'));\n }\n const options = {};\n switch (format.format) {\n case 'short':\n options.dateStyle = 'short';\n break;\n case 'medium':\n options.dateStyle = 'medium';\n break;\n case 'long':\n options.dateStyle = 'long';\n break;\n case 'full':\n options.dateStyle = 'full';\n break;\n default:\n options.dateStyle = 'short';\n }\n return new Intl.DateTimeFormat(format.locale || 'en-US', options).format(date);\n }\n formatBoolean() {\n const format = this.column.booleanFormat || {};\n const bool = Boolean(this.value);\n if (format.useSymbols) {\n return bool\n ? (format.trueSymbol || '✓')\n : (format.falseSymbol || '✗');\n }\n return bool\n ? (format.trueValue || 'true')\n : (format.falseValue || 'false');\n }\n formatRating() {\n const format = this.column.ratingFormat || {};\n const rating = Number(this.value);\n const max = format.max || 5;\n const symbol = format.symbol || '★';\n const emptySymbol = format.emptySymbol || '☆';\n if (isNaN(rating))\n return String(this.value);\n let html = '';\n const primaryColor = format.color || getComputedStyle(this).getPropertyValue('--snice-color-warning').trim();\n const emptyColor = getComputedStyle(this).getPropertyValue('--snice-color-border').trim();\n for (let i = 0; i < max; i++) {\n if (i < rating) {\n html += `<span style=\"color: ${primaryColor}\">${symbol}</span>`;\n }\n else {\n html += `<span style=\"color: ${emptyColor}\">${emptySymbol}</span>`;\n }\n }\n return html;\n }\n formatProgress() {\n const format = this.column.progressFormat || {};\n const value = Number(this.value);\n const max = format.max || 100;\n const percentage = Math.min(100, Math.max(0, (value / max) * 100));\n if (isNaN(value))\n return String(this.value);\n const color = format.color || getComputedStyle(this).getPropertyValue('--snice-color-primary').trim();\n const bgColor = format.backgroundColor || getComputedStyle(this).getPropertyValue('--snice-color-border').trim();\n const height = format.height || '1rem'; // Using rem for height\n let html = `\n <div style=\"\n width: 100%; \n height: ${height}; \n background-color: ${bgColor}; \n border-radius: 0.25rem; \n overflow: hidden;\n position: relative;\n \">\n <div style=\"\n width: ${percentage}%; \n height: 100%; \n background-color: ${color}; \n transition: width 0.3s ease;\n \"></div>\n `;\n if (format.showPercentage) {\n const textColor = percentage > 50\n ? getComputedStyle(this).getPropertyValue('--snice-color-text-inverse').trim()\n : getComputedStyle(this).getPropertyValue('--snice-color-text').trim();\n html += `\n <span style=\"\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n font-size: 0.75rem;\n font-weight: bold;\n color: ${textColor};\n \">${Math.round(percentage)}%</span>\n `;\n }\n html += '</div>';\n return html;\n }\n formatSparkline() {\n const format = this.column.sparklineFormat || {};\n const data = Array.isArray(this.value) ? this.value : [];\n if (data.length === 0)\n return '';\n const width = format.width || 60;\n const height = format.height || 20;\n const color = format.color || getComputedStyle(this).getPropertyValue('--snice-color-primary').trim();\n const type = format.type || 'line';\n const max = Math.max(...data);\n const min = Math.min(...data);\n const range = max - min || 1;\n if (type === 'line') {\n const points = data.map((val, i) => {\n const x = (i / (data.length - 1)) * width;\n const y = height - ((val - min) / range) * height;\n return `${x},${y}`;\n }).join(' ');\n return `\n <svg width=\"${width}\" height=\"${height}\" style=\"display: block;\">\n <polyline \n points=\"${points}\" \n fill=\"none\" \n stroke=\"${color}\" \n stroke-width=\"2\"\n />\n </svg>\n `;\n }\n else if (type === 'bar') {\n const barWidth = width / data.length;\n const bars = data.map((val, i) => {\n const barHeight = ((val - min) / range) * height;\n const x = i * barWidth;\n const y = height - barHeight;\n return `<rect x=\"${x}\" y=\"${y}\" width=\"${barWidth - 1}\" height=\"${barHeight}\" fill=\"${color}\" />`;\n }).join('');\n return `\n <svg width=\"${width}\" height=\"${height}\" style=\"display: block;\">\n ${bars}\n </svg>\n `;\n }\n return String(this.value);\n }\n formatDuration() {\n const seconds = Number(this.value);\n if (isNaN(seconds))\n return String(this.value);\n const hours = Math.floor(seconds / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const secs = seconds % 60;\n if (hours > 0) {\n return `${hours}:${minutes.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;\n }\n else {\n return `${minutes}:${secs.toString().padStart(2, '0')}`;\n }\n }\n formatFilesize() {\n const bytes = Number(this.value);\n if (isNaN(bytes))\n return String(this.value);\n const units = ['B', 'KB', 'MB', 'GB', 'TB'];\n let size = bytes;\n let unitIndex = 0;\n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex++;\n }\n return `${size.toFixed(unitIndex === 0 ? 0 : 1)} ${units[unitIndex]}`;\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'text'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'text',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCell };\n//# sourceMappingURL=snice-cell.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellText = (() => {\n let _classDecorators = [element('snice-cell-text')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _multiline_decorators;\n let _multiline_initializers = [];\n let _multiline_extraInitializers = [];\n let _maxLines_decorators;\n let _maxLines_initializers = [];\n let _maxLines_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _multiline_decorators = [property({ type: Boolean, })];\n _maxLines_decorators = [property({ type: Number, attribute: 'max-lines' })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _multiline_decorators, { kind: \"field\", name: \"multiline\", static: false, private: false, access: { has: obj => \"multiline\" in obj, get: obj => obj.multiline, set: (obj, value) => { obj.multiline = value; } }, metadata: _metadata }, _multiline_initializers, _multiline_extraInitializers);\n __esDecorate(null, null, _maxLines_decorators, { kind: \"field\", name: \"maxLines\", static: false, private: false, access: { has: obj => \"maxLines\" in obj, get: obj => obj.maxLines, set: (obj, value) => { obj.maxLines = value; } }, metadata: _metadata }, _maxLines_initializers, _maxLines_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const content = this.formatTextContent();\n const textStyles = this.getTextStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--text\" part=\"content\" style=\"${textStyles}\">\n ${content}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const content = this.formatTextContent();\n const styles = this.getTextStyles();\n this.contentElement.innerHTML = content;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatTextContent() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n let text = String(this.value);\n // Apply custom formatter if provided\n if (this.column.formatter) {\n text = this.column.formatter(this.value, this.rowData);\n }\n // Handle multiline text\n if (this.multiline) {\n text = text.replace(/\\n/g, '<br>');\n }\n // Handle ellipsis for single line\n if (!this.multiline && this.column.ellipsis) ;\n return text;\n }\n getTextStyles() {\n let styles = [];\n if (!this.multiline) {\n styles.push('white-space: nowrap');\n if (this.column.ellipsis) {\n styles.push('overflow: hidden');\n styles.push('text-overflow: ellipsis');\n }\n }\n else {\n if (this.column.wrap) {\n styles.push('white-space: pre-wrap');\n styles.push('word-wrap: break-word');\n }\n if (this.maxLines) {\n styles.push('display: -webkit-box');\n styles.push('-webkit-box-orient: vertical');\n styles.push(`-webkit-line-clamp: ${this.maxLines}`);\n styles.push('overflow: hidden');\n }\n }\n return styles.join('; ');\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'text'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'text',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.multiline = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _multiline_initializers, false));\n this.maxLines = (__runInitializers(this, _multiline_extraInitializers), __runInitializers(this, _maxLines_initializers, void 0));\n __runInitializers(this, _maxLines_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellText };\n//# sourceMappingURL=snice-cell-text.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellNumber = (() => {\n let _classDecorators = [element('snice-cell-number')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _decimals_decorators;\n let _decimals_initializers = [];\n let _decimals_extraInitializers = [];\n let _thousandsSeparator_decorators;\n let _thousandsSeparator_initializers = [];\n let _thousandsSeparator_extraInitializers = [];\n let _prefix_decorators;\n let _prefix_initializers = [];\n let _prefix_extraInitializers = [];\n let _suffix_decorators;\n let _suffix_initializers = [];\n let _suffix_extraInitializers = [];\n let _negativeStyle_decorators;\n let _negativeStyle_initializers = [];\n let _negativeStyle_extraInitializers = [];\n let _highlight_decorators;\n let _highlight_initializers = [];\n let _highlight_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _decimals_decorators = [property({ type: Number, })];\n _thousandsSeparator_decorators = [property({ type: Boolean, attribute: 'thousands-separator' })];\n _prefix_decorators = [property({})];\n _suffix_decorators = [property({})];\n _negativeStyle_decorators = [property({ attribute: 'negative-style' })];\n _highlight_decorators = [property({ type: Boolean, })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _decimals_decorators, { kind: \"field\", name: \"decimals\", static: false, private: false, access: { has: obj => \"decimals\" in obj, get: obj => obj.decimals, set: (obj, value) => { obj.decimals = value; } }, metadata: _metadata }, _decimals_initializers, _decimals_extraInitializers);\n __esDecorate(null, null, _thousandsSeparator_decorators, { kind: \"field\", name: \"thousandsSeparator\", static: false, private: false, access: { has: obj => \"thousandsSeparator\" in obj, get: obj => obj.thousandsSeparator, set: (obj, value) => { obj.thousandsSeparator = value; } }, metadata: _metadata }, _thousandsSeparator_initializers, _thousandsSeparator_extraInitializers);\n __esDecorate(null, null, _prefix_decorators, { kind: \"field\", name: \"prefix\", static: false, private: false, access: { has: obj => \"prefix\" in obj, get: obj => obj.prefix, set: (obj, value) => { obj.prefix = value; } }, metadata: _metadata }, _prefix_initializers, _prefix_extraInitializers);\n __esDecorate(null, null, _suffix_decorators, { kind: \"field\", name: \"suffix\", static: false, private: false, access: { has: obj => \"suffix\" in obj, get: obj => obj.suffix, set: (obj, value) => { obj.suffix = value; } }, metadata: _metadata }, _suffix_initializers, _suffix_extraInitializers);\n __esDecorate(null, null, _negativeStyle_decorators, { kind: \"field\", name: \"negativeStyle\", static: false, private: false, access: { has: obj => \"negativeStyle\" in obj, get: obj => obj.negativeStyle, set: (obj, value) => { obj.negativeStyle = value; } }, metadata: _metadata }, _negativeStyle_initializers, _negativeStyle_extraInitializers);\n __esDecorate(null, null, _highlight_decorators, { kind: \"field\", name: \"highlight\", static: false, private: false, access: { has: obj => \"highlight\" in obj, get: obj => obj.highlight, set: (obj, value) => { obj.highlight = value; } }, metadata: _metadata }, _highlight_initializers, _highlight_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const formattedValue = this.formatNumberValue();\n const styles = this.getNumberStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--number\" part=\"content\" style=\"${styles}\">\n ${formattedValue}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const formattedValue = this.formatNumberValue();\n const styles = this.getNumberStyles();\n this.contentElement.innerHTML = formattedValue;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatNumberValue() {\n if (this.value === null || this.value === undefined || this.value === '') {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Use column number format or component properties\n const format = this.column.numberFormat || {\n decimals: this.decimals,\n thousandsSeparator: this.thousandsSeparator,\n prefix: this.prefix,\n suffix: this.suffix,\n negativeStyle: this.negativeStyle\n };\n const num = Number(this.value);\n if (isNaN(num)) {\n return String(this.value);\n }\n let formatted = num.toFixed(format.decimals ?? this.decimals);\n // Add thousands separator\n if (format.thousandsSeparator ?? this.thousandsSeparator) {\n const parts = formatted.split('.');\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n formatted = parts.join('.');\n }\n // Handle negative numbers\n if (num < 0) {\n const negStyle = format.negativeStyle ?? this.negativeStyle;\n if (negStyle === 'parentheses') {\n formatted = `(${formatted.replace('-', '')})`;\n }\n else if (negStyle === 'red') {\n // Color will be handled in styles\n formatted = formatted.replace('-', '');\n }\n }\n // Add prefix and suffix\n const prefix = format.prefix ?? this.prefix;\n const suffix = format.suffix ?? this.suffix;\n if (prefix)\n formatted = prefix + formatted;\n if (suffix)\n formatted = formatted + suffix;\n return formatted;\n }\n getNumberStyles() {\n const num = Number(this.value);\n // Remove existing number classes\n this.classList.remove('number--negative', 'number--positive', 'number--zero', 'number--highlighted');\n // Apply CSS classes instead of direct styles\n if (num < 0) {\n this.classList.add('number--negative');\n const negStyle = this.column.numberFormat?.negativeStyle ?? this.negativeStyle;\n if (negStyle === 'red') {\n this.classList.add('number--negative-red');\n }\n }\n else if (num > 0) {\n this.classList.add('number--positive');\n if (this.highlight) {\n this.classList.add('number--highlighted');\n }\n }\n else if (num === 0) {\n this.classList.add('number--zero');\n }\n return 'text-align: right'; // Keep text alignment as style for now\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'number'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'number',\n align: 'right'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.decimals = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _decimals_initializers, 0));\n this.thousandsSeparator = (__runInitializers(this, _decimals_extraInitializers), __runInitializers(this, _thousandsSeparator_initializers, false));\n this.prefix = (__runInitializers(this, _thousandsSeparator_extraInitializers), __runInitializers(this, _prefix_initializers, ''));\n this.suffix = (__runInitializers(this, _prefix_extraInitializers), __runInitializers(this, _suffix_initializers, ''));\n this.negativeStyle = (__runInitializers(this, _suffix_extraInitializers), __runInitializers(this, _negativeStyle_initializers, 'minus'));\n this.highlight = (__runInitializers(this, _negativeStyle_extraInitializers), __runInitializers(this, _highlight_initializers, false));\n __runInitializers(this, _highlight_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellNumber };\n//# sourceMappingURL=snice-cell-number.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellDate = (() => {\n let _classDecorators = [element('snice-cell-date')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _dateFormat_decorators;\n let _dateFormat_initializers = [];\n let _dateFormat_extraInitializers = [];\n let _customFormat_decorators;\n let _customFormat_initializers = [];\n let _customFormat_extraInitializers = [];\n let _locale_decorators;\n let _locale_initializers = [];\n let _locale_extraInitializers = [];\n let _relativeTime_decorators;\n let _relativeTime_initializers = [];\n let _relativeTime_extraInitializers = [];\n let _showTime_decorators;\n let _showTime_initializers = [];\n let _showTime_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _dateFormat_decorators = [property({ attribute: 'date-format' })];\n _customFormat_decorators = [property({ attribute: 'custom-format' })];\n _locale_decorators = [property({})];\n _relativeTime_decorators = [property({ type: Boolean, attribute: 'relative-time' })];\n _showTime_decorators = [property({ type: Boolean, attribute: 'show-time' })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _dateFormat_decorators, { kind: \"field\", name: \"dateFormat\", static: false, private: false, access: { has: obj => \"dateFormat\" in obj, get: obj => obj.dateFormat, set: (obj, value) => { obj.dateFormat = value; } }, metadata: _metadata }, _dateFormat_initializers, _dateFormat_extraInitializers);\n __esDecorate(null, null, _customFormat_decorators, { kind: \"field\", name: \"customFormat\", static: false, private: false, access: { has: obj => \"customFormat\" in obj, get: obj => obj.customFormat, set: (obj, value) => { obj.customFormat = value; } }, metadata: _metadata }, _customFormat_initializers, _customFormat_extraInitializers);\n __esDecorate(null, null, _locale_decorators, { kind: \"field\", name: \"locale\", static: false, private: false, access: { has: obj => \"locale\" in obj, get: obj => obj.locale, set: (obj, value) => { obj.locale = value; } }, metadata: _metadata }, _locale_initializers, _locale_extraInitializers);\n __esDecorate(null, null, _relativeTime_decorators, { kind: \"field\", name: \"relativeTime\", static: false, private: false, access: { has: obj => \"relativeTime\" in obj, get: obj => obj.relativeTime, set: (obj, value) => { obj.relativeTime = value; } }, metadata: _metadata }, _relativeTime_initializers, _relativeTime_extraInitializers);\n __esDecorate(null, null, _showTime_decorators, { kind: \"field\", name: \"showTime\", static: false, private: false, access: { has: obj => \"showTime\" in obj, get: obj => obj.showTime, set: (obj, value) => { obj.showTime = value; } }, metadata: _metadata }, _showTime_initializers, _showTime_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const formattedValue = this.formatDateValue();\n const dateStyles = this.getDateStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--date\" part=\"content\" style=\"${dateStyles}\">\n ${formattedValue}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const formattedValue = this.formatDateValue();\n const styles = this.getDateStyles();\n this.contentElement.innerHTML = formattedValue;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatDateValue() {\n if (this.value === null || this.value === undefined || this.value === '') {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n const date = new Date(this.value);\n if (isNaN(date.getTime())) {\n return String(this.value);\n }\n // Show relative time if enabled\n if (this.relativeTime) {\n return this.formatRelativeTime(date);\n }\n // Use column date format or component properties\n const format = this.column.dateFormat || {\n format: this.dateFormat,\n customFormat: this.customFormat,\n locale: this.locale\n };\n // Handle custom format\n if (format.customFormat || this.customFormat) {\n return this.formatCustomDate(date, format.customFormat || this.customFormat);\n }\n // Use Intl.DateTimeFormat\n const options = {};\n const formatType = format.format ?? this.dateFormat;\n switch (formatType) {\n case 'short':\n options.dateStyle = 'short';\n break;\n case 'medium':\n options.dateStyle = 'medium';\n break;\n case 'long':\n options.dateStyle = 'long';\n break;\n case 'full':\n options.dateStyle = 'full';\n break;\n }\n // Add time if requested\n if (this.showTime) {\n options.timeStyle = 'short';\n }\n const locale = format.locale ?? this.locale;\n return new Intl.DateTimeFormat(locale, options).format(date);\n }\n formatCustomDate(date, format) {\n const tokens = {\n 'YYYY': date.getFullYear().toString(),\n 'YY': date.getFullYear().toString().slice(-2),\n 'MM': (date.getMonth() + 1).toString().padStart(2, '0'),\n 'M': (date.getMonth() + 1).toString(),\n 'DD': date.getDate().toString().padStart(2, '0'),\n 'D': date.getDate().toString(),\n 'HH': date.getHours().toString().padStart(2, '0'),\n 'H': date.getHours().toString(),\n 'mm': date.getMinutes().toString().padStart(2, '0'),\n 'm': date.getMinutes().toString(),\n 'ss': date.getSeconds().toString().padStart(2, '0'),\n 's': date.getSeconds().toString()\n };\n let formatted = format;\n for (const [token, value] of Object.entries(tokens)) {\n formatted = formatted.replace(new RegExp(token, 'g'), value);\n }\n return formatted;\n }\n formatRelativeTime(date) {\n const now = new Date();\n const diffMs = now.getTime() - date.getTime();\n const diffSecs = Math.floor(diffMs / 1000);\n const diffMins = Math.floor(diffSecs / 60);\n const diffHours = Math.floor(diffMins / 60);\n const diffDays = Math.floor(diffHours / 24);\n if (diffSecs < 60) {\n return 'Just now';\n }\n else if (diffMins < 60) {\n return `${diffMins} minute${diffMins === 1 ? '' : 's'} ago`;\n }\n else if (diffHours < 24) {\n return `${diffHours} hour${diffHours === 1 ? '' : 's'} ago`;\n }\n else if (diffDays < 7) {\n return `${diffDays} day${diffDays === 1 ? '' : 's'} ago`;\n }\n else {\n // Fall back to formatted date for older dates\n return new Intl.DateTimeFormat(this.locale, { dateStyle: 'short' }).format(date);\n }\n }\n getDateStyles() {\n const date = new Date(this.value);\n const now = new Date();\n const isToday = date.toDateString() === now.toDateString();\n const isPast = date < now;\n const isFuture = date > now;\n // Apply CSS classes instead of direct styles\n this.classList.remove('date--today', 'date--past', 'date--future');\n if (isToday) {\n this.classList.add('date--today');\n }\n else if (isPast) {\n this.classList.add('date--past');\n }\n else if (isFuture) {\n this.classList.add('date--future');\n }\n return '';\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'date'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'date',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.dateFormat = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _dateFormat_initializers, 'short'));\n this.customFormat = (__runInitializers(this, _dateFormat_extraInitializers), __runInitializers(this, _customFormat_initializers, void 0));\n this.locale = (__runInitializers(this, _customFormat_extraInitializers), __runInitializers(this, _locale_initializers, 'en-US'));\n this.relativeTime = (__runInitializers(this, _locale_extraInitializers), __runInitializers(this, _relativeTime_initializers, false));\n this.showTime = (__runInitializers(this, _relativeTime_extraInitializers), __runInitializers(this, _showTime_initializers, false));\n __runInitializers(this, _showTime_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellDate };\n//# sourceMappingURL=snice-cell-date.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellBoolean = (() => {\n let _classDecorators = [element('snice-cell-boolean')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _trueValue_decorators;\n let _trueValue_initializers = [];\n let _trueValue_extraInitializers = [];\n let _falseValue_decorators;\n let _falseValue_initializers = [];\n let _falseValue_extraInitializers = [];\n let _useSymbols_decorators;\n let _useSymbols_initializers = [];\n let _useSymbols_extraInitializers = [];\n let _trueSymbol_decorators;\n let _trueSymbol_initializers = [];\n let _trueSymbol_extraInitializers = [];\n let _falseSymbol_decorators;\n let _falseSymbol_initializers = [];\n let _falseSymbol_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _trueValue_decorators = [property({ attribute: 'true-value' })];\n _falseValue_decorators = [property({ attribute: 'false-value' })];\n _useSymbols_decorators = [property({ type: Boolean, attribute: 'use-symbols' })];\n _trueSymbol_decorators = [property({ attribute: 'true-symbol' })];\n _falseSymbol_decorators = [property({ attribute: 'false-symbol' })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _trueValue_decorators, { kind: \"field\", name: \"trueValue\", static: false, private: false, access: { has: obj => \"trueValue\" in obj, get: obj => obj.trueValue, set: (obj, value) => { obj.trueValue = value; } }, metadata: _metadata }, _trueValue_initializers, _trueValue_extraInitializers);\n __esDecorate(null, null, _falseValue_decorators, { kind: \"field\", name: \"falseValue\", static: false, private: false, access: { has: obj => \"falseValue\" in obj, get: obj => obj.falseValue, set: (obj, value) => { obj.falseValue = value; } }, metadata: _metadata }, _falseValue_initializers, _falseValue_extraInitializers);\n __esDecorate(null, null, _useSymbols_decorators, { kind: \"field\", name: \"useSymbols\", static: false, private: false, access: { has: obj => \"useSymbols\" in obj, get: obj => obj.useSymbols, set: (obj, value) => { obj.useSymbols = value; } }, metadata: _metadata }, _useSymbols_initializers, _useSymbols_extraInitializers);\n __esDecorate(null, null, _trueSymbol_decorators, { kind: \"field\", name: \"trueSymbol\", static: false, private: false, access: { has: obj => \"trueSymbol\" in obj, get: obj => obj.trueSymbol, set: (obj, value) => { obj.trueSymbol = value; } }, metadata: _metadata }, _trueSymbol_initializers, _trueSymbol_extraInitializers);\n __esDecorate(null, null, _falseSymbol_decorators, { kind: \"field\", name: \"falseSymbol\", static: false, private: false, access: { has: obj => \"falseSymbol\" in obj, get: obj => obj.falseSymbol, set: (obj, value) => { obj.falseSymbol = value; } }, metadata: _metadata }, _falseSymbol_initializers, _falseSymbol_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const content = this.formatBooleanContent();\n return html /*html*/ `\n <div class=\"cell-content cell-content--boolean\" part=\"content\">\n ${unsafeHTML(content)}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const content = this.formatBooleanContent();\n this.contentElement.innerHTML = content;\n }\n }\n formatBooleanContent() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Use column boolean format or component properties\n const format = this.column.booleanFormat || {\n trueValue: this.trueValue,\n falseValue: this.falseValue,\n useSymbols: this.useSymbols,\n trueSymbol: this.trueSymbol,\n falseSymbol: this.falseSymbol\n };\n const isTrue = Boolean(this.value);\n if (format.useSymbols ?? this.useSymbols) {\n const symbol = isTrue ? (format.trueSymbol ?? this.trueSymbol) : (format.falseSymbol ?? this.falseSymbol);\n const colorClass = isTrue ? 'boolean--true' : 'boolean--false';\n return `<span class=\"${colorClass}\">${symbol}</span>`;\n }\n else {\n const text = isTrue ? (format.trueValue ?? this.trueValue) : (format.falseValue ?? this.falseValue);\n const colorClass = isTrue ? 'boolean--true' : 'boolean--false';\n return `<span class=\"${colorClass}\">${text}</span>`;\n }\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'center'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'boolean'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, false));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'boolean',\n align: 'center'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.trueValue = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _trueValue_initializers, 'true'));\n this.falseValue = (__runInitializers(this, _trueValue_extraInitializers), __runInitializers(this, _falseValue_initializers, 'false'));\n this.useSymbols = (__runInitializers(this, _falseValue_extraInitializers), __runInitializers(this, _useSymbols_initializers, true));\n this.trueSymbol = (__runInitializers(this, _useSymbols_extraInitializers), __runInitializers(this, _trueSymbol_initializers, '✓'));\n this.falseSymbol = (__runInitializers(this, _trueSymbol_extraInitializers), __runInitializers(this, _falseSymbol_initializers, '✗'));\n __runInitializers(this, _falseSymbol_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellBoolean };\n//# sourceMappingURL=snice-cell-boolean.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, html, css } from 'snice';\n\nlet SniceRating = (() => {\n let _classDecorators = [element('snice-rating')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _max_decorators;\n let _max_initializers = [];\n let _max_extraInitializers = [];\n let _symbol_decorators;\n let _symbol_initializers = [];\n let _symbol_extraInitializers = [];\n let _emptySymbol_decorators;\n let _emptySymbol_initializers = [];\n let _emptySymbol_extraInitializers = [];\n let _color_decorators;\n let _color_initializers = [];\n let _color_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: Number })];\n _max_decorators = [property({ type: Number })];\n _symbol_decorators = [property()];\n _emptySymbol_decorators = [property()];\n _color_decorators = [property()];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _max_decorators, { kind: \"field\", name: \"max\", static: false, private: false, access: { has: obj => \"max\" in obj, get: obj => obj.max, set: (obj, value) => { obj.max = value; } }, metadata: _metadata }, _max_initializers, _max_extraInitializers);\n __esDecorate(null, null, _symbol_decorators, { kind: \"field\", name: \"symbol\", static: false, private: false, access: { has: obj => \"symbol\" in obj, get: obj => obj.symbol, set: (obj, value) => { obj.symbol = value; } }, metadata: _metadata }, _symbol_initializers, _symbol_extraInitializers);\n __esDecorate(null, null, _emptySymbol_decorators, { kind: \"field\", name: \"emptySymbol\", static: false, private: false, access: { has: obj => \"emptySymbol\" in obj, get: obj => obj.emptySymbol, set: (obj, value) => { obj.emptySymbol = value; } }, metadata: _metadata }, _emptySymbol_initializers, _emptySymbol_extraInitializers);\n __esDecorate(null, null, _color_decorators, { kind: \"field\", name: \"color\", static: false, private: false, access: { has: obj => \"color\" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const filled = Math.round(this.value);\n const empty = this.max - filled;\n return html /*html*/ `\n <span class=\"filled\">${this.symbol.repeat(filled)}</span><span class=\"empty\">${this.emptySymbol.repeat(empty)}</span>\n `;\n }\n styles() {\n return css /*css*/ `\n :host {\n display: inline-block;\n font-size: 1.2em;\n }\n\n .filled {\n color: ${this.color};\n }\n\n .empty {\n color: #d1d5db;\n }\n `;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, 0));\n this.max = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _max_initializers, 5));\n this.symbol = (__runInitializers(this, _max_extraInitializers), __runInitializers(this, _symbol_initializers, '★'));\n this.emptySymbol = (__runInitializers(this, _symbol_extraInitializers), __runInitializers(this, _emptySymbol_initializers, '☆'));\n this.color = (__runInitializers(this, _emptySymbol_extraInitializers), __runInitializers(this, _color_initializers, '#facc15'));\n __runInitializers(this, _color_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceRating };\n//# sourceMappingURL=snice-rating.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\nimport './snice-rating.js';\n\nlet SniceCellRating = (() => {\n let _classDecorators = [element('snice-cell-rating')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `\n <div class=\"cell-content cell-content--rating\" part=\"content\">\n <!-- Rating component will be created here -->\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n this.createRatingElement();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n this.createRatingElement();\n }\n createRatingElement() {\n if (!this.contentElement)\n return;\n // Clear existing content\n this.contentElement.innerHTML = '';\n // Create rating element\n const rating = document.createElement('snice-rating');\n rating.value = Number(this.value) || 0;\n // Apply format from column\n const format = this.column.ratingFormat || {};\n rating.max = format.max ?? 5;\n rating.symbol = format.symbol ?? '★';\n rating.emptySymbol = format.emptySymbol ?? '☆';\n rating.color = format.color ?? getComputedStyle(this).getPropertyValue('--snice-color-warning').trim();\n this.contentElement.appendChild(rating);\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'center'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'rating'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, 0));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'rating',\n align: 'center'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellRating };\n//# sourceMappingURL=snice-cell-rating.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, html, css } from 'snice';\n\nlet SniceProgress = (() => {\n let _classDecorators = [element('snice-progress')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _max_decorators;\n let _max_initializers = [];\n let _max_extraInitializers = [];\n let _color_decorators;\n let _color_initializers = [];\n let _color_extraInitializers = [];\n let _backgroundColor_decorators;\n let _backgroundColor_initializers = [];\n let _backgroundColor_extraInitializers = [];\n let _height_decorators;\n let _height_initializers = [];\n let _height_extraInitializers = [];\n let _showPercentage_decorators;\n let _showPercentage_initializers = [];\n let _showPercentage_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: Number })];\n _max_decorators = [property({ type: Number })];\n _color_decorators = [property()];\n _backgroundColor_decorators = [property()];\n _height_decorators = [property()];\n _showPercentage_decorators = [property({ type: Boolean })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _max_decorators, { kind: \"field\", name: \"max\", static: false, private: false, access: { has: obj => \"max\" in obj, get: obj => obj.max, set: (obj, value) => { obj.max = value; } }, metadata: _metadata }, _max_initializers, _max_extraInitializers);\n __esDecorate(null, null, _color_decorators, { kind: \"field\", name: \"color\", static: false, private: false, access: { has: obj => \"color\" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);\n __esDecorate(null, null, _backgroundColor_decorators, { kind: \"field\", name: \"backgroundColor\", static: false, private: false, access: { has: obj => \"backgroundColor\" in obj, get: obj => obj.backgroundColor, set: (obj, value) => { obj.backgroundColor = value; } }, metadata: _metadata }, _backgroundColor_initializers, _backgroundColor_extraInitializers);\n __esDecorate(null, null, _height_decorators, { kind: \"field\", name: \"height\", static: false, private: false, access: { has: obj => \"height\" in obj, get: obj => obj.height, set: (obj, value) => { obj.height = value; } }, metadata: _metadata }, _height_initializers, _height_extraInitializers);\n __esDecorate(null, null, _showPercentage_decorators, { kind: \"field\", name: \"showPercentage\", static: false, private: false, access: { has: obj => \"showPercentage\" in obj, get: obj => obj.showPercentage, set: (obj, value) => { obj.showPercentage = value; } }, metadata: _metadata }, _showPercentage_initializers, _showPercentage_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const percentage = Math.min(100, (this.value / this.max) * 100);\n return html /*html*/ `\n <div class=\"progress-container\">\n <div class=\"progress-bar\" style=\"width: ${percentage}%\"></div>\n </div>\n <if ${this.showPercentage}>\n <span class=\"percentage\">${percentage.toFixed(0)}%</span>\n </if>\n `;\n }\n styles() {\n return css /*css*/ `\n :host {\n display: inline-flex;\n align-items: center;\n width: 100%;\n gap: 0.5rem; /* 8px */\n }\n\n .progress-container {\n flex: 1;\n height: ${this.height};\n background: ${this.backgroundColor};\n border-radius: 0.25rem; /* 4px */\n overflow: hidden;\n }\n\n .progress-bar {\n height: 100%;\n background: ${this.color};\n transition: width 0.3s ease;\n }\n\n .percentage {\n font-size: 0.875rem; /* 14px */\n color: #6b7280;\n min-width: 2.1875rem; /* 35px */\n }\n `;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, 0));\n this.max = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _max_initializers, 100));\n this.color = (__runInitializers(this, _max_extraInitializers), __runInitializers(this, _color_initializers, '#3b82f6'));\n this.backgroundColor = (__runInitializers(this, _color_extraInitializers), __runInitializers(this, _backgroundColor_initializers, '#e5e7eb'));\n this.height = (__runInitializers(this, _backgroundColor_extraInitializers), __runInitializers(this, _height_initializers, '0.5rem')); /* 8px */\n this.showPercentage = (__runInitializers(this, _height_extraInitializers), __runInitializers(this, _showPercentage_initializers, false));\n __runInitializers(this, _showPercentage_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceProgress };\n//# sourceMappingURL=snice-progress.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\nimport './snice-progress.js';\n\nlet SniceCellProgress = (() => {\n let _classDecorators = [element('snice-cell-progress')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `\n <div class=\"cell-content cell-content--progress\" part=\"content\">\n <!-- Progress component will be created here -->\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n this.createProgressElement();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n this.createProgressElement();\n }\n createProgressElement() {\n if (!this.contentElement)\n return;\n // Clear existing content\n this.contentElement.innerHTML = '';\n // Create progress element\n const progress = document.createElement('snice-progress');\n progress.value = Number(this.value) || 0;\n // Apply format from column\n const format = this.column.progressFormat || {};\n progress.max = format.max ?? 100;\n progress.color = format.color ?? getComputedStyle(this).getPropertyValue('--snice-color-primary').trim();\n progress.backgroundColor = format.backgroundColor ?? getComputedStyle(this).getPropertyValue('--snice-color-border').trim();\n progress.height = format.height ?? '0.5rem';\n progress.showPercentage = format.showPercentage ?? false;\n this.contentElement.appendChild(progress);\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'progress'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, 0));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'progress',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellProgress };\n//# sourceMappingURL=snice-cell-progress.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellDuration = (() => {\n let _classDecorators = [element('snice-cell-duration')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const content = this.formatDuration();\n return html /*html*/ `\n <div class=\"cell-content cell-content--duration\" part=\"content\">\n ${content}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const content = this.formatDuration();\n this.contentElement.innerHTML = content;\n }\n }\n formatDuration() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n const seconds = Number(this.value);\n if (isNaN(seconds))\n return String(this.value);\n const hours = Math.floor(seconds / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const secs = Math.floor(seconds % 60);\n if (hours > 0) {\n return `${hours}h ${minutes}m ${secs}s`;\n }\n else if (minutes > 0) {\n return `${minutes}m ${secs}s`;\n }\n else {\n return `${secs}s`;\n }\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'duration'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, 0));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'duration',\n align: 'right'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellDuration };\n//# sourceMappingURL=snice-cell-duration.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellFilesize = (() => {\n let _classDecorators = [element('snice-cell-filesize')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const content = this.formatFileSize();\n return html /*html*/ `\n <div class=\"cell-content cell-content--filesize\" part=\"content\">\n ${content}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const content = this.formatFileSize();\n this.contentElement.innerHTML = content;\n }\n }\n formatFileSize() {\n if (this.value === null || this.value === undefined) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n const bytes = Number(this.value);\n if (isNaN(bytes))\n return String(this.value);\n const units = ['B', 'KB', 'MB', 'GB', 'TB'];\n let size = bytes;\n let unitIndex = 0;\n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex++;\n }\n return `${size.toFixed(1)} ${units[unitIndex]}`;\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'filesize'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, 0));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'filesize',\n align: 'right'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n __runInitializers(this, _contentElement_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellFilesize };\n//# sourceMappingURL=snice-cell-filesize.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, SimpleArray, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellSparkline = (() => {\n let _classDecorators = [element('snice-cell-sparkline')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _chartType_decorators;\n let _chartType_initializers = [];\n let _chartType_extraInitializers = [];\n let _color_decorators;\n let _color_initializers = [];\n let _color_extraInitializers = [];\n let _width_decorators;\n let _width_initializers = [];\n let _width_extraInitializers = [];\n let _height_decorators;\n let _height_initializers = [];\n let _height_extraInitializers = [];\n let _showDots_decorators;\n let _showDots_initializers = [];\n let _showDots_extraInitializers = [];\n let _showBaseline_decorators;\n let _showBaseline_initializers = [];\n let _showBaseline_extraInitializers = [];\n let _strokeWidth_decorators;\n let _strokeWidth_initializers = [];\n let _strokeWidth_extraInitializers = [];\n let _minValue_decorators;\n let _minValue_initializers = [];\n let _minValue_extraInitializers = [];\n let _maxValue_decorators;\n let _maxValue_initializers = [];\n let _maxValue_extraInitializers = [];\n let _data_decorators;\n let _data_initializers = [];\n let _data_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n let _updateSparkline_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({})];\n _type_decorators = [property({})];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _chartType_decorators = [property({ attribute: 'chart-type' })];\n _color_decorators = [property({})];\n _width_decorators = [property({ type: Number, })];\n _height_decorators = [property({ type: Number, })];\n _showDots_decorators = [property({ type: Boolean, attribute: 'show-dots' })];\n _showBaseline_decorators = [property({ type: Boolean, attribute: 'show-baseline' })];\n _strokeWidth_decorators = [property({ type: Number, attribute: 'stroke-width' })];\n _minValue_decorators = [property({ type: Number, attribute: 'min-value' })];\n _maxValue_decorators = [property({ type: Number, attribute: 'max-value' })];\n _data_decorators = [property({ type: SimpleArray, })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'data', 'column')];\n _updateSparkline_decorators = [watch('value', 'data', 'chartType', 'color', 'width', 'height', 'showDots', 'showBaseline', 'strokeWidth', 'minValue', 'maxValue')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateSparkline_decorators, { kind: \"method\", name: \"updateSparkline\", static: false, private: false, access: { has: obj => \"updateSparkline\" in obj, get: obj => obj.updateSparkline }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _chartType_decorators, { kind: \"field\", name: \"chartType\", static: false, private: false, access: { has: obj => \"chartType\" in obj, get: obj => obj.chartType, set: (obj, value) => { obj.chartType = value; } }, metadata: _metadata }, _chartType_initializers, _chartType_extraInitializers);\n __esDecorate(null, null, _color_decorators, { kind: \"field\", name: \"color\", static: false, private: false, access: { has: obj => \"color\" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);\n __esDecorate(null, null, _width_decorators, { kind: \"field\", name: \"width\", static: false, private: false, access: { has: obj => \"width\" in obj, get: obj => obj.width, set: (obj, value) => { obj.width = value; } }, metadata: _metadata }, _width_initializers, _width_extraInitializers);\n __esDecorate(null, null, _height_decorators, { kind: \"field\", name: \"height\", static: false, private: false, access: { has: obj => \"height\" in obj, get: obj => obj.height, set: (obj, value) => { obj.height = value; } }, metadata: _metadata }, _height_initializers, _height_extraInitializers);\n __esDecorate(null, null, _showDots_decorators, { kind: \"field\", name: \"showDots\", static: false, private: false, access: { has: obj => \"showDots\" in obj, get: obj => obj.showDots, set: (obj, value) => { obj.showDots = value; } }, metadata: _metadata }, _showDots_initializers, _showDots_extraInitializers);\n __esDecorate(null, null, _showBaseline_decorators, { kind: \"field\", name: \"showBaseline\", static: false, private: false, access: { has: obj => \"showBaseline\" in obj, get: obj => obj.showBaseline, set: (obj, value) => { obj.showBaseline = value; } }, metadata: _metadata }, _showBaseline_initializers, _showBaseline_extraInitializers);\n __esDecorate(null, null, _strokeWidth_decorators, { kind: \"field\", name: \"strokeWidth\", static: false, private: false, access: { has: obj => \"strokeWidth\" in obj, get: obj => obj.strokeWidth, set: (obj, value) => { obj.strokeWidth = value; } }, metadata: _metadata }, _strokeWidth_initializers, _strokeWidth_extraInitializers);\n __esDecorate(null, null, _minValue_decorators, { kind: \"field\", name: \"minValue\", static: false, private: false, access: { has: obj => \"minValue\" in obj, get: obj => obj.minValue, set: (obj, value) => { obj.minValue = value; } }, metadata: _metadata }, _minValue_initializers, _minValue_extraInitializers);\n __esDecorate(null, null, _maxValue_decorators, { kind: \"field\", name: \"maxValue\", static: false, private: false, access: { has: obj => \"maxValue\" in obj, get: obj => obj.maxValue, set: (obj, value) => { obj.maxValue = value; } }, metadata: _metadata }, _maxValue_initializers, _maxValue_extraInitializers);\n __esDecorate(null, null, _data_decorators, { kind: \"field\", name: \"data\", static: false, private: false, access: { has: obj => \"data\" in obj, get: obj => obj.data, set: (obj, value) => { obj.data = value; } }, metadata: _metadata }, _data_initializers, _data_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `\n <div class=\"cell-content cell-content--sparkline\" part=\"content\">\n ${unsafeHTML(this.renderSparkline())}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n this.updateSparkline();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n this.contentElement.innerHTML = this.renderSparkline();\n }\n }\n updateSparkline() {\n if (this.contentElement) {\n this.contentElement.innerHTML = this.renderSparkline();\n }\n }\n renderSparkline() {\n if ((this.value === null || this.value === undefined) && (!this.data || this.data.length === 0)) {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n const data = this.parseData();\n if (data.length === 0) {\n return `<span style=\"color: ${getComputedStyle(this).getPropertyValue('--snice-color-text-secondary').trim()}; font-style: italic;\">No data</span>`;\n }\n // Use column sparkline format or component properties\n const format = this.column.sparklineFormat || {\n type: this.chartType,\n color: this.color,\n width: this.width,\n height: this.height\n };\n const width = format.width ?? this.width;\n const height = format.height ?? this.height;\n const color = format.color ?? this.color;\n const type = format.type ?? this.chartType;\n return this.createCanvas(data, width, height, color, type);\n }\n parseData() {\n // First, try the dedicated data property (using SimpleArray)\n if (this.data && Array.isArray(this.data) && this.data.length > 0) {\n return this.data.map(v => Number(v)).filter(n => !isNaN(n));\n }\n // Fallback to value property for backwards compatibility\n if (Array.isArray(this.value)) {\n return this.value.map(v => Number(v)).filter(n => !isNaN(n));\n }\n if (typeof this.value === 'string') {\n // Try to parse as JSON array first (e.g., \"[1,2,3]\")\n if (this.value.startsWith('[') && this.value.endsWith(']')) {\n try {\n const parsed = JSON.parse(this.value);\n if (Array.isArray(parsed)) {\n return parsed.map(v => Number(v)).filter(n => !isNaN(n));\n }\n }\n catch {\n // Fall through to comma-separated parsing\n }\n }\n // Try to parse comma-separated values\n try {\n return this.value.split(',').map(v => Number(v.trim())).filter(n => !isNaN(n));\n }\n catch {\n return [];\n }\n }\n return [];\n }\n createCanvas(data, width, height, color, type) {\n if (data.length === 0)\n return '';\n // Create a canvas element\n const canvas = document.createElement('canvas');\n canvas.width = width;\n canvas.height = height;\n const ctx = canvas.getContext('2d');\n if (!ctx)\n return '<div style=\"color: red;\">Canvas not supported</div>';\n const padding = 2;\n const chartWidth = width - (padding * 2);\n const chartHeight = height - (padding * 2);\n const min = this.minValue ?? Math.min(...data);\n const max = this.maxValue ?? Math.max(...data);\n const range = max - min || 1;\n // Clear canvas\n ctx.clearRect(0, 0, width, height);\n // Resolve CSS variables for canvas (canvas doesn't understand CSS vars)\n let resolvedColor = color;\n if (color.startsWith('var(')) {\n const match = color.match(/var\\(([^)]+)\\)/);\n if (match) {\n resolvedColor = getComputedStyle(this).getPropertyValue(match[1].split(',')[0].trim()).trim() || '#3b82f6';\n }\n }\n // Set color and line properties\n ctx.strokeStyle = resolvedColor;\n ctx.fillStyle = resolvedColor;\n ctx.lineWidth = this.strokeWidth;\n ctx.lineCap = 'round';\n ctx.lineJoin = 'round';\n if (type === 'line' || type === 'area') {\n const points = data.map((val, i) => {\n const x = padding + (i / (data.length - 1)) * chartWidth;\n const y = padding + chartHeight - ((val - min) / range) * chartHeight;\n return [x, y];\n });\n // Draw area fill if needed\n if (type === 'area') {\n ctx.beginPath();\n ctx.moveTo(points[0][0], points[0][1]);\n points.forEach(([x, y]) => ctx.lineTo(x, y));\n ctx.lineTo(points[points.length - 1][0], height - padding);\n ctx.lineTo(points[0][0], height - padding);\n ctx.closePath();\n ctx.globalAlpha = 0.3;\n ctx.fill();\n ctx.globalAlpha = 1;\n }\n // Draw line\n ctx.beginPath();\n ctx.moveTo(points[0][0], points[0][1]);\n points.forEach(([x, y]) => ctx.lineTo(x, y));\n ctx.stroke();\n // Draw dots if enabled\n if (this.showDots) {\n points.forEach(([x, y]) => {\n ctx.beginPath();\n ctx.arc(x, y, 1.5, 0, 2 * Math.PI);\n ctx.fill();\n });\n }\n }\n else if (type === 'bar') {\n const barWidth = (chartWidth / data.length) * 0.8;\n const barSpacing = (chartWidth / data.length) * 0.2;\n data.forEach((val, i) => {\n const barHeight = ((val - min) / range) * chartHeight;\n const x = padding + i * (barWidth + barSpacing);\n const y = padding + chartHeight - barHeight;\n ctx.fillRect(x, y, barWidth, barHeight);\n });\n }\n // Convert canvas to data URL\n try {\n const dataUrl = canvas.toDataURL('image/png');\n return `<img src=\"${dataUrl}\" width=\"${width}\" height=\"${height}\" alt=\"Sparkline chart\" style=\"display: block; vertical-align: middle;\">`;\n }\n catch (error) {\n console.error('Error creating canvas image:', error);\n return `<div style=\"color: red;\">Canvas error</div>`;\n }\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'sparkline'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'sparkline',\n align: 'left'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.chartType = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _chartType_initializers, 'line'));\n this.color = (__runInitializers(this, _chartType_extraInitializers), __runInitializers(this, _color_initializers, 'var(--snice-color-primary)'));\n this.width = (__runInitializers(this, _color_extraInitializers), __runInitializers(this, _width_initializers, 80));\n this.height = (__runInitializers(this, _width_extraInitializers), __runInitializers(this, _height_initializers, 24));\n this.showDots = (__runInitializers(this, _height_extraInitializers), __runInitializers(this, _showDots_initializers, false));\n this.showBaseline = (__runInitializers(this, _showDots_extraInitializers), __runInitializers(this, _showBaseline_initializers, false));\n this.strokeWidth = (__runInitializers(this, _showBaseline_extraInitializers), __runInitializers(this, _strokeWidth_initializers, 1.5));\n this.minValue = (__runInitializers(this, _strokeWidth_extraInitializers), __runInitializers(this, _minValue_initializers, void 0));\n this.maxValue = (__runInitializers(this, _minValue_extraInitializers), __runInitializers(this, _maxValue_initializers, void 0));\n this.data = (__runInitializers(this, _maxValue_extraInitializers), __runInitializers(this, _data_initializers, []));\n __runInitializers(this, _data_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellSparkline };\n//# sourceMappingURL=snice-cell-sparkline.js.map\n","import { __runInitializers, __esDecorate } from 'tslib';\nimport { element, property, render, watch, html } from 'snice';\n\nlet SniceColumn = (() => {\n let _classDecorators = [element('snice-column')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _key_decorators;\n let _key_initializers = [];\n let _key_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _width_decorators;\n let _width_initializers = [];\n let _width_extraInitializers = [];\n let _sortable_decorators;\n let _sortable_initializers = [];\n let _sortable_extraInitializers = [];\n let _filterable_decorators;\n let _filterable_initializers = [];\n let _filterable_extraInitializers = [];\n let _wrap_decorators;\n let _wrap_initializers = [];\n let _wrap_extraInitializers = [];\n let _ellipsis_decorators;\n let _ellipsis_initializers = [];\n let _ellipsis_extraInitializers = [];\n let _tooltip_decorators;\n let _tooltip_initializers = [];\n let _tooltip_extraInitializers = [];\n let _decimals_decorators;\n let _decimals_initializers = [];\n let _decimals_extraInitializers = [];\n let _thousandsSeparator_decorators;\n let _thousandsSeparator_initializers = [];\n let _thousandsSeparator_extraInitializers = [];\n let _numberPrefix_decorators;\n let _numberPrefix_initializers = [];\n let _numberPrefix_extraInitializers = [];\n let _numberSuffix_decorators;\n let _numberSuffix_initializers = [];\n let _numberSuffix_extraInitializers = [];\n let _negativeStyle_decorators;\n let _negativeStyle_initializers = [];\n let _negativeStyle_extraInitializers = [];\n let _dateFormat_decorators;\n let _dateFormat_initializers = [];\n let _dateFormat_extraInitializers = [];\n let _customDateFormat_decorators;\n let _customDateFormat_initializers = [];\n let _customDateFormat_extraInitializers = [];\n let _dateLocale_decorators;\n let _dateLocale_initializers = [];\n let _dateLocale_extraInitializers = [];\n let _trueValue_decorators;\n let _trueValue_initializers = [];\n let _trueValue_extraInitializers = [];\n let _falseValue_decorators;\n let _falseValue_initializers = [];\n let _falseValue_extraInitializers = [];\n let _useSymbols_decorators;\n let _useSymbols_initializers = [];\n let _useSymbols_extraInitializers = [];\n let _trueSymbol_decorators;\n let _trueSymbol_initializers = [];\n let _trueSymbol_extraInitializers = [];\n let _falseSymbol_decorators;\n let _falseSymbol_initializers = [];\n let _falseSymbol_extraInitializers = [];\n let _ratingMax_decorators;\n let _ratingMax_initializers = [];\n let _ratingMax_extraInitializers = [];\n let _ratingSymbol_decorators;\n let _ratingSymbol_initializers = [];\n let _ratingSymbol_extraInitializers = [];\n let _ratingEmptySymbol_decorators;\n let _ratingEmptySymbol_initializers = [];\n let _ratingEmptySymbol_extraInitializers = [];\n let _ratingColor_decorators;\n let _ratingColor_initializers = [];\n let _ratingColor_extraInitializers = [];\n let _progressMax_decorators;\n let _progressMax_initializers = [];\n let _progressMax_extraInitializers = [];\n let _showPercentage_decorators;\n let _showPercentage_initializers = [];\n let _showPercentage_extraInitializers = [];\n let _progressColor_decorators;\n let _progressColor_initializers = [];\n let _progressColor_extraInitializers = [];\n let _progressBgColor_decorators;\n let _progressBgColor_initializers = [];\n let _progressBgColor_extraInitializers = [];\n let _progressHeight_decorators;\n let _progressHeight_initializers = [];\n let _progressHeight_extraInitializers = [];\n let _sparklineType_decorators;\n let _sparklineType_initializers = [];\n let _sparklineType_extraInitializers = [];\n let _sparklineColor_decorators;\n let _sparklineColor_initializers = [];\n let _sparklineColor_extraInitializers = [];\n let _sparklineWidth_decorators;\n let _sparklineWidth_initializers = [];\n let _sparklineWidth_extraInitializers = [];\n let _sparklineHeight_decorators;\n let _sparklineHeight_initializers = [];\n let _sparklineHeight_extraInitializers = [];\n let _cellBgColor_decorators;\n let _cellBgColor_initializers = [];\n let _cellBgColor_extraInitializers = [];\n let _cellColor_decorators;\n let _cellColor_initializers = [];\n let _cellColor_extraInitializers = [];\n let _cellFontWeight_decorators;\n let _cellFontWeight_initializers = [];\n let _cellFontWeight_extraInitializers = [];\n let _cellFontStyle_decorators;\n let _cellFontStyle_initializers = [];\n let _cellFontStyle_extraInitializers = [];\n let _cellFontSize_decorators;\n let _cellFontSize_initializers = [];\n let _cellFontSize_extraInitializers = [];\n let _cellTextDecoration_decorators;\n let _cellTextDecoration_initializers = [];\n let _cellTextDecoration_extraInitializers = [];\n let _render_decorators;\n let _handleBasicPropsChange_decorators;\n let _handleNumberFormatChange_decorators;\n let _handleDateFormatChange_decorators;\n let _handleBooleanFormatChange_decorators;\n let _handleRatingFormatChange_decorators;\n let _handleProgressFormatChange_decorators;\n let _handleSparklineFormatChange_decorators;\n let _handleStyleChange_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n constructor() {\n super(...arguments);\n this.key = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _key_initializers, ''));\n this.label = (__runInitializers(this, _key_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.type = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _type_initializers, 'text'));\n this.align = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.width = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _width_initializers, ''));\n this.sortable = (__runInitializers(this, _width_extraInitializers), __runInitializers(this, _sortable_initializers, true));\n this.filterable = (__runInitializers(this, _sortable_extraInitializers), __runInitializers(this, _filterable_initializers, true));\n this.wrap = (__runInitializers(this, _filterable_extraInitializers), __runInitializers(this, _wrap_initializers, false));\n this.ellipsis = (__runInitializers(this, _wrap_extraInitializers), __runInitializers(this, _ellipsis_initializers, true));\n this.tooltip = (__runInitializers(this, _ellipsis_extraInitializers), __runInitializers(this, _tooltip_initializers, false));\n // Number formatting properties\n this.decimals = (__runInitializers(this, _tooltip_extraInitializers), __runInitializers(this, _decimals_initializers, void 0));\n this.thousandsSeparator = (__runInitializers(this, _decimals_extraInitializers), __runInitializers(this, _thousandsSeparator_initializers, void 0));\n this.numberPrefix = (__runInitializers(this, _thousandsSeparator_extraInitializers), __runInitializers(this, _numberPrefix_initializers, void 0));\n this.numberSuffix = (__runInitializers(this, _numberPrefix_extraInitializers), __runInitializers(this, _numberSuffix_initializers, void 0));\n this.negativeStyle = (__runInitializers(this, _numberSuffix_extraInitializers), __runInitializers(this, _negativeStyle_initializers, void 0));\n // Date formatting properties\n this.dateFormat = (__runInitializers(this, _negativeStyle_extraInitializers), __runInitializers(this, _dateFormat_initializers, void 0));\n this.customDateFormat = (__runInitializers(this, _dateFormat_extraInitializers), __runInitializers(this, _customDateFormat_initializers, void 0));\n this.dateLocale = (__runInitializers(this, _customDateFormat_extraInitializers), __runInitializers(this, _dateLocale_initializers, void 0));\n // Boolean formatting properties\n this.trueValue = (__runInitializers(this, _dateLocale_extraInitializers), __runInitializers(this, _trueValue_initializers, void 0));\n this.falseValue = (__runInitializers(this, _trueValue_extraInitializers), __runInitializers(this, _falseValue_initializers, void 0));\n this.useSymbols = (__runInitializers(this, _falseValue_extraInitializers), __runInitializers(this, _useSymbols_initializers, void 0));\n this.trueSymbol = (__runInitializers(this, _useSymbols_extraInitializers), __runInitializers(this, _trueSymbol_initializers, void 0));\n this.falseSymbol = (__runInitializers(this, _trueSymbol_extraInitializers), __runInitializers(this, _falseSymbol_initializers, void 0));\n // Rating formatting properties\n this.ratingMax = (__runInitializers(this, _falseSymbol_extraInitializers), __runInitializers(this, _ratingMax_initializers, void 0));\n this.ratingSymbol = (__runInitializers(this, _ratingMax_extraInitializers), __runInitializers(this, _ratingSymbol_initializers, void 0));\n this.ratingEmptySymbol = (__runInitializers(this, _ratingSymbol_extraInitializers), __runInitializers(this, _ratingEmptySymbol_initializers, void 0));\n this.ratingColor = (__runInitializers(this, _ratingEmptySymbol_extraInitializers), __runInitializers(this, _ratingColor_initializers, void 0));\n // Progress formatting properties\n this.progressMax = (__runInitializers(this, _ratingColor_extraInitializers), __runInitializers(this, _progressMax_initializers, void 0));\n this.showPercentage = (__runInitializers(this, _progressMax_extraInitializers), __runInitializers(this, _showPercentage_initializers, void 0));\n this.progressColor = (__runInitializers(this, _showPercentage_extraInitializers), __runInitializers(this, _progressColor_initializers, void 0));\n this.progressBgColor = (__runInitializers(this, _progressColor_extraInitializers), __runInitializers(this, _progressBgColor_initializers, void 0));\n this.progressHeight = (__runInitializers(this, _progressBgColor_extraInitializers), __runInitializers(this, _progressHeight_initializers, void 0));\n // Sparkline formatting properties\n this.sparklineType = (__runInitializers(this, _progressHeight_extraInitializers), __runInitializers(this, _sparklineType_initializers, void 0));\n this.sparklineColor = (__runInitializers(this, _sparklineType_extraInitializers), __runInitializers(this, _sparklineColor_initializers, void 0));\n this.sparklineWidth = (__runInitializers(this, _sparklineColor_extraInitializers), __runInitializers(this, _sparklineWidth_initializers, void 0));\n this.sparklineHeight = (__runInitializers(this, _sparklineWidth_extraInitializers), __runInitializers(this, _sparklineHeight_initializers, void 0));\n // Style properties\n this.cellBgColor = (__runInitializers(this, _sparklineHeight_extraInitializers), __runInitializers(this, _cellBgColor_initializers, void 0));\n this.cellColor = (__runInitializers(this, _cellBgColor_extraInitializers), __runInitializers(this, _cellColor_initializers, void 0));\n this.cellFontWeight = (__runInitializers(this, _cellColor_extraInitializers), __runInitializers(this, _cellFontWeight_initializers, void 0));\n this.cellFontStyle = (__runInitializers(this, _cellFontWeight_extraInitializers), __runInitializers(this, _cellFontStyle_initializers, void 0));\n this.cellFontSize = (__runInitializers(this, _cellFontStyle_extraInitializers), __runInitializers(this, _cellFontSize_initializers, void 0));\n this.cellTextDecoration = (__runInitializers(this, _cellFontSize_extraInitializers), __runInitializers(this, _cellTextDecoration_initializers, void 0));\n this.formatter = __runInitializers(this, _cellTextDecoration_extraInitializers);\n this.conditionalFormats = [];\n }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _key_decorators = [property({})];\n _label_decorators = [property({})];\n _type_decorators = [property({})];\n _align_decorators = [property({})];\n _width_decorators = [property({})];\n _sortable_decorators = [property({ type: Boolean, })];\n _filterable_decorators = [property({ type: Boolean, })];\n _wrap_decorators = [property({ type: Boolean, })];\n _ellipsis_decorators = [property({ type: Boolean, })];\n _tooltip_decorators = [property({ type: Boolean, })];\n _decimals_decorators = [property({ type: Number, attribute: 'decimals' })];\n _thousandsSeparator_decorators = [property({ type: Boolean, attribute: 'thousands-separator' })];\n _numberPrefix_decorators = [property({ attribute: 'number-prefix' })];\n _numberSuffix_decorators = [property({ attribute: 'number-suffix' })];\n _negativeStyle_decorators = [property({ attribute: 'negative-style' })];\n _dateFormat_decorators = [property({ attribute: 'date-format' })];\n _customDateFormat_decorators = [property({ attribute: 'custom-date-format' })];\n _dateLocale_decorators = [property({ attribute: 'date-locale' })];\n _trueValue_decorators = [property({ attribute: 'true-value' })];\n _falseValue_decorators = [property({ attribute: 'false-value' })];\n _useSymbols_decorators = [property({ type: Boolean, attribute: 'use-symbols' })];\n _trueSymbol_decorators = [property({ attribute: 'true-symbol' })];\n _falseSymbol_decorators = [property({ attribute: 'false-symbol' })];\n _ratingMax_decorators = [property({ type: Number, attribute: 'rating-max' })];\n _ratingSymbol_decorators = [property({ attribute: 'rating-symbol' })];\n _ratingEmptySymbol_decorators = [property({ attribute: 'rating-empty-symbol' })];\n _ratingColor_decorators = [property({ attribute: 'rating-color' })];\n _progressMax_decorators = [property({ type: Number, attribute: 'progress-max' })];\n _showPercentage_decorators = [property({ type: Boolean, attribute: 'show-percentage' })];\n _progressColor_decorators = [property({ attribute: 'progress-color' })];\n _progressBgColor_decorators = [property({ attribute: 'progress-bg-color' })];\n _progressHeight_decorators = [property({ attribute: 'progress-height' })];\n _sparklineType_decorators = [property({ attribute: 'sparkline-type' })];\n _sparklineColor_decorators = [property({ attribute: 'sparkline-color' })];\n _sparklineWidth_decorators = [property({ type: Number, attribute: 'sparkline-width' })];\n _sparklineHeight_decorators = [property({ type: Number, attribute: 'sparkline-height' })];\n _cellBgColor_decorators = [property({ attribute: 'cell-bg-color' })];\n _cellColor_decorators = [property({ attribute: 'cell-color' })];\n _cellFontWeight_decorators = [property({ attribute: 'cell-font-weight' })];\n _cellFontStyle_decorators = [property({ attribute: 'cell-font-style' })];\n _cellFontSize_decorators = [property({ attribute: 'cell-font-size' })];\n _cellTextDecoration_decorators = [property({ attribute: 'cell-text-decoration' })];\n _render_decorators = [render()];\n _handleBasicPropsChange_decorators = [watch('key', 'label', 'type', 'align', 'width', 'sortable', 'filterable', 'wrap', 'ellipsis', 'tooltip')];\n _handleNumberFormatChange_decorators = [watch('decimals', 'thousandsSeparator', 'numberPrefix', 'numberSuffix', 'negativeStyle')];\n _handleDateFormatChange_decorators = [watch('dateFormat', 'customDateFormat', 'dateLocale')];\n _handleBooleanFormatChange_decorators = [watch('trueValue', 'falseValue', 'useSymbols', 'trueSymbol', 'falseSymbol')];\n _handleRatingFormatChange_decorators = [watch('ratingMax', 'ratingSymbol', 'ratingEmptySymbol', 'ratingColor')];\n _handleProgressFormatChange_decorators = [watch('progressMax', 'showPercentage', 'progressColor', 'progressBgColor', 'progressHeight')];\n _handleSparklineFormatChange_decorators = [watch('sparklineType', 'sparklineColor', 'sparklineWidth', 'sparklineHeight')];\n _handleStyleChange_decorators = [watch('cellBgColor', 'cellColor', 'cellFontWeight', 'cellFontStyle', 'cellFontSize', 'cellTextDecoration')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleBasicPropsChange_decorators, { kind: \"method\", name: \"handleBasicPropsChange\", static: false, private: false, access: { has: obj => \"handleBasicPropsChange\" in obj, get: obj => obj.handleBasicPropsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleNumberFormatChange_decorators, { kind: \"method\", name: \"handleNumberFormatChange\", static: false, private: false, access: { has: obj => \"handleNumberFormatChange\" in obj, get: obj => obj.handleNumberFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleDateFormatChange_decorators, { kind: \"method\", name: \"handleDateFormatChange\", static: false, private: false, access: { has: obj => \"handleDateFormatChange\" in obj, get: obj => obj.handleDateFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleBooleanFormatChange_decorators, { kind: \"method\", name: \"handleBooleanFormatChange\", static: false, private: false, access: { has: obj => \"handleBooleanFormatChange\" in obj, get: obj => obj.handleBooleanFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleRatingFormatChange_decorators, { kind: \"method\", name: \"handleRatingFormatChange\", static: false, private: false, access: { has: obj => \"handleRatingFormatChange\" in obj, get: obj => obj.handleRatingFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleProgressFormatChange_decorators, { kind: \"method\", name: \"handleProgressFormatChange\", static: false, private: false, access: { has: obj => \"handleProgressFormatChange\" in obj, get: obj => obj.handleProgressFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSparklineFormatChange_decorators, { kind: \"method\", name: \"handleSparklineFormatChange\", static: false, private: false, access: { has: obj => \"handleSparklineFormatChange\" in obj, get: obj => obj.handleSparklineFormatChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleStyleChange_decorators, { kind: \"method\", name: \"handleStyleChange\", static: false, private: false, access: { has: obj => \"handleStyleChange\" in obj, get: obj => obj.handleStyleChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _key_decorators, { kind: \"field\", name: \"key\", static: false, private: false, access: { has: obj => \"key\" in obj, get: obj => obj.key, set: (obj, value) => { obj.key = value; } }, metadata: _metadata }, _key_initializers, _key_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _width_decorators, { kind: \"field\", name: \"width\", static: false, private: false, access: { has: obj => \"width\" in obj, get: obj => obj.width, set: (obj, value) => { obj.width = value; } }, metadata: _metadata }, _width_initializers, _width_extraInitializers);\n __esDecorate(null, null, _sortable_decorators, { kind: \"field\", name: \"sortable\", static: false, private: false, access: { has: obj => \"sortable\" in obj, get: obj => obj.sortable, set: (obj, value) => { obj.sortable = value; } }, metadata: _metadata }, _sortable_initializers, _sortable_extraInitializers);\n __esDecorate(null, null, _filterable_decorators, { kind: \"field\", name: \"filterable\", static: false, private: false, access: { has: obj => \"filterable\" in obj, get: obj => obj.filterable, set: (obj, value) => { obj.filterable = value; } }, metadata: _metadata }, _filterable_initializers, _filterable_extraInitializers);\n __esDecorate(null, null, _wrap_decorators, { kind: \"field\", name: \"wrap\", static: false, private: false, access: { has: obj => \"wrap\" in obj, get: obj => obj.wrap, set: (obj, value) => { obj.wrap = value; } }, metadata: _metadata }, _wrap_initializers, _wrap_extraInitializers);\n __esDecorate(null, null, _ellipsis_decorators, { kind: \"field\", name: \"ellipsis\", static: false, private: false, access: { has: obj => \"ellipsis\" in obj, get: obj => obj.ellipsis, set: (obj, value) => { obj.ellipsis = value; } }, metadata: _metadata }, _ellipsis_initializers, _ellipsis_extraInitializers);\n __esDecorate(null, null, _tooltip_decorators, { kind: \"field\", name: \"tooltip\", static: false, private: false, access: { has: obj => \"tooltip\" in obj, get: obj => obj.tooltip, set: (obj, value) => { obj.tooltip = value; } }, metadata: _metadata }, _tooltip_initializers, _tooltip_extraInitializers);\n __esDecorate(null, null, _decimals_decorators, { kind: \"field\", name: \"decimals\", static: false, private: false, access: { has: obj => \"decimals\" in obj, get: obj => obj.decimals, set: (obj, value) => { obj.decimals = value; } }, metadata: _metadata }, _decimals_initializers, _decimals_extraInitializers);\n __esDecorate(null, null, _thousandsSeparator_decorators, { kind: \"field\", name: \"thousandsSeparator\", static: false, private: false, access: { has: obj => \"thousandsSeparator\" in obj, get: obj => obj.thousandsSeparator, set: (obj, value) => { obj.thousandsSeparator = value; } }, metadata: _metadata }, _thousandsSeparator_initializers, _thousandsSeparator_extraInitializers);\n __esDecorate(null, null, _numberPrefix_decorators, { kind: \"field\", name: \"numberPrefix\", static: false, private: false, access: { has: obj => \"numberPrefix\" in obj, get: obj => obj.numberPrefix, set: (obj, value) => { obj.numberPrefix = value; } }, metadata: _metadata }, _numberPrefix_initializers, _numberPrefix_extraInitializers);\n __esDecorate(null, null, _numberSuffix_decorators, { kind: \"field\", name: \"numberSuffix\", static: false, private: false, access: { has: obj => \"numberSuffix\" in obj, get: obj => obj.numberSuffix, set: (obj, value) => { obj.numberSuffix = value; } }, metadata: _metadata }, _numberSuffix_initializers, _numberSuffix_extraInitializers);\n __esDecorate(null, null, _negativeStyle_decorators, { kind: \"field\", name: \"negativeStyle\", static: false, private: false, access: { has: obj => \"negativeStyle\" in obj, get: obj => obj.negativeStyle, set: (obj, value) => { obj.negativeStyle = value; } }, metadata: _metadata }, _negativeStyle_initializers, _negativeStyle_extraInitializers);\n __esDecorate(null, null, _dateFormat_decorators, { kind: \"field\", name: \"dateFormat\", static: false, private: false, access: { has: obj => \"dateFormat\" in obj, get: obj => obj.dateFormat, set: (obj, value) => { obj.dateFormat = value; } }, metadata: _metadata }, _dateFormat_initializers, _dateFormat_extraInitializers);\n __esDecorate(null, null, _customDateFormat_decorators, { kind: \"field\", name: \"customDateFormat\", static: false, private: false, access: { has: obj => \"customDateFormat\" in obj, get: obj => obj.customDateFormat, set: (obj, value) => { obj.customDateFormat = value; } }, metadata: _metadata }, _customDateFormat_initializers, _customDateFormat_extraInitializers);\n __esDecorate(null, null, _dateLocale_decorators, { kind: \"field\", name: \"dateLocale\", static: false, private: false, access: { has: obj => \"dateLocale\" in obj, get: obj => obj.dateLocale, set: (obj, value) => { obj.dateLocale = value; } }, metadata: _metadata }, _dateLocale_initializers, _dateLocale_extraInitializers);\n __esDecorate(null, null, _trueValue_decorators, { kind: \"field\", name: \"trueValue\", static: false, private: false, access: { has: obj => \"trueValue\" in obj, get: obj => obj.trueValue, set: (obj, value) => { obj.trueValue = value; } }, metadata: _metadata }, _trueValue_initializers, _trueValue_extraInitializers);\n __esDecorate(null, null, _falseValue_decorators, { kind: \"field\", name: \"falseValue\", static: false, private: false, access: { has: obj => \"falseValue\" in obj, get: obj => obj.falseValue, set: (obj, value) => { obj.falseValue = value; } }, metadata: _metadata }, _falseValue_initializers, _falseValue_extraInitializers);\n __esDecorate(null, null, _useSymbols_decorators, { kind: \"field\", name: \"useSymbols\", static: false, private: false, access: { has: obj => \"useSymbols\" in obj, get: obj => obj.useSymbols, set: (obj, value) => { obj.useSymbols = value; } }, metadata: _metadata }, _useSymbols_initializers, _useSymbols_extraInitializers);\n __esDecorate(null, null, _trueSymbol_decorators, { kind: \"field\", name: \"trueSymbol\", static: false, private: false, access: { has: obj => \"trueSymbol\" in obj, get: obj => obj.trueSymbol, set: (obj, value) => { obj.trueSymbol = value; } }, metadata: _metadata }, _trueSymbol_initializers, _trueSymbol_extraInitializers);\n __esDecorate(null, null, _falseSymbol_decorators, { kind: \"field\", name: \"falseSymbol\", static: false, private: false, access: { has: obj => \"falseSymbol\" in obj, get: obj => obj.falseSymbol, set: (obj, value) => { obj.falseSymbol = value; } }, metadata: _metadata }, _falseSymbol_initializers, _falseSymbol_extraInitializers);\n __esDecorate(null, null, _ratingMax_decorators, { kind: \"field\", name: \"ratingMax\", static: false, private: false, access: { has: obj => \"ratingMax\" in obj, get: obj => obj.ratingMax, set: (obj, value) => { obj.ratingMax = value; } }, metadata: _metadata }, _ratingMax_initializers, _ratingMax_extraInitializers);\n __esDecorate(null, null, _ratingSymbol_decorators, { kind: \"field\", name: \"ratingSymbol\", static: false, private: false, access: { has: obj => \"ratingSymbol\" in obj, get: obj => obj.ratingSymbol, set: (obj, value) => { obj.ratingSymbol = value; } }, metadata: _metadata }, _ratingSymbol_initializers, _ratingSymbol_extraInitializers);\n __esDecorate(null, null, _ratingEmptySymbol_decorators, { kind: \"field\", name: \"ratingEmptySymbol\", static: false, private: false, access: { has: obj => \"ratingEmptySymbol\" in obj, get: obj => obj.ratingEmptySymbol, set: (obj, value) => { obj.ratingEmptySymbol = value; } }, metadata: _metadata }, _ratingEmptySymbol_initializers, _ratingEmptySymbol_extraInitializers);\n __esDecorate(null, null, _ratingColor_decorators, { kind: \"field\", name: \"ratingColor\", static: false, private: false, access: { has: obj => \"ratingColor\" in obj, get: obj => obj.ratingColor, set: (obj, value) => { obj.ratingColor = value; } }, metadata: _metadata }, _ratingColor_initializers, _ratingColor_extraInitializers);\n __esDecorate(null, null, _progressMax_decorators, { kind: \"field\", name: \"progressMax\", static: false, private: false, access: { has: obj => \"progressMax\" in obj, get: obj => obj.progressMax, set: (obj, value) => { obj.progressMax = value; } }, metadata: _metadata }, _progressMax_initializers, _progressMax_extraInitializers);\n __esDecorate(null, null, _showPercentage_decorators, { kind: \"field\", name: \"showPercentage\", static: false, private: false, access: { has: obj => \"showPercentage\" in obj, get: obj => obj.showPercentage, set: (obj, value) => { obj.showPercentage = value; } }, metadata: _metadata }, _showPercentage_initializers, _showPercentage_extraInitializers);\n __esDecorate(null, null, _progressColor_decorators, { kind: \"field\", name: \"progressColor\", static: false, private: false, access: { has: obj => \"progressColor\" in obj, get: obj => obj.progressColor, set: (obj, value) => { obj.progressColor = value; } }, metadata: _metadata }, _progressColor_initializers, _progressColor_extraInitializers);\n __esDecorate(null, null, _progressBgColor_decorators, { kind: \"field\", name: \"progressBgColor\", static: false, private: false, access: { has: obj => \"progressBgColor\" in obj, get: obj => obj.progressBgColor, set: (obj, value) => { obj.progressBgColor = value; } }, metadata: _metadata }, _progressBgColor_initializers, _progressBgColor_extraInitializers);\n __esDecorate(null, null, _progressHeight_decorators, { kind: \"field\", name: \"progressHeight\", static: false, private: false, access: { has: obj => \"progressHeight\" in obj, get: obj => obj.progressHeight, set: (obj, value) => { obj.progressHeight = value; } }, metadata: _metadata }, _progressHeight_initializers, _progressHeight_extraInitializers);\n __esDecorate(null, null, _sparklineType_decorators, { kind: \"field\", name: \"sparklineType\", static: false, private: false, access: { has: obj => \"sparklineType\" in obj, get: obj => obj.sparklineType, set: (obj, value) => { obj.sparklineType = value; } }, metadata: _metadata }, _sparklineType_initializers, _sparklineType_extraInitializers);\n __esDecorate(null, null, _sparklineColor_decorators, { kind: \"field\", name: \"sparklineColor\", static: false, private: false, access: { has: obj => \"sparklineColor\" in obj, get: obj => obj.sparklineColor, set: (obj, value) => { obj.sparklineColor = value; } }, metadata: _metadata }, _sparklineColor_initializers, _sparklineColor_extraInitializers);\n __esDecorate(null, null, _sparklineWidth_decorators, { kind: \"field\", name: \"sparklineWidth\", static: false, private: false, access: { has: obj => \"sparklineWidth\" in obj, get: obj => obj.sparklineWidth, set: (obj, value) => { obj.sparklineWidth = value; } }, metadata: _metadata }, _sparklineWidth_initializers, _sparklineWidth_extraInitializers);\n __esDecorate(null, null, _sparklineHeight_decorators, { kind: \"field\", name: \"sparklineHeight\", static: false, private: false, access: { has: obj => \"sparklineHeight\" in obj, get: obj => obj.sparklineHeight, set: (obj, value) => { obj.sparklineHeight = value; } }, metadata: _metadata }, _sparklineHeight_initializers, _sparklineHeight_extraInitializers);\n __esDecorate(null, null, _cellBgColor_decorators, { kind: \"field\", name: \"cellBgColor\", static: false, private: false, access: { has: obj => \"cellBgColor\" in obj, get: obj => obj.cellBgColor, set: (obj, value) => { obj.cellBgColor = value; } }, metadata: _metadata }, _cellBgColor_initializers, _cellBgColor_extraInitializers);\n __esDecorate(null, null, _cellColor_decorators, { kind: \"field\", name: \"cellColor\", static: false, private: false, access: { has: obj => \"cellColor\" in obj, get: obj => obj.cellColor, set: (obj, value) => { obj.cellColor = value; } }, metadata: _metadata }, _cellColor_initializers, _cellColor_extraInitializers);\n __esDecorate(null, null, _cellFontWeight_decorators, { kind: \"field\", name: \"cellFontWeight\", static: false, private: false, access: { has: obj => \"cellFontWeight\" in obj, get: obj => obj.cellFontWeight, set: (obj, value) => { obj.cellFontWeight = value; } }, metadata: _metadata }, _cellFontWeight_initializers, _cellFontWeight_extraInitializers);\n __esDecorate(null, null, _cellFontStyle_decorators, { kind: \"field\", name: \"cellFontStyle\", static: false, private: false, access: { has: obj => \"cellFontStyle\" in obj, get: obj => obj.cellFontStyle, set: (obj, value) => { obj.cellFontStyle = value; } }, metadata: _metadata }, _cellFontStyle_initializers, _cellFontStyle_extraInitializers);\n __esDecorate(null, null, _cellFontSize_decorators, { kind: \"field\", name: \"cellFontSize\", static: false, private: false, access: { has: obj => \"cellFontSize\" in obj, get: obj => obj.cellFontSize, set: (obj, value) => { obj.cellFontSize = value; } }, metadata: _metadata }, _cellFontSize_initializers, _cellFontSize_extraInitializers);\n __esDecorate(null, null, _cellTextDecoration_decorators, { kind: \"field\", name: \"cellTextDecoration\", static: false, private: false, access: { has: obj => \"cellTextDecoration\" in obj, get: obj => obj.cellTextDecoration, set: (obj, value) => { obj.cellTextDecoration = value; } }, metadata: _metadata }, _cellTextDecoration_initializers, _cellTextDecoration_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n return html /*html*/ `<slot></slot>`;\n }\n // Set custom formatter function\n setFormatter(formatter) {\n this.formatter = formatter;\n this.notifyTableOfChange();\n }\n // Add conditional formatting rule\n addConditionalFormat(format) {\n this.conditionalFormats.push(format);\n this.notifyTableOfChange();\n }\n // Remove conditional formatting rule\n removeConditionalFormat(index) {\n this.conditionalFormats.splice(index, 1);\n this.notifyTableOfChange();\n }\n // Clear all conditional formatting\n clearConditionalFormats() {\n this.conditionalFormats = [];\n this.notifyTableOfChange();\n }\n // Get the complete column definition for the table\n getColumnDefinition() {\n const definition = {\n key: this.key,\n label: this.label,\n type: this.type,\n align: this.align,\n width: this.width,\n sortable: this.sortable,\n filterable: this.filterable,\n wrap: this.wrap,\n ellipsis: this.ellipsis,\n tooltip: this.tooltip,\n formatter: this.formatter,\n conditionalFormats: this.conditionalFormats\n };\n // Add type-specific formatting\n if (this.type === 'number' || this.type === 'currency' || this.type === 'percent' ||\n this.type === 'accounting' || this.type === 'scientific' || this.type === 'fraction') {\n const numberFormat = {};\n if (this.decimals !== undefined)\n numberFormat.decimals = this.decimals;\n if (this.thousandsSeparator !== undefined)\n numberFormat.thousandsSeparator = this.thousandsSeparator;\n if (this.numberPrefix)\n numberFormat.prefix = this.numberPrefix;\n if (this.numberSuffix)\n numberFormat.suffix = this.numberSuffix;\n if (this.negativeStyle)\n numberFormat.negativeStyle = this.negativeStyle;\n if (Object.keys(numberFormat).length > 0) {\n definition.numberFormat = numberFormat;\n }\n }\n if (this.type === 'date') {\n const dateFormat = {};\n if (this.dateFormat)\n dateFormat.format = this.dateFormat;\n if (this.customDateFormat)\n dateFormat.customFormat = this.customDateFormat;\n if (this.dateLocale)\n dateFormat.locale = this.dateLocale;\n if (Object.keys(dateFormat).length > 0) {\n definition.dateFormat = dateFormat;\n }\n }\n if (this.type === 'boolean') {\n const booleanFormat = {};\n if (this.trueValue)\n booleanFormat.trueValue = this.trueValue;\n if (this.falseValue)\n booleanFormat.falseValue = this.falseValue;\n if (this.useSymbols !== undefined)\n booleanFormat.useSymbols = this.useSymbols;\n if (this.trueSymbol)\n booleanFormat.trueSymbol = this.trueSymbol;\n if (this.falseSymbol)\n booleanFormat.falseSymbol = this.falseSymbol;\n if (Object.keys(booleanFormat).length > 0) {\n definition.booleanFormat = booleanFormat;\n }\n }\n if (this.type === 'rating') {\n const ratingFormat = {};\n if (this.ratingMax !== undefined)\n ratingFormat.max = this.ratingMax;\n if (this.ratingSymbol)\n ratingFormat.symbol = this.ratingSymbol;\n if (this.ratingEmptySymbol)\n ratingFormat.emptySymbol = this.ratingEmptySymbol;\n if (this.ratingColor)\n ratingFormat.color = this.ratingColor;\n if (Object.keys(ratingFormat).length > 0) {\n definition.ratingFormat = ratingFormat;\n }\n }\n if (this.type === 'progress') {\n const progressFormat = {};\n if (this.progressMax !== undefined)\n progressFormat.max = this.progressMax;\n if (this.showPercentage !== undefined)\n progressFormat.showPercentage = this.showPercentage;\n if (this.progressColor)\n progressFormat.color = this.progressColor;\n if (this.progressBgColor)\n progressFormat.backgroundColor = this.progressBgColor;\n if (this.progressHeight)\n progressFormat.height = this.progressHeight;\n if (Object.keys(progressFormat).length > 0) {\n definition.progressFormat = progressFormat;\n }\n }\n if (this.type === 'sparkline') {\n const sparklineFormat = {};\n if (this.sparklineType)\n sparklineFormat.type = this.sparklineType;\n if (this.sparklineColor)\n sparklineFormat.color = this.sparklineColor;\n if (this.sparklineWidth !== undefined)\n sparklineFormat.width = this.sparklineWidth;\n if (this.sparklineHeight !== undefined)\n sparklineFormat.height = this.sparklineHeight;\n if (Object.keys(sparklineFormat).length > 0) {\n definition.sparklineFormat = sparklineFormat;\n }\n }\n // Add cell style if any style properties are set\n const cellStyle = {};\n if (this.cellBgColor)\n cellStyle.backgroundColor = this.cellBgColor;\n if (this.cellColor)\n cellStyle.color = this.cellColor;\n if (this.cellFontWeight)\n cellStyle.fontWeight = this.cellFontWeight;\n if (this.cellFontStyle)\n cellStyle.fontStyle = this.cellFontStyle;\n if (this.cellFontSize)\n cellStyle.fontSize = this.cellFontSize;\n if (this.cellTextDecoration)\n cellStyle.textDecoration = this.cellTextDecoration;\n if (Object.keys(cellStyle).length > 0) {\n definition.style = cellStyle;\n }\n return definition;\n }\n handleBasicPropsChange() {\n this.notifyTableOfChange();\n }\n handleNumberFormatChange() {\n if (this.type === 'number' || this.type === 'currency' || this.type === 'percent' ||\n this.type === 'accounting' || this.type === 'scientific' || this.type === 'fraction') {\n this.notifyTableOfChange();\n }\n }\n handleDateFormatChange() {\n if (this.type === 'date') {\n this.notifyTableOfChange();\n }\n }\n handleBooleanFormatChange() {\n if (this.type === 'boolean') {\n this.notifyTableOfChange();\n }\n }\n handleRatingFormatChange() {\n if (this.type === 'rating') {\n this.notifyTableOfChange();\n }\n }\n handleProgressFormatChange() {\n if (this.type === 'progress') {\n this.notifyTableOfChange();\n }\n }\n handleSparklineFormatChange() {\n if (this.type === 'sparkline') {\n this.notifyTableOfChange();\n }\n }\n handleStyleChange() {\n this.notifyTableOfChange();\n }\n notifyTableOfChange() {\n // Dispatch event to parent table to notify of column definition change\n this.dispatchEvent(new CustomEvent('column-changed', {\n detail: { column: this.getColumnDefinition() },\n bubbles: true,\n composed: true\n }));\n }\n });\n return _classThis;\n})();\n\nexport { SniceColumn };\n//# sourceMappingURL=snice-column.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem}.cell-link{display:inline-flex;align-items:center;gap:.25rem;color:var(--snice-color-primary);text-decoration:none;transition:color .2s}.cell-link:hover{color:var(--snice-color-primary-dark);text-decoration:underline}.cell-link:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-radius:2px}.cell-link:visited{color:var(--snice-color-secondary)}.link-icon{display:inline-flex;align-items:center;font-size:1rem}.link-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.external-icon{display:inline-flex;align-items:center;font-size:.75rem;opacity:.7}:host([align=left]){text-align:left;justify-content:flex-start}:host([align=center]){text-align:center;justify-content:center}:host([align=right]){text-align:right;justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}}@media print{.cell-link{text-decoration:underline}.cell-link::after{content:\\\" (\\\" attr(href) \\\")\\\";font-size:.75rem;color:var(--snice-color-text-secondary)}}\";\n\nlet SniceCellLink = (() => {\n let _classDecorators = [element('snice-cell-link')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _href_decorators;\n let _href_initializers = [];\n let _href_extraInitializers = [];\n let _target_decorators;\n let _target_initializers = [];\n let _target_extraInitializers = [];\n let _external_decorators;\n let _external_initializers = [];\n let _external_extraInitializers = [];\n let _icon_decorators;\n let _icon_initializers = [];\n let _icon_extraInitializers = [];\n let _text_decorators;\n let _text_initializers = [];\n let _text_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateCellAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _href_decorators = [property({ type: String })];\n _target_decorators = [property({ type: String })];\n _external_decorators = [property({ type: Boolean, attribute: 'external' })];\n _icon_decorators = [property({ type: String })];\n _text_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateCellAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateCellAttributes_decorators, { kind: \"method\", name: \"updateCellAttributes\", static: false, private: false, access: { has: obj => \"updateCellAttributes\" in obj, get: obj => obj.updateCellAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _href_decorators, { kind: \"field\", name: \"href\", static: false, private: false, access: { has: obj => \"href\" in obj, get: obj => obj.href, set: (obj, value) => { obj.href = value; } }, metadata: _metadata }, _href_initializers, _href_extraInitializers);\n __esDecorate(null, null, _target_decorators, { kind: \"field\", name: \"target\", static: false, private: false, access: { has: obj => \"target\" in obj, get: obj => obj.target, set: (obj, value) => { obj.target = value; } }, metadata: _metadata }, _target_initializers, _target_extraInitializers);\n __esDecorate(null, null, _external_decorators, { kind: \"field\", name: \"external\", static: false, private: false, access: { has: obj => \"external\" in obj, get: obj => obj.external, set: (obj, value) => { obj.external = value; } }, metadata: _metadata }, _external_initializers, _external_extraInitializers);\n __esDecorate(null, null, _icon_decorators, { kind: \"field\", name: \"icon\", static: false, private: false, access: { has: obj => \"icon\" in obj, get: obj => obj.icon, set: (obj, value) => { obj.icon = value; } }, metadata: _metadata }, _icon_initializers, _icon_extraInitializers);\n __esDecorate(null, null, _text_decorators, { kind: \"field\", name: \"text\", static: false, private: false, access: { has: obj => \"text\" in obj, get: obj => obj.text, set: (obj, value) => { obj.text = value; } }, metadata: _metadata }, _text_initializers, _text_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const linkHref = this.href || this.value;\n const linkText = this.text || this.value;\n const isExternal = this.external || this.target === '_blank' || linkHref.startsWith('http');\n const iconHTML = this.icon ? `<span class=\"link-icon\">${this.icon}</span>` : '';\n const externalIcon = isExternal ? '<span class=\"external-icon\">↗</span>' : '';\n return html /*html*/ `\n <div class=\"cell-content cell-content--link\" part=\"content\">\n <a\n href=\"${linkHref}\"\n target=\"${isExternal ? '_blank' : this.target}\"\n rel=\"${isExternal ? 'noopener noreferrer' : ''}\"\n class=\"cell-link\"\n part=\"link\"\n >\n ${unsafeHTML(iconHTML)}\n <span class=\"link-text\">${linkText}</span>\n ${unsafeHTML(externalIcon)}\n </a>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateCellAttributes();\n }\n updateCellAttributes() {\n // Extract link properties from column config\n if (this.column?.linkFormat) {\n const format = this.column.linkFormat;\n this.href = format.href || this.value;\n this.target = format.target || '_self';\n this.external = format.external || false;\n this.icon = format.icon || '';\n this.text = format.text || this.value;\n }\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.href = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _href_initializers, ''));\n this.target = (__runInitializers(this, _href_extraInitializers), __runInitializers(this, _target_initializers, '_self'));\n this.external = (__runInitializers(this, _target_extraInitializers), __runInitializers(this, _external_initializers, false));\n this.icon = (__runInitializers(this, _external_extraInitializers), __runInitializers(this, _icon_initializers, ''));\n this.text = (__runInitializers(this, _icon_extraInitializers), __runInitializers(this, _text_initializers, ''));\n this.column = (__runInitializers(this, _text_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'link'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellLink };\n//# sourceMappingURL=snice-cell-link.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, dispatch, html, css, unsafeHTML } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem}.actions-container{display:inline-flex;gap:.5rem;align-items:center}.action-button{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border:1px solid transparent;border-radius:.25rem;background:0 0;cursor:pointer;transition:.2s;font-size:.875rem;line-height:1}.action-button:hover{background:hsl(0 0% 0% / .05)}.action-button:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px}.action-button:active{transform:scale(.95)}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button:disabled:hover{background:0 0}.action-button--primary{color:var(--snice-color-primary)}.action-button--primary:hover:not(:disabled){background:hsl(var(--snice-color-blue-500) / .1)}.action-button--secondary{color:var(--snice-color-text)}.action-button--danger{color:var(--snice-color-danger)}.action-button--danger:hover:not(:disabled){background:hsl(var(--snice-color-red-500) / .1)}.action-button--success{color:var(--snice-color-success)}.action-button--success:hover:not(:disabled){background:hsl(var(--snice-color-green-500) / .1)}.action-icon{display:inline-flex;align-items:center;font-size:1rem}.action-icon--image{width:1rem;height:1rem}.action-icon--image img{width:100%;height:100%;object-fit:contain}.action-label{font-weight:500}:host([align=left]){justify-content:flex-start}:host([align=center]){justify-content:center}:host([align=right]){justify-content:flex-end}@media (max-width:768px){.action-button{padding:.25rem}.action-label{display:none}}@media print{.actions-container{display:none}}\";\n\nlet SniceCellActions = (() => {\n let _classDecorators = [element('snice-cell-actions')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _actions_decorators;\n let _actions_initializers = [];\n let _actions_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _extractActionsFromColumn_decorators;\n let _dispatchAction_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _actions_decorators = [property({ type: Array, attribute: false })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _value_decorators = [property({ type: String })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _extractActionsFromColumn_decorators = [watch('column')];\n _dispatchAction_decorators = [dispatch('cell-action', { bubbles: true, composed: true })];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _extractActionsFromColumn_decorators, { kind: \"method\", name: \"extractActionsFromColumn\", static: false, private: false, access: { has: obj => \"extractActionsFromColumn\" in obj, get: obj => obj.extractActionsFromColumn }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchAction_decorators, { kind: \"method\", name: \"dispatchAction\", static: false, private: false, access: { has: obj => \"dispatchAction\" in obj, get: obj => obj.dispatchAction }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _actions_decorators, { kind: \"field\", name: \"actions\", static: false, private: false, access: { has: obj => \"actions\" in obj, get: obj => obj.actions, set: (obj, value) => { obj.actions = value; } }, metadata: _metadata }, _actions_initializers, _actions_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n if (this.actions.length === 0) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--actions\" part=\"content\">\n <div class=\"actions-container\"></div>\n </div>\n `;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--actions\" part=\"content\">\n <div class=\"actions-container\">\n ${this.actions.map(action => this.renderActionButton(action))}\n </div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.extractActionsFromColumn();\n }\n extractActionsFromColumn() {\n if (this.column?.actionsFormat?.actions) {\n this.actions = this.column.actionsFormat.actions;\n }\n }\n renderActionButton(action) {\n const icon = action.icon || '';\n const label = action.label || '';\n const variant = action.variant || 'secondary';\n const disabled = action.disabled || false;\n // Determine if icon is an image URL or text/emoji\n const isImageUrl = icon && (icon.startsWith('http://') || icon.startsWith('https://') || icon.startsWith('/') || icon.startsWith('./'));\n let iconHTML = '';\n if (icon) {\n if (isImageUrl) {\n iconHTML = `<span class=\"action-icon action-icon--image\"><img src=\"${icon}\" alt=\"\" /></span>`;\n }\n else {\n iconHTML = `<span class=\"action-icon\">${icon}</span>`;\n }\n }\n return html /*html*/ `\n <button\n class=\"action-button action-button--${variant}\"\n part=\"action-button\"\n title=\"${action.title || action.action}\"\n ?disabled=${disabled}\n @click=${(e) => this.handleActionClick(e, action.action)}\n >\n ${unsafeHTML(iconHTML)}\n ${label ? html /*html*/ `<span class=\"action-label\">${label}</span>` : ''}\n </button>\n `;\n }\n handleActionClick(e, action) {\n e.stopPropagation();\n this.dispatchAction(action);\n }\n dispatchAction(action) {\n return {\n action,\n rowData: this.rowData,\n column: this.column\n };\n }\n constructor() {\n super(...arguments);\n this.actions = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _actions_initializers, []));\n this.column = (__runInitializers(this, _actions_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.value = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.align = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'actions'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellActions };\n//# sourceMappingURL=snice-cell-actions.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem}.tags-container{display:inline-flex;flex-wrap:wrap;gap:.25rem;align-items:center}.tag{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:.75rem;font-size:.75rem;font-weight:500;line-height:1.25;white-space:nowrap}.tag--default{background:hsl(0 0% 0% / .08);color:var(--snice-color-text)}.tag--primary{background:hsl(var(--snice-color-blue-500) / .1);color:var(--snice-color-primary)}.tag--success{background:hsl(var(--snice-color-green-500) / .1);color:var(--snice-color-success)}.tag--danger{background:hsl(var(--snice-color-red-500) / .1);color:var(--snice-color-danger)}.tag--warning{background:hsl(var(--snice-color-yellow-500) / .1);color:var(--snice-color-warning)}.tag--info{background:hsl(var(--snice-color-blue-400) / .1);color:var(--snice-color-primary)}:host([align=left]){justify-content:flex-start}:host([align=center]){justify-content:center}:host([align=right]){justify-content:flex-end}@media (max-width:768px){.tag{font-size:.6875rem;padding:.0625rem .375rem}}@media print{.tag{border:1px solid currentColor}}\";\n\nlet SniceCellTag = (() => {\n let _classDecorators = [element('snice-cell-tag')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _tags_decorators;\n let _tags_initializers = [];\n let _tags_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _variant_decorators;\n let _variant_initializers = [];\n let _variant_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _extractTagsFromColumn_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _tags_decorators = [property({ type: Array, attribute: false })];\n _value_decorators = [property({ type: String })];\n _variant_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _extractTagsFromColumn_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _extractTagsFromColumn_decorators, { kind: \"method\", name: \"extractTagsFromColumn\", static: false, private: false, access: { has: obj => \"extractTagsFromColumn\" in obj, get: obj => obj.extractTagsFromColumn }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _tags_decorators, { kind: \"field\", name: \"tags\", static: false, private: false, access: { has: obj => \"tags\" in obj, get: obj => obj.tags, set: (obj, value) => { obj.tags = value; } }, metadata: _metadata }, _tags_initializers, _tags_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _variant_decorators, { kind: \"field\", name: \"variant\", static: false, private: false, access: { has: obj => \"variant\" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const tagList = this.tags.length > 0 ? this.tags : this.parseValue();\n return html /*html*/ `\n <div class=\"cell-content cell-content--tag\" part=\"content\">\n <div class=\"tags-container\">\n ${tagList.map(tag => this.renderTag(tag))}\n </div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.extractTagsFromColumn();\n }\n extractTagsFromColumn() {\n if (this.column?.tagFormat) {\n this.variant = this.column.tagFormat.variant || 'default';\n }\n }\n parseValue() {\n if (!this.value)\n return [];\n if (Array.isArray(this.value))\n return this.value;\n if (typeof this.value === 'string') {\n // Try parsing as JSON array first\n try {\n const parsed = JSON.parse(this.value);\n if (Array.isArray(parsed))\n return parsed;\n }\n catch { }\n // Otherwise split by comma\n return this.value.split(',').map(t => t.trim()).filter(t => t);\n }\n return [String(this.value)];\n }\n renderTag(tag) {\n return html /*html*/ `\n <span class=\"tag tag--${this.variant}\" part=\"tag\">\n ${tag}\n </span>\n `;\n }\n constructor() {\n super(...arguments);\n this.tags = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _tags_initializers, []));\n this.value = (__runInitializers(this, _tags_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.variant = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _variant_initializers, 'default'));\n this.column = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'tag'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellTag };\n//# sourceMappingURL=snice-cell-tag.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center}.cell-image{display:block;object-fit:cover;background-color:hsl(var(--snice-color-gray-100))}.image--small{width:1.5rem;height:1.5rem}.image--medium{width:2rem;height:2rem}.image--large{width:3rem;height:3rem}.image--rounded{border-radius:.25rem}.image--square{border-radius:0}.image--circle{border-radius:50%}.cell-image--placeholder{background:linear-gradient(135deg,hsl(var(--snice-color-gray-200)) 0,hsl(var(--snice-color-gray-300)) 100%);border:1px solid hsl(var(--snice-color-gray-300));position:relative}.cell-image--placeholder::after{content:'📷';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.875rem;opacity:.5}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}:host(.loading) .cell-image{opacity:.6;animation:1.5s ease-in-out infinite image-pulse}@keyframes image-pulse{0%,100%{opacity:.6}50%{opacity:.3}}@media (max-width:768px){.image--small{width:1.25rem;height:1.25rem}.image--medium{width:1.75rem;height:1.75rem}.image--large{width:2.5rem;height:2.5rem}}@media (prefers-reduced-motion:reduce){:host(.loading) .cell-image{animation:none}}@media print{.cell-image{max-width:2rem;max-height:2rem}}\";\n\nlet SniceCellImage = (() => {\n let _classDecorators = [element('snice-cell-image')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _src_decorators;\n let _src_initializers = [];\n let _src_extraInitializers = [];\n let _alt_decorators;\n let _alt_initializers = [];\n let _alt_extraInitializers = [];\n let _fallback_decorators;\n let _fallback_initializers = [];\n let _fallback_extraInitializers = [];\n let _variant_decorators;\n let _variant_initializers = [];\n let _variant_extraInitializers = [];\n let _size_decorators;\n let _size_initializers = [];\n let _size_extraInitializers = [];\n let _lazy_decorators;\n let _lazy_initializers = [];\n let _lazy_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _imageError_decorators;\n let _imageError_initializers = [];\n let _imageError_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateImageAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _src_decorators = [property({ type: String })];\n _alt_decorators = [property({ type: String })];\n _fallback_decorators = [property({ type: String })];\n _variant_decorators = [property({ type: String })];\n _size_decorators = [property({ type: String })];\n _lazy_decorators = [property({ type: Boolean })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _imageError_decorators = [property({ type: Boolean })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateImageAttributes_decorators = [watch('column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateImageAttributes_decorators, { kind: \"method\", name: \"updateImageAttributes\", static: false, private: false, access: { has: obj => \"updateImageAttributes\" in obj, get: obj => obj.updateImageAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _src_decorators, { kind: \"field\", name: \"src\", static: false, private: false, access: { has: obj => \"src\" in obj, get: obj => obj.src, set: (obj, value) => { obj.src = value; } }, metadata: _metadata }, _src_initializers, _src_extraInitializers);\n __esDecorate(null, null, _alt_decorators, { kind: \"field\", name: \"alt\", static: false, private: false, access: { has: obj => \"alt\" in obj, get: obj => obj.alt, set: (obj, value) => { obj.alt = value; } }, metadata: _metadata }, _alt_initializers, _alt_extraInitializers);\n __esDecorate(null, null, _fallback_decorators, { kind: \"field\", name: \"fallback\", static: false, private: false, access: { has: obj => \"fallback\" in obj, get: obj => obj.fallback, set: (obj, value) => { obj.fallback = value; } }, metadata: _metadata }, _fallback_initializers, _fallback_extraInitializers);\n __esDecorate(null, null, _variant_decorators, { kind: \"field\", name: \"variant\", static: false, private: false, access: { has: obj => \"variant\" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);\n __esDecorate(null, null, _size_decorators, { kind: \"field\", name: \"size\", static: false, private: false, access: { has: obj => \"size\" in obj, get: obj => obj.size, set: (obj, value) => { obj.size = value; } }, metadata: _metadata }, _size_initializers, _size_extraInitializers);\n __esDecorate(null, null, _lazy_decorators, { kind: \"field\", name: \"lazy\", static: false, private: false, access: { has: obj => \"lazy\" in obj, get: obj => obj.lazy, set: (obj, value) => { obj.lazy = value; } }, metadata: _metadata }, _lazy_initializers, _lazy_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _imageError_decorators, { kind: \"field\", name: \"imageError\", static: false, private: false, access: { has: obj => \"imageError\" in obj, get: obj => obj.imageError, set: (obj, value) => { obj.imageError = value; } }, metadata: _metadata }, _imageError_initializers, _imageError_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const imageSrc = this.src || this.value;\n const imageAlt = this.alt || 'Image';\n const loadingAttr = this.lazy ? 'lazy' : 'eager';\n const variantClass = `image--${this.variant}`;\n const sizeClass = `image--${this.size}`;\n const classes = `cell-image ${variantClass} ${sizeClass}`;\n if (this.imageError && this.fallback) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--image\" part=\"content\">\n <img src=\"${this.fallback}\" alt=\"${imageAlt}\" class=\"${classes}\" />\n </div>\n `;\n }\n if (imageSrc) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--image\" part=\"content\">\n <img src=\"${imageSrc}\" alt=\"${imageAlt}\" loading=\"${loadingAttr}\" class=\"${classes}\" @error=${this.handleImageError} />\n </div>\n `;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--image\" part=\"content\">\n <div class=\"${classes} cell-image--placeholder\"></div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateImageAttributes();\n }\n updateImageAttributes() {\n if (this.column?.imageFormat) {\n const format = this.column.imageFormat;\n this.src = format.src || this.value;\n this.alt = format.alt || '';\n this.fallback = format.fallback || '';\n this.variant = format.variant || 'rounded';\n this.size = format.size || 'medium';\n this.lazy = format.lazy ?? true;\n }\n }\n handleImageError() {\n this.imageError = true;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.src = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _src_initializers, ''));\n this.alt = (__runInitializers(this, _src_extraInitializers), __runInitializers(this, _alt_initializers, ''));\n this.fallback = (__runInitializers(this, _alt_extraInitializers), __runInitializers(this, _fallback_initializers, ''));\n this.variant = (__runInitializers(this, _fallback_extraInitializers), __runInitializers(this, _variant_initializers, 'rounded'));\n this.size = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _size_initializers, 'medium'));\n this.lazy = (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _lazy_initializers, true));\n this.column = (__runInitializers(this, _lazy_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'center'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'image'));\n this.imageError = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _imageError_initializers, false));\n __runInitializers(this, _imageError_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellImage };\n//# sourceMappingURL=snice-cell-image.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, unsafeHTML, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.375rem}.email-icon{display:inline-flex;align-items:center;font-size:.875rem;opacity:.7;flex-shrink:0}.email-link{color:var(--snice-color-primary);text-decoration:none;transition:color .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-link:hover{color:var(--snice-color-primary-dark);text-decoration:underline}.email-link:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-radius:2px}.email-link:visited{color:var(--snice-color-secondary)}.email-empty{color:var(--snice-color-text-secondary);font-style:italic}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.email-icon{font-size:.75rem}}@media print{.email-link{text-decoration:underline}.email-link::after{content:\\\" (\\\" attr(href) \\\")\\\";font-size:.75rem;color:var(--snice-color-text-secondary)}.email-icon{display:none}}\";\n\nlet SniceCellEmail = (() => {\n let _classDecorators = [element('snice-cell-email')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _email_decorators;\n let _email_initializers = [];\n let _email_extraInitializers = [];\n let _displayText_decorators;\n let _displayText_initializers = [];\n let _displayText_extraInitializers = [];\n let _showIcon_decorators;\n let _showIcon_initializers = [];\n let _showIcon_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateEmailAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _email_decorators = [property({ type: String })];\n _displayText_decorators = [property({ type: String })];\n _showIcon_decorators = [property({ type: Boolean })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateEmailAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateEmailAttributes_decorators, { kind: \"method\", name: \"updateEmailAttributes\", static: false, private: false, access: { has: obj => \"updateEmailAttributes\" in obj, get: obj => obj.updateEmailAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _email_decorators, { kind: \"field\", name: \"email\", static: false, private: false, access: { has: obj => \"email\" in obj, get: obj => obj.email, set: (obj, value) => { obj.email = value; } }, metadata: _metadata }, _email_initializers, _email_extraInitializers);\n __esDecorate(null, null, _displayText_decorators, { kind: \"field\", name: \"displayText\", static: false, private: false, access: { has: obj => \"displayText\" in obj, get: obj => obj.displayText, set: (obj, value) => { obj.displayText = value; } }, metadata: _metadata }, _displayText_initializers, _displayText_extraInitializers);\n __esDecorate(null, null, _showIcon_decorators, { kind: \"field\", name: \"showIcon\", static: false, private: false, access: { has: obj => \"showIcon\" in obj, get: obj => obj.showIcon, set: (obj, value) => { obj.showIcon = value; } }, metadata: _metadata }, _showIcon_initializers, _showIcon_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const emailAddress = this.email || this.value;\n const displayName = this.displayText || emailAddress;\n const iconHTML = this.showIcon ? '<span class=\"email-icon\">✉</span>' : '';\n if (!emailAddress) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--email\" part=\"content\">\n <span class=\"email-empty\"></span>\n </div>\n `;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--email\" part=\"content\">\n ${unsafeHTML(iconHTML)}\n <a href=\"mailto:${emailAddress}\" class=\"email-link\" part=\"link\">\n ${displayName}\n </a>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateEmailAttributes();\n }\n updateEmailAttributes() {\n if (this.column?.emailFormat) {\n const format = this.column.emailFormat;\n this.email = format.email || this.value;\n this.displayText = format.displayText || '';\n this.showIcon = format.showIcon ?? true;\n }\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.email = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _email_initializers, ''));\n this.displayText = (__runInitializers(this, _email_extraInitializers), __runInitializers(this, _displayText_initializers, ''));\n this.showIcon = (__runInitializers(this, _displayText_extraInitializers), __runInitializers(this, _showIcon_initializers, true));\n this.column = (__runInitializers(this, _showIcon_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'email'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellEmail };\n//# sourceMappingURL=snice-cell-email.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, unsafeHTML, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.375rem}.phone-icon{display:inline-flex;align-items:center;font-size:.875rem;opacity:.7;flex-shrink:0}.phone-link{color:var(--snice-color-primary);text-decoration:none;transition:color .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.phone-link:hover{color:var(--snice-color-primary-dark);text-decoration:underline}.phone-link:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-radius:2px}.phone-link:visited{color:var(--snice-color-secondary)}.phone-empty{color:var(--snice-color-text-secondary);font-style:italic}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.phone-icon{font-size:.75rem}}@media print{.phone-link{text-decoration:underline}.phone-link::after{content:\\\" (\\\" attr(href) \\\")\\\";font-size:.75rem;color:var(--snice-color-text-secondary)}.phone-icon{display:none}}\";\n\nlet SniceCellPhone = (() => {\n let _classDecorators = [element('snice-cell-phone')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _phone_decorators;\n let _phone_initializers = [];\n let _phone_extraInitializers = [];\n let _displayText_decorators;\n let _displayText_initializers = [];\n let _displayText_extraInitializers = [];\n let _showIcon_decorators;\n let _showIcon_initializers = [];\n let _showIcon_extraInitializers = [];\n let _format_decorators;\n let _format_initializers = [];\n let _format_extraInitializers = [];\n let _country_decorators;\n let _country_initializers = [];\n let _country_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updatePhoneAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _phone_decorators = [property({ type: String })];\n _displayText_decorators = [property({ type: String })];\n _showIcon_decorators = [property({ type: Boolean })];\n _format_decorators = [property({ type: Boolean })];\n _country_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updatePhoneAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updatePhoneAttributes_decorators, { kind: \"method\", name: \"updatePhoneAttributes\", static: false, private: false, access: { has: obj => \"updatePhoneAttributes\" in obj, get: obj => obj.updatePhoneAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _phone_decorators, { kind: \"field\", name: \"phone\", static: false, private: false, access: { has: obj => \"phone\" in obj, get: obj => obj.phone, set: (obj, value) => { obj.phone = value; } }, metadata: _metadata }, _phone_initializers, _phone_extraInitializers);\n __esDecorate(null, null, _displayText_decorators, { kind: \"field\", name: \"displayText\", static: false, private: false, access: { has: obj => \"displayText\" in obj, get: obj => obj.displayText, set: (obj, value) => { obj.displayText = value; } }, metadata: _metadata }, _displayText_initializers, _displayText_extraInitializers);\n __esDecorate(null, null, _showIcon_decorators, { kind: \"field\", name: \"showIcon\", static: false, private: false, access: { has: obj => \"showIcon\" in obj, get: obj => obj.showIcon, set: (obj, value) => { obj.showIcon = value; } }, metadata: _metadata }, _showIcon_initializers, _showIcon_extraInitializers);\n __esDecorate(null, null, _format_decorators, { kind: \"field\", name: \"format\", static: false, private: false, access: { has: obj => \"format\" in obj, get: obj => obj.format, set: (obj, value) => { obj.format = value; } }, metadata: _metadata }, _format_initializers, _format_extraInitializers);\n __esDecorate(null, null, _country_decorators, { kind: \"field\", name: \"country\", static: false, private: false, access: { has: obj => \"country\" in obj, get: obj => obj.country, set: (obj, value) => { obj.country = value; } }, metadata: _metadata }, _country_initializers, _country_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const phoneNumber = this.phone || this.value;\n const displayText = this.displayText || (this.format ? this.formatPhoneNumber(phoneNumber) : phoneNumber);\n const iconHTML = this.showIcon ? '<span class=\"phone-icon\">📞</span>' : '';\n if (!phoneNumber) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--phone\" part=\"content\">\n <span class=\"phone-empty\"></span>\n </div>\n `;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--phone\" part=\"content\">\n ${unsafeHTML(iconHTML)}\n <a href=\"tel:${phoneNumber}\" class=\"phone-link\" part=\"link\">\n ${displayText}\n </a>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updatePhoneAttributes();\n }\n updatePhoneAttributes() {\n if (this.column?.phoneFormat) {\n const format = this.column.phoneFormat;\n this.phone = format.phone || this.value;\n this.displayText = format.displayText || '';\n this.showIcon = format.showIcon ?? true;\n this.format = format.format ?? true;\n this.country = format.country || 'US';\n }\n }\n formatPhoneNumber(phone) {\n // Remove all non-numeric characters\n const cleaned = phone.replace(/\\D/g, '');\n // Format US phone numbers (10 digits)\n if (this.country === 'US' && cleaned.length === 10) {\n return `(${cleaned.slice(0, 3)}) ${cleaned.slice(3, 6)}-${cleaned.slice(6)}`;\n }\n // Format US phone numbers with country code (11 digits starting with 1)\n if (this.country === 'US' && cleaned.length === 11 && cleaned[0] === '1') {\n return `+1 (${cleaned.slice(1, 4)}) ${cleaned.slice(4, 7)}-${cleaned.slice(7)}`;\n }\n // For other formats, just return the original value\n return phone;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.phone = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _phone_initializers, ''));\n this.displayText = (__runInitializers(this, _phone_extraInitializers), __runInitializers(this, _displayText_initializers, ''));\n this.showIcon = (__runInitializers(this, _displayText_extraInitializers), __runInitializers(this, _showIcon_initializers, true));\n this.format = (__runInitializers(this, _showIcon_extraInitializers), __runInitializers(this, _format_initializers, true));\n this.country = (__runInitializers(this, _format_extraInitializers), __runInitializers(this, _country_initializers, 'US'));\n this.column = (__runInitializers(this, _country_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'phone'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellPhone };\n//# sourceMappingURL=snice-cell-phone.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.5rem}.status-dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0;position:relative}.status-dot--online{background-color:var(--snice-color-success);box-shadow:0 0 0 2px hsl(var(--snice-color-green-500) / .2)}.status-dot--offline{background-color:hsl(var(--snice-color-gray-400));box-shadow:0 0 0 2px hsl(var(--snice-color-gray-500) / .2)}.status-dot--busy{background-color:var(--snice-color-danger);box-shadow:0 0 0 2px hsl(var(--snice-color-red-500) / .2)}.status-dot--away{background-color:var(--snice-color-warning);box-shadow:0 0 0 2px hsl(var(--snice-color-yellow-500) / .2)}.status-dot--custom{background-color:var(--snice-color-primary);box-shadow:0 0 0 2px hsl(var(--snice-color-blue-500) / .2)}.status-dot--online::after{content:'';position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:50%;border:2px solid var(--snice-color-success);animation:2s ease-in-out infinite status-pulse;opacity:0}@keyframes status-pulse{0%{transform:scale(1);opacity:1}100%{transform:scale(1.5);opacity:0}}.status-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-label--online{color:var(--snice-color-success)}.status-label--offline{color:var(--snice-color-text-secondary)}.status-label--busy{color:var(--snice-color-danger)}.status-label--away{color:var(--snice-color-warning)}.status-label--custom{color:var(--snice-color-text)}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.status-dot{width:.375rem;height:.375rem}}@media (prefers-reduced-motion:reduce){.status-dot--online::after{animation:none}}@media print{.status-dot{border:1px solid var(--snice-color-text)}.status-dot--online{background-color:var(--snice-color-background);border-color:var(--snice-color-success)}.status-dot--offline{background-color:var(--snice-color-background);border-color:var(--snice-color-neutral)}.status-dot--busy{background-color:var(--snice-color-background);border-color:var(--snice-color-danger)}.status-dot--away{background-color:var(--snice-color-background);border-color:var(--snice-color-warning)}}\";\n\nlet SniceCellStatus = (() => {\n let _classDecorators = [element('snice-cell-status')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _status_decorators;\n let _status_initializers = [];\n let _status_extraInitializers = [];\n let _label_decorators;\n let _label_initializers = [];\n let _label_extraInitializers = [];\n let _showDot_decorators;\n let _showDot_initializers = [];\n let _showDot_extraInitializers = [];\n let _variant_decorators;\n let _variant_initializers = [];\n let _variant_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateStatusAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _status_decorators = [property({ type: String })];\n _label_decorators = [property({ type: String })];\n _showDot_decorators = [property({ type: Boolean })];\n _variant_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateStatusAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateStatusAttributes_decorators, { kind: \"method\", name: \"updateStatusAttributes\", static: false, private: false, access: { has: obj => \"updateStatusAttributes\" in obj, get: obj => obj.updateStatusAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _status_decorators, { kind: \"field\", name: \"status\", static: false, private: false, access: { has: obj => \"status\" in obj, get: obj => obj.status, set: (obj, value) => { obj.status = value; } }, metadata: _metadata }, _status_initializers, _status_extraInitializers);\n __esDecorate(null, null, _label_decorators, { kind: \"field\", name: \"label\", static: false, private: false, access: { has: obj => \"label\" in obj, get: obj => obj.label, set: (obj, value) => { obj.label = value; } }, metadata: _metadata }, _label_initializers, _label_extraInitializers);\n __esDecorate(null, null, _showDot_decorators, { kind: \"field\", name: \"showDot\", static: false, private: false, access: { has: obj => \"showDot\" in obj, get: obj => obj.showDot, set: (obj, value) => { obj.showDot = value; } }, metadata: _metadata }, _showDot_initializers, _showDot_extraInitializers);\n __esDecorate(null, null, _variant_decorators, { kind: \"field\", name: \"variant\", static: false, private: false, access: { has: obj => \"variant\" in obj, get: obj => obj.variant, set: (obj, value) => { obj.variant = value; } }, metadata: _metadata }, _variant_initializers, _variant_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const statusValue = this.status || this.value;\n const statusLabel = this.label || statusValue;\n const statusVariant = this.getStatusVariant(statusValue);\n const dotHTML = this.showDot ? `<span class=\"status-dot status-dot--${statusVariant}\"></span>` : '';\n return html /*html*/ `\n <div class=\"cell-content cell-content--status\" part=\"content\">\n ${unsafeHTML(dotHTML)}\n <span class=\"status-label status-label--${statusVariant}\">${statusLabel}</span>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateStatusAttributes();\n }\n updateStatusAttributes() {\n if (this.column?.statusFormat) {\n const format = this.column.statusFormat;\n this.status = format.status || this.value;\n this.label = format.label || this.value;\n this.showDot = format.showDot ?? true;\n this.variant = format.variant || 'custom';\n }\n }\n getStatusVariant(status) {\n if (this.variant !== 'custom') {\n return this.variant;\n }\n // Auto-detect common status values\n const lowerStatus = status.toLowerCase();\n if (lowerStatus === 'online' || lowerStatus === 'active' || lowerStatus === 'available') {\n return 'online';\n }\n if (lowerStatus === 'offline' || lowerStatus === 'inactive' || lowerStatus === 'unavailable') {\n return 'offline';\n }\n if (lowerStatus === 'busy' || lowerStatus === 'dnd' || lowerStatus === 'do not disturb') {\n return 'busy';\n }\n if (lowerStatus === 'away' || lowerStatus === 'idle') {\n return 'away';\n }\n return 'custom';\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.status = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _status_initializers, ''));\n this.label = (__runInitializers(this, _status_extraInitializers), __runInitializers(this, _label_initializers, ''));\n this.showDot = (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _showDot_initializers, true));\n this.variant = (__runInitializers(this, _showDot_extraInitializers), __runInitializers(this, _variant_initializers, 'custom'));\n this.column = (__runInitializers(this, _variant_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'status'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellStatus };\n//# sourceMappingURL=snice-cell-status.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.5rem}.color-swatch{border:1px solid var(--snice-color-border);border-radius:.25rem;flex-shrink:0;box-shadow:var(--snice-shadow-xs)}.color-swatch--small{width:1rem;height:1rem}.color-swatch--medium{width:1.5rem;height:1.5rem}.color-swatch--large{width:2rem;height:2rem}.color-text{font-family:monospace;font-size:.875rem;color:var(--snice-color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.color-swatch--small{width:.875rem;height:.875rem}.color-swatch--medium{width:1.25rem;height:1.25rem}.color-swatch--large{width:1.75rem;height:1.75rem}.color-text{font-size:.75rem}}@media print{.color-swatch{border:2px solid var(--snice-color-text)}.color-text{font-size:.75rem}}\";\n\nlet SniceCellColor = (() => {\n let _classDecorators = [element('snice-cell-color')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _color_decorators;\n let _color_initializers = [];\n let _color_extraInitializers = [];\n let _showSwatch_decorators;\n let _showSwatch_initializers = [];\n let _showSwatch_extraInitializers = [];\n let _showHex_decorators;\n let _showHex_initializers = [];\n let _showHex_extraInitializers = [];\n let _showRgb_decorators;\n let _showRgb_initializers = [];\n let _showRgb_extraInitializers = [];\n let _swatchSize_decorators;\n let _swatchSize_initializers = [];\n let _swatchSize_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateColorAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _color_decorators = [property({ type: String })];\n _showSwatch_decorators = [property({ type: Boolean })];\n _showHex_decorators = [property({ type: Boolean })];\n _showRgb_decorators = [property({ type: Boolean })];\n _swatchSize_decorators = [property({ type: String })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateColorAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateColorAttributes_decorators, { kind: \"method\", name: \"updateColorAttributes\", static: false, private: false, access: { has: obj => \"updateColorAttributes\" in obj, get: obj => obj.updateColorAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _color_decorators, { kind: \"field\", name: \"color\", static: false, private: false, access: { has: obj => \"color\" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);\n __esDecorate(null, null, _showSwatch_decorators, { kind: \"field\", name: \"showSwatch\", static: false, private: false, access: { has: obj => \"showSwatch\" in obj, get: obj => obj.showSwatch, set: (obj, value) => { obj.showSwatch = value; } }, metadata: _metadata }, _showSwatch_initializers, _showSwatch_extraInitializers);\n __esDecorate(null, null, _showHex_decorators, { kind: \"field\", name: \"showHex\", static: false, private: false, access: { has: obj => \"showHex\" in obj, get: obj => obj.showHex, set: (obj, value) => { obj.showHex = value; } }, metadata: _metadata }, _showHex_initializers, _showHex_extraInitializers);\n __esDecorate(null, null, _showRgb_decorators, { kind: \"field\", name: \"showRgb\", static: false, private: false, access: { has: obj => \"showRgb\" in obj, get: obj => obj.showRgb, set: (obj, value) => { obj.showRgb = value; } }, metadata: _metadata }, _showRgb_initializers, _showRgb_extraInitializers);\n __esDecorate(null, null, _swatchSize_decorators, { kind: \"field\", name: \"swatchSize\", static: false, private: false, access: { has: obj => \"swatchSize\" in obj, get: obj => obj.swatchSize, set: (obj, value) => { obj.swatchSize = value; } }, metadata: _metadata }, _swatchSize_initializers, _swatchSize_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const colorValue = this.color || this.value;\n const swatchHTML = this.showSwatch\n ? `<span class=\"color-swatch color-swatch--${this.swatchSize}\" style=\"background-color: ${colorValue};\"></span>`\n : '';\n let textDisplay = '';\n if (this.showHex) {\n textDisplay = colorValue;\n }\n if (this.showRgb && colorValue.startsWith('#')) {\n const rgb = this.hexToRgb(colorValue);\n textDisplay = rgb ? `rgb(${rgb.r}, ${rgb.g}, ${rgb.b})` : colorValue;\n }\n return html /*html*/ `\n <div class=\"cell-content cell-content--color\" part=\"content\">\n ${unsafeHTML(swatchHTML)}\n ${textDisplay ? html `<span class=\"color-text\">${textDisplay}</span>` : ''}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateColorAttributes();\n }\n updateColorAttributes() {\n if (this.column?.colorFormat) {\n const format = this.column.colorFormat;\n this.color = format.color || this.value;\n this.showSwatch = format.showSwatch ?? true;\n this.showHex = format.showHex ?? true;\n this.showRgb = format.showRgb ?? false;\n this.swatchSize = format.swatchSize || 'medium';\n }\n }\n hexToRgb(hex) {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result\n ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n }\n : null;\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.color = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _color_initializers, ''));\n this.showSwatch = (__runInitializers(this, _color_extraInitializers), __runInitializers(this, _showSwatch_initializers, true));\n this.showHex = (__runInitializers(this, _showSwatch_extraInitializers), __runInitializers(this, _showHex_initializers, true));\n this.showRgb = (__runInitializers(this, _showHex_extraInitializers), __runInitializers(this, _showRgb_initializers, false));\n this.swatchSize = (__runInitializers(this, _showRgb_extraInitializers), __runInitializers(this, _swatchSize_initializers, 'medium'));\n this.column = (__runInitializers(this, _swatchSize_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'color'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellColor };\n//# sourceMappingURL=snice-cell-color.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, on, html, unsafeHTML, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:auto;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0}.json-toggle{background:0 0;border:none;color:var(--snice-color-text-secondary);cursor:pointer;padding:.125rem .25rem;font-size:.75rem;line-height:1;border-radius:.25rem;transition:background-color .2s;flex-shrink:0}.json-toggle:hover{background-color:var(--snice-color-background-hover)}.json-toggle:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px}.json-viewer{font-family:'Courier New',Consolas,monospace;font-size:.8125rem;overflow:hidden;flex:1}.json-viewer--collapsed{white-space:nowrap;text-overflow:ellipsis}.json-viewer--expanded{white-space:pre-wrap;word-break:break-word}.json-preview{color:var(--snice-color-text-secondary);font-style:italic}.json-object{padding-left:1rem}.json-line{margin:.125rem 0}.json-key{color:var(--snice-color-primary);font-weight:500;margin-right:.25rem}.json-string{color:var(--snice-color-success)}.json-number{color:var(--snice-color-info)}.json-boolean{color:var(--snice-color-warning)}.json-empty,.json-null,.json-undefined{color:var(--snice-color-text-secondary);font-style:italic}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.json-viewer{font-size:.75rem}.json-toggle{font-size:.625rem}}@media print{.json-toggle{display:none}.json-viewer--collapsed{white-space:normal}.json-viewer{font-size:.625rem}}\";\n\nlet SniceCellJson = (() => {\n let _classDecorators = [element('snice-cell-json')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _collapsed_decorators;\n let _collapsed_initializers = [];\n let _collapsed_extraInitializers = [];\n let _maxDepth_decorators;\n let _maxDepth_initializers = [];\n let _maxDepth_extraInitializers = [];\n let _showToggle_decorators;\n let _showToggle_initializers = [];\n let _showToggle_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateJsonAttributes_decorators;\n let _handleToggle_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _collapsed_decorators = [property({ type: Boolean })];\n _maxDepth_decorators = [property({ type: Number })];\n _showToggle_decorators = [property({ type: Boolean })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateJsonAttributes_decorators = [watch('value', 'column')];\n _handleToggle_decorators = [on('click', '.json-toggle')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateJsonAttributes_decorators, { kind: \"method\", name: \"updateJsonAttributes\", static: false, private: false, access: { has: obj => \"updateJsonAttributes\" in obj, get: obj => obj.updateJsonAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleToggle_decorators, { kind: \"method\", name: \"handleToggle\", static: false, private: false, access: { has: obj => \"handleToggle\" in obj, get: obj => obj.handleToggle }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _collapsed_decorators, { kind: \"field\", name: \"collapsed\", static: false, private: false, access: { has: obj => \"collapsed\" in obj, get: obj => obj.collapsed, set: (obj, value) => { obj.collapsed = value; } }, metadata: _metadata }, _collapsed_initializers, _collapsed_extraInitializers);\n __esDecorate(null, null, _maxDepth_decorators, { kind: \"field\", name: \"maxDepth\", static: false, private: false, access: { has: obj => \"maxDepth\" in obj, get: obj => obj.maxDepth, set: (obj, value) => { obj.maxDepth = value; } }, metadata: _metadata }, _maxDepth_initializers, _maxDepth_extraInitializers);\n __esDecorate(null, null, _showToggle_decorators, { kind: \"field\", name: \"showToggle\", static: false, private: false, access: { has: obj => \"showToggle\" in obj, get: obj => obj.showToggle, set: (obj, value) => { obj.showToggle = value; } }, metadata: _metadata }, _showToggle_initializers, _showToggle_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const jsonValue = typeof this.value === 'string' ? this.tryParseJson(this.value) : this.value;\n if (jsonValue === null || jsonValue === undefined) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--json\" part=\"content\">\n <span class=\"json-empty\">null</span>\n </div>\n `;\n }\n const toggleHTML = this.showToggle\n ? `<button class=\"json-toggle\" part=\"toggle\" aria-label=\"${this.collapsed ? 'Expand' : 'Collapse'}\">${this.collapsed ? '▶' : '▼'}</button>`\n : '';\n const jsonHTML = this.collapsed\n ? this.renderCollapsed(jsonValue)\n : this.renderExpanded(jsonValue);\n return html /*html*/ `\n <div class=\"cell-content cell-content--json\" part=\"content\">\n ${unsafeHTML(toggleHTML)}\n <div class=\"json-viewer ${this.collapsed ? 'json-viewer--collapsed' : 'json-viewer--expanded'}\">\n ${unsafeHTML(jsonHTML)}\n </div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateJsonAttributes();\n }\n updateJsonAttributes() {\n if (this.column?.jsonFormat) {\n const format = this.column.jsonFormat;\n this.collapsed = format.collapsed ?? true;\n this.maxDepth = format.maxDepth ?? 3;\n this.showToggle = format.showToggle ?? true;\n }\n }\n handleToggle() {\n this.collapsed = !this.collapsed;\n }\n tryParseJson(str) {\n try {\n return JSON.parse(str);\n }\n catch {\n return str;\n }\n }\n renderCollapsed(json) {\n if (typeof json === 'object' && json !== null) {\n if (Array.isArray(json)) {\n return `<span class=\"json-preview\">[${json.length} items]</span>`;\n }\n const keys = Object.keys(json);\n return `<span class=\"json-preview\">{${keys.length} keys}</span>`;\n }\n return this.renderValue(json);\n }\n renderExpanded(json, depth = 0) {\n if (depth >= this.maxDepth) {\n return this.renderCollapsed(json);\n }\n if (typeof json === 'object' && json !== null) {\n if (Array.isArray(json)) {\n const items = json.map((item, i) => {\n const value = this.renderExpanded(item, depth + 1);\n return `<div class=\"json-line\"><span class=\"json-key\">${i}:</span> ${value}</div>`;\n }).join('');\n return `<div class=\"json-object\">[${items}]</div>`;\n }\n const entries = Object.entries(json).map(([key, value]) => {\n const renderedValue = this.renderExpanded(value, depth + 1);\n return `<div class=\"json-line\"><span class=\"json-key\">${key}:</span> ${renderedValue}</div>`;\n }).join('');\n return `<div class=\"json-object\">{${entries}}</div>`;\n }\n return this.renderValue(json);\n }\n renderValue(value) {\n if (value === null)\n return '<span class=\"json-null\">null</span>';\n if (value === undefined)\n return '<span class=\"json-undefined\">undefined</span>';\n if (typeof value === 'boolean')\n return `<span class=\"json-boolean\">${value}</span>`;\n if (typeof value === 'number')\n return `<span class=\"json-number\">${value}</span>`;\n if (typeof value === 'string')\n return `<span class=\"json-string\">\"${value}\"</span>`;\n return String(value);\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, null));\n this.collapsed = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _collapsed_initializers, true));\n this.maxDepth = (__runInitializers(this, _collapsed_extraInitializers), __runInitializers(this, _maxDepth_initializers, 3));\n this.showToggle = (__runInitializers(this, _maxDepth_extraInitializers), __runInitializers(this, _showToggle_initializers, true));\n this.column = (__runInitializers(this, _showToggle_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'json'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellJson };\n//# sourceMappingURL=snice-cell-json.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, html, css } from 'snice';\nimport { c as cssContent } from '../snice-cell-D9dSe0d4.js';\n\nlet SniceCellCurrency = (() => {\n let _classDecorators = [element('snice-cell-currency')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _decimals_decorators;\n let _decimals_initializers = [];\n let _decimals_extraInitializers = [];\n let _thousandsSeparator_decorators;\n let _thousandsSeparator_initializers = [];\n let _thousandsSeparator_extraInitializers = [];\n let _currency_decorators;\n let _currency_initializers = [];\n let _currency_extraInitializers = [];\n let _currencyDisplay_decorators;\n let _currencyDisplay_initializers = [];\n let _currencyDisplay_extraInitializers = [];\n let _locale_decorators;\n let _locale_initializers = [];\n let _locale_extraInitializers = [];\n let _negativeStyle_decorators;\n let _negativeStyle_initializers = [];\n let _negativeStyle_extraInitializers = [];\n let _highlight_decorators;\n let _highlight_initializers = [];\n let _highlight_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _decimals_decorators = [property({ type: Number })];\n _thousandsSeparator_decorators = [property({ type: Boolean, attribute: 'thousands-separator' })];\n _currency_decorators = [property({ type: String })];\n _currencyDisplay_decorators = [property({ type: String })];\n _locale_decorators = [property({ type: String })];\n _negativeStyle_decorators = [property({ type: String, attribute: 'negative-style' })];\n _highlight_decorators = [property({ type: Boolean })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _decimals_decorators, { kind: \"field\", name: \"decimals\", static: false, private: false, access: { has: obj => \"decimals\" in obj, get: obj => obj.decimals, set: (obj, value) => { obj.decimals = value; } }, metadata: _metadata }, _decimals_initializers, _decimals_extraInitializers);\n __esDecorate(null, null, _thousandsSeparator_decorators, { kind: \"field\", name: \"thousandsSeparator\", static: false, private: false, access: { has: obj => \"thousandsSeparator\" in obj, get: obj => obj.thousandsSeparator, set: (obj, value) => { obj.thousandsSeparator = value; } }, metadata: _metadata }, _thousandsSeparator_initializers, _thousandsSeparator_extraInitializers);\n __esDecorate(null, null, _currency_decorators, { kind: \"field\", name: \"currency\", static: false, private: false, access: { has: obj => \"currency\" in obj, get: obj => obj.currency, set: (obj, value) => { obj.currency = value; } }, metadata: _metadata }, _currency_initializers, _currency_extraInitializers);\n __esDecorate(null, null, _currencyDisplay_decorators, { kind: \"field\", name: \"currencyDisplay\", static: false, private: false, access: { has: obj => \"currencyDisplay\" in obj, get: obj => obj.currencyDisplay, set: (obj, value) => { obj.currencyDisplay = value; } }, metadata: _metadata }, _currencyDisplay_initializers, _currencyDisplay_extraInitializers);\n __esDecorate(null, null, _locale_decorators, { kind: \"field\", name: \"locale\", static: false, private: false, access: { has: obj => \"locale\" in obj, get: obj => obj.locale, set: (obj, value) => { obj.locale = value; } }, metadata: _metadata }, _locale_initializers, _locale_extraInitializers);\n __esDecorate(null, null, _negativeStyle_decorators, { kind: \"field\", name: \"negativeStyle\", static: false, private: false, access: { has: obj => \"negativeStyle\" in obj, get: obj => obj.negativeStyle, set: (obj, value) => { obj.negativeStyle = value; } }, metadata: _metadata }, _negativeStyle_initializers, _negativeStyle_extraInitializers);\n __esDecorate(null, null, _highlight_decorators, { kind: \"field\", name: \"highlight\", static: false, private: false, access: { has: obj => \"highlight\" in obj, get: obj => obj.highlight, set: (obj, value) => { obj.highlight = value; } }, metadata: _metadata }, _highlight_initializers, _highlight_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const formattedValue = this.formatCurrencyValue();\n const styles = this.getCurrencyStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--number\" part=\"content\" style=\"${styles}\">\n ${formattedValue}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const formattedValue = this.formatCurrencyValue();\n const styles = this.getCurrencyStyles();\n this.contentElement.innerHTML = formattedValue;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatCurrencyValue() {\n if (this.value === null || this.value === undefined || this.value === '') {\n return '';\n }\n // Use custom formatter if provided\n if (this.column.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Use column currency format or component properties\n const format = this.column.currencyFormat || {\n decimals: this.decimals,\n currency: this.currency,\n currencyDisplay: this.currencyDisplay,\n locale: this.locale,\n negativeStyle: this.negativeStyle\n };\n const num = Number(this.value);\n if (isNaN(num)) {\n return String(this.value);\n }\n try {\n const formatter = new Intl.NumberFormat(format.locale || this.locale, {\n style: 'currency',\n currency: format.currency || this.currency,\n currencyDisplay: format.currencyDisplay || this.currencyDisplay,\n minimumFractionDigits: format.decimals ?? this.decimals,\n maximumFractionDigits: format.decimals ?? this.decimals\n });\n let formatted = formatter.format(Math.abs(num));\n // Handle negative numbers\n if (num < 0) {\n const negStyle = format.negativeStyle ?? this.negativeStyle;\n if (negStyle === 'parentheses') {\n formatted = `(${formatted})`;\n }\n else if (negStyle === 'red') {\n formatted = `-${formatted}`;\n }\n else {\n formatted = `-${formatted}`;\n }\n }\n return formatted;\n }\n catch (error) {\n // Fallback to basic formatting if Intl.NumberFormat fails\n let formatted = num.toFixed(format.decimals ?? this.decimals);\n if (this.thousandsSeparator) {\n const parts = formatted.split('.');\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\n formatted = parts.join('.');\n }\n return `$${formatted}`;\n }\n }\n getCurrencyStyles() {\n const num = Number(this.value);\n // Remove existing number classes\n this.classList.remove('number--negative', 'number--positive', 'number--zero', 'number--highlighted');\n // Apply CSS classes instead of direct styles\n if (num < 0) {\n this.classList.add('number--negative');\n const negStyle = this.column.currencyFormat?.negativeStyle ?? this.negativeStyle;\n if (negStyle === 'red') {\n this.classList.add('number--negative-red');\n }\n }\n else if (num > 0) {\n this.classList.add('number--positive');\n if (this.highlight) {\n this.classList.add('number--highlighted');\n }\n }\n else if (num === 0) {\n this.classList.add('number--zero');\n }\n return 'text-align: right';\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'currency'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, {\n key: '',\n label: '',\n type: 'currency',\n align: 'right'\n }));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.decimals = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _decimals_initializers, 2));\n this.thousandsSeparator = (__runInitializers(this, _decimals_extraInitializers), __runInitializers(this, _thousandsSeparator_initializers, true));\n this.currency = (__runInitializers(this, _thousandsSeparator_extraInitializers), __runInitializers(this, _currency_initializers, 'USD'));\n this.currencyDisplay = (__runInitializers(this, _currency_extraInitializers), __runInitializers(this, _currencyDisplay_initializers, 'symbol'));\n this.locale = (__runInitializers(this, _currencyDisplay_extraInitializers), __runInitializers(this, _locale_initializers, 'en-US'));\n this.negativeStyle = (__runInitializers(this, _locale_extraInitializers), __runInitializers(this, _negativeStyle_initializers, 'red'));\n this.highlight = (__runInitializers(this, _negativeStyle_extraInitializers), __runInitializers(this, _highlight_initializers, false));\n __runInitializers(this, _highlight_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellCurrency };\n//# sourceMappingURL=snice-cell-currency.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, query, render, styles, ready, watch, unsafeHTML, html, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem;font-variant-numeric:tabular-nums}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;word-wrap:break-word;display:flex;align-items:center;justify-content:flex-end;gap:.375rem}.cell-content--percentage{font-feature-settings:'tnum'}.percentage-trend{display:inline-flex;align-items:center;font-size:1rem;margin-left:.25rem}:host(.percentage--positive){color:var(--snice-color-success)}:host(.percentage--negative){color:var(--snice-color-danger)}:host(.percentage--zero){color:var(--snice-color-text-secondary)}:host(.percentage--trend-up) .percentage-trend{color:var(--snice-color-success)}:host(.percentage--trend-down) .percentage-trend{color:var(--snice-color-danger)}:host(.percentage--trend-neutral) .percentage-trend{color:var(--snice-color-text-secondary)}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.percentage-trend{font-size:.875rem}}@media print{:host{color:var(--snice-color-text);font-size:.75rem}.percentage-trend{font-size:.875rem}}\";\n\nlet SniceCellPercentage = (() => {\n let _classDecorators = [element('snice-cell-percentage')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _contentElement_decorators;\n let _contentElement_initializers = [];\n let _contentElement_extraInitializers = [];\n let _decimals_decorators;\n let _decimals_initializers = [];\n let _decimals_extraInitializers = [];\n let _showTrend_decorators;\n let _showTrend_initializers = [];\n let _showTrend_extraInitializers = [];\n let _trendValue_decorators;\n let _trendValue_initializers = [];\n let _trendValue_extraInitializers = [];\n let _colorize_decorators;\n let _colorize_initializers = [];\n let _colorize_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateAlignment_decorators;\n let _updateContent_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _value_decorators = [property({})];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _contentElement_decorators = [query('.cell-content')];\n _decimals_decorators = [property({ type: Number })];\n _showTrend_decorators = [property({ type: Boolean })];\n _trendValue_decorators = [property({ type: Number })];\n _colorize_decorators = [property({ type: Boolean })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateAlignment_decorators = [watch('align')];\n _updateContent_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateAlignment_decorators, { kind: \"method\", name: \"updateAlignment\", static: false, private: false, access: { has: obj => \"updateAlignment\" in obj, get: obj => obj.updateAlignment }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateContent_decorators, { kind: \"method\", name: \"updateContent\", static: false, private: false, access: { has: obj => \"updateContent\" in obj, get: obj => obj.updateContent }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _contentElement_decorators, { kind: \"field\", name: \"contentElement\", static: false, private: false, access: { has: obj => \"contentElement\" in obj, get: obj => obj.contentElement, set: (obj, value) => { obj.contentElement = value; } }, metadata: _metadata }, _contentElement_initializers, _contentElement_extraInitializers);\n __esDecorate(null, null, _decimals_decorators, { kind: \"field\", name: \"decimals\", static: false, private: false, access: { has: obj => \"decimals\" in obj, get: obj => obj.decimals, set: (obj, value) => { obj.decimals = value; } }, metadata: _metadata }, _decimals_initializers, _decimals_extraInitializers);\n __esDecorate(null, null, _showTrend_decorators, { kind: \"field\", name: \"showTrend\", static: false, private: false, access: { has: obj => \"showTrend\" in obj, get: obj => obj.showTrend, set: (obj, value) => { obj.showTrend = value; } }, metadata: _metadata }, _showTrend_initializers, _showTrend_extraInitializers);\n __esDecorate(null, null, _trendValue_decorators, { kind: \"field\", name: \"trendValue\", static: false, private: false, access: { has: obj => \"trendValue\" in obj, get: obj => obj.trendValue, set: (obj, value) => { obj.trendValue = value; } }, metadata: _metadata }, _trendValue_initializers, _trendValue_extraInitializers);\n __esDecorate(null, null, _colorize_decorators, { kind: \"field\", name: \"colorize\", static: false, private: false, access: { has: obj => \"colorize\" in obj, get: obj => obj.colorize, set: (obj, value) => { obj.colorize = value; } }, metadata: _metadata }, _colorize_initializers, _colorize_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const formattedValue = this.formatPercentageValue();\n const trendArrow = this.getTrendArrow();\n const styles = this.getPercentageStyles();\n return html /*html*/ `\n <div class=\"cell-content cell-content--percentage\" part=\"content\" style=\"${styles}\">\n ${formattedValue}\n ${this.showTrend && trendArrow ? unsafeHTML(`<span class=\"percentage-trend\">${trendArrow}</span>`) : ''}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.applyAlignment();\n }\n applyAlignment() {\n this.style.textAlign = this.align;\n }\n updateAlignment() {\n this.applyAlignment();\n }\n updateContent() {\n if (this.contentElement) {\n const formattedValue = this.formatPercentageValue();\n const trendArrow = this.getTrendArrow();\n const styles = this.getPercentageStyles();\n const trendHTML = this.showTrend && trendArrow\n ? `<span class=\"percentage-trend\">${trendArrow}</span>`\n : '';\n this.contentElement.innerHTML = formattedValue + trendHTML;\n this.contentElement.setAttribute('style', styles);\n }\n }\n formatPercentageValue() {\n if (this.value === null || this.value === undefined || this.value === '') {\n return '';\n }\n // Use custom formatter if provided\n if (this.column?.formatter) {\n return this.column.formatter(this.value, this.rowData);\n }\n // Use column percentage format or component properties\n const format = this.column?.percentageFormat || {\n decimals: this.decimals,\n showTrend: this.showTrend,\n trendValue: this.trendValue,\n colorize: this.colorize\n };\n const num = Number(this.value);\n if (isNaN(num)) {\n return String(this.value);\n }\n const formatted = num.toFixed(format.decimals ?? this.decimals);\n return `${formatted}%`;\n }\n getTrendArrow() {\n const trend = this.column?.percentageFormat?.trendValue ?? this.trendValue;\n if (trend === null || trend === undefined) {\n return '';\n }\n if (trend > 0) {\n return '↑';\n }\n else if (trend < 0) {\n return '↓';\n }\n return '→';\n }\n getPercentageStyles() {\n const num = Number(this.value);\n const shouldColorize = this.column?.percentageFormat?.colorize ?? this.colorize;\n // Remove existing classes\n this.classList.remove('percentage--positive', 'percentage--negative', 'percentage--zero');\n if (shouldColorize) {\n if (num > 0) {\n this.classList.add('percentage--positive');\n }\n else if (num < 0) {\n this.classList.add('percentage--negative');\n }\n else if (num === 0) {\n this.classList.add('percentage--zero');\n }\n }\n // Apply trend arrow color\n const trend = this.column?.percentageFormat?.trendValue ?? this.trendValue;\n this.classList.remove('percentage--trend-up', 'percentage--trend-down', 'percentage--trend-neutral');\n if (trend !== null && trend !== undefined) {\n if (trend > 0) {\n this.classList.add('percentage--trend-up');\n }\n else if (trend < 0) {\n this.classList.add('percentage--trend-down');\n }\n else {\n this.classList.add('percentage--trend-neutral');\n }\n }\n return 'text-align: right';\n }\n constructor() {\n super(...arguments);\n this.align = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _align_initializers, 'right'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'percentage'));\n this.value = (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _value_initializers, ''));\n this.column = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.contentElement = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _contentElement_initializers, void 0));\n this.decimals = (__runInitializers(this, _contentElement_extraInitializers), __runInitializers(this, _decimals_initializers, 2));\n this.showTrend = (__runInitializers(this, _decimals_extraInitializers), __runInitializers(this, _showTrend_initializers, false));\n this.trendValue = (__runInitializers(this, _showTrend_extraInitializers), __runInitializers(this, _trendValue_initializers, null));\n this.colorize = (__runInitializers(this, _trendValue_extraInitializers), __runInitializers(this, _colorize_initializers, true));\n __runInitializers(this, _colorize_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellPercentage };\n//# sourceMappingURL=snice-cell-percentage.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, html, unsafeHTML, css } from 'snice';\n\nvar cssContent = \":host{color:var(--snice-color-text);display:flex;align-items:center;min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem;display:flex;align-items:center;gap:.375rem}.location-icon{display:inline-flex;align-items:center;font-size:.875rem;opacity:.7;flex-shrink:0}.location-link{color:var(--snice-color-primary);text-decoration:none;transition:color .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-link:hover{color:var(--snice-color-primary-dark);text-decoration:underline}.location-link:focus{outline:2px solid var(--snice-color-primary);outline-offset:2px;border-radius:2px}.location-link:visited{color:var(--snice-color-secondary)}.location-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--snice-color-text)}.location-empty{color:var(--snice-color-text-secondary);font-style:italic}:host([align=left]) .cell-content{justify-content:flex-start}:host([align=center]) .cell-content{justify-content:center}:host([align=right]) .cell-content{justify-content:flex-end}@media (max-width:768px){:host{color:var(--snice-color-text);font-size:.75rem;line-height:1rem}.location-icon{font-size:.75rem}}@media print{.location-link{text-decoration:underline}.location-link::after{content:\\\" (\\\" attr(href) \\\")\\\";font-size:.75rem;color:var(--snice-color-text-secondary)}.location-icon{display:none}}\";\n\nlet SniceCellLocation = (() => {\n let _classDecorators = [element('snice-cell-location')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _value_decorators;\n let _value_initializers = [];\n let _value_extraInitializers = [];\n let _address_decorators;\n let _address_initializers = [];\n let _address_extraInitializers = [];\n let _latitude_decorators;\n let _latitude_initializers = [];\n let _latitude_extraInitializers = [];\n let _longitude_decorators;\n let _longitude_initializers = [];\n let _longitude_extraInitializers = [];\n let _showMapLink_decorators;\n let _showMapLink_initializers = [];\n let _showMapLink_extraInitializers = [];\n let _mapProvider_decorators;\n let _mapProvider_initializers = [];\n let _mapProvider_extraInitializers = [];\n let _showIcon_decorators;\n let _showIcon_initializers = [];\n let _showIcon_extraInitializers = [];\n let _column_decorators;\n let _column_initializers = [];\n let _column_extraInitializers = [];\n let _rowData_decorators;\n let _rowData_initializers = [];\n let _rowData_extraInitializers = [];\n let _align_decorators;\n let _align_initializers = [];\n let _align_extraInitializers = [];\n let _type_decorators;\n let _type_initializers = [];\n let _type_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateLocationAttributes_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _value_decorators = [property({ type: String })];\n _address_decorators = [property({ type: String })];\n _latitude_decorators = [property({ type: String })];\n _longitude_decorators = [property({ type: String })];\n _showMapLink_decorators = [property({ type: Boolean })];\n _mapProvider_decorators = [property({ type: String })];\n _showIcon_decorators = [property({ type: Boolean })];\n _column_decorators = [property({ type: Object, attribute: false })];\n _rowData_decorators = [property({ type: Object, attribute: false })];\n _align_decorators = [property({ type: String })];\n _type_decorators = [property({ type: String })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateLocationAttributes_decorators = [watch('value', 'column')];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateLocationAttributes_decorators, { kind: \"method\", name: \"updateLocationAttributes\", static: false, private: false, access: { has: obj => \"updateLocationAttributes\" in obj, get: obj => obj.updateLocationAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _value_decorators, { kind: \"field\", name: \"value\", static: false, private: false, access: { has: obj => \"value\" in obj, get: obj => obj.value, set: (obj, value) => { obj.value = value; } }, metadata: _metadata }, _value_initializers, _value_extraInitializers);\n __esDecorate(null, null, _address_decorators, { kind: \"field\", name: \"address\", static: false, private: false, access: { has: obj => \"address\" in obj, get: obj => obj.address, set: (obj, value) => { obj.address = value; } }, metadata: _metadata }, _address_initializers, _address_extraInitializers);\n __esDecorate(null, null, _latitude_decorators, { kind: \"field\", name: \"latitude\", static: false, private: false, access: { has: obj => \"latitude\" in obj, get: obj => obj.latitude, set: (obj, value) => { obj.latitude = value; } }, metadata: _metadata }, _latitude_initializers, _latitude_extraInitializers);\n __esDecorate(null, null, _longitude_decorators, { kind: \"field\", name: \"longitude\", static: false, private: false, access: { has: obj => \"longitude\" in obj, get: obj => obj.longitude, set: (obj, value) => { obj.longitude = value; } }, metadata: _metadata }, _longitude_initializers, _longitude_extraInitializers);\n __esDecorate(null, null, _showMapLink_decorators, { kind: \"field\", name: \"showMapLink\", static: false, private: false, access: { has: obj => \"showMapLink\" in obj, get: obj => obj.showMapLink, set: (obj, value) => { obj.showMapLink = value; } }, metadata: _metadata }, _showMapLink_initializers, _showMapLink_extraInitializers);\n __esDecorate(null, null, _mapProvider_decorators, { kind: \"field\", name: \"mapProvider\", static: false, private: false, access: { has: obj => \"mapProvider\" in obj, get: obj => obj.mapProvider, set: (obj, value) => { obj.mapProvider = value; } }, metadata: _metadata }, _mapProvider_initializers, _mapProvider_extraInitializers);\n __esDecorate(null, null, _showIcon_decorators, { kind: \"field\", name: \"showIcon\", static: false, private: false, access: { has: obj => \"showIcon\" in obj, get: obj => obj.showIcon, set: (obj, value) => { obj.showIcon = value; } }, metadata: _metadata }, _showIcon_initializers, _showIcon_extraInitializers);\n __esDecorate(null, null, _column_decorators, { kind: \"field\", name: \"column\", static: false, private: false, access: { has: obj => \"column\" in obj, get: obj => obj.column, set: (obj, value) => { obj.column = value; } }, metadata: _metadata }, _column_initializers, _column_extraInitializers);\n __esDecorate(null, null, _rowData_decorators, { kind: \"field\", name: \"rowData\", static: false, private: false, access: { has: obj => \"rowData\" in obj, get: obj => obj.rowData, set: (obj, value) => { obj.rowData = value; } }, metadata: _metadata }, _rowData_initializers, _rowData_extraInitializers);\n __esDecorate(null, null, _align_decorators, { kind: \"field\", name: \"align\", static: false, private: false, access: { has: obj => \"align\" in obj, get: obj => obj.align, set: (obj, value) => { obj.align = value; } }, metadata: _metadata }, _align_initializers, _align_extraInitializers);\n __esDecorate(null, null, _type_decorators, { kind: \"field\", name: \"type\", static: false, private: false, access: { has: obj => \"type\" in obj, get: obj => obj.type, set: (obj, value) => { obj.type = value; } }, metadata: _metadata }, _type_initializers, _type_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n render() {\n const locationValue = this.address || this.value;\n const iconHTML = this.showIcon ? '<span class=\"location-icon\">📍</span>' : '';\n const mapLink = this.getMapLink();\n if (!locationValue && !this.latitude && !this.longitude) {\n return html /*html*/ `\n <div class=\"cell-content cell-content--location\" part=\"content\">\n <span class=\"location-empty\"></span>\n </div>\n `;\n }\n const displayText = locationValue || `${this.latitude}, ${this.longitude}`;\n return html /*html*/ `\n <div class=\"cell-content cell-content--location\" part=\"content\">\n ${unsafeHTML(iconHTML)}\n ${this.showMapLink && mapLink\n ? html `<a href=\"${mapLink}\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"location-link\" part=\"link\">\n ${displayText}\n </a>`\n : html `<span class=\"location-text\">${displayText}</span>`}\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n this.updateLocationAttributes();\n }\n updateLocationAttributes() {\n if (this.column?.locationFormat) {\n const format = this.column.locationFormat;\n this.address = format.address || this.value;\n this.latitude = format.latitude ? String(format.latitude) : '';\n this.longitude = format.longitude ? String(format.longitude) : '';\n this.showMapLink = format.showMapLink ?? true;\n this.mapProvider = format.mapProvider || 'google';\n this.showIcon = format.showIcon ?? true;\n }\n }\n getMapLink() {\n if (!this.showMapLink) {\n return '';\n }\n const address = this.address || this.value;\n const lat = this.latitude;\n const lon = this.longitude;\n switch (this.mapProvider) {\n case 'google':\n if (lat && lon) {\n return `https://www.google.com/maps?q=${lat},${lon}`;\n }\n if (address) {\n return `https://www.google.com/maps/search/?api=1&query=${encodeURIComponent(address)}`;\n }\n return '';\n case 'openstreetmap':\n if (lat && lon) {\n return `https://www.openstreetmap.org/?mlat=${lat}&mlon=${lon}&zoom=15`;\n }\n if (address) {\n return `https://www.openstreetmap.org/search?query=${encodeURIComponent(address)}`;\n }\n return '';\n case 'apple':\n if (lat && lon) {\n return `https://maps.apple.com/?ll=${lat},${lon}`;\n }\n if (address) {\n return `https://maps.apple.com/?address=${encodeURIComponent(address)}`;\n }\n return '';\n default:\n return '';\n }\n }\n constructor() {\n super(...arguments);\n this.value = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _value_initializers, ''));\n this.address = (__runInitializers(this, _value_extraInitializers), __runInitializers(this, _address_initializers, ''));\n this.latitude = (__runInitializers(this, _address_extraInitializers), __runInitializers(this, _latitude_initializers, ''));\n this.longitude = (__runInitializers(this, _latitude_extraInitializers), __runInitializers(this, _longitude_initializers, ''));\n this.showMapLink = (__runInitializers(this, _longitude_extraInitializers), __runInitializers(this, _showMapLink_initializers, true));\n this.mapProvider = (__runInitializers(this, _showMapLink_extraInitializers), __runInitializers(this, _mapProvider_initializers, 'google'));\n this.showIcon = (__runInitializers(this, _mapProvider_extraInitializers), __runInitializers(this, _showIcon_initializers, true));\n this.column = (__runInitializers(this, _showIcon_extraInitializers), __runInitializers(this, _column_initializers, null));\n this.rowData = (__runInitializers(this, _column_extraInitializers), __runInitializers(this, _rowData_initializers, null));\n this.align = (__runInitializers(this, _rowData_extraInitializers), __runInitializers(this, _align_initializers, 'left'));\n this.type = (__runInitializers(this, _align_extraInitializers), __runInitializers(this, _type_initializers, 'location'));\n __runInitializers(this, _type_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceCellLocation };\n//# sourceMappingURL=snice-cell-location.js.map\n","import { __esDecorate, __runInitializers } from 'tslib';\nimport { element, property, render, styles, ready, watch, dispatch, html, css, unsafeHTML } from 'snice';\nimport './snice-cell.js';\nimport './snice-cell-text.js';\nimport './snice-cell-number.js';\nimport './snice-cell-date.js';\nimport './snice-cell-sparkline.js';\nimport './snice-cell-link.js';\nimport './snice-cell-actions.js';\nimport './snice-cell-tag.js';\nimport './snice-cell-image.js';\nimport './snice-cell-email.js';\nimport './snice-cell-phone.js';\nimport './snice-cell-status.js';\nimport './snice-cell-color.js';\nimport './snice-cell-json.js';\nimport './snice-cell-currency.js';\nimport './snice-cell-percentage.js';\nimport './snice-cell-location.js';\nimport '../snice-cell-D9dSe0d4.js';\n\nvar cssContent = \":host{display:block;width:100%;min-height:2.5rem}.row-container{display:flex;align-items:stretch;width:100%;min-height:2.5rem;height:2.5rem;background:0 0;color:var(--snice-color-text);border-bottom:1px solid var(--snice-color-border);transition:background-color .15s}.cell{display:flex;align-items:center;border-right:1px solid var(--snice-color-border);min-height:2.5rem;height:2.5rem;min-width:6.25rem;flex:1;word-wrap:break-word;overflow:hidden;color:var(--snice-color-text)}.cell:last-child{border-right:none}.cell--checkbox{width:3rem;min-width:3rem;max-width:3rem;padding:.75rem;justify-content:center}.row-checkbox{width:1rem;height:1rem;cursor:pointer}.cells-container{display:flex;flex:1;align-items:stretch}.cell--text{text-align:left}.cell--accounting,.cell--currency,.cell--fraction,.cell--number,.cell--percent,.cell--scientific{text-align:right;font-variant-numeric:tabular-nums}.cell--date{min-width:8rem;font-variant-numeric:tabular-nums}.cell--boolean{text-align:center;font-size:1rem}.cell--rating{text-align:center;min-width:6rem}.cell--progress{min-width:8rem}.cell--sparkline{text-align:center;min-width:6rem}.cell--duration,.cell--filesize{text-align:right;font-variant-numeric:tabular-nums}:host(.row--hoverable) .row-container:hover{background-color:var(--snice-color-background-secondary)}:host(.row--clickable) .row-container{cursor:pointer}:host(.row--clickable) .row-container:hover{background-color:var(--snice-color-background-tertiary)}:host(.row--selected) .row-container{background-color:var(--snice-color-primary-light)}:host(.row--selected.row--hoverable) .row-container:hover{background-color:var(--snice-color-primary-lighter)}:host(.row--highlighted) .row-container{background-color:var(--snice-color-warning-light)!important;animation:2s ease-out row-highlight-fade}@keyframes row-highlight-fade{0%{background-color:var(--snice-color-warning-lighter)}100%{background-color:var(--snice-color-warning-light)}}:host(:focus) .row-container{outline:2px solid var(--snice-color-primary);outline-offset:-2px}:host(.row--selectable){tabindex:0}:host(.row--striped) .row-container{background-color:var(--snice-color-background-secondary)}:host(.row--bordered) .row-container{border-bottom:1px solid var(--snice-color-border)}:host(.row--small) .cell{padding:.5rem .75rem;min-height:2rem;font-size:.75rem}:host(.row--small) .row-container{min-height:2rem}:host(.row--large) .cell{padding:1rem 1.25rem;min-height:3.5rem;font-size:1rem}:host(.row--large) .row-container{min-height:3.5rem}@media (max-width:768px){.cell{padding:.5rem .75rem;font-size:.875rem}.cell--checkbox{width:2.5rem;min-width:2.5rem;max-width:2.5rem;padding:.5rem}.row-checkbox{width:.875rem;height:.875rem}}:host(.row--loading) .row-container{opacity:.6;pointer-events:none}:host(.row--loading) .row-container::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,hsl(0 0% 100% / .6),transparent);animation:1.5s infinite loading-shimmer}@keyframes loading-shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}@media (prefers-reduced-motion:reduce){.row-container{transition:none}:host(.row--highlighted) .row-container{animation:none;background-color:var(--snice-color-warning-light)!important}:host(.row--loading) .row-container::after{animation:none}}@media (prefers-contrast:high){.cell{border-right:1px solid}.row-container{border-bottom:1px solid}:host(.row--selected) .row-container{border:2px solid}}\";\n\nlet SniceRow = (() => {\n let _classDecorators = [element('snice-row')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _selected_decorators;\n let _selected_initializers = [];\n let _selected_extraInitializers = [];\n let _hoverable_decorators;\n let _hoverable_initializers = [];\n let _hoverable_extraInitializers = [];\n let _clickable_decorators;\n let _clickable_initializers = [];\n let _clickable_extraInitializers = [];\n let _selectable_decorators;\n let _selectable_initializers = [];\n let _selectable_extraInitializers = [];\n let _data_decorators;\n let _data_initializers = [];\n let _data_extraInitializers = [];\n let _index_decorators;\n let _index_initializers = [];\n let _index_extraInitializers = [];\n let _columns_decorators;\n let _columns_initializers = [];\n let _columns_extraInitializers = [];\n let _render_decorators;\n let _styles_decorators;\n let _init_decorators;\n let _updateSelection_decorators;\n let _updateRowAttributes_decorators;\n let _updateCells_decorators;\n let _dispatchRowClick_decorators;\n let _dispatchRowSelect_decorators;\n let _dispatchRowHover_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _selected_decorators = [property({ type: Boolean, })];\n _hoverable_decorators = [property({ type: Boolean, })];\n _clickable_decorators = [property({ type: Boolean, })];\n _selectable_decorators = [property({ type: Boolean, })];\n _data_decorators = [property({ type: Object, attribute: false })];\n _index_decorators = [property({ type: Number, })];\n _columns_decorators = [property({ type: Array, attribute: false })];\n _render_decorators = [render()];\n _styles_decorators = [styles()];\n _init_decorators = [ready()];\n _updateSelection_decorators = [watch('selected')];\n _updateRowAttributes_decorators = [watch('hoverable', 'clickable', 'selectable')];\n _updateCells_decorators = [watch('data', 'columns')];\n _dispatchRowClick_decorators = [dispatch('row-click', { bubbles: true, composed: true })];\n _dispatchRowSelect_decorators = [dispatch('row-select', { bubbles: true, composed: true })];\n _dispatchRowHover_decorators = [dispatch('row-hover', { bubbles: true, composed: true })];\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _init_decorators, { kind: \"method\", name: \"init\", static: false, private: false, access: { has: obj => \"init\" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateSelection_decorators, { kind: \"method\", name: \"updateSelection\", static: false, private: false, access: { has: obj => \"updateSelection\" in obj, get: obj => obj.updateSelection }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateRowAttributes_decorators, { kind: \"method\", name: \"updateRowAttributes\", static: false, private: false, access: { has: obj => \"updateRowAttributes\" in obj, get: obj => obj.updateRowAttributes }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _updateCells_decorators, { kind: \"method\", name: \"updateCells\", static: false, private: false, access: { has: obj => \"updateCells\" in obj, get: obj => obj.updateCells }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchRowClick_decorators, { kind: \"method\", name: \"dispatchRowClick\", static: false, private: false, access: { has: obj => \"dispatchRowClick\" in obj, get: obj => obj.dispatchRowClick }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchRowSelect_decorators, { kind: \"method\", name: \"dispatchRowSelect\", static: false, private: false, access: { has: obj => \"dispatchRowSelect\" in obj, get: obj => obj.dispatchRowSelect }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchRowHover_decorators, { kind: \"method\", name: \"dispatchRowHover\", static: false, private: false, access: { has: obj => \"dispatchRowHover\" in obj, get: obj => obj.dispatchRowHover }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _selected_decorators, { kind: \"field\", name: \"selected\", static: false, private: false, access: { has: obj => \"selected\" in obj, get: obj => obj.selected, set: (obj, value) => { obj.selected = value; } }, metadata: _metadata }, _selected_initializers, _selected_extraInitializers);\n __esDecorate(null, null, _hoverable_decorators, { kind: \"field\", name: \"hoverable\", static: false, private: false, access: { has: obj => \"hoverable\" in obj, get: obj => obj.hoverable, set: (obj, value) => { obj.hoverable = value; } }, metadata: _metadata }, _hoverable_initializers, _hoverable_extraInitializers);\n __esDecorate(null, null, _clickable_decorators, { kind: \"field\", name: \"clickable\", static: false, private: false, access: { has: obj => \"clickable\" in obj, get: obj => obj.clickable, set: (obj, value) => { obj.clickable = value; } }, metadata: _metadata }, _clickable_initializers, _clickable_extraInitializers);\n __esDecorate(null, null, _selectable_decorators, { kind: \"field\", name: \"selectable\", static: false, private: false, access: { has: obj => \"selectable\" in obj, get: obj => obj.selectable, set: (obj, value) => { obj.selectable = value; } }, metadata: _metadata }, _selectable_initializers, _selectable_extraInitializers);\n __esDecorate(null, null, _data_decorators, { kind: \"field\", name: \"data\", static: false, private: false, access: { has: obj => \"data\" in obj, get: obj => obj.data, set: (obj, value) => { obj.data = value; } }, metadata: _metadata }, _data_initializers, _data_extraInitializers);\n __esDecorate(null, null, _index_decorators, { kind: \"field\", name: \"index\", static: false, private: false, access: { has: obj => \"index\" in obj, get: obj => obj.index, set: (obj, value) => { obj.index = value; } }, metadata: _metadata }, _index_initializers, _index_extraInitializers);\n __esDecorate(null, null, _columns_decorators, { kind: \"field\", name: \"columns\", static: false, private: false, access: { has: obj => \"columns\" in obj, get: obj => obj.columns, set: (obj, value) => { obj.columns = value; } }, metadata: _metadata }, _columns_initializers, _columns_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n // Extract data from data-* attributes - pass raw values, let cells handle conversion\n extractDataFromAttributes() {\n const data = {};\n // Get all attribute names that start with data-\n const attrNames = this.getAttributeNames().filter(name => name.startsWith('data-') && name !== 'data-column-index');\n attrNames.forEach(attrName => {\n const key = attrName.slice(5); // Remove 'data-' prefix\n const value = this.getAttribute(attrName);\n if (value !== null) {\n data[key] = value; // Keep as raw string, let cells convert\n }\n });\n return data;\n }\n render() {\n return html /*html*/ `\n <div class=\"row-container\" part=\"container\" @click=${(e) => this.handleRowClick(e)} @keydown=${(e) => this.handleKeyDown(e)}>\n <if ${this.selectable}>\n ${this.renderCheckbox()}\n </if>\n <div class=\"cells-container\">\n <if ${this.columns && this.columns.length}>\n ${this.columns.map((column, columnIndex) => this.renderCell(column, columnIndex))}\n </if>\n <if ${!this.columns || !this.columns.length}>\n <!-- No columns set yet -->\n </if>\n </div>\n </div>\n `;\n }\n styles() {\n return css /*css*/ `${cssContent}`;\n }\n init() {\n // Extract data from data-* attributes if data object is empty\n if (!this.data || Object.keys(this.data).length === 0) {\n this.data = this.extractDataFromAttributes();\n }\n this.updateRowAttributes();\n this.configureCells();\n }\n configureCells() {\n if (!this.columns) {\n return;\n }\n this.columns.forEach((column, index) => {\n const cellElement = this.shadowRoot?.querySelector(`[data-column-index=\"${index}\"]`);\n if (cellElement) {\n const value = this.data[column.key];\n cellElement.value = value;\n cellElement.column = column;\n cellElement.rowData = this.data;\n // For sparkline cells, also set the data property if value is an array\n if (column.type === 'sparkline' && Array.isArray(value)) {\n cellElement.data = value;\n }\n }\n });\n }\n updateSelection() {\n this.updateRowAttributes();\n const checkbox = this.shadowRoot?.querySelector('.row-checkbox');\n if (checkbox) {\n checkbox.checked = this.selected;\n }\n }\n updateRowAttributes() {\n this.classList.toggle('row--hoverable', this.hoverable);\n this.classList.toggle('row--clickable', this.clickable);\n this.classList.toggle('row--selectable', this.selectable);\n this.classList.toggle('row--selected', this.selected);\n }\n updateCells() {\n // Re-render is handled automatically by @render decorator\n // Just need to reconfigure cells after the template updates\n setTimeout(() => this.configureCells(), 0);\n }\n handleRowClick(e) {\n const target = e.target;\n // Handle checkbox change separately\n if (target.matches('.row-checkbox')) {\n return; // Let the change event handle this\n }\n // Don't trigger row click if clicking on other interactive elements\n if (target.matches('button, a, .interactive')) {\n return;\n }\n if (this.clickable) {\n this.dispatchRowClick();\n }\n if (this.selectable) {\n this.toggleSelection();\n }\n }\n handleChange(e) {\n const target = e.target;\n if (!target.matches('.row-checkbox'))\n return;\n const checkbox = target;\n this.selected = checkbox.checked;\n this.dispatchRowSelect();\n }\n handleKeyDown(e) {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n if (this.selectable) {\n this.toggleSelection();\n }\n else if (this.clickable) {\n this.dispatchRowClick();\n }\n }\n }\n renderCheckbox() {\n return html /*html*/ `\n <div class=\"cell cell--checkbox\" part=\"checkbox-cell\">\n <input\n type=\"checkbox\"\n class=\"row-checkbox\"\n ?checked=${this.selected}\n tabindex=\"-1\"\n @change=${(e) => this.handleChange(e)}\n />\n </div>\n `;\n }\n renderCell(column, columnIndex) {\n this.data[column.key];\n const cellComponent = this.getCellComponent(column.type);\n return html /*html*/ `\n <div class=\"cell cell--${column.type}\" part=\"cell\" style=\"${this.getCellStyles(column)}\">\n ${unsafeHTML(`<${cellComponent}\n type=\"${column.type}\"\n align=\"${column.align || 'left'}\"\n data-column-index=\"${columnIndex}\"\n ></${cellComponent}>`)}\n </div>\n `;\n }\n getCellComponent(type) {\n switch (type) {\n case 'text':\n return 'snice-cell-text';\n case 'number':\n case 'accounting':\n case 'scientific':\n case 'fraction':\n return 'snice-cell-number';\n case 'date':\n return 'snice-cell-date';\n case 'boolean':\n return 'snice-cell-boolean';\n case 'sparkline':\n return 'snice-cell-sparkline';\n case 'rating':\n return 'snice-cell-rating';\n case 'progress':\n return 'snice-cell-progress';\n case 'duration':\n return 'snice-cell-duration';\n case 'filesize':\n return 'snice-cell-filesize';\n case 'link':\n case 'url':\n return 'snice-cell-link';\n case 'actions':\n return 'snice-cell-actions';\n case 'tag':\n case 'tags':\n case 'badge':\n case 'badges':\n return 'snice-cell-tag';\n case 'image':\n case 'avatar':\n case 'thumbnail':\n return 'snice-cell-image';\n case 'email':\n return 'snice-cell-email';\n case 'phone':\n case 'tel':\n case 'telephone':\n return 'snice-cell-phone';\n case 'status':\n return 'snice-cell-status';\n case 'color':\n return 'snice-cell-color';\n case 'json':\n case 'object':\n return 'snice-cell-json';\n case 'currency':\n case 'money':\n return 'snice-cell-currency';\n case 'percent':\n case 'percentage':\n return 'snice-cell-percentage';\n case 'location':\n case 'address':\n case 'coordinates':\n return 'snice-cell-location';\n case 'custom':\n default:\n return 'snice-cell';\n }\n }\n getCellStyles(column) {\n let styles = [];\n if (column.width) {\n styles.push(`width: ${column.width}`);\n styles.push(`min-width: ${column.width}`);\n styles.push(`max-width: ${column.width}`);\n }\n if (column.align) {\n styles.push(`text-align: ${column.align}`);\n }\n return styles.join('; ');\n }\n escapeHtml(value) {\n if (value === null || value === undefined) {\n return '';\n }\n const str = String(value);\n const div = document.createElement('div');\n div.textContent = str;\n return div.innerHTML;\n }\n toggleSelection() {\n this.selected = !this.selected;\n this.dispatchRowSelect();\n }\n dispatchRowClick() {\n return {\n data: this.data,\n index: this.index,\n element: this\n };\n }\n dispatchRowSelect() {\n return {\n selected: this.selected,\n data: this.data,\n index: this.index,\n element: this\n };\n }\n dispatchRowHover() {\n return {\n data: this.data,\n index: this.index,\n element: this\n };\n }\n // Public API methods\n select() {\n this.selected = true;\n this.dispatchRowSelect();\n }\n deselect() {\n this.selected = false;\n this.dispatchRowSelect();\n }\n focusRow() {\n super.focus();\n this.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n }\n getCellValue(columnKey) {\n return this.data[columnKey];\n }\n setCellValue(columnKey, value) {\n this.data = { ...this.data, [columnKey]: value };\n this.updateCells();\n }\n getCellElement(columnKey) {\n const column = this.columns.find(col => col.key === columnKey);\n if (!column)\n return null;\n const columnIndex = this.columns.indexOf(column);\n return this.shadowRoot?.querySelector(`[data-column-index=\"${columnIndex}\"]`) || null;\n }\n // Highlight row temporarily (useful for showing updates)\n highlight(duration = 2000) {\n this.classList.add('row--highlighted');\n setTimeout(() => {\n this.classList.remove('row--highlighted');\n }, duration);\n }\n constructor() {\n super(...arguments);\n this.selected = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _selected_initializers, false));\n this.hoverable = (__runInitializers(this, _selected_extraInitializers), __runInitializers(this, _hoverable_initializers, true));\n this.clickable = (__runInitializers(this, _hoverable_extraInitializers), __runInitializers(this, _clickable_initializers, false));\n this.selectable = (__runInitializers(this, _clickable_extraInitializers), __runInitializers(this, _selectable_initializers, false));\n this.data = (__runInitializers(this, _selectable_extraInitializers), __runInitializers(this, _data_initializers, {}));\n this.index = (__runInitializers(this, _data_extraInitializers), __runInitializers(this, _index_initializers, 0));\n this.columns = (__runInitializers(this, _index_extraInitializers), __runInitializers(this, _columns_initializers, []));\n __runInitializers(this, _columns_extraInitializers);\n }\n });\n return _classThis;\n})();\n\nexport { SniceRow };\n//# sourceMappingURL=snice-row.js.map\n","import { __runInitializers, __esDecorate } from 'tslib';\nimport { element, property, query, request, styles, render, ready, watch, dispatch, css, html } from 'snice';\nimport '../input/snice-input.js';\nimport '../select/snice-select.js';\nimport './snice-cell.js';\nimport './snice-cell-text.js';\nimport './snice-cell-number.js';\nimport './snice-cell-date.js';\nimport './snice-cell-boolean.js';\nimport './snice-cell-rating.js';\nimport './snice-cell-progress.js';\nimport './snice-cell-duration.js';\nimport './snice-cell-filesize.js';\nimport './snice-cell-sparkline.js';\nimport './snice-column.js';\nimport './snice-row.js';\nimport '../utils.js';\nimport '../select/snice-option.js';\nimport '../snice-cell-D9dSe0d4.js';\nimport './snice-rating.js';\nimport './snice-progress.js';\nimport './snice-cell-link.js';\nimport './snice-cell-actions.js';\nimport './snice-cell-tag.js';\nimport './snice-cell-image.js';\nimport './snice-cell-email.js';\nimport './snice-cell-phone.js';\nimport './snice-cell-status.js';\nimport './snice-cell-color.js';\nimport './snice-cell-json.js';\nimport './snice-cell-currency.js';\nimport './snice-cell-percentage.js';\nimport './snice-cell-location.js';\n\nlet SniceTable = (() => {\n let _classDecorators = [element('snice-table')];\n let _classDescriptor;\n let _classExtraInitializers = [];\n let _classThis;\n let _classSuper = HTMLElement;\n let _instanceExtraInitializers = [];\n let _striped_decorators;\n let _striped_initializers = [];\n let _striped_extraInitializers = [];\n let _searchable_decorators;\n let _searchable_initializers = [];\n let _searchable_extraInitializers = [];\n let _filterable_decorators;\n let _filterable_initializers = [];\n let _filterable_extraInitializers = [];\n let _sortable_decorators;\n let _sortable_initializers = [];\n let _sortable_extraInitializers = [];\n let _selectable_decorators;\n let _selectable_initializers = [];\n let _selectable_extraInitializers = [];\n let _hoverable_decorators;\n let _hoverable_initializers = [];\n let _hoverable_extraInitializers = [];\n let _clickable_decorators;\n let _clickable_initializers = [];\n let _clickable_extraInitializers = [];\n let _list_decorators;\n let _list_initializers = [];\n let _list_extraInitializers = [];\n let _searchDebounce_decorators;\n let _searchDebounce_initializers = [];\n let _searchDebounce_extraInitializers = [];\n let _currentSort_decorators;\n let _currentSort_initializers = [];\n let _currentSort_extraInitializers = [];\n let _selector_decorators;\n let _selector_initializers = [];\n let _selector_extraInitializers = [];\n let _selectorOptions_decorators;\n let _selectorOptions_initializers = [];\n let _selectorOptions_extraInitializers = [];\n let _loading_decorators;\n let _loading_initializers = [];\n let _loading_extraInitializers = [];\n let _selectedRows_decorators;\n let _selectedRows_initializers = [];\n let _selectedRows_extraInitializers = [];\n let _table_decorators;\n let _table_initializers = [];\n let _table_extraInitializers = [];\n let _thead_decorators;\n let _thead_initializers = [];\n let _thead_extraInitializers = [];\n let _tbody_decorators;\n let _tbody_initializers = [];\n let _tbody_extraInitializers = [];\n let _getTableConfig_decorators;\n let _getTableData_decorators;\n let _styles_decorators;\n let _render_decorators;\n let _initialize_decorators;\n let _handleSelectorOptionsChange_decorators;\n let _handleSortableChange_decorators;\n let _handleSelectableChange_decorators;\n let _handleColumnsChange_decorators;\n let _handleDataChange_decorators;\n let _handleSelectedRowsChange_decorators;\n let _handleSortChange_decorators;\n let _handleControlsChange_decorators;\n let _dispatchRowSelectionChanged_decorators;\n let _dispatchSelectAllChanged_decorators;\n (class extends _classSuper {\n static { _classThis = this; }\n constructor() {\n super(...arguments);\n this.striped = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _striped_initializers, false));\n this.searchable = (__runInitializers(this, _striped_extraInitializers), __runInitializers(this, _searchable_initializers, false));\n this.filterable = (__runInitializers(this, _searchable_extraInitializers), __runInitializers(this, _filterable_initializers, false));\n this.sortable = (__runInitializers(this, _filterable_extraInitializers), __runInitializers(this, _sortable_initializers, false));\n this.selectable = (__runInitializers(this, _sortable_extraInitializers), __runInitializers(this, _selectable_initializers, false));\n this.hoverable = (__runInitializers(this, _selectable_extraInitializers), __runInitializers(this, _hoverable_initializers, true));\n this.clickable = (__runInitializers(this, _hoverable_extraInitializers), __runInitializers(this, _clickable_initializers, false));\n this.list = (__runInitializers(this, _clickable_extraInitializers), __runInitializers(this, _list_initializers, false));\n this.searchDebounce = (__runInitializers(this, _list_extraInitializers), __runInitializers(this, _searchDebounce_initializers, 500));\n // Plain properties - no reflection to attributes\n this.columns = (__runInitializers(this, _searchDebounce_extraInitializers), []);\n this.data = [];\n this.currentSort = __runInitializers(this, _currentSort_initializers, []);\n // Don't use @property decorator to avoid auto-rendering on searchText change\n // This would cause the input to lose focus while typing\n this.searchText = (__runInitializers(this, _currentSort_extraInitializers), '');\n this.selector = __runInitializers(this, _selector_initializers, '');\n this.selectorOptions = (__runInitializers(this, _selector_extraInitializers), __runInitializers(this, _selectorOptions_initializers, []));\n this.loading = (__runInitializers(this, _selectorOptions_extraInitializers), __runInitializers(this, _loading_initializers, false));\n this.selectedRows = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _selectedRows_initializers, []));\n this.table = (__runInitializers(this, _selectedRows_extraInitializers), __runInitializers(this, _table_initializers, void 0));\n this.thead = (__runInitializers(this, _table_extraInitializers), __runInitializers(this, _thead_initializers, void 0));\n this.tbody = (__runInitializers(this, _thead_extraInitializers), __runInitializers(this, _tbody_initializers, void 0));\n this._hasController = (__runInitializers(this, _tbody_extraInitializers), false);\n this._unsortedData = [];\n this.dataRequestTimeout = null;\n this.handleClick = (e) => {\n const target = e.target;\n // Handle sortable header click\n const th = target.closest('th.sortable');\n if (th) {\n const columnKey = th.getAttribute('data-key');\n if (columnKey) {\n this.toggleSort(columnKey, true); // Always multi-sort\n }\n return;\n }\n // Handle row click\n const tr = target.closest('tbody tr');\n if (tr) {\n // Don't trigger if clicking on checkbox or other interactive elements\n if (target.matches('input[type=\"checkbox\"], button, a, .interactive')) {\n return;\n }\n const rowIndex = parseInt(tr.getAttribute('data-index') || '0');\n const rowData = this.data[rowIndex];\n // Handle row selection if selectable\n if (this.selectable) {\n const isCurrentlySelected = this.selectedRows.includes(rowIndex);\n if (isCurrentlySelected) {\n this.selectedRows = this.selectedRows.filter(i => i !== rowIndex);\n }\n else {\n this.selectedRows = [...this.selectedRows, rowIndex];\n }\n this.updateRowSelectionState();\n this.updateSelectAllState();\n this.dispatchRowSelectionChanged(rowIndex, !isCurrentlySelected);\n }\n // Handle clickable row event\n if (this.clickable) {\n this.dispatchEvent(new CustomEvent('row-clicked', {\n detail: { rowData, rowIndex }\n }));\n }\n }\n };\n this.handleChange = (e) => {\n const target = e.target;\n // Handle row select checkbox\n if (target.matches('.row-select')) {\n const checkbox = target;\n const rowIndex = parseInt(checkbox.getAttribute('data-row-index') || '0');\n if (checkbox.checked) {\n if (!this.selectedRows.includes(rowIndex)) {\n this.selectedRows = [...this.selectedRows, rowIndex];\n }\n }\n else {\n this.selectedRows = this.selectedRows.filter(i => i !== rowIndex);\n }\n this.updateRowSelectionState();\n this.updateSelectAllState();\n this.dispatchRowSelectionChanged(rowIndex, checkbox.checked);\n return;\n }\n // Handle select all checkbox\n if (target.matches('.select-all')) {\n const checkbox = target;\n if (checkbox.checked) {\n this.selectedRows = this.data.map((_, index) => index);\n }\n else {\n this.selectedRows = [];\n }\n this.updateRowSelectionState();\n this.dispatchSelectAllChanged(checkbox.checked);\n }\n };\n this.onAttached = () => {\n this._hasController = true;\n this.getTableConfig();\n this.getTableData();\n };\n this.searchDebounceTimeout = null;\n this.handleSearchInput = (e) => {\n const target = e.target;\n const input = target;\n this.searchText = input.value;\n // Manual debounce implementation\n if (this.searchDebounceTimeout) {\n clearTimeout(this.searchDebounceTimeout);\n }\n this.searchDebounceTimeout = setTimeout(() => {\n this.debouncedDataRequest();\n }, this.searchDebounce);\n };\n this.selectorDebounceTimeout = null;\n this.handleSelectorChange = (e) => {\n this.selector = Array.isArray(e.detail.value) ? e.detail.value.join(',') : e.detail.value;\n // Manual debounce implementation\n if (this.selectorDebounceTimeout) {\n clearTimeout(this.selectorDebounceTimeout);\n }\n this.selectorDebounceTimeout = setTimeout(() => {\n this.debouncedDataRequest();\n }, 150);\n };\n }\n static {\n const _metadata = typeof Symbol === \"function\" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;\n _striped_decorators = [property({ type: Boolean, attribute: 'striped' })];\n _searchable_decorators = [property({ type: Boolean, attribute: 'searchable' })];\n _filterable_decorators = [property({ type: Boolean, attribute: 'filterable' })];\n _sortable_decorators = [property({ type: Boolean, attribute: 'sortable' })];\n _selectable_decorators = [property({ type: Boolean, attribute: 'selectable' })];\n _hoverable_decorators = [property({ type: Boolean, attribute: 'hoverable' })];\n _clickable_decorators = [property({ type: Boolean, attribute: 'clickable' })];\n _list_decorators = [property({ type: Boolean, attribute: 'list' })];\n _searchDebounce_decorators = [property({ type: Number, attribute: 'search-debounce' })];\n _currentSort_decorators = [property({ type: Array, attribute: false })];\n _selector_decorators = [property({ type: String, attribute: 'selector' })];\n _selectorOptions_decorators = [property({ type: Array, attribute: false })];\n _loading_decorators = [property({ type: Boolean, attribute: 'loading' })];\n _selectedRows_decorators = [property({ type: Array, attribute: false })];\n _table_decorators = [query('table')];\n _thead_decorators = [query('thead')];\n _tbody_decorators = [query('tbody')];\n _getTableConfig_decorators = [request('table/config')];\n _getTableData_decorators = [request('table/data')];\n _styles_decorators = [styles()];\n _render_decorators = [render()];\n _initialize_decorators = [ready()];\n _handleSelectorOptionsChange_decorators = [watch('selector-options')];\n _handleSortableChange_decorators = [watch('sortable')];\n _handleSelectableChange_decorators = [watch('selectable')];\n _handleColumnsChange_decorators = [watch('columns')];\n _handleDataChange_decorators = [watch('data', 'loading')];\n _handleSelectedRowsChange_decorators = [watch('selected-rows')];\n _handleSortChange_decorators = [watch('current-sort')];\n _handleControlsChange_decorators = [watch('searchable', 'filterable')];\n _dispatchRowSelectionChanged_decorators = [dispatch('table-row-selection-changed', { bubbles: true, composed: true })];\n _dispatchSelectAllChanged_decorators = [dispatch('table-select-all-changed', { bubbles: true, composed: true })];\n __esDecorate(this, null, _getTableConfig_decorators, { kind: \"method\", name: \"getTableConfig\", static: false, private: false, access: { has: obj => \"getTableConfig\" in obj, get: obj => obj.getTableConfig }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _getTableData_decorators, { kind: \"method\", name: \"getTableData\", static: false, private: false, access: { has: obj => \"getTableData\" in obj, get: obj => obj.getTableData }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _styles_decorators, { kind: \"method\", name: \"styles\", static: false, private: false, access: { has: obj => \"styles\" in obj, get: obj => obj.styles }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _render_decorators, { kind: \"method\", name: \"render\", static: false, private: false, access: { has: obj => \"render\" in obj, get: obj => obj.render }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _initialize_decorators, { kind: \"method\", name: \"initialize\", static: false, private: false, access: { has: obj => \"initialize\" in obj, get: obj => obj.initialize }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSelectorOptionsChange_decorators, { kind: \"method\", name: \"handleSelectorOptionsChange\", static: false, private: false, access: { has: obj => \"handleSelectorOptionsChange\" in obj, get: obj => obj.handleSelectorOptionsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSortableChange_decorators, { kind: \"method\", name: \"handleSortableChange\", static: false, private: false, access: { has: obj => \"handleSortableChange\" in obj, get: obj => obj.handleSortableChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSelectableChange_decorators, { kind: \"method\", name: \"handleSelectableChange\", static: false, private: false, access: { has: obj => \"handleSelectableChange\" in obj, get: obj => obj.handleSelectableChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleColumnsChange_decorators, { kind: \"method\", name: \"handleColumnsChange\", static: false, private: false, access: { has: obj => \"handleColumnsChange\" in obj, get: obj => obj.handleColumnsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleDataChange_decorators, { kind: \"method\", name: \"handleDataChange\", static: false, private: false, access: { has: obj => \"handleDataChange\" in obj, get: obj => obj.handleDataChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSelectedRowsChange_decorators, { kind: \"method\", name: \"handleSelectedRowsChange\", static: false, private: false, access: { has: obj => \"handleSelectedRowsChange\" in obj, get: obj => obj.handleSelectedRowsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleSortChange_decorators, { kind: \"method\", name: \"handleSortChange\", static: false, private: false, access: { has: obj => \"handleSortChange\" in obj, get: obj => obj.handleSortChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _handleControlsChange_decorators, { kind: \"method\", name: \"handleControlsChange\", static: false, private: false, access: { has: obj => \"handleControlsChange\" in obj, get: obj => obj.handleControlsChange }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchRowSelectionChanged_decorators, { kind: \"method\", name: \"dispatchRowSelectionChanged\", static: false, private: false, access: { has: obj => \"dispatchRowSelectionChanged\" in obj, get: obj => obj.dispatchRowSelectionChanged }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(this, null, _dispatchSelectAllChanged_decorators, { kind: \"method\", name: \"dispatchSelectAllChanged\", static: false, private: false, access: { has: obj => \"dispatchSelectAllChanged\" in obj, get: obj => obj.dispatchSelectAllChanged }, metadata: _metadata }, null, _instanceExtraInitializers);\n __esDecorate(null, null, _striped_decorators, { kind: \"field\", name: \"striped\", static: false, private: false, access: { has: obj => \"striped\" in obj, get: obj => obj.striped, set: (obj, value) => { obj.striped = value; } }, metadata: _metadata }, _striped_initializers, _striped_extraInitializers);\n __esDecorate(null, null, _searchable_decorators, { kind: \"field\", name: \"searchable\", static: false, private: false, access: { has: obj => \"searchable\" in obj, get: obj => obj.searchable, set: (obj, value) => { obj.searchable = value; } }, metadata: _metadata }, _searchable_initializers, _searchable_extraInitializers);\n __esDecorate(null, null, _filterable_decorators, { kind: \"field\", name: \"filterable\", static: false, private: false, access: { has: obj => \"filterable\" in obj, get: obj => obj.filterable, set: (obj, value) => { obj.filterable = value; } }, metadata: _metadata }, _filterable_initializers, _filterable_extraInitializers);\n __esDecorate(null, null, _sortable_decorators, { kind: \"field\", name: \"sortable\", static: false, private: false, access: { has: obj => \"sortable\" in obj, get: obj => obj.sortable, set: (obj, value) => { obj.sortable = value; } }, metadata: _metadata }, _sortable_initializers, _sortable_extraInitializers);\n __esDecorate(null, null, _selectable_decorators, { kind: \"field\", name: \"selectable\", static: false, private: false, access: { has: obj => \"selectable\" in obj, get: obj => obj.selectable, set: (obj, value) => { obj.selectable = value; } }, metadata: _metadata }, _selectable_initializers, _selectable_extraInitializers);\n __esDecorate(null, null, _hoverable_decorators, { kind: \"field\", name: \"hoverable\", static: false, private: false, access: { has: obj => \"hoverable\" in obj, get: obj => obj.hoverable, set: (obj, value) => { obj.hoverable = value; } }, metadata: _metadata }, _hoverable_initializers, _hoverable_extraInitializers);\n __esDecorate(null, null, _clickable_decorators, { kind: \"field\", name: \"clickable\", static: false, private: false, access: { has: obj => \"clickable\" in obj, get: obj => obj.clickable, set: (obj, value) => { obj.clickable = value; } }, metadata: _metadata }, _clickable_initializers, _clickable_extraInitializers);\n __esDecorate(null, null, _list_decorators, { kind: \"field\", name: \"list\", static: false, private: false, access: { has: obj => \"list\" in obj, get: obj => obj.list, set: (obj, value) => { obj.list = value; } }, metadata: _metadata }, _list_initializers, _list_extraInitializers);\n __esDecorate(null, null, _searchDebounce_decorators, { kind: \"field\", name: \"searchDebounce\", static: false, private: false, access: { has: obj => \"searchDebounce\" in obj, get: obj => obj.searchDebounce, set: (obj, value) => { obj.searchDebounce = value; } }, metadata: _metadata }, _searchDebounce_initializers, _searchDebounce_extraInitializers);\n __esDecorate(null, null, _currentSort_decorators, { kind: \"field\", name: \"currentSort\", static: false, private: false, access: { has: obj => \"currentSort\" in obj, get: obj => obj.currentSort, set: (obj, value) => { obj.currentSort = value; } }, metadata: _metadata }, _currentSort_initializers, _currentSort_extraInitializers);\n __esDecorate(null, null, _selector_decorators, { kind: \"field\", name: \"selector\", static: false, private: false, access: { has: obj => \"selector\" in obj, get: obj => obj.selector, set: (obj, value) => { obj.selector = value; } }, metadata: _metadata }, _selector_initializers, _selector_extraInitializers);\n __esDecorate(null, null, _selectorOptions_decorators, { kind: \"field\", name: \"selectorOptions\", static: false, private: false, access: { has: obj => \"selectorOptions\" in obj, get: obj => obj.selectorOptions, set: (obj, value) => { obj.selectorOptions = value; } }, metadata: _metadata }, _selectorOptions_initializers, _selectorOptions_extraInitializers);\n __esDecorate(null, null, _loading_decorators, { kind: \"field\", name: \"loading\", static: false, private: false, access: { has: obj => \"loading\" in obj, get: obj => obj.loading, set: (obj, value) => { obj.loading = value; } }, metadata: _metadata }, _loading_initializers, _loading_extraInitializers);\n __esDecorate(null, null, _selectedRows_decorators, { kind: \"field\", name: \"selectedRows\", static: false, private: false, access: { has: obj => \"selectedRows\" in obj, get: obj => obj.selectedRows, set: (obj, value) => { obj.selectedRows = value; } }, metadata: _metadata }, _selectedRows_initializers, _selectedRows_extraInitializers);\n __esDecorate(null, null, _table_decorators, { kind: \"field\", name: \"table\", static: false, private: false, access: { has: obj => \"table\" in obj, get: obj => obj.table, set: (obj, value) => { obj.table = value; } }, metadata: _metadata }, _table_initializers, _table_extraInitializers);\n __esDecorate(null, null, _thead_decorators, { kind: \"field\", name: \"thead\", static: false, private: false, access: { has: obj => \"thead\" in obj, get: obj => obj.thead, set: (obj, value) => { obj.thead = value; } }, metadata: _metadata }, _thead_initializers, _thead_extraInitializers);\n __esDecorate(null, null, _tbody_decorators, { kind: \"field\", name: \"tbody\", static: false, private: false, access: { has: obj => \"tbody\" in obj, get: obj => obj.tbody, set: (obj, value) => { obj.tbody = value; } }, metadata: _metadata }, _tbody_initializers, _tbody_extraInitializers);\n __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: \"class\", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);\n _classThis = _classDescriptor.value;\n if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });\n __runInitializers(_classThis, _classExtraInitializers);\n }\n setData(data) {\n this._unsortedData = [...data];\n this.data = data;\n this.render();\n }\n setColumns(columns) {\n this.columns = columns;\n this.render();\n }\n async *getTableConfig() {\n const config = await (yield {});\n this.columns = config.columns || [];\n this.selectorOptions = config.selectorOptions || [];\n // Wait for next frame to ensure DOM is updated\n await new Promise(resolve => requestAnimationFrame(resolve));\n this.renderHeader();\n this.renderControls();\n return config;\n }\n async *getTableData() {\n this.loading = true;\n this.selectedRows = []; // Clear selections when loading new data\n try {\n const params = {\n search: this.searchText,\n sort: this.currentSort,\n selector: this.selector\n };\n const response = await (yield params);\n this.data = response.data || [];\n this.loading = false;\n // Wait for next frame to ensure DOM is updated\n await new Promise(resolve => requestAnimationFrame(resolve));\n this.renderBody();\n return response;\n }\n catch (error) {\n console.error('Error loading table data:', error);\n this.data = [];\n this.loading = false;\n // Wait for next frame to ensure DOM is updated\n await new Promise(resolve => requestAnimationFrame(resolve));\n this.renderBody();\n }\n }\n debouncedDataRequest() {\n // Set loading immediately for instant feedback\n if (!this.loading) {\n this.loading = true;\n }\n if (this.dataRequestTimeout) {\n clearTimeout(this.dataRequestTimeout);\n }\n this.dataRequestTimeout = setTimeout(() => {\n this.getTableData();\n this.dataRequestTimeout = null;\n }, 150);\n }\n styles() {\n return css /*css*/ `\n :host {\n display: block;\n }\n\n .snice-table {\n width: 100%;\n overflow: auto;\n }\n\n table {\n width: 100%;\n border-collapse: separate;\n border-spacing: 0;\n border-radius: var(--snice-border-radius-lg);\n border: 1px solid var(--snice-color-border);\n }\n\n th, td {\n padding: var(--snice-spacing-xsm) var(--snice-spacing-xsm);\n border: 1px solid var(--snice-color-border);\n text-align: left;\n color: var(--snice-color-text);\n max-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n th {\n padding: var(--snice-spacing-sm) var(--snice-spacing-sm);\n }\n\n th.select-column,\n td.select-column {\n width: 2.5rem;\n max-width: 2.5rem;\n text-align: center;\n padding: var(--snice-spacing-xs);\n }\n\n th {\n background-color: var(--snice-color-background-secondary);\n color: var(--snice-color-text);\n font-weight: var(--snice-font-weight-semibold);\n border-bottom: 2px solid var(--snice-color-border);\n }\n\n th.sortable {\n cursor: pointer;\n user-select: none;\n }\n\n th.sortable:hover {\n background-color: var(--snice-color-background-tertiary);\n }\n\n /* Row styling */\n :host([striped]) tbody tr:nth-child(even) {\n background-color: var(--snice-color-background-secondary);\n }\n\n :host([hoverable]) tbody tr:hover {\n background-color: var(--snice-color-background-tertiary);\n }\n\n :host([clickable]) tbody tr {\n cursor: pointer;\n }\n\n :host([selectable]) tbody tr {\n cursor: pointer;\n }\n\n tbody tr[data-selected=\"true\"] {\n background-color: var(--snice-color-background-tertiary);\n border-left: 3px solid var(--snice-color-primary);\n }\n\n tbody tr[data-selected=\"true\"]:hover {\n background-color: var(--snice-color-background-tertiary);\n }\n\n /* List mode - hide vertical borders */\n :host([list]) th,\n :host([list]) td {\n border-left: none;\n border-right: none;\n }\n\n :host([list]) th:first-child,\n :host([list]) td:first-child {\n border-left: none;\n }\n\n :host([list]) th:last-child,\n :host([list]) td:last-child {\n border-right: none;\n }\n\n :host([list]) table {\n border-left: none;\n border-right: none;\n }\n\n [part=\"header\"] {\n background-color: var(--snice-color-background);\n }\n\n [part=\"body\"] {\n background-color: var(--snice-table-body-bg, --snice-color-background);\n display: block;\n }\n\n .table-controls {\n display: flex;\n gap: var(--snice-spacing-md);\n align-items: center;\n flex-wrap: wrap;\n }\n\n :host(:not([searchable])) .search-input {\n display: none;\n }\n\n :host(.selector-options-empty) .selector-input {\n display: none;\n }\n\n .search-input,\n .selector-input {\n height: 2.5rem;\n }\n\n .search-input {\n min-width: 12.5rem;\n flex: 1;\n }\n\n .selector-input {\n min-width: 9.375rem;\n --snice-select-min-height: 2rem;\n }\n\n /* Sort indicators */\n .sort-header {\n display: flex;\n align-items: center;\n gap: var(--snice-spacing-xs);\n justify-content: space-between;\n }\n\n\n .sort-indicator {\n display: flex;\n flex-direction: column;\n font-size: 0.7em;\n line-height: 1;\n opacity: 0.3;\n transition: opacity var(--snice-transition-fast);\n }\n\n .sort-indicator.active {\n opacity: 1;\n }\n\n .sort-order {\n font-size: 0.6em;\n background: var(--snice-color-primary);\n color: var(--snice-color-text-inverse);\n border-radius: var(--snice-border-radius-sm);\n padding: 1px 3px;\n min-width: 12px;\n text-align: center;\n }\n\n /* Loading fade */\n tbody {\n transition: opacity var(--snice-transition-normal);\n }\n\n :host([loading]) tbody {\n opacity: 0.5;\n }\n\n .no-data {\n text-align: center;\n padding: var(--snice-spacing-lg);\n color: var(--snice-color-text-secondary);\n }\n\n /* Slotted table layout */\n .snice-table--slotted {\n border: 1px solid var(--snice-color-border);\n border-radius: var(--snice-border-radius-lg);\n overflow: hidden;\n }\n\n .snice-table--slotted .table-header {\n display: grid;\n grid-auto-flow: column;\n grid-auto-columns: 1fr;\n background-color: var(--snice-color-background-secondary);\n border-bottom: 2px solid var(--snice-color-border);\n padding: var(--snice-spacing-sm);\n font-weight: var(--snice-font-weight-semibold);\n color: var(--snice-color-text);\n }\n\n .snice-table--slotted .header-cell {\n color: var(--snice-color-text);\n }\n\n .snice-table--slotted .table-header::slotted(snice-column) {\n padding: var(--snice-spacing-sm);\n }\n\n .snice-table--slotted .table-body {\n display: flex;\n flex-direction: column;\n }\n\n .snice-table--slotted .table-body::slotted(snice-row) {\n border-bottom: 1px solid var(--snice-color-border);\n }\n\n .snice-table--slotted .table-body::slotted(snice-row:last-child) {\n border-bottom: none;\n }\n\n :host([striped]) .snice-table--slotted .table-body::slotted(snice-row:nth-child(even)) {\n background-color: var(--snice-color-background-secondary);\n }\n\n :host([hoverable]) .snice-table--slotted .table-body::slotted(snice-row:hover) {\n background-color: var(--snice-color-background-tertiary);\n }\n `;\n }\n render() {\n // Check if we have slotted rows\n const hasSlottedRows = this.querySelectorAll('snice-row[slot=\"rows\"]').length > 0;\n if (hasSlottedRows) {\n // Use slotted rows layout\n return html /*html*/ `\n <div class=\"snice-table snice-table--slotted\" @click=${this.handleClick} @change=${this.handleChange}>\n <div class=\"table-controls-container\"></div>\n <div class=\"table-header\" id=\"slotted-header\"></div>\n <div class=\"table-body\">\n <slot name=\"rows\"></slot>\n </div>\n <slot name=\"columns\" style=\"display: none;\"></slot>\n </div>\n `;\n }\n else {\n // Use traditional table layout\n return html /*html*/ `\n <div class=\"snice-table\" @click=${this.handleClick} @change=${this.handleChange}>\n <div class=\"table-controls-container\"></div>\n <table>\n <thead></thead>\n <tbody></tbody>\n </table>\n </div>\n `;\n }\n }\n renderControls() {\n const container = this.shadowRoot?.querySelector('.table-controls-container');\n if (!container)\n return;\n const showControls = this.searchable || this.filterable;\n if (!showControls) {\n container.innerHTML = '';\n return;\n }\n // Only render if container is empty (first time)\n if (container.children.length === 0) {\n const controlsDiv = document.createElement('div');\n controlsDiv.className = 'table-controls';\n controlsDiv.setAttribute('part', 'controls');\n if (this.searchable) {\n const searchInput = document.createElement('snice-input');\n searchInput.className = 'search-input';\n searchInput.setAttribute('type', 'search');\n searchInput.setAttribute('placeholder', 'Search...');\n searchInput.setAttribute('size', 'medium');\n searchInput.addEventListener('input', this.handleSearchInput);\n controlsDiv.appendChild(searchInput);\n }\n if (this.filterable) {\n const select = document.createElement('snice-select');\n select.className = 'selector-input';\n select.setAttribute('multiple', '');\n select.setAttribute('searchable', '');\n select.setAttribute('clearable', '');\n select.setAttribute('placeholder', 'Filter...');\n select.setAttribute('size', 'medium');\n this.selectorOptions.forEach(opt => {\n const option = document.createElement('snice-option');\n option.setAttribute('value', opt.value);\n option.textContent = opt.label;\n select.appendChild(option);\n });\n controlsDiv.appendChild(select);\n }\n container.appendChild(controlsDiv);\n }\n }\n async initialize() {\n // Listen for controller attached event\n this.addEventListener('controller-attached', this.onAttached);\n // Listen for select change events from the filter dropdown\n this.addEventListener('select-change', this.handleSelectorChange);\n // Wait for snice-column to be defined\n await customElements.whenDefined('snice-column');\n await customElements.whenDefined('snice-row');\n // Process slotted columns and rows\n await this.processSlottedContent();\n // Render controls after initial setup\n this.renderControls();\n }\n async processSlottedContent() {\n // Get slotted column elements\n const columnElements = Array.from(this.querySelectorAll('snice-column[slot=\"columns\"]'));\n if (columnElements.length > 0) {\n // Extract column definitions from snice-column elements\n this.columns = columnElements.map((col) => col.getColumnDefinition());\n // Pass column definitions to slotted rows\n const rowElements = Array.from(this.querySelectorAll('snice-row[slot=\"rows\"]'));\n rowElements.forEach((row, index) => {\n row.columns = this.columns;\n row.index = index;\n row.hoverable = this.hoverable;\n row.clickable = this.clickable;\n row.selectable = this.selectable;\n });\n // Render the header for slotted mode (after next tick to ensure DOM is updated)\n requestAnimationFrame(() => this.renderSlottedHeader());\n }\n }\n renderSlottedHeader() {\n const headerContainer = this.shadowRoot?.querySelector('#slotted-header');\n if (!headerContainer || this.columns.length === 0)\n return;\n // Render column headers\n headerContainer.innerHTML = this.columns.map(col => `<div class=\"header-cell\">${col.label}</div>`).join('');\n }\n handleSelectorOptionsChange() {\n // Update CSS class to show/hide selector\n if (this.selectorOptions.length === 0) {\n this.classList.add('selector-options-empty');\n }\n else {\n this.classList.remove('selector-options-empty');\n }\n }\n handleSortableChange() {\n this.renderHeader(); // Re-render header to show/hide sort indicators\n }\n handleSelectableChange() {\n this.render(); // Re-render both header and body for checkbox columns\n }\n handleColumnsChange() {\n this.renderHeader();\n }\n handleDataChange() {\n this.renderBody();\n }\n handleSelectedRowsChange() {\n this.updateRowSelectionState();\n this.updateSelectAllState();\n }\n handleSortChange() {\n this.renderHeader();\n }\n handleControlsChange() {\n this.renderControls();\n }\n renderHeader() {\n if (!this.thead)\n return;\n const headerRow = document.createElement('tr');\n if (this.selectable) {\n const selectCell = document.createElement('th');\n selectCell.className = 'select-column';\n const allSelected = this.selectedRows.length === this.data.length && this.data.length > 0;\n const someSelected = this.selectedRows.length > 0 && this.selectedRows.length < this.data.length;\n selectCell.innerHTML = `<input type=\"checkbox\" class=\"select-all\" ${allSelected ? 'checked' : ''} />`;\n headerRow.appendChild(selectCell);\n // Set indeterminate after insertion\n setTimeout(() => {\n const checkbox = selectCell.querySelector('.select-all');\n if (checkbox) {\n checkbox.indeterminate = someSelected;\n }\n }, 0);\n }\n this.columns.forEach(column => {\n const th = document.createElement('th');\n th.setAttribute('data-key', column.key);\n if (this.sortable && column.sortable !== false) {\n th.classList.add('sortable');\n th.setAttribute('role', 'button');\n th.innerHTML = this.renderSortableHeader(column);\n }\n else {\n th.textContent = column.label;\n }\n headerRow.appendChild(th);\n });\n this.thead.innerHTML = '';\n this.thead.appendChild(headerRow);\n }\n renderSortableHeader(column) {\n const sortItem = this.currentSort.find(s => s.column === column.key);\n const sortIndex = this.currentSort.findIndex(s => s.column === column.key);\n const isActive = !!sortItem;\n let indicator = '▲▼'; // Default unsorted state\n let orderNumber = '';\n if (sortItem) {\n if (sortItem.direction === 'asc') {\n indicator = '▲';\n }\n else if (sortItem.direction === 'desc') {\n indicator = '▼';\n }\n if (this.currentSort.length > 1) {\n orderNumber = `<span class=\"sort-order\">${sortIndex + 1}</span>`;\n }\n }\n const indicatorClasses = ['sort-indicator', isActive ? 'active' : ''].filter(Boolean).join(' ');\n return `\n <div class=\"sort-header\">\n <span>${column.label}</span>\n <div class=\"${indicatorClasses}\">\n ${indicator}\n ${orderNumber}\n </div>\n </div>\n `;\n }\n renderBody() {\n if (!this.tbody)\n return;\n this.tbody.innerHTML = '';\n if (this.data.length === 0 && this.columns.length > 0) {\n if (this.loading) {\n // Show loading spinner\n const tr = document.createElement('tr');\n const td = document.createElement('td');\n const colSpan = this.columns.length + (this.selectable ? 1 : 0);\n td.colSpan = colSpan;\n td.className = 'no-data';\n td.innerHTML = '<snice-progress variant=\"circular\" indeterminate size=\"small\"></snice-progress>';\n tr.appendChild(td);\n this.tbody.appendChild(tr);\n return;\n }\n else {\n // Show \"No Data\" message\n const tr = document.createElement('tr');\n const td = document.createElement('td');\n const colSpan = this.columns.length + (this.selectable ? 1 : 0);\n td.colSpan = colSpan;\n td.className = 'no-data';\n td.textContent = 'No Data';\n tr.appendChild(td);\n this.tbody.appendChild(tr);\n return;\n }\n }\n const fragment = document.createDocumentFragment();\n this.data.forEach((rowData, index) => {\n const tr = document.createElement('tr');\n tr.setAttribute('data-index', String(index));\n // Set row selection state\n const isSelected = this.selectedRows.includes(index);\n tr.setAttribute('data-selected', String(isSelected));\n if (this.selectable) {\n const selectCell = document.createElement('td');\n selectCell.className = 'select-column';\n selectCell.innerHTML = `<input type=\"checkbox\" class=\"row-select\" ${isSelected ? 'checked' : ''} data-row-index=\"${index}\" />`;\n tr.appendChild(selectCell);\n }\n this.columns.forEach(column => {\n const td = document.createElement('td');\n const value = rowData[column.key];\n // Create cell component as HTML string\n const cellTagName = this.getCellTagName(column.type);\n const attributes = this.getCellAttributes(column, value);\n td.innerHTML = `<${cellTagName} ${attributes}></${cellTagName}>`;\n tr.appendChild(td);\n });\n fragment.appendChild(tr);\n });\n this.tbody.appendChild(fragment);\n }\n getCellAttributes(column, value) {\n const attributes = [\n `type=\"${column.type}\"`,\n `align=\"${column.align || 'left'}\"`,\n `value=\"${String(value || '').replace(/\"/g, '&quot;')}\"`,\n `in-table=\"true\"`\n ];\n // Add type-specific attributes\n if (column.type === 'number' || column.type === 'currency') {\n if (column.decimals !== undefined)\n attributes.push(`decimals=\"${column.decimals}\"`);\n if (column.thousandsSeparator)\n attributes.push(`thousands-separator=\"true\"`);\n if (column.prefix)\n attributes.push(`prefix=\"${column.prefix}\"`);\n if (column.suffix)\n attributes.push(`suffix=\"${column.suffix}\"`);\n }\n if (column.type === 'date') {\n if (column.dateFormat)\n attributes.push(`date-format=\"${column.dateFormat}\"`);\n }\n if (column.type === 'boolean') {\n if (column.useSymbols)\n attributes.push(`use-symbols=\"true\"`);\n if (column.trueSymbol)\n attributes.push(`true-symbol=\"${column.trueSymbol}\"`);\n if (column.falseSymbol)\n attributes.push(`false-symbol=\"${column.falseSymbol}\"`);\n if (column.trueValue)\n attributes.push(`true-value=\"${column.trueValue}\"`);\n if (column.falseValue)\n attributes.push(`false-value=\"${column.falseValue}\"`);\n }\n return attributes.join(' ');\n }\n getCellTagName(type) {\n switch (type) {\n case 'text':\n return 'snice-cell-text';\n case 'number':\n case 'currency':\n return 'snice-cell-number';\n case 'date':\n return 'snice-cell-date';\n case 'boolean':\n return 'snice-cell-boolean';\n case 'rating':\n return 'snice-cell-rating';\n case 'progress':\n return 'snice-cell-progress';\n case 'duration':\n return 'snice-cell-duration';\n case 'filesize':\n return 'snice-cell-filesize';\n case 'sparkline':\n return 'snice-cell-sparkline';\n case 'image':\n return 'snice-cell-image';\n default:\n return 'snice-cell';\n }\n }\n updateRowSelectionState() {\n if (!this.tbody)\n return;\n const rows = this.tbody.querySelectorAll('tr');\n rows.forEach((row, index) => {\n const isSelected = this.selectedRows.includes(index);\n row.setAttribute('data-selected', String(isSelected));\n const checkbox = row.querySelector('.row-select');\n if (checkbox) {\n checkbox.checked = isSelected;\n }\n });\n }\n updateSelectAllState() {\n const selectAllCheckbox = this.thead?.querySelector('.select-all');\n if (!selectAllCheckbox)\n return;\n const allSelected = this.selectedRows.length === this.data.length;\n const someSelected = this.selectedRows.length > 0 && this.selectedRows.length < this.data.length;\n selectAllCheckbox.checked = allSelected;\n selectAllCheckbox.indeterminate = someSelected;\n }\n toggleSort(columnKey, multiSort = false) {\n if (!multiSort) {\n // Single column sort - clear all other sorts\n const existingSort = this.currentSort.find(s => s.column === columnKey);\n if (!existingSort) {\n this.currentSort = [{ column: columnKey, direction: 'asc' }];\n }\n else if (existingSort.direction === 'asc') {\n this.currentSort = [{ column: columnKey, direction: 'desc' }];\n }\n else {\n this.currentSort = [];\n }\n }\n else {\n // Multi column sort - modify existing or add new\n const existingSortIndex = this.currentSort.findIndex(s => s.column === columnKey);\n if (existingSortIndex === -1) {\n // Add new sort\n this.currentSort = [...this.currentSort, { column: columnKey, direction: 'asc' }];\n }\n else {\n const existingSort = this.currentSort[existingSortIndex];\n if (existingSort.direction === 'asc') {\n // Change to desc - create new array to trigger reactivity\n this.currentSort = this.currentSort.map((sort, index) => index === existingSortIndex ? { ...sort, direction: 'desc' } : sort);\n }\n else {\n // Remove this sort\n this.currentSort = this.currentSort.filter(s => s.column !== columnKey);\n }\n }\n }\n this.renderHeader(); // Update sort indicators immediately\n if (this._hasController) {\n this.debouncedDataRequest(); // Delegate to controller for server-side sort\n }\n else {\n this.sortLocalData(); // Sort in-memory data\n }\n }\n sortLocalData() {\n if (!this._unsortedData.length) {\n this._unsortedData = [...this.data];\n }\n if (this.currentSort.length === 0) {\n this.data = [...this._unsortedData];\n }\n else {\n this.data = [...this._unsortedData].sort((a, b) => {\n for (const { column, direction } of this.currentSort) {\n const aVal = a[column] ?? '';\n const bVal = b[column] ?? '';\n const cmp = String(aVal).localeCompare(String(bVal), undefined, { numeric: true });\n if (cmp !== 0)\n return direction === 'asc' ? cmp : -cmp;\n }\n return 0;\n });\n }\n this.renderBody();\n }\n dispatchRowSelectionChanged(rowIndex, selected) {\n return {\n selectedRows: this.selectedRows,\n rowIndex,\n selected\n };\n }\n dispatchSelectAllChanged(allSelected) {\n return {\n selectedRows: this.selectedRows,\n allSelected\n };\n }\n });\n return _classThis;\n})();\n\nexport { SniceTable };\n//# sourceMappingURL=snice-table.js.map\n"],"names":["__esDecorate","ctor","descriptorIn","decorators","contextIn","initializers","extraInitializers","accept","f","TypeError","_","kind","key","target","prototype","descriptor","Object","getOwnPropertyDescriptor","name","done","i","length","context","p","access","addInitializer","push","result","get","set","init","unshift","defineProperty","__runInitializers","thisArg","value","useValue","arguments","call","renderIcon","icon","className","html","startsWith","src","slice","content","test","SuppressedError","_classDescriptor","_classThis","_type_decorators","_size_decorators","_variant_decorators","_value_decorators","_placeholder_decorators","_label_decorators","_helperText_decorators","_errorText_decorators","_disabled_decorators","_readonly_decorators","_loading_decorators","_required_decorators","_invalid_decorators","_clearable_decorators","_password_decorators","_min_decorators","_max_decorators","_step_decorators","_pattern_decorators","_maxlength_decorators","_minlength_decorators","_autocomplete_decorators","_name_decorators","_align_decorators","_labelAlign_decorators","_stretch_decorators","_prefixIcon_decorators","_suffixIcon_decorators","_input_decorators","_clearButton_decorators","_passwordToggle_decorators","_render_decorators","_styles_decorators","_init_decorators","_handleValueChange_decorators","_handleInvalidChange_decorators","_handleDisabledChange_decorators","_handleLoadingChange_decorators","_handleReadonlyChange_decorators","_handlePlaceholderChange_decorators","_handleMinChange_decorators","_handleMaxChange_decorators","_handleStepChange_decorators","_handleMaxLengthChange_decorators","_handleMinLengthChange_decorators","_handlePatternChange_decorators","_handleTypeChange_decorators","_handleLabelChange_decorators","_dispatchInputEvent_decorators","_dispatchChangeEvent_decorators","_dispatchFocusEvent_decorators","_dispatchBlurEvent_decorators","_dispatchClearEvent_decorators","_classDecorators","element","formAssociated","_classExtraInitializers","_classSuper","HTMLElement","_instanceExtraInitializers","_type_initializers","_type_extraInitializers","_size_initializers","_size_extraInitializers","_variant_initializers","_variant_extraInitializers","_value_initializers","_value_extraInitializers","_placeholder_initializers","_placeholder_extraInitializers","_label_initializers","_label_extraInitializers","_helperText_initializers","_helperText_extraInitializers","_errorText_initializers","_errorText_extraInitializers","_disabled_initializers","_disabled_extraInitializers","_readonly_initializers","_readonly_extraInitializers","_loading_initializers","_loading_extraInitializers","_required_initializers","_required_extraInitializers","_invalid_initializers","_invalid_extraInitializers","_clearable_initializers","_clearable_extraInitializers","_password_initializers","_password_extraInitializers","_min_initializers","_min_extraInitializers","_max_initializers","_max_extraInitializers","_step_initializers","_step_extraInitializers","_pattern_initializers","_pattern_extraInitializers","_maxlength_initializers","_maxlength_extraInitializers","_minlength_initializers","_minlength_extraInitializers","_autocomplete_initializers","_autocomplete_extraInitializers","_name_initializers","_name_extraInitializers","_align_initializers","_align_extraInitializers","_labelAlign_initializers","_labelAlign_extraInitializers","_stretch_initializers","_stretch_extraInitializers","_prefixIcon_initializers","_prefixIcon_extraInitializers","_suffixIcon_initializers","_suffixIcon_extraInitializers","_input_initializers","_input_extraInitializers","_clearButton_initializers","_clearButton_extraInitializers","_passwordToggle_initializers","_passwordToggle_extraInitializers","this","_metadata","Symbol","metadata","create","property","attribute","type","Boolean","Number","query","render","styles","ready","watch","dispatch","bubbles","composed","static","private","has","obj","handleValueChange","handleInvalidChange","handleDisabledChange","handleLoadingChange","handleReadonlyChange","handlePlaceholderChange","handleMinChange","handleMaxChange","handleStepChange","handleMaxLengthChange","handleMinLengthChange","handlePatternChange","handleTypeChange","handleLabelChange","dispatchInputEvent","dispatchChangeEvent","dispatchFocusEvent","dispatchBlurEvent","dispatchClearEvent","size","variant","placeholder","label","helperText","errorText","disabled","readonly","loading","required","invalid","clearable","password","min","max","step","pattern","maxlength","minlength","autocomplete","align","labelAlign","stretch","prefixIcon","suffixIcon","input","clearButton","passwordToggle","enumerable","configurable","writable","constructor","super","internals","showPassword","attachInternals","inputClasses","filter","join","labelClasses","clearButtonClasses","handleInput","handleChange","handleFocus","handleBlur","handleClear","handlePasswordToggle","css","setFormValue","shouldShow","style","display","classList","toggle","setAttribute","add","maxLength","minLength","readOnly","e","clear","hiddenIcon","querySelector","visibleIcon","String","remove","labelEl","shadowRoot","textContent","wrapper","parentElement","focus","blur","select","checkValidity","reportValidity","setCustomValidity","message","_selected_decorators","_icon_decorators","_selected_initializers","_selected_extraInitializers","_icon_initializers","_icon_extraInitializers","selected","trim","optionData","_multiple_decorators","_searchable_decorators","_allowFreeText_decorators","_editable_decorators","_open_decorators","_maxHeight_decorators","_options_decorators","_trigger_decorators","_dropdown_decorators","_valueDisplay_decorators","_labelElement_decorators","_searchInput_decorators","_optionsList_decorators","_arrow_decorators","_searchContainer_decorators","_editableInput_decorators","_optionElements_decorators","_cleanup_decorators","_handleOptionsPropertyChange_decorators","_handleOpenChange_decorators","_dispatchOpenEvent_decorators","_dispatchCloseEvent_decorators","_multiple_initializers","_multiple_extraInitializers","_searchable_initializers","_searchable_extraInitializers","_allowFreeText_initializers","_allowFreeText_extraInitializers","_editable_initializers","_editable_extraInitializers","_open_initializers","_open_extraInitializers","_maxHeight_initializers","_maxHeight_extraInitializers","_options_initializers","_options_extraInitializers","_trigger_initializers","_trigger_extraInitializers","_dropdown_initializers","_dropdown_extraInitializers","_valueDisplay_initializers","_valueDisplay_extraInitializers","_labelElement_initializers","_labelElement_extraInitializers","_searchInput_initializers","_searchInput_extraInitializers","_optionsList_initializers","_optionsList_extraInitializers","_arrow_initializers","_arrow_extraInitializers","_searchContainer_initializers","_searchContainer_extraInitializers","_editableInput_initializers","_editableInput_extraInitializers","_optionElements_initializers","_optionElements_extraInitializers","Array","queryAll","dispose","cleanup","handleOptionsPropertyChange","handleOpenChange","dispatchOpenEvent","dispatchCloseEvent","multiple","searchable","allowFreeText","editable","open","maxHeight","options","trigger","dropdown","valueDisplay","labelElement","searchInput","optionsList","arrow","searchContainer","editableInput","optionElements","childOptions","filteredOptions","selectedValues","Set","focusedIndex","editableInputValue","mergedOptions","childValues","map","o","triggerClasses","searchHidden","handleEditableInput","handleEditableFocus","handleEditableBlur","handleEditableKeydown","handleEditableClick","handleEditableArrowClick","handleTriggerOpen","handleTriggerClick","handleClearClick","handleDropdownMousedown","handleOptionsClick","handleSearchKeydown","handleSearchInput","renderOptions","opt","index","isSelected","readOptionsFromChildren","split","v","requestAnimationFrame","syncEditableInputToValue","updateEditableState","updateTriggerState","updateValueDisplay","updateClearButton","updateDropdownState","updateDropdownContent","observeChildren","setupGlobalListeners","removeGlobalListeners","childObserver","disconnect","outsideClickHandler","contains","commitEditableValue","closeDropdown","globalKeyHandler","preventDefault","focusNextOption","focusPreviousOption","option","handleOptionSelect","document","addEventListener","removeEventListener","observer","MutationObserver","mutations","handleChildrenChange","observe","childList","subtree","attributes","attributeFilter","some","m","includes","attributeName","nodeName","from","querySelectorAll","sniceOption","getAttribute","hasAttribute","filterEditableOptions","openDropdown","setTimeout","stopPropagation","handleEditableOptionSelect","inputText","match","find","toLowerCase","allOptions","lower","updateOptionFocus","forEach","el","focusedEl","scrollIntoView","block","closest","toggleDropdown","delete","optionEl","searchTerm","selectedOptions","innerHTML","selectOption","cssContent","_column_decorators","_rowData_decorators","_contentElement_decorators","_updateAlignment_decorators","_updateContent_decorators","_column_initializers","_column_extraInitializers","_rowData_initializers","_rowData_extraInitializers","_contentElement_initializers","_contentElement_extraInitializers","updateAlignment","updateContent","column","rowData","contentElement","formatValue","applyAlignment","applyConditionalFormatting","textAlign","conditionalFormats","removeAttribute","applyStyle","format","condition","backgroundColor","color","fontWeight","fontStyle","fontSize","textDecoration","undefined","formatter","formatText","formatNumber","formatCurrency","formatPercent","formatAccounting","formatScientific","formatFraction","formatDate","formatBoolean","formatRating","formatProgress","formatSparkline","formatDuration","formatFilesize","numberFormat","num","isNaN","formatted","toFixed","decimals","thousandsSeparator","parts","replace","negativeStyle","prefix","suffix","currencyFormat","currency","minimumFractionDigits","maximumFractionDigits","Intl","NumberFormat","percentFormat","Math","abs","toExponential","h1","h2","k1","k2","b","a","floor","aux","dateFormat","date","Date","getTime","customFormat","getFullYear","toString","getMonth","padStart","getDate","dateStyle","DateTimeFormat","locale","booleanFormat","bool","useSymbols","trueSymbol","falseSymbol","trueValue","falseValue","ratingFormat","rating","symbol","emptySymbol","primaryColor","getComputedStyle","getPropertyValue","emptyColor","progressFormat","percentage","bgColor","height","showPercentage","round","sparklineFormat","data","isArray","width","range","points","val","barWidth","bars","barHeight","seconds","hours","minutes","secs","bytes","units","unitIndex","_multiline_decorators","_maxLines_decorators","_multiline_initializers","_multiline_extraInitializers","_maxLines_initializers","_maxLines_extraInitializers","multiline","maxLines","formatTextContent","textStyles","getTextStyles","text","ellipsis","wrap","_decimals_decorators","_thousandsSeparator_decorators","_prefix_decorators","_suffix_decorators","_negativeStyle_decorators","_highlight_decorators","_decimals_initializers","_decimals_extraInitializers","_thousandsSeparator_initializers","_thousandsSeparator_extraInitializers","_prefix_initializers","_prefix_extraInitializers","_suffix_initializers","_suffix_extraInitializers","_negativeStyle_initializers","_negativeStyle_extraInitializers","_highlight_initializers","_highlight_extraInitializers","highlight","formattedValue","formatNumberValue","getNumberStyles","negStyle","_dateFormat_decorators","_customFormat_decorators","_locale_decorators","_relativeTime_decorators","_showTime_decorators","_dateFormat_initializers","_dateFormat_extraInitializers","_customFormat_initializers","_customFormat_extraInitializers","_locale_initializers","_locale_extraInitializers","_relativeTime_initializers","_relativeTime_extraInitializers","_showTime_initializers","_showTime_extraInitializers","relativeTime","showTime","formatDateValue","dateStyles","getDateStyles","formatRelativeTime","formatCustomDate","timeStyle","tokens","YYYY","YY","MM","M","DD","D","HH","getHours","H","mm","getMinutes","ss","getSeconds","s","token","entries","RegExp","diffMs","diffSecs","diffMins","diffHours","diffDays","now","isToday","toDateString","isPast","isFuture","_trueValue_decorators","_falseValue_decorators","_useSymbols_decorators","_trueSymbol_decorators","_falseSymbol_decorators","_trueValue_initializers","_trueValue_extraInitializers","_falseValue_initializers","_falseValue_extraInitializers","_useSymbols_initializers","_useSymbols_extraInitializers","_trueSymbol_initializers","_trueSymbol_extraInitializers","_falseSymbol_initializers","_falseSymbol_extraInitializers","formatBooleanContent","unsafeHTML","isTrue","_symbol_decorators","_emptySymbol_decorators","_color_decorators","_symbol_initializers","_symbol_extraInitializers","_emptySymbol_initializers","_emptySymbol_extraInitializers","_color_initializers","_color_extraInitializers","filled","empty","repeat","createRatingElement","createElement","appendChild","_backgroundColor_decorators","_height_decorators","_showPercentage_decorators","_backgroundColor_initializers","_backgroundColor_extraInitializers","_height_initializers","_height_extraInitializers","_showPercentage_initializers","_showPercentage_extraInitializers","createProgressElement","progress","formatFileSize","_chartType_decorators","_width_decorators","_showDots_decorators","_showBaseline_decorators","_strokeWidth_decorators","_minValue_decorators","_maxValue_decorators","_data_decorators","_updateSparkline_decorators","_chartType_initializers","_chartType_extraInitializers","_width_initializers","_width_extraInitializers","_showDots_initializers","_showDots_extraInitializers","_showBaseline_initializers","_showBaseline_extraInitializers","_strokeWidth_initializers","_strokeWidth_extraInitializers","_minValue_initializers","_minValue_extraInitializers","_maxValue_initializers","_maxValue_extraInitializers","_data_initializers","_data_extraInitializers","SimpleArray","updateSparkline","chartType","showDots","showBaseline","strokeWidth","minValue","maxValue","renderSparkline","parseData","createCanvas","n","endsWith","parsed","JSON","parse","canvas","ctx","getContext","chartWidth","chartHeight","clearRect","resolvedColor","strokeStyle","fillStyle","lineWidth","lineCap","lineJoin","beginPath","moveTo","x","y","lineTo","closePath","globalAlpha","fill","stroke","arc","PI","barSpacing","fillRect","toDataURL","error","console","_key_decorators","_sortable_decorators","_filterable_decorators","_wrap_decorators","_ellipsis_decorators","_tooltip_decorators","_numberPrefix_decorators","_numberSuffix_decorators","_customDateFormat_decorators","_dateLocale_decorators","_ratingMax_decorators","_ratingSymbol_decorators","_ratingEmptySymbol_decorators","_ratingColor_decorators","_progressMax_decorators","_progressColor_decorators","_progressBgColor_decorators","_progressHeight_decorators","_sparklineType_decorators","_sparklineColor_decorators","_sparklineWidth_decorators","_sparklineHeight_decorators","_cellBgColor_decorators","_cellColor_decorators","_cellFontWeight_decorators","_cellFontStyle_decorators","_cellFontSize_decorators","_cellTextDecoration_decorators","_handleBasicPropsChange_decorators","_handleNumberFormatChange_decorators","_handleDateFormatChange_decorators","_handleBooleanFormatChange_decorators","_handleRatingFormatChange_decorators","_handleProgressFormatChange_decorators","_handleSparklineFormatChange_decorators","_handleStyleChange_decorators","_key_initializers","_key_extraInitializers","_sortable_initializers","_sortable_extraInitializers","_filterable_initializers","_filterable_extraInitializers","_wrap_initializers","_wrap_extraInitializers","_ellipsis_initializers","_ellipsis_extraInitializers","_tooltip_initializers","_tooltip_extraInitializers","_numberPrefix_initializers","_numberPrefix_extraInitializers","_numberSuffix_initializers","_numberSuffix_extraInitializers","_customDateFormat_initializers","_customDateFormat_extraInitializers","_dateLocale_initializers","_dateLocale_extraInitializers","_ratingMax_initializers","_ratingMax_extraInitializers","_ratingSymbol_initializers","_ratingSymbol_extraInitializers","_ratingEmptySymbol_initializers","_ratingEmptySymbol_extraInitializers","_ratingColor_initializers","_ratingColor_extraInitializers","_progressMax_initializers","_progressMax_extraInitializers","_progressColor_initializers","_progressColor_extraInitializers","_progressBgColor_initializers","_progressBgColor_extraInitializers","_progressHeight_initializers","_progressHeight_extraInitializers","_sparklineType_initializers","_sparklineType_extraInitializers","_sparklineColor_initializers","_sparklineColor_extraInitializers","_sparklineWidth_initializers","_sparklineWidth_extraInitializers","_sparklineHeight_initializers","_sparklineHeight_extraInitializers","_cellBgColor_initializers","_cellBgColor_extraInitializers","_cellColor_initializers","_cellColor_extraInitializers","_cellFontWeight_initializers","_cellFontWeight_extraInitializers","_cellFontStyle_initializers","_cellFontStyle_extraInitializers","_cellFontSize_initializers","_cellFontSize_extraInitializers","_cellTextDecoration_initializers","_cellTextDecoration_extraInitializers","sortable","filterable","tooltip","numberPrefix","numberSuffix","customDateFormat","dateLocale","ratingMax","ratingSymbol","ratingEmptySymbol","ratingColor","progressMax","progressColor","progressBgColor","progressHeight","sparklineType","sparklineColor","sparklineWidth","sparklineHeight","cellBgColor","cellColor","cellFontWeight","cellFontStyle","cellFontSize","cellTextDecoration","handleBasicPropsChange","handleNumberFormatChange","handleDateFormatChange","handleBooleanFormatChange","handleRatingFormatChange","handleProgressFormatChange","handleSparklineFormatChange","handleStyleChange","setFormatter","notifyTableOfChange","addConditionalFormat","removeConditionalFormat","splice","clearConditionalFormats","getColumnDefinition","definition","keys","cellStyle","dispatchEvent","CustomEvent","detail","_href_decorators","_target_decorators","_external_decorators","_text_decorators","_updateCellAttributes_decorators","_href_initializers","_href_extraInitializers","_target_initializers","_target_extraInitializers","_external_initializers","_external_extraInitializers","_text_initializers","_text_extraInitializers","updateCellAttributes","href","external","linkHref","linkText","isExternal","iconHTML","externalIcon","linkFormat","_actions_decorators","_extractActionsFromColumn_decorators","_dispatchAction_decorators","_actions_initializers","_actions_extraInitializers","extractActionsFromColumn","dispatchAction","actions","action","renderActionButton","actionsFormat","isImageUrl","title","handleActionClick","_tags_decorators","_extractTagsFromColumn_decorators","_tags_initializers","_tags_extraInitializers","extractTagsFromColumn","tags","tagList","parseValue","tag","renderTag","tagFormat","t","_src_decorators","_alt_decorators","_fallback_decorators","_lazy_decorators","_imageError_decorators","_updateImageAttributes_decorators","_src_initializers","_src_extraInitializers","_alt_initializers","_alt_extraInitializers","_fallback_initializers","_fallback_extraInitializers","_lazy_initializers","_lazy_extraInitializers","_imageError_initializers","_imageError_extraInitializers","updateImageAttributes","alt","fallback","lazy","imageError","imageSrc","imageAlt","loadingAttr","classes","handleImageError","imageFormat","_email_decorators","_displayText_decorators","_showIcon_decorators","_updateEmailAttributes_decorators","_email_initializers","_email_extraInitializers","_displayText_initializers","_displayText_extraInitializers","_showIcon_initializers","_showIcon_extraInitializers","updateEmailAttributes","email","displayText","showIcon","emailAddress","displayName","emailFormat","_phone_decorators","_format_decorators","_country_decorators","_updatePhoneAttributes_decorators","_phone_initializers","_phone_extraInitializers","_format_initializers","_format_extraInitializers","_country_initializers","_country_extraInitializers","updatePhoneAttributes","phone","country","phoneNumber","formatPhoneNumber","phoneFormat","cleaned","_status_decorators","_showDot_decorators","_updateStatusAttributes_decorators","_status_initializers","_status_extraInitializers","_showDot_initializers","_showDot_extraInitializers","updateStatusAttributes","status","showDot","statusValue","statusLabel","statusVariant","getStatusVariant","dotHTML","statusFormat","lowerStatus","_showSwatch_decorators","_showHex_decorators","_showRgb_decorators","_swatchSize_decorators","_updateColorAttributes_decorators","_showSwatch_initializers","_showSwatch_extraInitializers","_showHex_initializers","_showHex_extraInitializers","_showRgb_initializers","_showRgb_extraInitializers","_swatchSize_initializers","_swatchSize_extraInitializers","updateColorAttributes","showSwatch","showHex","showRgb","swatchSize","colorValue","swatchHTML","textDisplay","rgb","hexToRgb","r","g","colorFormat","hex","exec","parseInt","_collapsed_decorators","_maxDepth_decorators","_showToggle_decorators","_updateJsonAttributes_decorators","_handleToggle_decorators","_collapsed_initializers","_collapsed_extraInitializers","_maxDepth_initializers","_maxDepth_extraInitializers","_showToggle_initializers","_showToggle_extraInitializers","on","updateJsonAttributes","handleToggle","collapsed","maxDepth","showToggle","jsonValue","tryParseJson","toggleHTML","jsonHTML","renderCollapsed","renderExpanded","jsonFormat","str","json","renderValue","depth","item","_currency_decorators","_currencyDisplay_decorators","_currency_initializers","_currency_extraInitializers","_currencyDisplay_initializers","_currencyDisplay_extraInitializers","currencyDisplay","formatCurrencyValue","getCurrencyStyles","_showTrend_decorators","_trendValue_decorators","_colorize_decorators","_showTrend_initializers","_showTrend_extraInitializers","_trendValue_initializers","_trendValue_extraInitializers","_colorize_initializers","_colorize_extraInitializers","showTrend","trendValue","colorize","formatPercentageValue","trendArrow","getTrendArrow","getPercentageStyles","trendHTML","percentageFormat","trend","shouldColorize","_address_decorators","_latitude_decorators","_longitude_decorators","_showMapLink_decorators","_mapProvider_decorators","_updateLocationAttributes_decorators","_address_initializers","_address_extraInitializers","_latitude_initializers","_latitude_extraInitializers","_longitude_initializers","_longitude_extraInitializers","_showMapLink_initializers","_showMapLink_extraInitializers","_mapProvider_initializers","_mapProvider_extraInitializers","updateLocationAttributes","address","latitude","longitude","showMapLink","mapProvider","locationValue","mapLink","getMapLink","locationFormat","lat","lon","encodeURIComponent","_hoverable_decorators","_clickable_decorators","_selectable_decorators","_index_decorators","_columns_decorators","_updateSelection_decorators","_updateRowAttributes_decorators","_updateCells_decorators","_dispatchRowClick_decorators","_dispatchRowSelect_decorators","_dispatchRowHover_decorators","_hoverable_initializers","_hoverable_extraInitializers","_clickable_initializers","_clickable_extraInitializers","_selectable_initializers","_selectable_extraInitializers","_index_initializers","_index_extraInitializers","_columns_initializers","_columns_extraInitializers","updateSelection","updateRowAttributes","updateCells","dispatchRowClick","dispatchRowSelect","dispatchRowHover","hoverable","clickable","selectable","columns","extractDataFromAttributes","getAttributeNames","attrName","handleRowClick","handleKeyDown","renderCheckbox","columnIndex","renderCell","configureCells","cellElement","checkbox","checked","matches","toggleSelection","cellComponent","getCellComponent","getCellStyles","escapeHtml","div","deselect","focusRow","behavior","getCellValue","columnKey","setCellValue","getCellElement","col","indexOf","duration","SniceTable","_striped_decorators","_list_decorators","_searchDebounce_decorators","_currentSort_decorators","_selector_decorators","_selectorOptions_decorators","_selectedRows_decorators","_table_decorators","_thead_decorators","_tbody_decorators","_getTableConfig_decorators","_getTableData_decorators","_initialize_decorators","_handleSelectorOptionsChange_decorators","_handleSortableChange_decorators","_handleSelectableChange_decorators","_handleColumnsChange_decorators","_handleDataChange_decorators","_handleSelectedRowsChange_decorators","_handleSortChange_decorators","_handleControlsChange_decorators","_dispatchRowSelectionChanged_decorators","_dispatchSelectAllChanged_decorators","_striped_initializers","_striped_extraInitializers","_list_initializers","_list_extraInitializers","_searchDebounce_initializers","_searchDebounce_extraInitializers","_currentSort_initializers","_currentSort_extraInitializers","_selector_initializers","_selector_extraInitializers","_selectorOptions_initializers","_selectorOptions_extraInitializers","_selectedRows_initializers","_selectedRows_extraInitializers","_table_initializers","_table_extraInitializers","_thead_initializers","_thead_extraInitializers","_tbody_initializers","_tbody_extraInitializers","striped","list","searchDebounce","currentSort","searchText","selector","selectorOptions","selectedRows","table","thead","tbody","_hasController","_unsortedData","dataRequestTimeout","handleClick","th","toggleSort","tr","rowIndex","isCurrentlySelected","updateRowSelectionState","updateSelectAllState","dispatchRowSelectionChanged","dispatchSelectAllChanged","onAttached","getTableConfig","getTableData","searchDebounceTimeout","clearTimeout","debouncedDataRequest","selectorDebounceTimeout","handleSelectorChange","request","initialize","handleSelectorOptionsChange","handleSortableChange","handleSelectableChange","handleColumnsChange","handleDataChange","handleSelectedRowsChange","handleSortChange","handleControlsChange","setData","setColumns","config","Promise","resolve","renderHeader","renderControls","params","search","sort","response","renderBody","container","children","controlsDiv","customElements","whenDefined","processSlottedContent","columnElements","row","renderSlottedHeader","headerContainer","headerRow","selectCell","allSelected","someSelected","indeterminate","renderSortableHeader","sortItem","sortIndex","findIndex","isActive","indicator","orderNumber","direction","indicatorClasses","td","colSpan","fragment","createDocumentFragment","cellTagName","getCellTagName","getCellAttributes","selectAllCheckbox","multiSort","existingSortIndex","existingSort","sortLocalData","aVal","bVal","cmp","localeCompare","numeric"],"mappings":";;;;;;2JAiEO,SAASA,EAAaC,EAAMC,EAAcC,EAAYC,EAAWC,EAAcC,GACpF,SAASC,EAAOC,GAAK,QAAU,IAANA,GAA6B,mBAANA,EAAkB,MAAM,IAAIC,UAAU,qBAAsB,OAAOD,CAAG,CAKtH,IAJA,IAGIE,EAHAC,EAAOP,EAAUO,KAAMC,EAAe,WAATD,EAAoB,MAAiB,WAATA,EAAoB,MAAQ,QACrFE,GAAUX,GAAgBD,EAAOG,EAAkB,OAAIH,EAAOA,EAAKa,UAAY,KAC/EC,EAAab,IAAiBW,EAASG,OAAOC,yBAAyBJ,EAAQT,EAAUc,MAAQ,IAC9FC,GAAO,EACLC,EAAIjB,EAAWkB,OAAS,EAAGD,GAAK,EAAGA,IAAK,CAC7C,IAAIE,EAAU,CAAA,EACd,IAAK,IAAIC,KAAKnB,EAAWkB,EAAQC,GAAW,WAANA,EAAiB,CAAA,EAAKnB,EAAUmB,GACtE,IAAK,IAAIA,KAAKnB,EAAUoB,OAAQF,EAAQE,OAAOD,GAAKnB,EAAUoB,OAAOD,GACrED,EAAQG,eAAiB,SAAUjB,GAAK,GAAIW,EAAM,MAAM,IAAIV,UAAU,0DAA2DH,EAAkBoB,KAAKnB,EAAOC,GAAK,MAAQ,EAC5K,IAAImB,GAAS,EAAIxB,EAAWiB,IAAa,aAATT,EAAsB,CAAEiB,IAAKb,EAAWa,IAAKC,IAAKd,EAAWc,KAAQd,EAAWH,GAAMU,GACtH,GAAa,aAATX,EAAqB,CACrB,QAAe,IAAXgB,EAAmB,SACvB,GAAe,OAAXA,GAAqC,iBAAXA,EAAqB,MAAM,IAAIlB,UAAU,oBACnEC,EAAIH,EAAOoB,EAAOC,QAAMb,EAAWa,IAAMlB,IACzCA,EAAIH,EAAOoB,EAAOE,QAAMd,EAAWc,IAAMnB,IACzCA,EAAIH,EAAOoB,EAAOG,QAAOzB,EAAa0B,QAAQrB,EACtD,MACSA,EAAIH,EAAOoB,MACH,UAAThB,EAAkBN,EAAa0B,QAAQrB,GACtCK,EAAWH,GAAOF,EAE/B,CACIG,GAAQG,OAAOgB,eAAenB,EAAQT,EAAUc,KAAMH,GAC1DI,GAAO,CACT,CAEO,SAASc,EAAkBC,EAAS7B,EAAc8B,GAEvD,IADA,IAAIC,EAAWC,UAAUhB,OAAS,EACzBD,EAAI,EAAGA,EAAIf,EAAagB,OAAQD,IACrCe,EAAQC,EAAW/B,EAAae,GAAGkB,KAAKJ,EAASC,GAAS9B,EAAae,GAAGkB,KAAKJ,GAEnF,OAAOE,EAAWD,OAAQ,CAC5B,CCxEA,SAASI,EAAWC,EAAMC,EAAY,QAClC,IAAKD,EACD,OAAOE,EAAAA,IAAK,GAEhB,GAAIF,EAAKG,WAAW,UAAW,CAC3B,MAAMC,EAAMJ,EAAKK,MAAM,GACvB,OAAOH,EAAAA,IAAK,eAAeD,WAAmBG,0BAClD,CACA,GAAIJ,EAAKG,WAAW,WAAY,CAC5B,MAAMG,EAAUN,EAAKK,MAAM,GAC3B,OAAOH,EAAAA,IAAK,gBAAgBD,kBAA0BK,UAC1D,CAEA,MAAI,sCAAsCC,KAAKP,IAM3C,0FAA0FO,KAAKP,GALxFE,EAAAA,IAAK,eAAeD,WAAmBD,2BAU3CE,EAAAA,IAAK,gBAAgBD,kBAA0BD,UAC1D,CDmRkD,mBAApBQ,iBAAiCA,gBEjU9C,MACb,IACIC,EAEAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,GACAC,GACAC,GACAC,GACAC,GAxHAC,GAAmB,CAACC,UAAQ,cAAe,CAAEC,gBAAgB,KAE7DC,GAA0B,GAE1BC,GAAcC,YACdC,GAA6B,GAE7BC,GAAqB,GACrBC,GAA0B,GAE1BC,GAAqB,GACrBC,GAA0B,GAE1BC,GAAwB,GACxBC,GAA6B,GAE7BC,GAAsB,GACtBC,GAA2B,GAE3BC,GAA4B,GAC5BC,GAAiC,GAEjCC,GAAsB,GACtBC,GAA2B,GAE3BC,GAA2B,GAC3BC,GAAgC,GAEhCC,GAA0B,GAC1BC,GAA+B,GAE/BC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAwB,GACxBC,GAA6B,GAE7BC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAwB,GACxBC,GAA6B,GAE7BC,GAA0B,GAC1BC,GAA+B,GAE/BC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAoB,GACpBC,GAAyB,GAEzBC,GAAoB,GACpBC,GAAyB,GAEzBC,GAAqB,GACrBC,GAA0B,GAE1BC,GAAwB,GACxBC,GAA6B,GAE7BC,GAA0B,GAC1BC,GAA+B,GAE/BC,GAA0B,GAC1BC,GAA+B,GAE/BC,GAA6B,GAC7BC,GAAkC,GAElCC,GAAqB,GACrBC,GAA0B,GAE1BC,GAAsB,GACtBC,GAA2B,GAE3BC,GAA2B,GAC3BC,GAAgC,GAEhCC,GAAwB,GACxBC,GAA6B,GAE7BC,GAA2B,GAC3BC,GAAgC,GAEhCC,GAA2B,GAC3BC,GAAgC,GAEhCC,GAAsB,GACtBC,GAA2B,GAE3BC,GAA4B,GAC5BC,GAAiC,GAEjCC,GAA+B,GAC/BC,GAAoC,IAuBxC,cAAehE,UACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,GAAYmE,OAAOC,WAAa,WAAQ,EAC1H7H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B9H,EAAmB,CAAC8H,WAAS,CAAA,IAC7B7H,EAAsB,CAAC6H,WAAS,CAAA,IAChC5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9B3H,EAA0B,CAAC2H,WAAS,CAAA,IACpC1H,EAAoB,CAAC0H,WAAS,CAAA,IAC9BzH,EAAyB,CAACyH,EAAAA,SAAS,CAAEC,UAAW,iBAChDzH,EAAwB,CAACwH,EAAAA,SAAS,CAAEC,UAAW,gBAC/CxH,EAAuB,CAACuH,EAAAA,SAAS,CAAEE,KAAMC,WACzCzH,EAAuB,CAACsH,EAAAA,SAAS,CAAEE,KAAMC,WACzCxH,EAAsB,CAACqH,EAAAA,SAAS,CAAEE,KAAMC,WACxCvH,EAAuB,CAACoH,EAAAA,SAAS,CAAEE,KAAMC,WACzCtH,EAAsB,CAACmH,EAAAA,SAAS,CAAEE,KAAMC,WACxCrH,EAAwB,CAACkH,EAAAA,SAAS,CAAEE,KAAMC,WAC1CpH,EAAuB,CAACiH,EAAAA,SAAS,CAAEE,KAAMC,WACzCnH,EAAkB,CAACgH,WAAS,CAAA,IAC5B/G,EAAkB,CAAC+G,WAAS,CAAA,IAC5B9G,EAAmB,CAAC8G,WAAS,CAAA,IAC7B7G,EAAsB,CAAC6G,WAAS,CAAA,IAChC5G,EAAwB,CAAC4G,EAAAA,SAAS,CAAEE,KAAME,UAC1C/G,EAAwB,CAAC2G,EAAAA,SAAS,CAAEE,KAAME,UAC1C9G,EAA2B,CAAC0G,WAAS,CAAA,IACrCzG,EAAmB,CAACyG,WAAS,CAAA,IAC7BxG,EAAoB,CAACwG,WAAS,CAAA,IAC9BvG,EAAyB,CAACuG,EAAAA,SAAS,CAAEC,UAAW,iBAChDvG,EAAsB,CAACsG,EAAAA,SAAS,CAAEE,KAAMC,WACxCxG,EAAyB,CAACqG,EAAAA,SAAS,CAAEC,UAAW,iBAChDrG,EAAyB,CAACoG,EAAAA,SAAS,CAAEC,UAAW,iBAChDpG,EAAoB,CAACwG,QAAM,WAC3BvG,EAA0B,CAACuG,QAAM,kBACjCtG,EAA6B,CAACsG,QAAM,qBACpCrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBrG,EAAgC,CAACsG,QAAM,UACvCrG,EAAkC,CAACqG,QAAM,YACzCpG,EAAmC,CAACoG,QAAM,aAC1CnG,EAAkC,CAACmG,QAAM,YACzClG,EAAmC,CAACkG,QAAM,aAC1CjG,EAAsC,CAACiG,QAAM,gBAC7ChG,EAA8B,CAACgG,QAAM,QACrC/F,EAA8B,CAAC+F,QAAM,QACrC9F,EAA+B,CAAC8F,QAAM,SACtC7F,EAAoC,CAAC6F,QAAM,cAC3C5F,EAAoC,CAAC4F,QAAM,cAC3C3F,EAAkC,CAAC2F,QAAM,YACzC1F,EAA+B,CAAC0F,QAAM,SACtCzF,EAAgC,CAACyF,QAAM,UACvCxF,GAAiC,CAACyF,EAAAA,SAAS,cAAe,CAAEC,SAAS,EAAMC,UAAU,KACrF1F,GAAkC,CAACwF,EAAAA,SAAS,eAAgB,CAAEC,SAAS,EAAMC,UAAU,KACvFzF,GAAiC,CAACuF,EAAAA,SAAS,cAAe,CAAEC,SAAS,EAAMC,UAAU,KACrFxF,GAAgC,CAACsF,EAAAA,SAAS,aAAc,CAAEC,SAAS,EAAMC,UAAU,KACnFvF,GAAiC,CAACqF,EAAAA,SAAS,cAAe,CAAEC,SAAS,EAAMC,UAAU,KACrF9L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,IAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,IAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,IACpM9G,EAAa6K,KAAM,KAAMxF,EAA+B,CAAE1E,KAAM,SAAUO,KAAM,oBAAqB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,sBAAuBA,EAAKtK,IAAKsK,GAAOA,EAAIC,mBAAqBnB,SAAUF,GAAa,KAAMhE,IACxP9G,EAAa6K,KAAM,KAAMvF,EAAiC,CAAE3E,KAAM,SAAUO,KAAM,sBAAuB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,wBAAyBA,EAAKtK,IAAKsK,GAAOA,EAAIE,qBAAuBpB,SAAUF,GAAa,KAAMhE,IAChQ9G,EAAa6K,KAAM,KAAMtF,EAAkC,CAAE5E,KAAM,SAAUO,KAAM,uBAAwB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,yBAA0BA,EAAKtK,IAAKsK,GAAOA,EAAIG,sBAAwBrB,SAAUF,GAAa,KAAMhE,IACpQ9G,EAAa6K,KAAM,KAAMrF,EAAiC,CAAE7E,KAAM,SAAUO,KAAM,sBAAuB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,wBAAyBA,EAAKtK,IAAKsK,GAAOA,EAAII,qBAAuBtB,SAAUF,GAAa,KAAMhE,IAChQ9G,EAAa6K,KAAM,KAAMpF,EAAkC,CAAE9E,KAAM,SAAUO,KAAM,uBAAwB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,yBAA0BA,EAAKtK,IAAKsK,GAAOA,EAAIK,sBAAwBvB,SAAUF,GAAa,KAAMhE,IACpQ9G,EAAa6K,KAAM,KAAMnF,EAAqC,CAAE/E,KAAM,SAAUO,KAAM,0BAA2B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,4BAA6BA,EAAKtK,IAAKsK,GAAOA,EAAIM,yBAA2BxB,SAAUF,GAAa,KAAMhE,IAChR9G,EAAa6K,KAAM,KAAMlF,EAA6B,CAAEhF,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAIO,iBAAmBzB,SAAUF,GAAa,KAAMhE,IAChP9G,EAAa6K,KAAM,KAAMjF,EAA6B,CAAEjF,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAIQ,iBAAmB1B,SAAUF,GAAa,KAAMhE,IAChP9G,EAAa6K,KAAM,KAAMhF,EAA8B,CAAElF,KAAM,SAAUO,KAAM,mBAAoB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,qBAAsBA,EAAKtK,IAAKsK,GAAOA,EAAIS,kBAAoB3B,SAAUF,GAAa,KAAMhE,IACpP9G,EAAa6K,KAAM,KAAM/E,EAAmC,CAAEnF,KAAM,SAAUO,KAAM,wBAAyB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,0BAA2BA,EAAKtK,IAAKsK,GAAOA,EAAIU,uBAAyB5B,SAAUF,GAAa,KAAMhE,IACxQ9G,EAAa6K,KAAM,KAAM9E,EAAmC,CAAEpF,KAAM,SAAUO,KAAM,wBAAyB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,0BAA2BA,EAAKtK,IAAKsK,GAAOA,EAAIW,uBAAyB7B,SAAUF,GAAa,KAAMhE,IACxQ9G,EAAa6K,KAAM,KAAM7E,EAAiC,CAAErF,KAAM,SAAUO,KAAM,sBAAuB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,wBAAyBA,EAAKtK,IAAKsK,GAAOA,EAAIY,qBAAuB9B,SAAUF,GAAa,KAAMhE,IAChQ9G,EAAa6K,KAAM,KAAM5E,EAA8B,CAAEtF,KAAM,SAAUO,KAAM,mBAAoB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,qBAAsBA,EAAKtK,IAAKsK,GAAOA,EAAIa,kBAAoB/B,SAAUF,GAAa,KAAMhE,IACpP9G,EAAa6K,KAAM,KAAM3E,EAA+B,CAAEvF,KAAM,SAAUO,KAAM,oBAAqB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,sBAAuBA,EAAKtK,IAAKsK,GAAOA,EAAIc,mBAAqBhC,SAAUF,GAAa,KAAMhE,IACxP9G,EAAa6K,KAAM,KAAM1E,GAAgC,CAAExF,KAAM,SAAUO,KAAM,qBAAsB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,uBAAwBA,EAAKtK,IAAKsK,GAAOA,EAAIe,oBAAsBjC,SAAUF,GAAa,KAAMhE,IAC5P9G,EAAa6K,KAAM,KAAMzE,GAAiC,CAAEzF,KAAM,SAAUO,KAAM,sBAAuB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,wBAAyBA,EAAKtK,IAAKsK,GAAOA,EAAIgB,qBAAuBlC,SAAUF,GAAa,KAAMhE,IAChQ9G,EAAa6K,KAAM,KAAMxE,GAAgC,CAAE1F,KAAM,SAAUO,KAAM,qBAAsB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,uBAAwBA,EAAKtK,IAAKsK,GAAOA,EAAIiB,oBAAsBnC,SAAUF,GAAa,KAAMhE,IAC5P9G,EAAa6K,KAAM,KAAMvE,GAA+B,CAAE3F,KAAM,SAAUO,KAAM,oBAAqB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,sBAAuBA,EAAKtK,IAAKsK,GAAOA,EAAIkB,mBAAqBpC,SAAUF,GAAa,KAAMhE,IACxP9G,EAAa6K,KAAM,KAAMtE,GAAgC,CAAE5F,KAAM,SAAUO,KAAM,qBAAsB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,uBAAwBA,EAAKtK,IAAKsK,GAAOA,EAAImB,oBAAsBrC,SAAUF,GAAa,KAAMhE,IAC5P9G,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,GAAoBC,IAC7PhH,EAAa,KAAM,KAAMoD,EAAkB,CAAEzC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIoB,KAAMzL,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIoB,KAAOnL,IAAY6I,SAAUF,GAAa7D,GAAoBC,IAC7PlH,EAAa,KAAM,KAAMqD,EAAqB,CAAE1C,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIqB,QAAS1L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqB,QAAUpL,IAAY6I,SAAUF,GAAa3D,GAAuBC,IAC/QpH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,GAAqBC,IACnQtH,EAAa,KAAM,KAAMuD,EAAyB,CAAE5C,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIsB,YAAa3L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIsB,YAAcrL,IAAY6I,SAAUF,GAAavD,GAA2BC,IACvSxH,EAAa,KAAM,KAAMwD,EAAmB,CAAE7C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIuB,MAAO5L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuB,MAAQtL,IAAY6I,SAAUF,GAAarD,GAAqBC,IACnQ1H,EAAa,KAAM,KAAMyD,EAAwB,CAAE9C,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIwB,WAAY7L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwB,WAAavL,IAAY6I,SAAUF,GAAanD,GAA0BC,IACjS5H,EAAa,KAAM,KAAM0D,EAAuB,CAAE/C,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIyB,UAAW9L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIyB,UAAYxL,IAAY6I,SAAUF,GAAajD,GAAyBC,IAC3R9H,EAAa,KAAM,KAAM2D,EAAsB,CAAEhD,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI0B,SAAU/L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0B,SAAWzL,IAAY6I,SAAUF,GAAa/C,GAAwBC,IACrRhI,EAAa,KAAM,KAAM4D,EAAsB,CAAEjD,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI2B,SAAUhM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2B,SAAW1L,IAAY6I,SAAUF,GAAa7C,GAAwBC,IACrRlI,EAAa,KAAM,KAAM6D,EAAqB,CAAElD,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI4B,QAASjM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4B,QAAU3L,IAAY6I,SAAUF,GAAa3C,GAAuBC,IAC/QpI,EAAa,KAAM,KAAM8D,EAAsB,CAAEnD,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI6B,SAAUlM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6B,SAAW5L,IAAY6I,SAAUF,GAAazC,GAAwBC,IACrRtI,EAAa,KAAM,KAAM+D,EAAqB,CAAEpD,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI8B,QAASnM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI8B,QAAU7L,IAAY6I,SAAUF,GAAavC,GAAuBC,IAC/QxI,EAAa,KAAM,KAAMgE,EAAuB,CAAErD,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAI+B,UAAWpM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+B,UAAY9L,IAAY6I,SAAUF,GAAarC,GAAyBC,IAC3R1I,EAAa,KAAM,KAAMiE,EAAsB,CAAEtD,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIgC,SAAUrM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgC,SAAW/L,IAAY6I,SAAUF,GAAanC,GAAwBC,IACrR5I,EAAa,KAAM,KAAMkE,EAAiB,CAAEvD,KAAM,QAASO,KAAM,MAAO6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,QAASA,EAAKtK,IAAKsK,GAAOA,EAAIiC,IAAKtM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiC,IAAMhM,IAAY6I,SAAUF,GAAajC,GAAmBC,IACvP9I,EAAa,KAAM,KAAMmE,EAAiB,CAAExD,KAAM,QAASO,KAAM,MAAO6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,QAASA,EAAKtK,IAAKsK,GAAOA,EAAIkC,IAAKvM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkC,IAAMjM,IAAY6I,SAAUF,GAAa/B,GAAmBC,IACvPhJ,EAAa,KAAM,KAAMoE,EAAkB,CAAEzD,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAImC,KAAMxM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImC,KAAOlM,IAAY6I,SAAUF,GAAa7B,GAAoBC,IAC7PlJ,EAAa,KAAM,KAAMqE,EAAqB,CAAE1D,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIoC,QAASzM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIoC,QAAUnM,IAAY6I,SAAUF,GAAa3B,GAAuBC,IAC/QpJ,EAAa,KAAM,KAAMsE,EAAuB,CAAE3D,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIqC,UAAW1M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqC,UAAYpM,IAAY6I,SAAUF,GAAazB,GAAyBC,IAC3RtJ,EAAa,KAAM,KAAMuE,EAAuB,CAAE5D,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIsC,UAAW3M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIsC,UAAYrM,IAAY6I,SAAUF,GAAavB,GAAyBC,IAC3RxJ,EAAa,KAAM,KAAMwE,EAA0B,CAAE7D,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIuC,aAAc5M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuC,aAAetM,IAAY6I,SAAUF,GAAarB,GAA4BC,IAC7S1J,EAAa,KAAM,KAAMyE,EAAkB,CAAE9D,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIhL,KAAMW,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIhL,KAAOiB,IAAY6I,SAAUF,GAAanB,GAAoBC,IAC7P5J,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,GAAqBC,IACnQ9J,EAAa,KAAM,KAAM2E,EAAwB,CAAEhE,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIyC,WAAY9M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIyC,WAAaxM,IAAY6I,SAAUF,GAAaf,GAA0BC,IACjShK,EAAa,KAAM,KAAM4E,EAAqB,CAAEjE,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI0C,QAAS/M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0C,QAAUzM,IAAY6I,SAAUF,GAAab,GAAuBC,IAC/QlK,EAAa,KAAM,KAAM6E,EAAwB,CAAElE,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI2C,WAAYhN,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2C,WAAa1M,IAAY6I,SAAUF,GAAaX,GAA0BC,IACjSpK,EAAa,KAAM,KAAM8E,EAAwB,CAAEnE,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI4C,WAAYjN,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4C,WAAa3M,IAAY6I,SAAUF,GAAaT,GAA0BC,IACjStK,EAAa,KAAM,KAAM+E,EAAmB,CAAEpE,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI6C,MAAOlN,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6C,MAAQ5M,IAAY6I,SAAUF,GAAaP,GAAqBC,IACnQxK,EAAa,KAAM,KAAMgF,EAAyB,CAAErE,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAI8C,YAAanN,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI8C,YAAc7M,IAAY6I,SAAUF,GAAaL,GAA2BC,IACvS1K,EAAa,KAAM,KAAMiF,EAA4B,CAAEtE,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAI+C,eAAgBpN,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+C,eAAiB9M,IAAY6I,SAAUF,GAAaH,GAA8BC,IACzT5K,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,GAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,IACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,GAC1C,CACQ,WAAA0I,GACIC,QACAzE,KAAK0E,UAAYtN,EAAkB4I,KAAM/D,IACzC+D,KAAKO,KAAOnJ,EAAkB4I,KAAM9D,GAAoB,QACxD8D,KAAKyC,MAAQrL,EAAkB4I,KAAM7D,IAA0B/E,EAAkB4I,KAAM5D,GAAoB,WAC3G4D,KAAK0C,SAAWtL,EAAkB4I,KAAM3D,IAA0BjF,EAAkB4I,KAAM1D,GAAuB,aACjH0D,KAAK1I,OAASF,EAAkB4I,KAAMzD,IAA6BnF,EAAkB4I,KAAMxD,GAAqB,KAChHwD,KAAK2C,aAAevL,EAAkB4I,KAAMvD,IAA2BrF,EAAkB4I,KAAMtD,GAA2B,KAC1HsD,KAAK4C,OAASxL,EAAkB4I,KAAMrD,IAAiCvF,EAAkB4I,KAAMpD,GAAqB,KACpHoD,KAAK6C,YAAczL,EAAkB4I,KAAMnD,IAA2BzF,EAAkB4I,KAAMlD,GAA0B,KACxHkD,KAAK8C,WAAa1L,EAAkB4I,KAAMjD,IAAgC3F,EAAkB4I,KAAMhD,GAAyB,KAC3HgD,KAAK+C,UAAY3L,EAAkB4I,KAAM/C,IAA+B7F,EAAkB4I,KAAM9C,IAAwB,IACxH8C,KAAKgD,UAAY5L,EAAkB4I,KAAM7C,IAA8B/F,EAAkB4I,KAAM5C,IAAwB,IACvH4C,KAAKiD,SAAW7L,EAAkB4I,KAAM3C,IAA8BjG,EAAkB4I,KAAM1C,IAAuB,IACrH0C,KAAKkD,UAAY9L,EAAkB4I,KAAMzC,IAA6BnG,EAAkB4I,KAAMxC,IAAwB,IACtHwC,KAAKmD,SAAW/L,EAAkB4I,KAAMvC,IAA8BrG,EAAkB4I,KAAMtC,IAAuB,IACrHsC,KAAKoD,WAAahM,EAAkB4I,KAAMrC,IAA6BvG,EAAkB4I,KAAMpC,IAAyB,IACxHoC,KAAKqD,UAAYjM,EAAkB4I,KAAMnC,IAA+BzG,EAAkB4I,KAAMlC,IAAwB,IACxHkC,KAAKsD,KAAOlM,EAAkB4I,KAAMjC,IAA8B3G,EAAkB4I,KAAMhC,GAAmB,KAC7GgC,KAAKuD,KAAOnM,EAAkB4I,KAAM/B,IAAyB7G,EAAkB4I,KAAM9B,GAAmB,KACxG8B,KAAKwD,MAAQpM,EAAkB4I,KAAM7B,IAAyB/G,EAAkB4I,KAAM5B,GAAoB,KAC1G4B,KAAKyD,SAAWrM,EAAkB4I,KAAM3B,IAA0BjH,EAAkB4I,KAAM1B,GAAuB,KACjH0B,KAAK0D,WAAatM,EAAkB4I,KAAMzB,IAA6BnH,EAAkB4I,KAAMxB,IAAyB,IACxHwB,KAAK2D,WAAavM,EAAkB4I,KAAMvB,IAA+BrH,EAAkB4I,KAAMtB,IAAyB,IAC1HsB,KAAK4D,cAAgBxM,EAAkB4I,KAAMrB,IAA+BvH,EAAkB4I,KAAMpB,GAA4B,KAChIoB,KAAK3J,MAAQe,EAAkB4I,KAAMnB,IAAkCzH,EAAkB4I,KAAMlB,GAAoB,KACnHkB,KAAK6D,OAASzM,EAAkB4I,KAAMjB,IAA0B3H,EAAkB4I,KAAMhB,GAAqB,KAC7GgB,KAAK8D,YAAc1M,EAAkB4I,KAAMf,IAA2B7H,EAAkB4I,KAAMd,GAA0B,SACxHc,KAAK+D,SAAW3M,EAAkB4I,KAAMb,IAAgC/H,EAAkB4I,KAAMZ,IAAuB,IACvHY,KAAKgE,YAAc5M,EAAkB4I,KAAMX,IAA6BjI,EAAkB4I,KAAMV,GAA0B,KAC1HU,KAAKiE,YAAc7M,EAAkB4I,KAAMT,IAAgCnI,EAAkB4I,KAAMR,GAA0B,KAC7HQ,KAAKkE,OAAS9M,EAAkB4I,KAAMP,IAAgCrI,EAAkB4I,KAAMN,QAAqB,IACnHM,KAAKmE,aAAe/M,EAAkB4I,KAAML,IAA2BvI,EAAkB4I,KAAMJ,QAA2B,IAC1HI,KAAKoE,gBAAkBhN,EAAkB4I,KAAMH,IAAiCzI,EAAkB4I,KAAMF,QAA8B,IACtIE,KAAK2E,cAAgBvN,EAAkB4I,KAAMD,KAAoC,GAC9C,mBAAxBC,KAAK4E,kBACZ5E,KAAK0E,UAAY1E,KAAK4E,kBAE9B,CACA,MAAAjE,GACI,MAAMkE,EAAe,CACjB,QACA,UAAU7E,KAAKyC,OACf,UAAUzC,KAAK0C,UACf1C,KAAKmD,QAAU,iBAAmB,GAClCnD,KAAKiD,QAAU,iBAAmB,GAClCjD,KAAKgE,WAAa,0BAA4B,GAC9ChE,KAAKiE,YAA6B,aAAdjE,KAAKO,MAAuBP,KAAKqD,UAAarD,KAAKiD,QAAU,0BAA4B,GAC7GjD,KAAKoD,UAAY,mBAAqB,IACxC0B,OAAOtE,SAASuE,KAAK,KACjBC,EAAe,CAAC,QAAShF,KAAKkD,SAAW,kBAAoB,IAAI4B,OAAOtE,SAASuE,KAAK,KACtFE,EAAqB,CAAC,eAAgBjF,KAAKiE,YAA6B,aAAdjE,KAAKO,MAAuBP,KAAKqD,SAAY,4BAA8B,IAAIyB,OAAOtE,SAASuE,KAAK,KACpK,OAAOlN,MAAc;;cAEnBmI,KAAK4C;0BACOoC;cACZhF,KAAK4C;;;;;;;oBAOC5C,KAAKgE;kBACPtM,EAAWsI,KAAKgE,WAAY;;;;;;qBAMzBa;oBACD7E,KAAKO;qBACJP,KAAK1I;2BACC0I,KAAK2C;yBACP3C,KAAK+C,UAAY/C,KAAKiD;yBACtBjD,KAAKgD;yBACLhD,KAAKkD;mBACXlD,KAAKsD,KAAO;mBACZtD,KAAKuD,KAAO;oBACXvD,KAAKwD,MAAQ;uBACVxD,KAAKyD,SAAW;yBACdzD,KAAK0D,UAAY,EAAI1D,KAAK0D,UAAY;yBACtC1D,KAAK2D,UAAY,EAAI3D,KAAK2D,UAAY;4BACnC3D,KAAK4D,cAAgB;oBAC7B5D,KAAK3J,MAAQ;;qBAEZ2J,KAAKkF;sBACJlF,KAAKmF;qBACNnF,KAAKoF;oBACNpF,KAAKqF;;;;qBAIJJ;;;;;;qBAMAjF,KAAKsF;;;;;;;gBAOVtF,KAAKiD;;;;gBAIS,aAAdjD,KAAKO,MAAuBP,KAAKqD;;;;;;;uBAO1BrD,KAAKuF;;;;;;;;;;kBAUI,aAAdvF,KAAKO,MAAuBP,KAAKqD;;;sBAG7BrD,KAAKiE;oBACPvM,EAAWsI,KAAKiE,WAAY;;;;;;;gBAOhCjE,KAAK8C,UAAY,QAAU9C,KAAK6C,WAAa,SAAW;;yDAEf7C,KAAK8C;;;2DAGH9C,KAAK6C;;;;;;KAOxD,CACA,MAAAjC,GACI,OAAO4E,EAAAA,GAAY,GAvYd,gmMAwYT,CACA,IAAAvO,GAMI,GAJI+I,KAAK0E,WACL1E,KAAK0E,UAAUe,aAAazF,KAAK1I,OAGjC0I,KAAKmE,aAAenE,KAAKoD,UAAW,CACpC,MAAMsC,EAAa1F,KAAK1I,QAAU0I,KAAK+C,WAAa/C,KAAKgD,WAAahD,KAAKiD,QAC3EjD,KAAKmE,YAAYwB,MAAMC,QAAUF,EAAa,GAAK,OACnD1F,KAAKmE,YAAY0B,UAAUC,OAAO,0BAA2BJ,EACjE,CAEI1F,KAAKkE,OAASlE,KAAKmD,UACnBnD,KAAKkE,MAAM6B,aAAa,eAAgB,QACxC/F,KAAKkE,MAAM2B,UAAUG,IAAI,mBAGzBhG,KAAKkE,QAEa,WAAdlE,KAAKO,OACDP,KAAKsD,MACLtD,KAAKkE,MAAMZ,IAAMtD,KAAKsD,KACtBtD,KAAKuD,MACLvD,KAAKkE,MAAMX,IAAMvD,KAAKuD,KACtBvD,KAAKwD,OACLxD,KAAKkE,MAAMV,KAAOxD,KAAKwD,OAG3BxD,KAAK0D,UAAY,IACjB1D,KAAKkE,MAAM+B,UAAYjG,KAAK0D,WAC5B1D,KAAK2D,UAAY,IACjB3D,KAAKkE,MAAMgC,UAAYlG,KAAK2D,WAE5B3D,KAAKyD,UACLzD,KAAKkE,MAAMT,QAAUzD,KAAKyD,SAC1BzD,KAAK2C,cACL3C,KAAKkE,MAAMvB,YAAc3C,KAAK2C,aAC9B3C,KAAK1I,QACL0I,KAAKkE,MAAM5M,MAAQ0I,KAAK1I,OAC5B0I,KAAKkE,MAAMnB,SAAW/C,KAAK+C,SAC3B/C,KAAKkE,MAAMiC,SAAWnG,KAAKgD,SAC3BhD,KAAKkE,MAAMhB,SAAWlD,KAAKkD,SAEnC,CACA,WAAAgC,CAAYkB,GACR,MAAMlC,EAAQkC,EAAEpQ,OAChBgK,KAAK1I,MAAQ4M,EAAM5M,MACnB0I,KAAKoC,oBACT,CACA,YAAA+C,CAAaiB,GACT,MAAMlC,EAAQkC,EAAEpQ,OAChBgK,KAAK1I,MAAQ4M,EAAM5M,MACnB0I,KAAKqC,qBACT,CACA,WAAA+C,CAAYgB,GACRpG,KAAKsC,oBACT,CACA,UAAA+C,CAAWe,GACPpG,KAAKuC,mBACT,CACA,WAAA+C,CAAYc,GACRpG,KAAKqG,OACT,CACA,oBAAAd,CAAqBa,GAKjB,GAJApG,KAAK2E,cAAgB3E,KAAK2E,aACtB3E,KAAKkE,QACLlE,KAAKkE,MAAM3D,KAAOP,KAAK2E,aAAe,OAAS,YAE/C3E,KAAKoE,eAAgB,CACrB,MAAMkC,EAAatG,KAAKoE,eAAemC,cAAc,0BAC/CC,EAAcxG,KAAKoE,eAAemC,cAAc,2BAClDD,GAAcE,IACdF,EAAWX,MAAMC,QAAU5F,KAAK2E,aAAe,OAAS,GACxD6B,EAAYb,MAAMC,QAAU5F,KAAK2E,aAAe,GAAK,OACrD3E,KAAKoE,eAAe2B,aAAa,aAAc/F,KAAK2E,aAAe,gBAAkB,iBAE7F,CACJ,CACA,iBAAArD,GAUI,GARItB,KAAKkE,OAASlE,KAAKkE,MAAM5M,QAAU0I,KAAK1I,QACxC0I,KAAKkE,MAAM5M,MAAQ0I,KAAK1I,OAGxB0I,KAAK0E,WACL1E,KAAK0E,UAAUe,aAAazF,KAAK1I,OAGjC0I,KAAKmE,aAAenE,KAAKoD,UAAW,CACpC,MAAMsC,EAAa1F,KAAK1I,QAAU0I,KAAK+C,WAAa/C,KAAKgD,WAAahD,KAAKiD,QAC3EjD,KAAKmE,YAAYwB,MAAMC,QAAUF,EAAa,GAAK,OACnD1F,KAAKmE,YAAY0B,UAAUC,OAAO,0BAA2BJ,EACjE,CACJ,CACA,mBAAAnE,GACQvB,KAAKkE,QACLlE,KAAKkE,MAAM6B,aAAa,eAAgBU,OAAOzG,KAAKmD,UAChDnD,KAAKmD,QACLnD,KAAKkE,MAAM2B,UAAUG,IAAI,kBAGzBhG,KAAKkE,MAAM2B,UAAUa,OAAO,kBAGxC,CACA,oBAAAlF,GAKI,GAJIxB,KAAKkE,QACLlE,KAAKkE,MAAMnB,SAAW/C,KAAK+C,UAAY/C,KAAKiD,SAG5CjD,KAAKmE,aAAenE,KAAKoD,UAAW,CACpC,MAAMsC,EAAa1F,KAAK1I,QAAU0I,KAAK+C,WAAa/C,KAAKgD,WAAahD,KAAKiD,QAC3EjD,KAAKmE,YAAYwB,MAAMC,QAAUF,EAAa,GAAK,OACnD1F,KAAKmE,YAAY0B,UAAUC,OAAO,0BAA2BJ,EACjE,CACJ,CACA,mBAAAjE,GAKI,GAJIzB,KAAKkE,QACLlE,KAAKkE,MAAMnB,SAAW/C,KAAK+C,UAAY/C,KAAKiD,SAG5CjD,KAAKmE,aAAenE,KAAKoD,UAAW,CACpC,MAAMsC,EAAa1F,KAAK1I,QAAU0I,KAAK+C,WAAa/C,KAAKgD,WAAahD,KAAKiD,QAC3EjD,KAAKmE,YAAYwB,MAAMC,QAAUF,EAAa,GAAK,OACnD1F,KAAKmE,YAAY0B,UAAUC,OAAO,0BAA2BJ,EACjE,CACJ,CACA,oBAAAhE,GAKI,GAJI1B,KAAKkE,QACLlE,KAAKkE,MAAMiC,SAAWnG,KAAKgD,UAG3BhD,KAAKmE,aAAenE,KAAKoD,UAAW,CACpC,MAAMsC,EAAa1F,KAAK1I,QAAU0I,KAAK+C,WAAa/C,KAAKgD,WAAahD,KAAKiD,QAC3EjD,KAAKmE,YAAYwB,MAAMC,QAAUF,EAAa,GAAK,OACnD1F,KAAKmE,YAAY0B,UAAUC,OAAO,0BAA2BJ,EACjE,CACJ,CACA,uBAAA/D,GACQ3B,KAAKkE,QACLlE,KAAKkE,MAAMvB,YAAc3C,KAAK2C,YAEtC,CACA,eAAAf,GACQ5B,KAAKkE,OAAuB,WAAdlE,KAAKO,OACnBP,KAAKkE,MAAMZ,IAAMtD,KAAKsD,IAE9B,CACA,eAAAzB,GACQ7B,KAAKkE,OAAuB,WAAdlE,KAAKO,OACnBP,KAAKkE,MAAMX,IAAMvD,KAAKuD,IAE9B,CACA,gBAAAzB,GACQ9B,KAAKkE,OAAuB,WAAdlE,KAAKO,OACnBP,KAAKkE,MAAMV,KAAOxD,KAAKwD,KAE/B,CACA,qBAAAzB,GACQ/B,KAAKkE,OAASlE,KAAK0D,UAAY,IAC/B1D,KAAKkE,MAAM+B,UAAYjG,KAAK0D,UAEpC,CACA,qBAAA1B,GACQhC,KAAKkE,OAASlE,KAAK2D,UAAY,IAC/B3D,KAAKkE,MAAMgC,UAAYlG,KAAK2D,UAEpC,CACA,mBAAA1B,GACQjC,KAAKkE,QACLlE,KAAKkE,MAAMT,QAAUzD,KAAKyD,QAElC,CACA,gBAAAvB,GACQlC,KAAKkE,OAAuB,aAAdlE,KAAKO,OAEnBP,KAAKkE,MAAM3D,KAAOP,KAAKO,KAE/B,CACA,iBAAA4B,GACI,MAAMwE,EAAU3G,KAAK4G,YAAYL,cAAc,UAC/C,GAAII,EAAS,CACTA,EAAQE,YAAc7G,KAAK4C,MAE3B,MAAMkE,EAAUH,EAAQI,cACpBD,IACAA,EAAQnB,MAAMC,QAAU5F,KAAK4C,MAAQ,GAAK,OAElD,CACJ,CACA,kBAAAR,GACI,MAAO,CAAE9K,MAAO0I,KAAK1I,MAAO4M,MAAOlE,KACvC,CACA,mBAAAqC,GACI,MAAO,CAAE/K,MAAO0I,KAAK1I,MAAO4M,MAAOlE,KACvC,CACA,kBAAAsC,GACI,MAAO,CAAE4B,MAAOlE,KACpB,CACA,iBAAAuC,GACI,MAAO,CAAE2B,MAAOlE,KACpB,CACA,kBAAAwC,GACI,MAAO,CAAE0B,MAAOlE,KACpB,CAEA,KAAAgH,GACIhH,KAAKkE,OAAO8C,OAChB,CACA,IAAAC,GACIjH,KAAKkE,OAAO+C,MAChB,CACA,MAAAC,GACIlH,KAAKkE,OAAOgD,QAChB,CACA,KAAAb,GACIrG,KAAK1I,MAAQ,GACT0I,KAAKkE,QACLlE,KAAKkE,MAAM5M,MAAQ,IAEvB0I,KAAKwC,qBACLxC,KAAKoC,qBACLpC,KAAKqC,sBACLrC,KAAKgH,OACT,CACA,aAAAG,GACI,OAAOnH,KAAKkE,OAAOiD,kBAAmB,CAC1C,CACA,cAAAC,GACI,OAAOpH,KAAKkE,OAAOkD,mBAAoB,CAC3C,CACA,iBAAAC,CAAkBC,GACdtH,KAAKkE,OAAOmD,kBAAkBC,EAClC,GAGP,EAnnBgB,GCHC,MACd,IACIlP,EAEAC,EAGAI,EAGAE,EAGAG,EAGAyO,EAGAC,EAGAnN,EACAC,EACAC,EAvBAoB,EAAmB,CAACC,UAAQ,iBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3BG,EAAsB,GACtBC,EAA2B,GAE3BK,EAAyB,GACzBC,EAA8B,GAE9BsK,EAAyB,GACzBC,EAA8B,GAE9BC,EAAqB,GACrBC,EAA0B,IAI9B,cAAe7L,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,WAAS,CAAA,IAC9B1H,EAAoB,CAAC0H,WAAS,CAAA,IAC9BvH,EAAuB,CAACuH,EAAAA,SAAS,CAAEE,KAAMC,WACzC+G,EAAuB,CAAClH,EAAAA,SAAS,CAAEE,KAAMC,WACzCgH,EAAmB,CAACnH,WAAS,CAAA,IAC7BhG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB1L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMwD,EAAmB,CAAE7C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIuB,MAAO5L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuB,MAAQtL,IAAY6I,SAAUF,GAAarD,EAAqBC,GACnQ1H,EAAa,KAAM,KAAM2D,EAAsB,CAAEhD,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI0B,SAAU/L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0B,SAAWzL,IAAY6I,SAAUF,GAAa/C,EAAwBC,GACrRhI,EAAa,KAAM,KAAMoS,EAAsB,CAAEzR,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIwG,SAAU7Q,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwG,SAAWvQ,IAAY6I,SAAUF,GAAawH,EAAwBC,GACrRvS,EAAa,KAAM,KAAMqS,EAAkB,CAAE1R,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAI1J,KAAMX,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI1J,KAAOL,IAAY6I,SAAUF,GAAa0H,EAAoBC,GAC7PzS,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GAEI,OAAO9I,EAAAA,IAAc,EACzB,CACA,MAAA+I,GACI,OAAO4E,EAAAA,GAAY,0BACvB,CACA,IAAAvO,IAES+I,KAAK4C,OAAS5C,KAAK6G,cACpB7G,KAAK4C,MAAQ5C,KAAK6G,YAAYiB,SAG7B9H,KAAK1I,OAAS0I,KAAK4C,QACpB5C,KAAK1I,MAAQ0I,KAAK4C,MAE1B,CAEA,cAAImF,GACA,MAAO,CACHzQ,MAAO0I,KAAK1I,MACZsL,MAAO5C,KAAK4C,OAAS5C,KAAK6G,aAAaiB,QAAU9H,KAAK1I,MACtDyL,SAAU/C,KAAK+C,SACf8E,SAAU7H,KAAK6H,SACflQ,KAAMqI,KAAKrI,KAEnB,CACA,WAAA6M,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAK4C,OAASxL,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAMpD,EAAqB,KAC9GoD,KAAK+C,UAAY3L,EAAkB4I,KAAMnD,GAA2BzF,EAAkB4I,KAAM9C,GAAwB,IACpH8C,KAAK6H,UAAYzQ,EAAkB4I,KAAM7C,GAA8B/F,EAAkB4I,KAAMyH,GAAwB,IACvHzH,KAAKrI,MAAQP,EAAkB4I,KAAM0H,GAA8BtQ,EAAkB4I,KAAM2H,EAAoB,KAC/GvQ,EAAkB4I,KAAM4H,EAC5B,GAGP,EAxFiB,GCGA,MACd,IACIxP,EAEAC,EAGAS,EAGAG,EAGAC,EAGAH,EAGAC,EAGAgP,EAGAC,EAGA9O,EAGA+O,EAGAC,EAGAC,EAGA7P,EAGAqB,EAGAnB,EAGAE,EAGAD,EAGA2P,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAzO,EAGA0O,EAGAC,EAGAC,EAGAC,EAGA3O,EACAC,EACAC,EACA0O,EACAzO,EACA0O,EACAxO,EACAC,EACAwO,EACA5N,EACA6N,EACAC,EAxGA1N,EAAmB,CAACC,UAAQ,eAAgB,CAAEC,gBAAgB,KAE9DC,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BiB,EAAyB,GACzBC,EAA8B,GAE9BK,EAAyB,GACzBC,EAA8B,GAE9BC,GAAwB,GACxBC,GAA6B,GAE7BP,GAAyB,GACzBC,GAA8B,GAE9BC,GAAwB,GACxBC,GAA6B,GAE7B+L,GAAyB,GACzBC,GAA8B,GAE9BC,GAA2B,GAC3BC,GAAgC,GAEhC7L,GAA0B,GAC1BC,GAA+B,GAE/B6L,GAA8B,GAC9BC,GAAmC,GAEnCC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAqB,GACrBC,GAA0B,GAE1B3N,GAAqB,GACrBC,GAA0B,GAE1ByC,GAAqB,GACrBC,GAA0B,GAE1BvC,GAAsB,GACtBC,GAA2B,GAE3BG,GAAsB,GACtBC,GAA2B,GAE3BH,GAA4B,GAC5BC,GAAiC,GAEjCqN,GAA0B,GAC1BC,GAA+B,GAE/BC,GAAwB,GACxBC,GAA6B,GAE7BC,GAAwB,GACxBC,GAA6B,GAE7BC,GAAyB,GACzBC,GAA8B,GAE9BC,GAA6B,GAC7BC,GAAkC,GAElCC,GAA6B,GAC7BC,GAAkC,GAElCC,GAA4B,GAC5BC,GAAiC,GAEjCC,GAA4B,GAC5BC,GAAiC,GAEjCnL,GAA4B,GAC5BC,GAAiC,GAEjCmL,GAAsB,GACtBC,GAA2B,GAE3BC,GAAgC,GAChCC,GAAqC,GAErCC,GAA8B,GAC9BC,GAAmC,GAEnCC,GAA+B,GAC/BC,GAAoC,IAaxC,cAAexP,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,GAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HrH,EAAuB,CAACuH,EAAAA,SAAS,CAAEE,KAAMC,WACzCvH,EAAuB,CAACoH,EAAAA,SAAS,CAAEE,KAAMC,WACzCtH,EAAsB,CAACmH,EAAAA,SAAS,CAAEE,KAAMC,WACxCzH,EAAuB,CAACsH,EAAAA,SAAS,CAAEE,KAAMC,WACzCxH,EAAsB,CAACqH,EAAAA,SAAS,CAAEE,KAAMC,WACxCwH,EAAuB,CAAC3H,EAAAA,SAAS,CAAEE,KAAMC,WACzCyH,EAAyB,CAAC5H,EAAAA,SAAS,CAAEE,KAAMC,WAC3CrH,EAAwB,CAACkH,EAAAA,SAAS,CAAEE,KAAMC,WAC1C0H,EAA4B,CAAC7H,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,qBAClE6H,EAAuB,CAAC9H,EAAAA,SAAS,CAAEE,KAAMC,WACzC4H,EAAmB,CAAC/H,EAAAA,SAAS,CAAEE,KAAMC,WACrCjI,EAAmB,CAAC8H,WAAS,CAAA,IAC7BzG,EAAmB,CAACyG,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9B1H,EAAoB,CAAC0H,WAAS,CAAA,IAC9B3H,EAA0B,CAAC2H,WAAS,CAAA,IACpCgI,EAAwB,CAAChI,EAAAA,SAAS,CAAEC,UAAW,gBAC/CgI,EAAsB,CAACjI,EAAAA,SAAS,CAAEE,KAAMiL,MAAOlL,WAAW,KAC1DiI,EAAsB,CAAC7H,QAAM,oBAC7B8H,EAAuB,CAAC9H,QAAM,qBAC9B+H,EAA2B,CAAC/H,QAAM,kBAClCgI,EAA2B,CAAChI,QAAM,kBAClCiI,EAA0B,CAACjI,QAAM,yBACjCkI,EAA0B,CAAClI,QAAM,oBACjCvG,EAA0B,CAACuG,QAAM,kBACjCmI,EAAoB,CAACnI,QAAM,kBAC3BoI,EAA8B,CAACpI,QAAM,mBACrCqI,EAA4B,CAACrI,QAAM,2BACnCsI,EAA6B,CAACyC,WAAS,mBACvCpR,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBoI,EAAsB,CAACyC,EAAAA,WACvBlR,EAAgC,CAACsG,QAAM,UACvCoI,EAA0C,CAACpI,QAAM,YACjDpG,EAAmC,CAACoG,QAAM,aAC1CnG,EAAkC,CAACmG,QAAM,YACzCqI,EAA+B,CAACrI,QAAM,SACtCvF,EAAkC,CAACwF,EAAAA,SAAS,gBAAiB,CAAEC,SAAS,EAAMC,UAAU,KACxFmI,EAAgC,CAACrI,EAAAA,SAAS,cAAe,CAAEC,SAAS,EAAMC,UAAU,KACpFoI,EAAiC,CAACtI,EAAAA,SAAS,eAAgB,CAAEC,SAAS,EAAMC,UAAU,KACtF9L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,IAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,IAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,IAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAMiJ,EAAqB,CAAEnT,KAAM,SAAUO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIsK,SAAWxL,SAAUF,IAAa,KAAMhE,GAChN9G,EAAa6K,KAAM,KAAMxF,EAA+B,CAAE1E,KAAM,SAAUO,KAAM,oBAAqB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,sBAAuBA,EAAKtK,IAAKsK,GAAOA,EAAIC,mBAAqBnB,SAAUF,IAAa,KAAMhE,GACxP9G,EAAa6K,KAAM,KAAMkJ,EAAyC,CAAEpT,KAAM,SAAUO,KAAM,8BAA+B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gCAAiCA,EAAKtK,IAAKsK,GAAOA,EAAIuK,6BAA+BzL,SAAUF,IAAa,KAAMhE,GAChS9G,EAAa6K,KAAM,KAAMtF,EAAkC,CAAE5E,KAAM,SAAUO,KAAM,uBAAwB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,yBAA0BA,EAAKtK,IAAKsK,GAAOA,EAAIG,sBAAwBrB,SAAUF,IAAa,KAAMhE,GACpQ9G,EAAa6K,KAAM,KAAMrF,EAAiC,CAAE7E,KAAM,SAAUO,KAAM,sBAAuB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,wBAAyBA,EAAKtK,IAAKsK,GAAOA,EAAII,qBAAuBtB,SAAUF,IAAa,KAAMhE,GAChQ9G,EAAa6K,KAAM,KAAMmJ,EAA8B,CAAErT,KAAM,SAAUO,KAAM,mBAAoB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,qBAAsBA,EAAKtK,IAAKsK,GAAOA,EAAIwK,kBAAoB1L,SAAUF,IAAa,KAAMhE,GACpP9G,EAAa6K,KAAM,KAAMzE,EAAiC,CAAEzF,KAAM,SAAUO,KAAM,sBAAuB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,wBAAyBA,EAAKtK,IAAKsK,GAAOA,EAAIgB,qBAAuBlC,SAAUF,IAAa,KAAMhE,GAChQ9G,EAAa6K,KAAM,KAAMoJ,EAA+B,CAAEtT,KAAM,SAAUO,KAAM,oBAAqB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,sBAAuBA,EAAKtK,IAAKsK,GAAOA,EAAIyK,mBAAqB3L,SAAUF,IAAa,KAAMhE,GACxP9G,EAAa6K,KAAM,KAAMqJ,EAAgC,CAAEvT,KAAM,SAAUO,KAAM,qBAAsB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,uBAAwBA,EAAKtK,IAAKsK,GAAOA,EAAI0K,oBAAsB5L,SAAUF,IAAa,KAAMhE,GAC5P9G,EAAa,KAAM,KAAM2D,EAAsB,CAAEhD,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI0B,SAAU/L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0B,SAAWzL,IAAY6I,SAAUF,IAAa/C,EAAwBC,GACrRhI,EAAa,KAAM,KAAM8D,EAAsB,CAAEnD,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI6B,SAAUlM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6B,SAAW5L,IAAY6I,SAAUF,IAAazC,EAAwBC,GACrRtI,EAAa,KAAM,KAAM+D,EAAqB,CAAEpD,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI8B,QAASnM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI8B,QAAU7L,IAAY6I,SAAUF,IAAavC,GAAuBC,IAC/QxI,EAAa,KAAM,KAAM4D,EAAsB,CAAEjD,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI2B,SAAUhM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2B,SAAW1L,IAAY6I,SAAUF,IAAa7C,GAAwBC,IACrRlI,EAAa,KAAM,KAAM6D,EAAqB,CAAElD,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI4B,QAASjM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4B,QAAU3L,IAAY6I,SAAUF,IAAa3C,GAAuBC,IAC/QpI,EAAa,KAAM,KAAM6S,EAAsB,CAAElS,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI2K,SAAUhV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2K,SAAW1U,IAAY6I,SAAUF,IAAaqJ,GAAwBC,IACrRpU,EAAa,KAAM,KAAM8S,EAAwB,CAAEnS,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI4K,WAAYjV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4K,WAAa3U,IAAY6I,SAAUF,IAAauJ,GAA0BC,IACjStU,EAAa,KAAM,KAAMgE,EAAuB,CAAErD,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAI+B,UAAWpM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+B,UAAY9L,IAAY6I,SAAUF,IAAarC,GAAyBC,IAC3R1I,EAAa,KAAM,KAAM+S,EAA2B,CAAEpS,KAAM,QAASO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI6K,cAAelV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6K,cAAgB5U,IAAY6I,SAAUF,IAAayJ,GAA6BC,IACnTxU,EAAa,KAAM,KAAMgT,EAAsB,CAAErS,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI8K,SAAUnV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI8K,SAAW7U,IAAY6I,SAAUF,IAAa2J,GAAwBC,IACrR1U,EAAa,KAAM,KAAMiT,EAAkB,CAAEtS,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAI+K,KAAMpV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+K,KAAO9U,IAAY6I,SAAUF,IAAa6J,GAAoBC,IAC7P5U,EAAa,KAAM,KAAMoD,EAAkB,CAAEzC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIoB,KAAMzL,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIoB,KAAOnL,IAAY6I,SAAUF,IAAa7D,GAAoBC,IAC7PlH,EAAa,KAAM,KAAMyE,EAAkB,CAAE9D,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIhL,KAAMW,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIhL,KAAOiB,IAAY6I,SAAUF,IAAanB,GAAoBC,IAC7P5J,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,IAAazD,GAAqBC,IACnQtH,EAAa,KAAM,KAAMwD,EAAmB,CAAE7C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIuB,MAAO5L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuB,MAAQtL,IAAY6I,SAAUF,IAAarD,GAAqBC,IACnQ1H,EAAa,KAAM,KAAMuD,EAAyB,CAAE5C,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIsB,YAAa3L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIsB,YAAcrL,IAAY6I,SAAUF,IAAavD,GAA2BC,IACvSxH,EAAa,KAAM,KAAMkT,EAAuB,CAAEvS,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIgL,UAAWrV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgL,UAAY/U,IAAY6I,SAAUF,IAAa+J,GAAyBC,IAC3R9U,EAAa,KAAM,KAAMmT,EAAqB,CAAExS,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiL,QAAStV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiL,QAAUhV,IAAY6I,SAAUF,IAAaiK,GAAuBC,IAC/QhV,EAAa,KAAM,KAAMoT,EAAqB,CAAEzS,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIkL,QAASvV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkL,QAAUjV,IAAY6I,SAAUF,IAAamK,GAAuBC,IAC/QlV,EAAa,KAAM,KAAMqT,EAAsB,CAAE1S,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAImL,SAAUxV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImL,SAAWlV,IAAY6I,SAAUF,IAAaqK,GAAwBC,IACrRpV,EAAa,KAAM,KAAMsT,EAA0B,CAAE3S,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIoL,aAAczV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIoL,aAAenV,IAAY6I,SAAUF,IAAauK,GAA4BC,IAC7StV,EAAa,KAAM,KAAMuT,EAA0B,CAAE5S,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIqL,aAAc1V,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqL,aAAepV,IAAY6I,SAAUF,IAAayK,GAA4BC,IAC7SxV,EAAa,KAAM,KAAMwT,EAAyB,CAAE7S,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIsL,YAAa3V,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIsL,YAAcrV,IAAY6I,SAAUF,IAAa2K,GAA2BC,IACvS1V,EAAa,KAAM,KAAMyT,EAAyB,CAAE9S,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIuL,YAAa5V,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuL,YAActV,IAAY6I,SAAUF,IAAa6K,GAA2BC,IACvS5V,EAAa,KAAM,KAAMgF,EAAyB,CAAErE,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAI8C,YAAanN,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI8C,YAAc7M,IAAY6I,SAAUF,IAAaL,GAA2BC,IACvS1K,EAAa,KAAM,KAAM0T,EAAmB,CAAE/S,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwL,MAAO7V,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwL,MAAQvV,IAAY6I,SAAUF,IAAa+K,GAAqBC,IACnQ9V,EAAa,KAAM,KAAM2T,EAA6B,CAAEhT,KAAM,QAASO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAIyL,gBAAiB9V,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIyL,gBAAkBxV,IAAY6I,SAAUF,IAAaiL,GAA+BC,IAC/ThW,EAAa,KAAM,KAAM4T,EAA2B,CAAEjT,KAAM,QAASO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI0L,cAAe/V,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0L,cAAgBzV,IAAY6I,SAAUF,IAAamL,GAA6BC,IACnTlW,EAAa,KAAM,KAAM6T,EAA4B,CAAElT,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAI2L,eAAgBhW,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2L,eAAiB1V,IAAY6I,SAAUF,IAAaqL,GAA8BC,IACzTpW,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,IAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,IAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,KACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,WAAA0I,GACIC,QACAzE,KAAK0E,UAAYtN,EAAkB4I,KAAM/D,GACzC+D,KAAK+C,SAAW3L,EAAkB4I,KAAM9C,GAAwB,GAChE8C,KAAKkD,UAAY9L,EAAkB4I,KAAM7C,GAA8B/F,EAAkB4I,KAAMxC,GAAwB,IACvHwC,KAAKmD,SAAW/L,EAAkB4I,KAAMvC,GAA8BrG,EAAkB4I,KAAMtC,IAAuB,IACrHsC,KAAKgD,UAAY5L,EAAkB4I,KAAMrC,IAA6BvG,EAAkB4I,KAAM5C,IAAwB,IACtH4C,KAAKiD,SAAW7L,EAAkB4I,KAAM3C,IAA8BjG,EAAkB4I,KAAM1C,IAAuB,IACrH0C,KAAKgM,UAAY5U,EAAkB4I,KAAMzC,IAA6BnG,EAAkB4I,KAAMsJ,IAAwB,IACtHtJ,KAAKiM,YAAc7U,EAAkB4I,KAAMuJ,IAA8BnS,EAAkB4I,KAAMwJ,IAA0B,IAC3HxJ,KAAKoD,WAAahM,EAAkB4I,KAAMyJ,IAAgCrS,EAAkB4I,KAAMpC,IAAyB,IAC3HoC,KAAKkM,eAAiB9U,EAAkB4I,KAAMnC,IAA+BzG,EAAkB4I,KAAM0J,IAA6B,IAClI1J,KAAKmM,UAAY/U,EAAkB4I,KAAM2J,IAAmCvS,EAAkB4I,KAAM4J,IAAwB,IAC5H5J,KAAKoM,MAAQhV,EAAkB4I,KAAM6J,IAA8BzS,EAAkB4I,KAAM8J,IAAoB,IAC/G9J,KAAKyC,MAAQrL,EAAkB4I,KAAM+J,IAA0B3S,EAAkB4I,KAAM5D,GAAoB,WAC3G4D,KAAK3J,MAAQe,EAAkB4I,KAAM3D,IAA0BjF,EAAkB4I,KAAMlB,GAAoB,KAC3GkB,KAAK1I,OAASF,EAAkB4I,KAAMjB,IAA0B3H,EAAkB4I,KAAMxD,GAAqB,KAC7GwD,KAAK4C,OAASxL,EAAkB4I,KAAMvD,IAA2BrF,EAAkB4I,KAAMpD,GAAqB,KAC9GoD,KAAK2C,aAAevL,EAAkB4I,KAAMnD,IAA2BzF,EAAkB4I,KAAMtD,GAA2B,qBAC1HsD,KAAKqM,WAAajV,EAAkB4I,KAAMrD,IAAiCvF,EAAkB4I,KAAMgK,GAAyB,UAC5HhK,KAAKsM,SAAWlV,EAAkB4I,KAAMiK,IAA+B7S,EAAkB4I,KAAMkK,GAAuB,KAEtHlK,KAAKiN,cAAgB7V,EAAkB4I,KAAMmK,IAA6B,IAC1EnK,KAAKuM,QAAUnV,EAAkB4I,KAAMoK,QAAuB,GAC9DpK,KAAKwM,UAAYpV,EAAkB4I,KAAMqK,IAA6BjT,EAAkB4I,KAAMsK,QAAwB,IACtHtK,KAAKyM,cAAgBrV,EAAkB4I,KAAMuK,IAA8BnT,EAAkB4I,KAAMwK,QAA4B,IAC/HxK,KAAK0M,cAAgBtV,EAAkB4I,KAAMyK,IAAkCrT,EAAkB4I,KAAM0K,QAA4B,IACnI1K,KAAK2M,aAAevV,EAAkB4I,KAAM2K,IAAkCvT,EAAkB4I,KAAM4K,QAA2B,IACjI5K,KAAK4M,aAAexV,EAAkB4I,KAAM6K,IAAiCzT,EAAkB4I,KAAM8K,QAA2B,IAChI9K,KAAKmE,aAAe/M,EAAkB4I,KAAM+K,IAAiC3T,EAAkB4I,KAAMJ,QAA2B,IAChII,KAAK6M,OAASzV,EAAkB4I,KAAMH,IAAiCzI,EAAkB4I,KAAMgL,QAAqB,IACpHhL,KAAK8M,iBAAmB1V,EAAkB4I,KAAMiL,IAA2B7T,EAAkB4I,KAAMkL,QAA+B,IAClIlL,KAAK+M,eAAiB3V,EAAkB4I,KAAMmL,IAAqC/T,EAAkB4I,KAAMoL,QAA6B,IACxIpL,KAAKgN,gBAAkB5V,EAAkB4I,KAAMqL,IAAmCjU,EAAkB4I,KAAMsL,QAA8B,IACxItL,KAAKkN,iBAAmB9V,EAAkB4I,KAAMuL,IAAoC,IACpFvL,KAAKmN,eAAiB,IAAIC,IAC1BpN,KAAKqN,cAAe,EACpBrN,KAAKsN,mBAAqB,GACS,mBAAxBtN,KAAK4E,kBACZ5E,KAAK0E,UAAY1E,KAAK4E,kBAE9B,CAEA,iBAAI2I,GAEA,GAAIvN,KAAKiN,aAAazW,OAAS,GAAKwJ,KAAKsM,QAAQ9V,OAAS,EAAG,CAEzD,MAAMgX,EAAc,IAAIJ,IAAIpN,KAAKiN,aAAaQ,IAAIC,GAAKA,EAAEpW,QACzD,MAAO,IAAI0I,KAAKiN,gBAAiBjN,KAAKsM,QAAQxH,OAAO4I,IAAMF,EAAYpM,IAAIsM,EAAEpW,QACjF,CACA,OAAO0I,KAAKiN,aAAazW,OAAS,EAAIwJ,KAAKiN,aAAejN,KAAKsM,OACnE,CACA,MAAA3L,GACI,MAAMqE,EAAe,8BAA8BhF,KAAKyC,QAAQzC,KAAKkD,SAAW,yBAA2B,KACrGyK,EAAiB,kCAAkC3N,KAAKyC,QAAQzC,KAAKiD,QAAU,0BAA4B,MAAMjD,KAAKmM,SAAW,2BAA6B,KAC9JyB,GAAgB5N,KAAKiM,YAAcjM,KAAKmM,SAC9C,OAAOtU,MAAc;;wBAETmN,6BAAwChF,KAAK4C;YACzD5C,KAAK4C;;;cAGH5C,KAAKmM;;;;oEAIiDnM,KAAKyC;6BAC5CzC,KAAK2C;2BACP3C,KAAK+C;2BACL/C,KAAKgD;;;;;4BAKJhD,KAAK4C,OAAS;;wBAEjBwD,GAAMpG,KAAK6N,oBAAoBzH;wBAChC,IAAMpG,KAAK8N;uBACX1H,GAAMpG,KAAK+N,mBAAmB3H;0BAC3BA,GAAMpG,KAAKgO,sBAAsB5H;wBACpC,IAAMpG,KAAKiO;;;gCAGF7H,GAAMpG,KAAKkO,yBAAyB9H;;;;;;;;eAQtDpG,KAAKmM;;;qBAGCwB;;;0BAGK3N,KAAK4C,OAAS;;wBAEfwD,GAAMpG,KAAKmO,kBAAkB/H;sBAC/BA,GAAMpG,KAAKoO,mBAAmBhI;;;iDAGJpG,KAAK2C;;;;uGAIkDyD,GAAMpG,KAAKqO,iBAAiBjI;;;;;oBAKhHpG,KAAKiD;;;qBAGJjD,KAAKiD;;;;;;;;;;;;;2BAaCjD,KAAK4C,OAAS;;2BAEbwD,GAAMpG,KAAKsO,wBAAwBlI;uBACvCA,GAAMpG,KAAKuO,mBAAmBnI;;8DAEQwH;;;;;;;0BAOnCxH,GAAMpG,KAAKwO,oBAAoBpI;wBACjCA,GAAMpG,KAAKyO,kBAAkBrI;;;;;;;;;KAU9C,CACA,aAAAsI,GACI,MAAMpC,EAAWtM,KAAKiM,YAAcjM,KAAKmM,SAAYnM,KAAKkN,gBAAkBlN,KAAKuN,cACjF,OAAuB,IAAnBjB,EAAQ9V,OACQ,iHAEsCwJ,KAAKiM,aAAcjM,KAAKmM,UAAanM,KAAKkN,gBAAgB1W,OAAS,EAAI,SAAW,mGAClFwJ,KAAKiM,YAAcjM,KAAKmM,WAA6C,IAAhCnM,KAAKkN,gBAAgB1W,OAAe,SAAW,yDAIvI8V,EAAQmB,IAAI,CAACkB,EAAKC,KACrB,MAAMC,EAAa7O,KAAKgM,SACpBhM,KAAKmN,eAAe/L,IAAIuN,EAAIrX,OAC5BqX,EAAIrX,QAAU0I,KAAK1I,MACvB,MAAgB,kDAEpBuX,EAAa,0BAA4B,iBACzCF,EAAI5L,SAAW,0BAA4B,iBAC3C6L,IAAU5O,KAAKqN,aAAe,yBAA2B,iBACzDsB,EAAIhX,KAAO,0BAA4B,8BAC3BgX,EAAIrX,6DAEDuX,gCACAF,EAAI5L,oFAEgB/C,KAAKgM,SAAsB,GAAX,iEACT6C,EAAwB,GAAX,wFAElBF,EAAIhX,MAAQ,cAAegX,EAAIhX,KAAkB,GAAX,4DACzCgX,EAAI/L,yCAGnCmC,KAAK,GACZ,CACA,MAAAnE,GACI,OAAO4E,EAAAA,GAAI,GAlYN,4kSAmYT,CACA,IAAAvO,GAEI+I,KAAK8O,0BAED9O,KAAKgM,UAAYhM,KAAK1I,QACtB0I,KAAKmN,eAAiB,IAAIC,IAAIpN,KAAK1I,MAAMyX,MAAM,KAAKtB,IAAIuB,GAAKA,EAAElH,UAGnE9H,KAAKkN,gBAAkB,IAAIlN,KAAKuN,eAE5BvN,KAAK0E,WACL1E,KAAK0E,UAAUe,aAAazF,KAAK1I,OAGrC2X,sBAAsB,KAClBA,sBAAsB,KACdjP,KAAKmM,UACLnM,KAAKkP,2BACLlP,KAAKmP,wBAILnP,KAAKoP,qBACLpP,KAAKqP,qBACLrP,KAAKsP,qBAETtP,KAAKuP,sBACLvP,KAAKwP,4BAIbxP,KAAKyP,kBAELzP,KAAK0P,sBACT,CACA,OAAA/D,GACI3L,KAAK2P,wBACL3P,KAAK4P,eAAeC,YACxB,CACA,oBAAAH,GAEI1P,KAAK8P,oBAAuB1J,KACnBpG,KAAK+P,SAAS3J,EAAEpQ,SAAWgK,KAAKoM,OAC7BpM,KAAKmM,UACLnM,KAAKgQ,sBAEThQ,KAAKiQ,kBAGbjQ,KAAKkQ,iBAAoB9J,IACrB,GAAKpG,KAAKoM,OAAQpM,KAAKmM,SAEvB,OAAQ/F,EAAErQ,KACN,IAAK,SACDiK,KAAKiQ,gBACLjQ,KAAKuM,SAASvF,QACd,MACJ,IAAK,YACDZ,EAAE+J,iBACFnQ,KAAKoQ,kBACL,MACJ,IAAK,UACDhK,EAAE+J,iBACFnQ,KAAKqQ,sBACL,MACJ,IAAK,QACL,IAAK,IAED,GADAjK,EAAE+J,iBACEnQ,KAAKqN,cAAgB,EAAG,CACxB,MACMiD,GADUtQ,KAAKiM,WAAajM,KAAKkN,gBAAkBlN,KAAKuN,eACvCvN,KAAKqN,cACxBiD,IAAWA,EAAOvN,UAClB/C,KAAKuQ,mBAAmBD,EAEhC,IAKZE,SAASC,iBAAiB,QAASzQ,KAAK8P,qBACxCU,SAASC,iBAAiB,UAAWzQ,KAAKkQ,iBAC9C,CACA,qBAAAP,GACQ3P,KAAK8P,qBACLU,SAASE,oBAAoB,QAAS1Q,KAAK8P,qBAE3C9P,KAAKkQ,kBACLM,SAASE,oBAAoB,UAAW1Q,KAAKkQ,iBAErD,CAEA,eAAAT,GACI,MAAMkB,EAAW,IAAIC,iBAAkBC,IACnC7Q,KAAK8Q,qBAAqBD,KAG9BF,EAASI,QAAQ/Q,KAAM,CACnBgR,WAAW,EACXC,SAAS,EACTC,YAAY,EACZC,gBAAiB,CAAC,QAAS,QAAS,WAAY,cAGpDnR,KAAK4P,cAAgBe,CACzB,CACA,oBAAAG,CAAqBD,GAEAA,EAAUO,KAAKC,GACb,cAAXA,EAAE9Q,QAES,eAAX8Q,EAAE9Q,OAAyB,CAAC,QAAS,QAAS,WAAY,YAAY+Q,SAASD,EAAEE,iBACpD,iBAAtBF,EAAErb,OAAOwb,YAKpBxR,KAAK8O,0BACL9O,KAAKkN,gBAAkB,IAAIlN,KAAKuN,eAC3BvN,KAAKmM,WACNnM,KAAKqP,qBACLrP,KAAKsP,qBAETtP,KAAKwP,wBAEb,CACA,uBAAAV,GAEI,MAAM9B,EAAiBxB,MAAMiG,KAAKzR,KAAK0R,iBAAiB,iBACxD1R,KAAKiN,aAAeD,EAAeS,IAAIkB,IACnC,MAAMgD,EAAchD,EAEpB,OAAIgD,EAAY5J,WACL4J,EAAY5J,WAEhB,CACHzQ,MAAOqX,EAAIiD,aAAa,UAAY,GACpChP,MAAO+L,EAAIiD,aAAa,UAAYjD,EAAI9H,aAAaiB,QAAU,GAC/D/E,SAAU4L,EAAIkD,aAAa,YAC3BhK,SAAU8G,EAAIkD,aAAa,cAGvC,CAEA,mBAAAhE,CAAoBzH,GAChB,MAAMlC,EAAQkC,EAAEpQ,OAChBgK,KAAKsN,mBAAqBpJ,EAAM5M,MAEhC0I,KAAK8R,sBAAsB9R,KAAKsN,oBAC3BtN,KAAKoM,MACNpM,KAAK+R,cAEb,CACA,mBAAAjE,GACS9N,KAAKoM,MAASpM,KAAKgD,UACpBhD,KAAK+R,cAEb,CACA,kBAAAhE,CAAmB3H,GAEf4L,WAAW,KACHhS,KAAKoM,OACLpM,KAAKgQ,sBACLhQ,KAAKiQ,kBAEV,IACP,CACA,mBAAAhC,GACSjO,KAAKoM,MAASpM,KAAK+C,UAAa/C,KAAKgD,UACtChD,KAAK+R,cAEb,CACA,wBAAA7D,CAAyB9H,GACrBA,EAAE+J,iBACF/J,EAAE6L,kBACEjS,KAAK+C,UAAY/C,KAAKgD,WAEtBhD,KAAKoM,KACLpM,KAAKiQ,iBAGLjQ,KAAK+R,eACL/R,KAAK+M,eAAe/F,SAE5B,CACA,qBAAAgH,CAAsB5H,GAClB,OAAQA,EAAErQ,KACN,IAAK,YACDqQ,EAAE+J,iBACGnQ,KAAKoM,KAINpM,KAAKoQ,kBAHLpQ,KAAK+R,eAKT,MACJ,IAAK,UACD3L,EAAE+J,iBACEnQ,KAAKoM,MACLpM,KAAKqQ,sBAET,MACJ,IAAK,QAED,GADAjK,EAAE+J,iBACEnQ,KAAKoM,MAAQpM,KAAKqN,cAAgB,EAAG,CACrC,MAAMiD,EAAStQ,KAAKkN,gBAAgBlN,KAAKqN,cACrCiD,IAAWA,EAAOvN,UAClB/C,KAAKkS,2BAA2B5B,EAExC,MACStQ,KAAKoM,OACVpM,KAAKgQ,sBACLhQ,KAAKiQ,iBAET,MACJ,IAAK,SACGjQ,KAAKoM,OACLpM,KAAKiQ,gBACLjQ,KAAKkP,4BAET,MACJ,IAAK,MACGlP,KAAKoM,OACLpM,KAAKgQ,sBACLhQ,KAAKiQ,iBAIrB,CACA,0BAAAiC,CAA2B5B,GACvBtQ,KAAK1I,MAAQgZ,EAAOhZ,MACpB0I,KAAKsN,mBAAqBgD,EAAO1N,MAC7B5C,KAAK+M,gBACL/M,KAAK+M,cAAczV,MAAQgZ,EAAO1N,OAEtC5C,KAAKiQ,gBACLjQ,KAAKqC,oBAAoBiO,GACzBtQ,KAAK+M,eAAe/F,OACxB,CACA,mBAAAgJ,GACI,IAAKhQ,KAAK+M,cACN,OACJ,MAAMoF,EAAYnS,KAAK+M,cAAczV,MAAMwQ,OAGrCsK,EADapS,KAAKuN,cACC8E,KAAK1D,GAAOA,EAAI/L,MAAM0P,gBAAkBH,EAAUG,eACvEF,GACApS,KAAK1I,MAAQ8a,EAAM9a,MACnB0I,KAAKsN,mBAAqB8E,EAAMxP,MAChC5C,KAAK+M,cAAczV,MAAQ8a,EAAMxP,MACjC5C,KAAKqC,oBAAoB+P,IAEpBpS,KAAKkM,eAAiBiG,GAC3BnS,KAAK1I,MAAQ6a,EACbnS,KAAKsN,mBAAqB6E,EAC1BnS,KAAKqC,uBAILrC,KAAKkP,0BAEb,CACA,qBAAA4C,CAAsBpR,GAClB,MAAM6R,EAAavS,KAAKuN,cACxB,GAAK7M,EAGA,CACD,MAAM8R,EAAQ9R,EAAM4R,cACpBtS,KAAKkN,gBAAkBqF,EAAWzN,OAAO6J,GAAOA,EAAI/L,MAAM0P,cAAchB,SAASkB,GACrF,MALIxS,KAAKkN,gBAAkB,IAAIqF,GAM/BvS,KAAKqN,cAAe,EACpBrN,KAAKwP,uBACT,CACA,wBAAAN,GACI,GAAKlP,KAAK+M,cAEV,GAAI/M,KAAK1I,MAAO,CACZ,MACM8a,EADapS,KAAKuN,cACC8E,KAAK1D,GAAOA,EAAIrX,QAAU0I,KAAK1I,OACpD8a,GACApS,KAAK+M,cAAczV,MAAQ8a,EAAMxP,MACjC5C,KAAKsN,mBAAqB8E,EAAMxP,OAE3B5C,KAAKkM,eACVlM,KAAK+M,cAAczV,MAAQ0I,KAAK1I,MAChC0I,KAAKsN,mBAAqBtN,KAAK1I,QAG/B0I,KAAK+M,cAAczV,MAAQ,GAC3B0I,KAAKsN,mBAAqB,GAElC,MAEItN,KAAK+M,cAAczV,MAAQ,GAC3B0I,KAAKsN,mBAAqB,EAElC,CACA,mBAAA6B,GACSnP,KAAK+M,gBAEV/M,KAAK+M,cAAchH,aAAa,gBAAiBU,OAAOzG,KAAKoM,OAC7DpM,KAAK+M,cAAclH,UAAUC,OAAO,8BAA+B9F,KAAKoM,MAC5E,CAEA,uBAAAkC,CAAwBlI,GAChBpG,KAAKmM,UACL/F,EAAE+J,gBAEV,CAEA,iBAAAhC,CAAkB/H,GACV,CAAC,QAAS,IAAK,YAAa,WAAWkL,SAASlL,EAAErQ,OAClDqQ,EAAE+J,iBACGnQ,KAAKoM,MACNpM,KAAK+R,eAGjB,CACA,mBAAAvD,CAAoBpI,GAChB,OAAQA,EAAErQ,KACN,IAAK,SACDiK,KAAKiQ,gBACLjQ,KAAKuM,SAASvF,QACd,MACJ,IAAK,YACDZ,EAAE+J,iBACFnQ,KAAKoQ,kBACL,MACJ,IAAK,UACDhK,EAAE+J,iBACFnQ,KAAKqQ,sBACL,MACJ,IAAK,QAED,GADAjK,EAAE+J,iBACEnQ,KAAKqN,cAAgB,EAAG,CACxB,MACMiD,GADUtQ,KAAKiM,WAAajM,KAAKkN,gBAAkBlN,KAAKuN,eACvCvN,KAAKqN,cACxBiD,IAAWA,EAAOvN,UAClB/C,KAAKuQ,mBAAmBD,EAEhC,EAGZ,CACA,eAAAF,GACI,MAAM9D,EAAWtM,KAAKiM,YAAcjM,KAAKmM,SAAYnM,KAAKkN,gBAAkBlN,KAAKuN,cAEjF,GAA8B,IADPjB,EAAQxH,OAAO6J,IAAQA,EAAI5L,UAC/BvM,OAAnB,CAMA,IAJAwJ,KAAKqN,eACDrN,KAAKqN,cAAgBf,EAAQ9V,SAC7BwJ,KAAKqN,aAAe,GAEjBf,EAAQtM,KAAKqN,eAAetK,UAC/B/C,KAAKqN,eACDrN,KAAKqN,cAAgBf,EAAQ9V,SAC7BwJ,KAAKqN,aAAe,GAG5BrN,KAAKyS,mBAXD,CAYR,CACA,mBAAApC,GACI,MAAM/D,EAAWtM,KAAKiM,YAAcjM,KAAKmM,SAAYnM,KAAKkN,gBAAkBlN,KAAKuN,cAEjF,GAA8B,IADPjB,EAAQxH,OAAO6J,IAAQA,EAAI5L,UAC/BvM,OAAnB,CAMA,IAJAwJ,KAAKqN,eACDrN,KAAKqN,aAAe,IACpBrN,KAAKqN,aAAef,EAAQ9V,OAAS,GAElC8V,EAAQtM,KAAKqN,eAAetK,UAC/B/C,KAAKqN,eACDrN,KAAKqN,aAAe,IACpBrN,KAAKqN,aAAef,EAAQ9V,OAAS,GAG7CwJ,KAAKyS,mBAXD,CAYR,CACA,iBAAAA,GACI,GAAIzS,KAAKgN,eAAgB,CACrBhN,KAAKgN,eAAe0F,QAAQ,CAACC,EAAI/D,KAC7B+D,EAAG9M,UAAUC,OAAO,yBAA0B8I,IAAU5O,KAAKqN,gBAGjE,MAAMuF,EAAY5S,KAAKgN,iBAAiBhN,KAAKqN,cACzCuF,GACAA,EAAUC,eAAe,CAAEC,MAAO,WAE1C,CACJ,CACA,gBAAAzE,CAAiBjI,GACbA,EAAE+J,iBACF/J,EAAE6L,kBACFjS,KAAKqG,OACT,CACA,kBAAA+H,CAAmBhI,GACAA,EAAEpQ,OAEN+c,QAAQ,mBAGnB3M,EAAE6L,kBACGjS,KAAK+C,UAAa/C,KAAKgD,UACxBhD,KAAKgT,iBAEb,CACA,kBAAAzE,CAAmBnI,GACf,MAAMpQ,EAASoQ,EAAEpQ,OAEjB,GAAIA,EAAO+c,QAAQ,sBAAuB,CACtC3M,EAAE6L,kBACF,MACM3a,EADYtB,EAAO+c,QAAQ,sBACTnB,aAAa,cAQrC,YAPIta,GAAS0I,KAAKgM,WACdhM,KAAKmN,eAAe8F,OAAO3b,GAC3B0I,KAAK1I,MAAQkU,MAAMiG,KAAKzR,KAAKmN,gBAAgBpI,KAAK,KAClD/E,KAAKqP,qBACLrP,KAAKsP,oBACLtP,KAAKqC,uBAGb,CACA,MAAM6Q,EAAWld,EAAO+c,QAAQ,kBAChC,IAAKG,EACD,OACJ9M,EAAE6L,kBACF,MAAM3a,EAAQ4b,EAAStB,aAAa,cACpC,IAAKta,EACD,OACJ,MACMgZ,EADatQ,KAAKuN,cACE8E,KAAK1D,GAAOA,EAAIrX,QAAUA,GAChDgZ,IAAWA,EAAOvN,WACd/C,KAAKmM,SACLnM,KAAKkS,2BAA2B5B,GAGhCtQ,KAAKuQ,mBAAmBD,GAGpC,CACA,iBAAA7B,CAAkBrI,GACd,MACM+M,EADQ/M,EAAEpQ,OACSsB,MAAMgb,cAE3BtS,KAAKkN,gBADLiG,EACuBnT,KAAKuN,cAAczI,OAAO6J,GAAOA,EAAI/L,MAAM0P,cAAchB,SAAS6B,IAGlE,IAAInT,KAAKuN,eAEpCvN,KAAKqN,cAAe,EACpBrN,KAAKwP,uBACT,CACA,kBAAAe,CAAmBD,GACXtQ,KAAKgM,UACDhM,KAAKmN,eAAe/L,IAAIkP,EAAOhZ,OAC/B0I,KAAKmN,eAAe8F,OAAO3C,EAAOhZ,OAGlC0I,KAAKmN,eAAenH,IAAIsK,EAAOhZ,OAEnC0I,KAAK1I,MAAQkU,MAAMiG,KAAKzR,KAAKmN,gBAAgBpI,KAAK,KAClD/E,KAAKwP,0BAGLxP,KAAK1I,MAAQgZ,EAAOhZ,MACpB0I,KAAKiQ,iBAETjQ,KAAKqP,qBACLrP,KAAKsP,oBACLtP,KAAKqC,oBAAoBiO,EAC7B,CACA,iBAAAhP,GACQtB,KAAKgM,WACLhM,KAAKmN,eAAiB,IAAIC,IAAIpN,KAAK1I,MAAQ0I,KAAK1I,MAAMyX,MAAM,KAAKtB,IAAIuB,GAAKA,EAAElH,QAAU,KAEtF9H,KAAKmM,SACLnM,KAAKkP,4BAGLlP,KAAKqP,qBACLrP,KAAKsP,qBAELtP,KAAK0E,WACL1E,KAAK0E,UAAUe,aAAazF,KAAK1I,MAEzC,CACA,2BAAAsU,GACI5L,KAAKkN,gBAAkB,IAAIlN,KAAKuN,eAChCvN,KAAKwP,wBACDxP,KAAKmM,UACLnM,KAAKkP,0BAEb,CACA,oBAAA1N,GACSxB,KAAKmM,WACNnM,KAAKoP,qBACLpP,KAAKsP,qBAGLtP,KAAK+C,UAAY/C,KAAKoM,MACtBpM,KAAKiQ,eAEb,CACA,mBAAAxO,GACSzB,KAAKmM,WACNnM,KAAKoP,qBACLpP,KAAKsP,qBAGLtP,KAAKiD,SAAWjD,KAAKoM,MACrBpM,KAAKiQ,eAEb,CACA,gBAAApE,GACI7L,KAAKuP,sBACDvP,KAAKmM,UACLnM,KAAKmP,sBACDnP,KAAKoM,OAELpM,KAAKkN,gBAAkB,IAAIlN,KAAKuN,eAChCvN,KAAKqN,cAAe,EACpBrN,KAAKwP,yBAEJxP,KAAKoM,OACNpM,KAAKqN,cAAe,KAIxBrN,KAAKoP,qBAEDpP,KAAKoM,MAAQpM,KAAKiM,YAAcjM,KAAK2M,aACrCqF,WAAW,IAAMhS,KAAK2M,aAAa3F,QAAS,KAG3ChH,KAAKoM,OACNpM,KAAKqN,cAAe,EAChBrN,KAAK2M,cACL3M,KAAK2M,YAAYrV,MAAQ,GACzB0I,KAAKkN,gBAAkB,IAAIlN,KAAKuN,eAChCvN,KAAKwP,0BAIrB,CACA,kBAAAH,GACI,IAAKrP,KAAKyM,aACN,OACJ,MACM2G,EADapT,KAAKuN,cACWzI,OAAO6J,GAAO3O,KAAKgM,SAAWhM,KAAKmN,eAAe/L,IAAIuN,EAAIrX,OAASqX,EAAIrX,QAAU0I,KAAK1I,OACzH,GAAI0I,KAAKgM,UAAYoH,EAAgB5c,OAAS,EAC1CwJ,KAAKyM,aAAa4G,UAAqB,6DAE3CD,EAAgB3F,IAAIkB,GAAgB,4FAEEA,EAAIhX,MAAQ,cAAegX,EAAIhX,KAAkB,GAAX,8BACxEgX,EAAI/L,oEACwC+L,EAAIrX,6BAA6BqX,EAAI/L,UAAU5C,KAAK+C,UAAY/C,KAAKgD,SAAW,SAAW,gDAE1I+B,KAAK,mCAID,GAAIqO,EAAgB5c,OAAS,EAAG,CACjC,MAAMqR,EAAWuL,EAAgB,GACjCpT,KAAKyM,aAAa4G,UAAqB,+FAEPxL,EAASlQ,MAAQ,cAAekQ,EAASlQ,KAAkB,GAAX,gCAC9EkQ,EAASjF,sCAGf,MAEI5C,KAAKyM,aAAa4G,UAAqB,oCAAoCrT,KAAK2C,oBAExF,CACA,iBAAA2M,GACI,IAAKtP,KAAKmE,YACN,OACJ,MACMiP,EADapT,KAAKuN,cACWzI,OAAO6J,GAAO3O,KAAKgM,SAAWhM,KAAKmN,eAAe/L,IAAIuN,EAAIrX,OAASqX,EAAIrX,QAAU0I,KAAK1I,OACnHoO,EAAa1F,KAAKoD,WAAagQ,EAAgB5c,OAAS,IAAMwJ,KAAK+C,WAAa/C,KAAKgD,SAC3FhD,KAAKmE,YAAYwB,MAAMC,QAAUF,EAAa,GAAK,MACvD,CACA,qBAAA8J,GACSxP,KAAK4M,cAEV5M,KAAK4M,YAAYyG,UAAYrT,KAAK0O,gBACtC,CACA,mBAAArM,CAAoBiO,GAChB,MAAO,CACHhZ,MAAO0I,KAAKgM,SAAWR,MAAMiG,KAAKzR,KAAKmN,gBAAkBnN,KAAK1I,MAC9DgZ,SACApJ,OAAQlH,KAEhB,CACA,iBAAA8L,GACI,MAAO,CAAE5E,OAAQlH,KACrB,CACA,kBAAA+L,GACI,MAAO,CAAE7E,OAAQlH,KACrB,CAEA,KAAAgH,GACQhH,KAAKmM,SACLnM,KAAK+M,eAAe/F,QAGpBhH,KAAKuM,SAASvF,OAEtB,CACA,IAAAC,GACQjH,KAAKmM,SACLnM,KAAK+M,eAAe9F,OAGpBjH,KAAKuM,SAAStF,OAEdjH,KAAKoM,MACLpM,KAAKiQ,eAEb,CACA,KAAA5J,GACQrG,KAAKgM,UACLhM,KAAKmN,eAAe9G,QACpBrG,KAAK1I,MAAQ,IAGb0I,KAAK1I,MAAQ,GAEb0I,KAAKmM,SACLnM,KAAKkP,4BAGLlP,KAAKqP,qBACLrP,KAAKsP,qBAETtP,KAAKqC,qBACT,CACA,YAAA0P,GACS/R,KAAKoM,MAASpM,KAAK+C,UAAa/C,KAAKgD,WACtChD,KAAKoM,MAAO,EACZpM,KAAK8L,oBAEb,CACA,aAAAmE,GACQjQ,KAAKoM,OACLpM,KAAKoM,MAAO,EACZpM,KAAK+L,qBAEb,CACA,cAAAiH,GACQhT,KAAKoM,KACLpM,KAAKiQ,gBAGLjQ,KAAK+R,cAEb,CACA,YAAAuB,CAAahc,GACT,MACMgZ,EADatQ,KAAKuN,cACE8E,KAAK1D,GAAOA,EAAIrX,QAAUA,GAChDgZ,IAAWA,EAAOvN,WACd/C,KAAKmM,SACLnM,KAAKkS,2BAA2B5B,GAGhCtQ,KAAKuQ,mBAAmBD,GAGpC,CACA,kBAAAlB,GACSpP,KAAKuM,UAEVvM,KAAKuM,QAAQ1G,UAAUC,OAAO,uBAAwB9F,KAAKoM,MAC3DpM,KAAKuM,QAAQ1G,UAAUC,OAAO,2BAA4B9F,KAAK+C,UAC/D/C,KAAKuM,QAAQ1G,UAAUC,OAAO,2BAA4B9F,KAAKgD,UAC/DhD,KAAKuM,QAAQ1G,UAAUC,OAAO,0BAA2B9F,KAAKmD,SAC9DnD,KAAKuM,QAAQ1G,UAAUC,OAAO,0BAA2B9F,KAAKiD,SAC9DjD,KAAKuM,QAAQxG,aAAa,gBAAiBU,OAAOzG,KAAKoM,OACvDpM,KAAKuM,QAAQxJ,SAAW/C,KAAK+C,UAAY/C,KAAKiD,QAClD,CACA,mBAAAsM,GACSvP,KAAKwM,WAEVxM,KAAKwM,SAAS3G,UAAUC,OAAO,wBAAyB9F,KAAKoM,MACzDpM,KAAK6M,OACL7M,KAAK6M,MAAMhH,UAAUC,OAAO,qBAAsB9F,KAAKoM,MAE/D,GAGP,EArjCiB,GCNlB,IAAImH,EAAa,gyHCID,MACZ,IACInb,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGArZ,EACAC,EACAC,EACAoZ,EACAC,EA5BAjY,EAAmB,CAACC,UAAQ,eAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,IAMxC,cAAenY,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,EAAAA,YACrBmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpCrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,OAAO9I,MAAc;;UAEvBmI,KAAKwU;;KAGP,CACA,MAAA5T,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,iBACLzU,KAAK0U,4BACT,CACA,eAAAP,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACQpU,KAAKuU,iBACLvU,KAAKuU,eAAelB,UAAYrT,KAAKwU,eAEzCxU,KAAK0U,4BACT,CACA,cAAAD,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,0BAAA6Q,GACI,GAAK1U,KAAKqU,QAAWrU,KAAKqU,OAAOO,mBAAjC,CAGA5U,KAAK6U,gBAAgB,SACrB7U,KAAKpI,UAAY,aACjBoI,KAAKyU,iBAEDzU,KAAKqU,OAAO1O,OACZ3F,KAAK8U,WAAW9U,KAAKqU,OAAO1O,OAGhC,IAAK,MAAMoP,KAAU/U,KAAKqU,OAAOO,mBAC7B,GAAIG,EAAOC,UAAUhV,KAAK1I,MAAO0I,KAAKsU,SAAU,CACxCS,EAAOpP,OACP3F,KAAK8U,WAAWC,EAAOpP,OAEvBoP,EAAOnd,WACPoI,KAAK6F,UAAUG,IAAI+O,EAAOnd,WAE9B,KACJ,CAnBA,CAqBR,CACA,UAAAkd,CAAWnP,GACHA,EAAMsP,kBACNjV,KAAK2F,MAAMsP,gBAAkBtP,EAAMsP,iBACnCtP,EAAMuP,QACNlV,KAAK2F,MAAMuP,MAAQvP,EAAMuP,OACzBvP,EAAMwP,aACNnV,KAAK2F,MAAMwP,WAAaxP,EAAMwP,YAC9BxP,EAAMyP,YACNpV,KAAK2F,MAAMyP,UAAYzP,EAAMyP,WAC7BzP,EAAM0P,WACNrV,KAAK2F,MAAM0P,SAAW1P,EAAM0P,UAC5B1P,EAAM2P,iBACNtV,KAAK2F,MAAM2P,eAAiB3P,EAAM2P,eAC1C,CACA,WAAAd,GACI,GAAmB,OAAfxU,KAAK1I,YAAiCie,IAAfvV,KAAK1I,MAC5B,MAAO,GAGX,GAAI0I,KAAKqU,OAAOmB,UACZ,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAGlD,OAAQtU,KAAKO,MACT,IAAK,OACD,OAAOP,KAAKyV,aAChB,IAAK,SACD,OAAOzV,KAAK0V,eAChB,IAAK,WACD,OAAO1V,KAAK2V,iBAChB,IAAK,UACD,OAAO3V,KAAK4V,gBAChB,IAAK,aACD,OAAO5V,KAAK6V,mBAChB,IAAK,aACD,OAAO7V,KAAK8V,mBAChB,IAAK,WACD,OAAO9V,KAAK+V,iBAChB,IAAK,OACD,OAAO/V,KAAKgW,aAChB,IAAK,UACD,OAAOhW,KAAKiW,gBAChB,IAAK,SACD,OAAOjW,KAAKkW,eAChB,IAAK,WACD,OAAOlW,KAAKmW,iBAChB,IAAK,YACD,OAAOnW,KAAKoW,kBAChB,IAAK,WACD,OAAOpW,KAAKqW,iBAChB,IAAK,WACD,OAAOrW,KAAKsW,iBAGhB,QACI,OAAO7P,OAAOzG,KAAK1I,OAE/B,CACA,UAAAme,GACI,OAAOhP,OAAOzG,KAAK1I,MACvB,CACA,YAAAoe,GACI,MAAMX,EAAS/U,KAAKqU,OAAOkC,cAAgB,CAAA,EACrCC,EAAM/V,OAAOT,KAAK1I,OACxB,GAAImf,MAAMD,GACN,OAAO/P,OAAOzG,KAAK1I,OACvB,IAAIof,EAAYF,EAAIG,QAAQ5B,EAAO6B,UAAY,GAC/C,GAAI7B,EAAO8B,mBAAoB,CAC3B,MAAMC,EAAQJ,EAAU3H,MAAM,KAC9B+H,EAAM,GAAKA,EAAM,GAAGC,QAAQ,wBAAyB,KACrDL,EAAYI,EAAM/R,KAAK,IAC3B,CAQA,OAPIyR,EAAM,GAA8B,gBAAzBzB,EAAOiC,gBAClBN,EAAY,IAAIA,EAAUK,QAAQ,IAAK,QAEvChC,EAAOkC,SACPP,EAAY3B,EAAOkC,OAASP,GAC5B3B,EAAOmC,SACPR,GAAwB3B,EAAOmC,QAC5BR,CACX,CACA,cAAAf,GACI,MAAMZ,EAAS/U,KAAKqU,OAAOkC,cAAgB,CAAA,EACrCC,EAAM/V,OAAOT,KAAK1I,OACxB,GAAImf,MAAMD,GACN,OAAO/P,OAAOzG,KAAK1I,OACvB,MAAM6f,EAAiB,CACnBxR,MAAO,WACPyR,SAAU,MACVC,sBAAuBtC,EAAO6B,UAAY,EAC1CU,sBAAuBvC,EAAO6B,UAAY,GAE9C,OAAO,IAAIW,KAAKC,aAAa,QAASL,GAAgBpC,OAAOyB,EACjE,CACA,aAAAZ,GACI,MAAMb,EAAS/U,KAAKqU,OAAOkC,cAAgB,CAAA,EACrCC,EAAM/V,OAAOT,KAAK1I,OACxB,GAAImf,MAAMD,GACN,OAAO/P,OAAOzG,KAAK1I,OACvB,MAAMmgB,EAAgB,CAClB9R,MAAO,UACP0R,sBAAuBtC,EAAO6B,UAAY,EAC1CU,sBAAuBvC,EAAO6B,UAAY,GAE9C,OAAO,IAAIW,KAAKC,aAAa,QAASC,GAAe1C,OAAOyB,EAChE,CACA,gBAAAX,GACI,MAAMd,EAAS/U,KAAKqU,OAAOkC,cAAgB,CAAA,EACrCC,EAAM/V,OAAOT,KAAK1I,OACxB,GAAImf,MAAMD,GACN,OAAO/P,OAAOzG,KAAK1I,OACvB,IAAIof,EAAYgB,KAAKC,IAAInB,GAAKG,QAAQ5B,EAAO6B,UAAY,GACzD,GAAI7B,EAAO8B,mBAAoB,CAC3B,MAAMC,EAAQJ,EAAU3H,MAAM,KAC9B+H,EAAM,GAAKA,EAAM,GAAGC,QAAQ,wBAAyB,KACrDL,EAAYI,EAAM/R,KAAK,IAC3B,CAOA,OALI2R,EADAF,EAAM,EACM,IAAIE,KAGJ,IAAIA,KAEbA,CACX,CACA,gBAAAZ,GACI,MAAMf,EAAS/U,KAAKqU,OAAOkC,cAAgB,CAAA,EACrCC,EAAM/V,OAAOT,KAAK1I,OACxB,OAAImf,MAAMD,GACC/P,OAAOzG,KAAK1I,OAChBkf,EAAIoB,cAAc7C,EAAO6B,UAAY,EAChD,CACA,cAAAb,GACI,MAAMS,EAAM/V,OAAOT,KAAK1I,OACxB,GAAImf,MAAMD,GACN,OAAO/P,OAAOzG,KAAK1I,OAGvB,IAAIugB,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAC7BC,EAAIzB,EACR,EAAG,CACC,MAAM0B,EAAIR,KAAKS,MAAMF,GACrB,IAAIG,EAAMP,EACVA,EAAKK,EAAIL,EAAKC,EACdA,EAAKM,EACLA,EAAML,EACNA,EAAKG,EAAIH,EAAKC,EACdA,EAAKI,EACLH,EAAI,GAAKA,EAAIC,EACjB,OAASR,KAAKC,IAAInB,EAAMqB,EAAKE,GAZX,KAYiBvB,GACnC,MAAO,GAAGqB,KAAME,GACpB,CACA,UAAA/B,GACI,MAAMjB,EAAS/U,KAAKqU,OAAOgE,YAAc,CAAA,EACnCC,EAAO,IAAIC,KAAKvY,KAAK1I,OAC3B,GAAImf,MAAM6B,EAAKE,WACX,OAAO/R,OAAOzG,KAAK1I,OACvB,GAAIyd,EAAO0D,aAEP,OAAO1D,EAAO0D,aACT1B,QAAQ,OAAQuB,EAAKI,cAAcC,YACnC5B,QAAQ,MAAOuB,EAAKM,WAAa,GAAGD,WAAWE,SAAS,EAAG,MAC3D9B,QAAQ,KAAMuB,EAAKQ,UAAUH,WAAWE,SAAS,EAAG,MAE7D,MAAMvM,EAAU,CAAA,EAChB,OAAQyI,EAAOA,QACX,IAAK,QAYL,QACIzI,EAAQyM,UAAY,cAVxB,IAAK,SACDzM,EAAQyM,UAAY,SACpB,MACJ,IAAK,OACDzM,EAAQyM,UAAY,OACpB,MACJ,IAAK,OACDzM,EAAQyM,UAAY,OAK5B,OAAO,IAAIxB,KAAKyB,eAAejE,EAAOkE,QAAU,QAAS3M,GAASyI,OAAOuD,EAC7E,CACA,aAAArC,GACI,MAAMlB,EAAS/U,KAAKqU,OAAO6E,eAAiB,CAAA,EACtCC,EAAO3Y,QAAQR,KAAK1I,OAC1B,OAAIyd,EAAOqE,WACAD,EACApE,EAAOsE,YAAc,IACrBtE,EAAOuE,aAAe,IAE1BH,EACApE,EAAOwE,WAAa,OACpBxE,EAAOyE,YAAc,OAChC,CACA,YAAAtD,GACI,MAAMnB,EAAS/U,KAAKqU,OAAOoF,cAAgB,CAAA,EACrCC,EAASjZ,OAAOT,KAAK1I,OACrBiM,EAAMwR,EAAOxR,KAAO,EACpBoW,EAAS5E,EAAO4E,QAAU,IAC1BC,EAAc7E,EAAO6E,aAAe,IAC1C,GAAInD,MAAMiD,GACN,OAAOjT,OAAOzG,KAAK1I,OACvB,IAAIO,EAAO,GACX,MAAMgiB,EAAe9E,EAAOG,OAAS4E,iBAAiB9Z,MAAM+Z,iBAAiB,yBAAyBjS,OAChGkS,EAAaF,iBAAiB9Z,MAAM+Z,iBAAiB,wBAAwBjS,OACnF,IAAK,IAAIvR,EAAI,EAAGA,EAAIgN,EAAKhN,IAEjBsB,GADAtB,EAAImjB,EACI,uBAAuBG,MAAiBF,WAGxC,uBAAuBK,MAAeJ,WAGtD,OAAO/hB,CACX,CACA,cAAAse,GACI,MAAMpB,EAAS/U,KAAKqU,OAAO4F,gBAAkB,CAAA,EACvC3iB,EAAQmJ,OAAOT,KAAK1I,OACpBiM,EAAMwR,EAAOxR,KAAO,IACpB2W,EAAaxC,KAAKpU,IAAI,IAAKoU,KAAKnU,IAAI,EAAIjM,EAAQiM,EAAO,MAC7D,GAAIkT,MAAMnf,GACN,OAAOmP,OAAOzG,KAAK1I,OACvB,MAAM4d,EAAQH,EAAOG,OAAS4E,iBAAiB9Z,MAAM+Z,iBAAiB,yBAAyBjS,OACzFqS,EAAUpF,EAAOE,iBAAmB6E,iBAAiB9Z,MAAM+Z,iBAAiB,wBAAwBjS,OAE1G,IAAIjQ,EAAO,gEADIkd,EAAOqF,QAAU,uCAKhBD,mJAMTD,+DAEWhF,sEAIlB,GAAIH,EAAOsF,eAAgB,CAIvBxiB,GAAQ,iOAHUqiB,EAAa,GACzBJ,iBAAiB9Z,MAAM+Z,iBAAiB,8BAA8BjS,OACtEgS,iBAAiB9Z,MAAM+Z,iBAAiB,sBAAsBjS,sBAUxE4P,KAAK4C,MAAMJ,oBAEX,CAEA,OADAriB,GAAQ,SACDA,CACX,CACA,eAAAue,GACI,MAAMrB,EAAS/U,KAAKqU,OAAOkG,iBAAmB,CAAA,EACxCC,EAAOhP,MAAMiP,QAAQza,KAAK1I,OAAS0I,KAAK1I,MAAQ,GACtD,GAAoB,IAAhBkjB,EAAKhkB,OACL,MAAO,GACX,MAAMkkB,EAAQ3F,EAAO2F,OAAS,GACxBN,EAASrF,EAAOqF,QAAU,GAC1BlF,EAAQH,EAAOG,OAAS4E,iBAAiB9Z,MAAM+Z,iBAAiB,yBAAyBjS,OACzFvH,EAAOwU,EAAOxU,MAAQ,OACtBgD,EAAMmU,KAAKnU,OAAOiX,GAClBlX,EAAMoU,KAAKpU,OAAOkX,GAClBG,EAAQpX,EAAMD,GAAO,EAC3B,GAAa,SAAT/C,EAAiB,CACjB,MAAMqa,EAASJ,EAAK/M,IAAI,CAACoN,EAAKtkB,IAGnB,GAFIA,GAAKikB,EAAKhkB,OAAS,GAAMkkB,KAC1BN,GAAWS,EAAMvX,GAAOqX,EAASP,KAE5CrV,KAAK,KACR,MAAO,yBACD2V,cAAkBN,0EAElBQ,sDAEA1F,yEAKV,CACK,GAAa,QAAT3U,EAAgB,CACrB,MAAMua,EAAWJ,EAAQF,EAAKhkB,OACxBukB,EAAOP,EAAK/M,IAAI,CAACoN,EAAKtkB,KACxB,MAAMykB,GAAcH,EAAMvX,GAAOqX,EAASP,EAG1C,MAAO,YAFG7jB,EAAIukB,SACJV,EAASY,aACsBF,EAAW,cAAcE,YAAoB9F,UACvFnQ,KAAK,IACR,MAAO,yBACD2V,cAAkBN,0CAC5BW,2BAGA,CACA,OAAOtU,OAAOzG,KAAK1I,MACvB,CACA,cAAA+e,GACI,MAAM4E,EAAUxa,OAAOT,KAAK1I,OAC5B,GAAImf,MAAMwE,GACN,OAAOxU,OAAOzG,KAAK1I,OACvB,MAAM4jB,EAAQxD,KAAKS,MAAM8C,EAAU,MAC7BE,EAAUzD,KAAKS,MAAO8C,EAAU,KAAQ,IACxCG,EAAOH,EAAU,GACvB,OAAIC,EAAQ,EACD,GAAGA,KAASC,EAAQxC,WAAWE,SAAS,EAAG,QAAQuC,EAAKzC,WAAWE,SAAS,EAAG,OAG/E,GAAGsC,KAAWC,EAAKzC,WAAWE,SAAS,EAAG,MAEzD,CACA,cAAAvC,GACI,MAAM+E,EAAQ5a,OAAOT,KAAK1I,OAC1B,GAAImf,MAAM4E,GACN,OAAO5U,OAAOzG,KAAK1I,OACvB,MAAMgkB,EAAQ,CAAC,IAAK,KAAM,KAAM,KAAM,MACtC,IAAI7Y,EAAO4Y,EACPE,EAAY,EAChB,KAAO9Y,GAAQ,MAAQ8Y,EAAYD,EAAM9kB,OAAS,GAC9CiM,GAAQ,KACR8Y,IAEJ,MAAO,GAAG9Y,EAAKkU,QAAsB,IAAd4E,EAAkB,EAAI,MAAMD,EAAMC,IAC7D,CACA,WAAA/W,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,SAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,KAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,OACNsD,MAAO,UAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClI7c,EAAkB4I,KAAMkU,EAC5B,GAGP,EA7ce,GCAI,MAChB,IACI9b,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGA8H,EAGAC,EAGAphB,EACAC,EACAC,EACAoZ,EACAC,EAlCAjY,EAAmB,CAACC,UAAQ,oBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,GAEpCwH,EAA0B,GAC1BC,EAA+B,GAE/BC,EAAyB,GACzBC,EAA8B,IAMlC,cAAe9f,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpC8a,EAAwB,CAACnb,EAAAA,SAAS,CAAEE,KAAMC,WAC1Cib,EAAuB,CAACpb,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,eAC5DjG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAM,KAAMqmB,EAAuB,CAAE1lB,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIya,UAAW9kB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIya,UAAYxkB,IAAY6I,SAAUF,GAAayb,EAAyBC,GAC3RxmB,EAAa,KAAM,KAAMsmB,EAAsB,CAAE3lB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI0a,SAAU/kB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0a,SAAWzkB,IAAY6I,SAAUF,GAAa2b,EAAwBC,GACrR1mB,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM1I,EAAU+H,KAAKgc,oBACfC,EAAajc,KAAKkc,gBACxB,OAAOrkB,MAAc;2EAC0CokB;UACjEhkB;;KAGF,CACA,MAAA2I,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,gBACT,CACA,cAAAA,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACI,GAAIpU,KAAKuU,eAAgB,CACrB,MAAMtc,EAAU+H,KAAKgc,oBACfpb,EAASZ,KAAKkc,gBACpBlc,KAAKuU,eAAelB,UAAYpb,EAChC+H,KAAKuU,eAAexO,aAAa,QAASnF,EAC9C,CACJ,CACA,iBAAAob,GACI,GAAmB,OAAfhc,KAAK1I,YAAiCie,IAAfvV,KAAK1I,MAC5B,MAAO,GAEX,IAAI6kB,EAAO1V,OAAOzG,KAAK1I,OAWvB,OATI0I,KAAKqU,OAAOmB,YACZ2G,EAAOnc,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,UAG9CtU,KAAK8b,YACLK,EAAOA,EAAKpF,QAAQ,MAAO,UAG1B/W,KAAK8b,WAAa9b,KAAKqU,OAAO+H,SAC5BD,CACX,CACA,aAAAD,GACI,IAAItb,EAAS,GAoBb,OAnBKZ,KAAK8b,WAQF9b,KAAKqU,OAAOgI,OACZzb,EAAO/J,KAAK,yBACZ+J,EAAO/J,KAAK,0BAEZmJ,KAAK+b,WACLnb,EAAO/J,KAAK,wBACZ+J,EAAO/J,KAAK,gCACZ+J,EAAO/J,KAAK,uBAAuBmJ,KAAK+b,YACxCnb,EAAO/J,KAAK,uBAfhB+J,EAAO/J,KAAK,uBACRmJ,KAAKqU,OAAO+H,WACZxb,EAAO/J,KAAK,oBACZ+J,EAAO/J,KAAK,6BAeb+J,EAAOmE,KAAK,KACvB,CACA,WAAAP,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,SAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,KAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,OACNsD,MAAO,UAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClIjU,KAAK8b,WAAa1kB,EAAkB4I,KAAMkU,GAAoC9c,EAAkB4I,KAAM0b,GAAyB,IAC/H1b,KAAK+b,UAAY3kB,EAAkB4I,KAAM2b,GAA+BvkB,EAAkB4I,KAAM4b,OAAwB,IACxHxkB,EAAkB4I,KAAM6b,EAC5B,GAGP,EA/JmB,GCAE,MAClB,IACIzjB,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGA4I,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAtiB,EACAC,EACAC,EACAoZ,EACAC,EA9CAjY,EAAmB,CAACC,UAAQ,sBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,GAEpC0I,EAAyB,GACzBC,EAA8B,GAE9BC,EAAmC,GACnCC,EAAwC,GAExCC,EAAuB,GACvBC,EAA4B,GAE5BC,EAAuB,GACvBC,EAA4B,GAE5BC,EAA8B,GAC9BC,EAAmC,GAEnCC,EAA0B,GAC1BC,EAA+B,IAMnC,cAAexhB,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpC4b,EAAuB,CAACjc,EAAAA,SAAS,CAAEE,KAAME,UACzC8b,EAAiC,CAAClc,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,yBACvEkc,EAAqB,CAACnc,WAAS,CAAA,IAC/Boc,EAAqB,CAACpc,WAAS,CAAA,IAC/Bqc,EAA4B,CAACrc,EAAAA,SAAS,CAAEC,UAAW,oBACnDqc,EAAwB,CAACtc,EAAAA,SAAS,CAAEE,KAAMC,WAC1CnG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAM,KAAMmnB,EAAsB,CAAExmB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIuV,SAAU5f,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuV,SAAWtf,IAAY6I,SAAUF,GAAa2c,EAAwBC,GACrR1nB,EAAa,KAAM,KAAMonB,EAAgC,CAAEzmB,KAAM,QAASO,KAAM,qBAAsB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,uBAAwBA,EAAKtK,IAAKsK,GAAOA,EAAIwV,mBAAoB7f,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwV,mBAAqBvf,IAAY6I,SAAUF,GAAa6c,EAAkCC,GACjV5nB,EAAa,KAAM,KAAMqnB,EAAoB,CAAE1mB,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAI4V,OAAQjgB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4V,OAAS3f,IAAY6I,SAAUF,GAAa+c,EAAsBC,GACzQ9nB,EAAa,KAAM,KAAMsnB,EAAoB,CAAE3mB,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAI6V,OAAQlgB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6V,OAAS5f,IAAY6I,SAAUF,GAAaid,EAAsBC,GACzQhoB,EAAa,KAAM,KAAMunB,EAA2B,CAAE5mB,KAAM,QAASO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI2V,cAAehgB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2V,cAAgB1f,IAAY6I,SAAUF,GAAamd,EAA6BC,GACnTloB,EAAa,KAAM,KAAMwnB,EAAuB,CAAE7mB,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAImc,UAAWxmB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImc,UAAYlmB,IAAY6I,SAAUF,GAAaqd,EAAyBC,GAC3RpoB,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM8c,EAAiBzd,KAAK0d,oBACtB9c,EAASZ,KAAK2d,kBACpB,OAAO9lB,MAAc;6EAC4C+I;UACnE6c;;KAGF,CACA,MAAA7c,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,gBACT,CACA,cAAAA,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACI,GAAIpU,KAAKuU,eAAgB,CACrB,MAAMkJ,EAAiBzd,KAAK0d,oBACtB9c,EAASZ,KAAK2d,kBACpB3d,KAAKuU,eAAelB,UAAYoK,EAChCzd,KAAKuU,eAAexO,aAAa,QAASnF,EAC9C,CACJ,CACA,iBAAA8c,GACI,GAAmB,OAAf1d,KAAK1I,YAAiCie,IAAfvV,KAAK1I,OAAsC,KAAf0I,KAAK1I,MACxD,MAAO,GAGX,GAAI0I,KAAKqU,OAAOmB,UACZ,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAGlD,MAAMS,EAAS/U,KAAKqU,OAAOkC,cAAgB,CACvCK,SAAU5W,KAAK4W,SACfC,mBAAoB7W,KAAK6W,mBACzBI,OAAQjX,KAAKiX,OACbC,OAAQlX,KAAKkX,OACbF,cAAehX,KAAKgX,eAElBR,EAAM/V,OAAOT,KAAK1I,OACxB,GAAImf,MAAMD,GACN,OAAO/P,OAAOzG,KAAK1I,OAEvB,IAAIof,EAAYF,EAAIG,QAAQ5B,EAAO6B,UAAY5W,KAAK4W,UAEpD,GAAI7B,EAAO8B,oBAAsB7W,KAAK6W,mBAAoB,CACtD,MAAMC,EAAQJ,EAAU3H,MAAM,KAC9B+H,EAAM,GAAKA,EAAM,GAAGC,QAAQ,wBAAyB,KACrDL,EAAYI,EAAM/R,KAAK,IAC3B,CAEA,GAAIyR,EAAM,EAAG,CACT,MAAMoH,EAAW7I,EAAOiC,eAAiBhX,KAAKgX,cAC7B,gBAAb4G,EACAlH,EAAY,IAAIA,EAAUK,QAAQ,IAAK,OAErB,QAAb6G,IAELlH,EAAYA,EAAUK,QAAQ,IAAK,IAE3C,CAEA,MAAME,EAASlC,EAAOkC,QAAUjX,KAAKiX,OAC/BC,EAASnC,EAAOmC,QAAUlX,KAAKkX,OAKrC,OAJID,IACAP,EAAYO,EAASP,GACrBQ,IACAR,GAAwBQ,GACrBR,CACX,CACA,eAAAiH,GACI,MAAMnH,EAAM/V,OAAOT,KAAK1I,OAIxB,GAFA0I,KAAK6F,UAAUa,OAAO,mBAAoB,mBAAoB,eAAgB,uBAE1E8P,EAAM,EAAG,CACTxW,KAAK6F,UAAUG,IAAI,oBAEF,SADAhG,KAAKqU,OAAOkC,cAAcS,eAAiBhX,KAAKgX,gBAE7DhX,KAAK6F,UAAUG,IAAI,uBAE3B,MACSwQ,EAAM,GACXxW,KAAK6F,UAAUG,IAAI,oBACfhG,KAAKwd,WACLxd,KAAK6F,UAAUG,IAAI,wBAGV,IAARwQ,GACLxW,KAAK6F,UAAUG,IAAI,gBAEvB,MAAO,mBACX,CACA,WAAAxB,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,UAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,WAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,KAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,SACNsD,MAAO,WAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClIjU,KAAK4W,UAAYxf,EAAkB4I,KAAMkU,GAAoC9c,EAAkB4I,KAAM4c,EAAwB,IAC7H5c,KAAK6W,oBAAsBzf,EAAkB4I,KAAM6c,GAA8BzlB,EAAkB4I,KAAM8c,GAAkC,IAC3I9c,KAAKiX,QAAU7f,EAAkB4I,KAAM+c,GAAwC3lB,EAAkB4I,KAAMgd,EAAsB,KAC7Hhd,KAAKkX,QAAU9f,EAAkB4I,KAAMid,GAA4B7lB,EAAkB4I,KAAMkd,EAAsB,KACjHld,KAAKgX,eAAiB5f,EAAkB4I,KAAMmd,GAA4B/lB,EAAkB4I,KAAMod,EAA6B,UAC/Hpd,KAAKwd,WAAapmB,EAAkB4I,KAAMqd,GAAmCjmB,EAAkB4I,KAAMsd,GAAyB,IAC9HlmB,EAAkB4I,KAAMud,EAC5B,GAGP,EArNqB,GCAF,MAChB,IACInlB,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGAmK,EAGAC,EAGAC,EAGAC,EAGAC,EAGA5jB,EACAC,EACAC,EACAoZ,EACAC,EA3CAjY,EAAmB,CAACC,UAAQ,oBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,GAEpCgK,EAA2B,GAC3BC,EAAgC,GAEhCC,EAA6B,GAC7BC,EAAkC,GAElCC,EAAuB,GACvBC,EAA4B,GAE5BC,EAA6B,GAC7BC,EAAkC,GAElCC,EAAyB,GACzBC,EAA8B,IAMlC,cAAe5iB,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpCmd,EAAyB,CAACxd,EAAAA,SAAS,CAAEC,UAAW,iBAChDwd,EAA2B,CAACzd,EAAAA,SAAS,CAAEC,UAAW,mBAClDyd,EAAqB,CAAC1d,WAAS,CAAA,IAC/B2d,EAA2B,CAAC3d,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,mBACjE2d,EAAuB,CAAC5d,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,eAC7DjG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAM,KAAM0oB,EAAwB,CAAE/nB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIgX,WAAYrhB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgX,WAAa/gB,IAAY6I,SAAUF,GAAaie,EAA0BC,GACjShpB,EAAa,KAAM,KAAM2oB,EAA0B,CAAEhoB,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIoX,aAAczhB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIoX,aAAenhB,IAAY6I,SAAUF,GAAame,EAA4BC,GAC7SlpB,EAAa,KAAM,KAAM4oB,EAAoB,CAAEjoB,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAI4X,OAAQjiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4X,OAAS3hB,IAAY6I,SAAUF,GAAaqe,EAAsBC,GACzQppB,EAAa,KAAM,KAAM6oB,EAA0B,CAAEloB,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIud,aAAc5nB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIud,aAAetnB,IAAY6I,SAAUF,GAAaue,EAA4BC,GAC7StpB,EAAa,KAAM,KAAM8oB,EAAsB,CAAEnoB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIwd,SAAU7nB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwd,SAAWvnB,IAAY6I,SAAUF,GAAaye,EAAwBC,GACrRxpB,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM8c,EAAiBzd,KAAK8e,kBACtBC,EAAa/e,KAAKgf,gBACxB,OAAOnnB,MAAc;2EAC0CknB;UACjEtB;;KAGF,CACA,MAAA7c,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,gBACT,CACA,cAAAA,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACI,GAAIpU,KAAKuU,eAAgB,CACrB,MAAMkJ,EAAiBzd,KAAK8e,kBACtBle,EAASZ,KAAKgf,gBACpBhf,KAAKuU,eAAelB,UAAYoK,EAChCzd,KAAKuU,eAAexO,aAAa,QAASnF,EAC9C,CACJ,CACA,eAAAke,GACI,GAAmB,OAAf9e,KAAK1I,YAAiCie,IAAfvV,KAAK1I,OAAsC,KAAf0I,KAAK1I,MACxD,MAAO,GAGX,GAAI0I,KAAKqU,OAAOmB,UACZ,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAElD,MAAMgE,EAAO,IAAIC,KAAKvY,KAAK1I,OAC3B,GAAImf,MAAM6B,EAAKE,WACX,OAAO/R,OAAOzG,KAAK1I,OAGvB,GAAI0I,KAAK4e,aACL,OAAO5e,KAAKif,mBAAmB3G,GAGnC,MAAMvD,EAAS/U,KAAKqU,OAAOgE,YAAc,CACrCtD,OAAQ/U,KAAKqY,WACbI,aAAczY,KAAKyY,aACnBQ,OAAQjZ,KAAKiZ,QAGjB,GAAIlE,EAAO0D,cAAgBzY,KAAKyY,aAC5B,OAAOzY,KAAKkf,iBAAiB5G,EAAMvD,EAAO0D,cAAgBzY,KAAKyY,cAGnE,MAAMnM,EAAU,CAAA,EAEhB,OADmByI,EAAOA,QAAU/U,KAAKqY,YAErC,IAAK,QACD/L,EAAQyM,UAAY,QACpB,MACJ,IAAK,SACDzM,EAAQyM,UAAY,SACpB,MACJ,IAAK,OACDzM,EAAQyM,UAAY,OACpB,MACJ,IAAK,OACDzM,EAAQyM,UAAY,OAIxB/Y,KAAK6e,WACLvS,EAAQ6S,UAAY,SAExB,MAAMlG,EAASlE,EAAOkE,QAAUjZ,KAAKiZ,OACrC,OAAO,IAAI1B,KAAKyB,eAAeC,EAAQ3M,GAASyI,OAAOuD,EAC3D,CACA,gBAAA4G,CAAiB5G,EAAMvD,GACnB,MAAMqK,EAAS,CACXC,KAAQ/G,EAAKI,cAAcC,WAC3B2G,GAAMhH,EAAKI,cAAcC,WAAW3gB,UACpCunB,IAAOjH,EAAKM,WAAa,GAAGD,WAAWE,SAAS,EAAG,KACnD2G,GAAMlH,EAAKM,WAAa,GAAGD,WAC3B8G,GAAMnH,EAAKQ,UAAUH,WAAWE,SAAS,EAAG,KAC5C6G,EAAKpH,EAAKQ,UAAUH,WACpBgH,GAAMrH,EAAKsH,WAAWjH,WAAWE,SAAS,EAAG,KAC7CgH,EAAKvH,EAAKsH,WAAWjH,WACrBmH,GAAMxH,EAAKyH,aAAapH,WAAWE,SAAS,EAAG,KAC/CxH,EAAKiH,EAAKyH,aAAapH,WACvBqH,GAAM1H,EAAK2H,aAAatH,WAAWE,SAAS,EAAG,KAC/CqH,EAAK5H,EAAK2H,aAAatH,YAE3B,IAAIjC,EAAY3B,EAChB,IAAK,MAAOoL,EAAO7oB,KAAUnB,OAAOiqB,QAAQhB,GACxC1I,EAAYA,EAAUK,QAAQ,IAAIsJ,OAAOF,EAAO,KAAM7oB,GAE1D,OAAOof,CACX,CACA,kBAAAuI,CAAmB3G,GACf,MACMgI,GADM,IAAI/H,MACGC,UAAYF,EAAKE,UAC9B+H,EAAW7I,KAAKS,MAAMmI,EAAS,KAC/BE,EAAW9I,KAAKS,MAAMoI,EAAW,IACjCE,EAAY/I,KAAKS,MAAMqI,EAAW,IAClCE,EAAWhJ,KAAKS,MAAMsI,EAAY,IACxC,OAAIF,EAAW,GACJ,WAEFC,EAAW,GACT,GAAGA,WAA+B,IAAbA,EAAiB,GAAK,UAE7CC,EAAY,GACV,GAAGA,SAA+B,IAAdA,EAAkB,GAAK,UAE7CC,EAAW,EACT,GAAGA,QAA4B,IAAbA,EAAiB,GAAK,UAIxC,IAAInJ,KAAKyB,eAAehZ,KAAKiZ,OAAQ,CAAEF,UAAW,UAAWhE,OAAOuD,EAEnF,CACA,aAAA0G,GACI,MAAM1G,EAAO,IAAIC,KAAKvY,KAAK1I,OACrBqpB,EAAM,IAAIpI,KACVqI,EAAUtI,EAAKuI,iBAAmBF,EAAIE,eACtCC,EAASxI,EAAOqI,EAChBI,EAAWzI,EAAOqI,EAYxB,OAVA3gB,KAAK6F,UAAUa,OAAO,cAAe,aAAc,gBAC/Cka,EACA5gB,KAAK6F,UAAUG,IAAI,eAEd8a,EACL9gB,KAAK6F,UAAUG,IAAI,cAEd+a,GACL/gB,KAAK6F,UAAUG,IAAI,gBAEhB,EACX,CACA,WAAAxB,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,SAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,KAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,OACNsD,MAAO,UAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClIjU,KAAKqY,YAAcjhB,EAAkB4I,KAAMkU,GAAoC9c,EAAkB4I,KAAMke,EAA0B,UACjIle,KAAKyY,cAAgBrhB,EAAkB4I,KAAMme,GAAgC/mB,EAAkB4I,KAAMoe,OAA4B,IACjIpe,KAAKiZ,QAAU7hB,EAAkB4I,KAAMqe,GAAkCjnB,EAAkB4I,KAAMse,EAAsB,UACvHte,KAAK4e,cAAgBxnB,EAAkB4I,KAAMue,GAA4BnnB,EAAkB4I,KAAMwe,GAA4B,IAC7Hxe,KAAK6e,UAAYznB,EAAkB4I,KAAMye,GAAkCrnB,EAAkB4I,KAAM0e,GAAwB,IAC3HtnB,EAAkB4I,KAAM2e,EAC5B,GAGP,EA3PmB,GCAG,MACnB,IACIvmB,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGAsN,EAGAC,EAGAC,EAGAC,EAGAC,EAGA/mB,EACAC,EACAC,EACAoZ,EACAC,EA3CAjY,EAAmB,CAACC,UAAQ,uBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,GAEpCmN,EAA0B,GAC1BC,EAA+B,GAE/BC,EAA2B,GAC3BC,EAAgC,GAEhCC,EAA2B,GAC3BC,EAAgC,GAEhCC,EAA2B,GAC3BC,EAAgC,GAEhCC,EAA4B,GAC5BC,EAAiC,IAMrC,cAAe/lB,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpCsgB,EAAwB,CAAC3gB,EAAAA,SAAS,CAAEC,UAAW,gBAC/C2gB,EAAyB,CAAC5gB,EAAAA,SAAS,CAAEC,UAAW,iBAChD4gB,EAAyB,CAAC7gB,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,iBAC/D6gB,EAAyB,CAAC9gB,EAAAA,SAAS,CAAEC,UAAW,iBAChD8gB,EAA0B,CAAC/gB,EAAAA,SAAS,CAAEC,UAAW,kBACjDjG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAM,KAAM6rB,EAAuB,CAAElrB,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIkY,UAAWviB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkY,UAAYjiB,IAAY6I,SAAUF,GAAaohB,EAAyBC,GAC3RnsB,EAAa,KAAM,KAAM8rB,EAAwB,CAAEnrB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAImY,WAAYxiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImY,WAAaliB,IAAY6I,SAAUF,GAAashB,EAA0BC,GACjSrsB,EAAa,KAAM,KAAM+rB,EAAwB,CAAEprB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI+X,WAAYpiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+X,WAAa9hB,IAAY6I,SAAUF,GAAawhB,EAA0BC,GACjSvsB,EAAa,KAAM,KAAMgsB,EAAwB,CAAErrB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIgY,WAAYriB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgY,WAAa/hB,IAAY6I,SAAUF,GAAa0hB,EAA0BC,GACjSzsB,EAAa,KAAM,KAAMisB,EAAyB,CAAEtrB,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIiY,YAAatiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiY,YAAchiB,IAAY6I,SAAUF,GAAa4hB,EAA2BC,GACvS3sB,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM1I,EAAU+H,KAAK+hB,uBACrB,OAAOlqB,MAAc;;UAEvBmqB,EAAAA,WAAW/pB;;KAGb,CACA,MAAA2I,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,gBACT,CACA,cAAAA,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACI,GAAIpU,KAAKuU,eAAgB,CACrB,MAAMtc,EAAU+H,KAAK+hB,uBACrB/hB,KAAKuU,eAAelB,UAAYpb,CACpC,CACJ,CACA,oBAAA8pB,GACI,GAAmB,OAAf/hB,KAAK1I,YAAiCie,IAAfvV,KAAK1I,MAC5B,MAAO,GAGX,GAAI0I,KAAKqU,OAAOmB,UACZ,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAGlD,MAAMS,EAAS/U,KAAKqU,OAAO6E,eAAiB,CACxCK,UAAWvZ,KAAKuZ,UAChBC,WAAYxZ,KAAKwZ,WACjBJ,WAAYpZ,KAAKoZ,WACjBC,WAAYrZ,KAAKqZ,WACjBC,YAAatZ,KAAKsZ,aAEhB2I,EAASzhB,QAAQR,KAAK1I,OAC5B,GAAIyd,EAAOqE,YAAcpZ,KAAKoZ,WAAY,CAGtC,MAAO,gBADY6I,EAAS,gBAAkB,qBAD/BA,EAAUlN,EAAOsE,YAAcrZ,KAAKqZ,WAAetE,EAAOuE,aAAetZ,KAAKsZ,oBAGjG,CAII,MAAO,gBADY2I,EAAS,gBAAkB,qBADjCA,EAAUlN,EAAOwE,WAAavZ,KAAKuZ,UAAcxE,EAAOyE,YAAcxZ,KAAKwZ,mBAIhG,CACA,WAAAhV,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,WAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,YAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,GAAqB,IAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,UACNsD,MAAO,YAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClIjU,KAAKuZ,WAAaniB,EAAkB4I,KAAMkU,GAAoC9c,EAAkB4I,KAAMqhB,EAAyB,SAC/HrhB,KAAKwZ,YAAcpiB,EAAkB4I,KAAMshB,GAA+BlqB,EAAkB4I,KAAMuhB,EAA0B,UAC5HvhB,KAAKoZ,YAAchiB,EAAkB4I,KAAMwhB,GAAgCpqB,EAAkB4I,KAAMyhB,GAA0B,IAC7HzhB,KAAKqZ,YAAcjiB,EAAkB4I,KAAM0hB,GAAgCtqB,EAAkB4I,KAAM2hB,EAA0B,MAC7H3hB,KAAKsZ,aAAeliB,EAAkB4I,KAAM4hB,GAAgCxqB,EAAkB4I,KAAM6hB,EAA2B,MAC/HzqB,EAAkB4I,KAAM8hB,EAC5B,GAGP,EAlKsB,GCDL,MACd,IACI1pB,EAEAC,EAGAI,EAGAa,EAGA4oB,EAGAC,EAGAC,EAGA/nB,EACAC,EAtBAqB,EAAmB,CAACC,UAAQ,iBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3ByB,EAAoB,GACpBC,EAAyB,GAEzBkkB,EAAuB,GACvBC,EAA4B,GAE5BC,EAA4B,GAC5BC,EAAiC,GAEjCC,EAAsB,GACtBC,EAA2B,IAG/B,cAAe3mB,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAME,UACtCnH,EAAkB,CAAC+G,EAAAA,SAAS,CAAEE,KAAME,UACpCyhB,EAAqB,CAAC7hB,EAAAA,YACtB8hB,EAA0B,CAAC9hB,EAAAA,YAC3B+hB,EAAoB,CAAC/hB,EAAAA,YACrBhG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBzL,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMmE,EAAiB,CAAExD,KAAM,QAASO,KAAM,MAAO6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,QAASA,EAAKtK,IAAKsK,GAAOA,EAAIkC,IAAKvM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkC,IAAMjM,IAAY6I,SAAUF,GAAa/B,EAAmBC,GACvPhJ,EAAa,KAAM,KAAM+sB,EAAoB,CAAEpsB,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIsY,OAAQ3iB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIsY,OAASriB,IAAY6I,SAAUF,GAAaoiB,EAAsBC,GACzQntB,EAAa,KAAM,KAAMgtB,EAAyB,CAAErsB,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIuY,YAAa5iB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuY,YAActiB,IAAY6I,SAAUF,GAAasiB,EAA2BC,GACvSrtB,EAAa,KAAM,KAAMitB,EAAmB,CAAEtsB,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI6T,MAAOle,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6T,MAAQ5d,IAAY6I,SAAUF,GAAawiB,EAAqBC,GACnQvtB,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAMgiB,EAASjL,KAAK4C,MAAMta,KAAK1I,OACzBsrB,EAAQ5iB,KAAKuD,IAAMof,EACzB,OAAO9qB,MAAc;6BACJmI,KAAK2Z,OAAOkJ,OAAOF,gCAAqC3iB,KAAK4Z,YAAYiJ,OAAOD;KAErG,CACA,MAAAhiB,GACI,OAAO4E,KAAY;;;;;;;iBAOdxF,KAAKkV;;;;;;KAOd,CACA,WAAA1Q,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,IAChHwD,KAAKuD,KAAOnM,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM9B,EAAmB,IAC1G8B,KAAK2Z,QAAUviB,EAAkB4I,KAAM7B,GAAyB/G,EAAkB4I,KAAMqiB,EAAsB,MAC9GriB,KAAK4Z,aAAexiB,EAAkB4I,KAAMsiB,GAA4BlrB,EAAkB4I,KAAMuiB,EAA2B,MAC3HviB,KAAKkV,OAAS9d,EAAkB4I,KAAMwiB,GAAiCprB,EAAkB4I,KAAMyiB,EAAqB,YACpHrrB,EAAkB4I,KAAM0iB,EAC5B,GAGP,EAjFiB,GCEI,MAClB,IACItqB,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGArZ,EACAC,EACAC,EACAoZ,EACAC,EA5BAjY,EAAmB,CAACC,UAAQ,sBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,IAMxC,cAAenY,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpCrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,OAAO9I,MAAc;;;;KAKzB,CACA,MAAA+I,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,iBACLzU,KAAK8iB,qBACT,CACA,cAAArO,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACIpU,KAAK8iB,qBACT,CACA,mBAAAA,GACI,IAAK9iB,KAAKuU,eACN,OAEJvU,KAAKuU,eAAelB,UAAY,GAEhC,MAAMqG,EAASlJ,SAASuS,cAAc,gBACtCrJ,EAAOpiB,MAAQmJ,OAAOT,KAAK1I,QAAU,EAErC,MAAMyd,EAAS/U,KAAKqU,OAAOoF,cAAgB,CAAA,EAC3CC,EAAOnW,IAAMwR,EAAOxR,KAAO,EAC3BmW,EAAOC,OAAS5E,EAAO4E,QAAU,IACjCD,EAAOE,YAAc7E,EAAO6E,aAAe,IAC3CF,EAAOxE,MAAQH,EAAOG,OAAS4E,iBAAiB9Z,MAAM+Z,iBAAiB,yBAAyBjS,OAChG9H,KAAKuU,eAAeyO,YAAYtJ,EACpC,CACA,WAAAlV,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,WAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,WAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,IAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,SACNsD,MAAO,YAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClI7c,EAAkB4I,KAAMkU,EAC5B,GAGP,EArHqB,GCFF,MAChB,IACI9b,EAEAC,EAGAI,EAGAa,EAGA8oB,EAGAa,EAGAC,EAGAC,EAGA9oB,EACAC,EAzBAqB,EAAmB,CAACC,UAAQ,mBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3ByB,EAAoB,GACpBC,EAAyB,GAEzBskB,EAAsB,GACtBC,EAA2B,GAE3BU,EAAgC,GAChCC,EAAqC,GAErCC,EAAuB,GACvBC,EAA4B,GAE5BC,EAA+B,GAC/BC,EAAoC,IAGxC,cAAe1nB,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAME,UACtCnH,EAAkB,CAAC+G,EAAAA,SAAS,CAAEE,KAAME,UACpC2hB,EAAoB,CAAC/hB,EAAAA,YACrB4iB,EAA8B,CAAC5iB,EAAAA,YAC/B6iB,EAAqB,CAAC7iB,EAAAA,YACtB8iB,EAA6B,CAAC9iB,EAAAA,SAAS,CAAEE,KAAMC,WAC/CnG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBzL,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMmE,EAAiB,CAAExD,KAAM,QAASO,KAAM,MAAO6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,QAASA,EAAKtK,IAAKsK,GAAOA,EAAIkC,IAAKvM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkC,IAAMjM,IAAY6I,SAAUF,GAAa/B,EAAmBC,GACvPhJ,EAAa,KAAM,KAAMitB,EAAmB,CAAEtsB,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI6T,MAAOle,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6T,MAAQ5d,IAAY6I,SAAUF,GAAawiB,EAAqBC,GACnQvtB,EAAa,KAAM,KAAM8tB,EAA6B,CAAEntB,KAAM,QAASO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI4T,gBAAiBje,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4T,gBAAkB3d,IAAY6I,SAAUF,GAAamjB,EAA+BC,GAC/TluB,EAAa,KAAM,KAAM+tB,EAAoB,CAAEptB,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAI+Y,OAAQpjB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+Y,OAAS9iB,IAAY6I,SAAUF,GAAaqjB,EAAsBC,GACzQpuB,EAAa,KAAM,KAAMguB,EAA4B,CAAErtB,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIgZ,eAAgBrjB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgZ,eAAiB/iB,IAAY6I,SAAUF,GAAaujB,EAA8BC,GACzTtuB,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAMuZ,EAAaxC,KAAKpU,IAAI,IAAMtD,KAAK1I,MAAQ0I,KAAKuD,IAAO,KAC3D,OAAO1L,MAAc;;kDAEiBqiB;;YAEtCla,KAAKqa;mCACkBH,EAAWvD,QAAQ;;KAG9C,CACA,MAAA/V,GACI,OAAO4E,KAAY;;;;;;;;;;kBAUbxF,KAAKoa;sBACDpa,KAAKiV;;;;;;;sBAOLjV,KAAKkV;;;;;;;;;KAUnB,CACA,WAAA1Q,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,IAChHwD,KAAKuD,KAAOnM,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM9B,EAAmB,MAC1G8B,KAAKkV,OAAS9d,EAAkB4I,KAAM7B,GAAyB/G,EAAkB4I,KAAMyiB,EAAqB,YAC5GziB,KAAKiV,iBAAmB7d,EAAkB4I,KAAM0iB,GAA2BtrB,EAAkB4I,KAAMojB,EAA+B,YAClIpjB,KAAKoa,QAAUhjB,EAAkB4I,KAAMqjB,GAAqCjsB,EAAkB4I,KAAMsjB,EAAsB,WAC1HtjB,KAAKqa,gBAAkBjjB,EAAkB4I,KAAMujB,GAA4BnsB,EAAkB4I,KAAMwjB,GAA8B,IACjIpsB,EAAkB4I,KAAMyjB,EAC5B,GAGP,EAzGmB,GCEI,MACpB,IACIrrB,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGArZ,EACAC,EACAC,EACAoZ,EACAC,EA5BAjY,EAAmB,CAACC,UAAQ,wBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,IAMxC,cAAenY,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpCrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,OAAO9I,MAAc;;;;KAKzB,CACA,MAAA+I,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,iBACLzU,KAAK0jB,uBACT,CACA,cAAAjP,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACIpU,KAAK0jB,uBACT,CACA,qBAAAA,GACI,IAAK1jB,KAAKuU,eACN,OAEJvU,KAAKuU,eAAelB,UAAY,GAEhC,MAAMsQ,EAAWnT,SAASuS,cAAc,kBACxCY,EAASrsB,MAAQmJ,OAAOT,KAAK1I,QAAU,EAEvC,MAAMyd,EAAS/U,KAAKqU,OAAO4F,gBAAkB,CAAA,EAC7C0J,EAASpgB,IAAMwR,EAAOxR,KAAO,IAC7BogB,EAASzO,MAAQH,EAAOG,OAAS4E,iBAAiB9Z,MAAM+Z,iBAAiB,yBAAyBjS,OAClG6b,EAAS1O,gBAAkBF,EAAOE,iBAAmB6E,iBAAiB9Z,MAAM+Z,iBAAiB,wBAAwBjS,OACrH6b,EAASvJ,OAASrF,EAAOqF,QAAU,SACnCuJ,EAAStJ,eAAiBtF,EAAOsF,iBAAkB,EACnDra,KAAKuU,eAAeyO,YAAYW,EACpC,CACA,WAAAnf,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,aAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,IAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,WACNsD,MAAO,UAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClI7c,EAAkB4I,KAAMkU,EAC5B,GAGP,EAtHuB,GCDA,MACpB,IACI9b,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGArZ,EACAC,EACAC,EACAoZ,EACAC,EA5BAjY,EAAmB,CAACC,UAAQ,wBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,IAMxC,cAAenY,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpCrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM1I,EAAU+H,KAAKqW,iBACrB,OAAOxe,MAAc;;UAEvBI;;KAGF,CACA,MAAA2I,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,gBACT,CACA,cAAAA,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACI,GAAIpU,KAAKuU,eAAgB,CACrB,MAAMtc,EAAU+H,KAAKqW,iBACrBrW,KAAKuU,eAAelB,UAAYpb,CACpC,CACJ,CACA,cAAAoe,GACI,GAAmB,OAAfrW,KAAK1I,YAAiCie,IAAfvV,KAAK1I,MAC5B,MAAO,GAGX,GAAI0I,KAAKqU,OAAOmB,UACZ,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAElD,MAAM2G,EAAUxa,OAAOT,KAAK1I,OAC5B,GAAImf,MAAMwE,GACN,OAAOxU,OAAOzG,KAAK1I,OACvB,MAAM4jB,EAAQxD,KAAKS,MAAM8C,EAAU,MAC7BE,EAAUzD,KAAKS,MAAO8C,EAAU,KAAQ,IACxCG,EAAO1D,KAAKS,MAAM8C,EAAU,IAClC,OAAIC,EAAQ,EACD,GAAGA,MAAUC,MAAYC,KAE3BD,EAAU,EACR,GAAGA,MAAYC,KAGf,GAAGA,IAElB,CACA,WAAA5W,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,UAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,aAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,IAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,WACNsD,MAAO,WAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClI7c,EAAkB4I,KAAMkU,EAC5B,GAGP,EAhIuB,GCAA,MACpB,IACI9b,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGArZ,EACAC,EACAC,EACAoZ,EACAC,EA5BAjY,EAAmB,CAACC,UAAQ,wBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,IAMxC,cAAenY,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpCrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM1I,EAAU+H,KAAK4jB,iBACrB,OAAO/rB,MAAc;;UAEvBI;;KAGF,CACA,MAAA2I,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,gBACT,CACA,cAAAA,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACI,GAAIpU,KAAKuU,eAAgB,CACrB,MAAMtc,EAAU+H,KAAK4jB,iBACrB5jB,KAAKuU,eAAelB,UAAYpb,CACpC,CACJ,CACA,cAAA2rB,GACI,GAAmB,OAAf5jB,KAAK1I,YAAiCie,IAAfvV,KAAK1I,MAC5B,MAAO,GAGX,GAAI0I,KAAKqU,OAAOmB,UACZ,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAElD,MAAM+G,EAAQ5a,OAAOT,KAAK1I,OAC1B,GAAImf,MAAM4E,GACN,OAAO5U,OAAOzG,KAAK1I,OACvB,MAAMgkB,EAAQ,CAAC,IAAK,KAAM,KAAM,KAAM,MACtC,IAAI7Y,EAAO4Y,EACPE,EAAY,EAChB,KAAO9Y,GAAQ,MAAQ8Y,EAAYD,EAAM9kB,OAAS,GAC9CiM,GAAQ,KACR8Y,IAEJ,MAAO,GAAG9Y,EAAKkU,QAAQ,MAAM2E,EAAMC,IACvC,CACA,WAAA/W,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,UAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,aAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,IAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,WACNsD,MAAO,WAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClI7c,EAAkB4I,KAAMkU,EAC5B,GAGP,EA5HuB,GCAC,MACrB,IACI9b,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGAmQ,EAGAzB,EAGA0B,EAGAZ,EAGAa,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGA/pB,EACAC,EACAC,EACAoZ,EACAC,EACAyQ,EA3DA1oB,EAAmB,CAACC,UAAQ,yBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,GAEpCoQ,EAA0B,GAC1BC,EAA+B,GAE/B9B,EAAsB,GACtBC,EAA2B,GAE3B8B,EAAsB,GACtBC,EAA2B,GAE3BnB,EAAuB,GACvBC,EAA4B,GAE5BmB,EAAyB,GACzBC,EAA8B,GAE9BC,GAA6B,GAC7BC,GAAkC,GAElCC,GAA4B,GAC5BC,GAAiC,GAEjCC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAqB,GACrBC,GAA0B,IAO9B,cAAetpB,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7B5H,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpCmjB,EAAwB,CAACxjB,EAAAA,SAAS,CAAEC,UAAW,gBAC/C8hB,EAAoB,CAAC/hB,WAAS,CAAA,IAC9ByjB,EAAoB,CAACzjB,EAAAA,SAAS,CAAEE,KAAME,UACtCyiB,EAAqB,CAAC7iB,EAAAA,SAAS,CAAEE,KAAME,UACvCsjB,EAAuB,CAAC1jB,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,eAC7D0jB,EAA2B,CAAC3jB,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,mBACjE2jB,EAA0B,CAAC5jB,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,kBAC/D4jB,EAAuB,CAAC7jB,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,eAC5D6jB,EAAuB,CAAC9jB,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,eAC5D8jB,EAAmB,CAAC/jB,EAAAA,SAAS,CAAEE,KAAM+kB,EAAAA,eACrCjrB,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,OAAQ,WACpDujB,EAA8B,CAACvjB,EAAAA,MAAM,QAAS,OAAQ,YAAa,QAAS,QAAS,SAAU,WAAY,eAAgB,cAAe,WAAY,aACtJ3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa6K,KAAM,KAAMqkB,EAA6B,CAAEvuB,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAIkkB,iBAAmBplB,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAM,KAAM0uB,EAAuB,CAAE/tB,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAImkB,UAAWxuB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImkB,UAAYluB,IAAY6I,SAAUF,GAAaqkB,EAAyBC,GAC3RpvB,EAAa,KAAM,KAAMitB,EAAmB,CAAEtsB,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI6T,MAAOle,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6T,MAAQ5d,IAAY6I,SAAUF,GAAawiB,EAAqBC,GACnQvtB,EAAa,KAAM,KAAM2uB,EAAmB,CAAEhuB,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIqZ,MAAO1jB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqZ,MAAQpjB,IAAY6I,SAAUF,GAAaukB,EAAqBC,GACnQtvB,EAAa,KAAM,KAAM+tB,EAAoB,CAAEptB,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAI+Y,OAAQpjB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+Y,OAAS9iB,IAAY6I,SAAUF,GAAaqjB,EAAsBC,GACzQpuB,EAAa,KAAM,KAAM4uB,EAAsB,CAAEjuB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIokB,SAAUzuB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIokB,SAAWnuB,IAAY6I,SAAUF,GAAaykB,EAAwBC,GACrRxvB,EAAa,KAAM,KAAM6uB,EAA0B,CAAEluB,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIqkB,aAAc1uB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqkB,aAAepuB,IAAY6I,SAAUF,GAAa2kB,GAA4BC,IAC7S1vB,EAAa,KAAM,KAAM8uB,EAAyB,CAAEnuB,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIskB,YAAa3uB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIskB,YAAcruB,IAAY6I,SAAUF,GAAa6kB,GAA2BC,IACvS5vB,EAAa,KAAM,KAAM+uB,EAAsB,CAAEpuB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIukB,SAAU5uB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIukB,SAAWtuB,IAAY6I,SAAUF,GAAa+kB,GAAwBC,IACrR9vB,EAAa,KAAM,KAAMgvB,EAAsB,CAAEruB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIwkB,SAAU7uB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwkB,SAAWvuB,IAAY6I,SAAUF,GAAailB,GAAwBC,IACrRhwB,EAAa,KAAM,KAAMivB,EAAkB,CAAEtuB,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAImZ,KAAMxjB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImZ,KAAOljB,IAAY6I,SAAUF,GAAamlB,GAAoBC,IAC7PlwB,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,OAAO9I,MAAc;;UAEvBmqB,EAAAA,WAAWhiB,KAAK8lB;;KAGlB,CACA,MAAAllB,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,iBACLzU,KAAKulB,iBACT,CACA,cAAA9Q,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACQpU,KAAKuU,iBACLvU,KAAKuU,eAAelB,UAAYrT,KAAK8lB,kBAE7C,CACA,eAAAP,GACQvlB,KAAKuU,iBACLvU,KAAKuU,eAAelB,UAAYrT,KAAK8lB,kBAE7C,CACA,eAAAA,GACI,KAAoB,OAAf9lB,KAAK1I,YAAiCie,IAAfvV,KAAK1I,OAA0B0I,KAAKwa,MAA6B,IAArBxa,KAAKwa,KAAKhkB,QAC9E,MAAO,GAGX,GAAIwJ,KAAKqU,OAAOmB,UACZ,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAElD,MAAMkG,EAAOxa,KAAK+lB,YAClB,GAAoB,IAAhBvL,EAAKhkB,OACL,MAAO,uBAAuBsjB,iBAAiB9Z,MAAM+Z,iBAAiB,gCAAgCjS,8CAG1G,MAAMiN,EAAS/U,KAAKqU,OAAOkG,iBAAmB,CAC1Cha,KAAMP,KAAKwlB,UACXtQ,MAAOlV,KAAKkV,MACZwF,MAAO1a,KAAK0a,MACZN,OAAQpa,KAAKoa,QAEXM,EAAQ3F,EAAO2F,OAAS1a,KAAK0a,MAC7BN,EAASrF,EAAOqF,QAAUpa,KAAKoa,OAC/BlF,EAAQH,EAAOG,OAASlV,KAAKkV,MAC7B3U,EAAOwU,EAAOxU,MAAQP,KAAKwlB,UACjC,OAAOxlB,KAAKgmB,aAAaxL,EAAME,EAAON,EAAQlF,EAAO3U,EACzD,CACA,SAAAwlB,GAEI,GAAI/lB,KAAKwa,MAAQhP,MAAMiP,QAAQza,KAAKwa,OAASxa,KAAKwa,KAAKhkB,OAAS,EAC5D,OAAOwJ,KAAKwa,KAAK/M,IAAIuB,GAAKvO,OAAOuO,IAAIlK,OAAOmhB,IAAMxP,MAAMwP,IAG5D,GAAIza,MAAMiP,QAAQza,KAAK1I,OACnB,OAAO0I,KAAK1I,MAAMmW,IAAIuB,GAAKvO,OAAOuO,IAAIlK,OAAOmhB,IAAMxP,MAAMwP,IAE7D,GAA0B,iBAAfjmB,KAAK1I,MAAoB,CAEhC,GAAI0I,KAAK1I,MAAMQ,WAAW,MAAQkI,KAAK1I,MAAM4uB,SAAS,KAClD,IACI,MAAMC,EAASC,KAAKC,MAAMrmB,KAAK1I,OAC/B,GAAIkU,MAAMiP,QAAQ0L,GACd,OAAOA,EAAO1Y,IAAIuB,GAAKvO,OAAOuO,IAAIlK,OAAOmhB,IAAMxP,MAAMwP,GAE7D,CACA,MAEA,CAGJ,IACI,OAAOjmB,KAAK1I,MAAMyX,MAAM,KAAKtB,IAAIuB,GAAKvO,OAAOuO,EAAElH,SAAShD,OAAOmhB,IAAMxP,MAAMwP,GAC/E,CACA,MACI,MAAO,EACX,CACJ,CACA,MAAO,EACX,CACA,YAAAD,CAAaxL,EAAME,EAAON,EAAQlF,EAAO3U,GACrC,GAAoB,IAAhBia,EAAKhkB,OACL,MAAO,GAEX,MAAM8vB,EAAS9V,SAASuS,cAAc,UACtCuD,EAAO5L,MAAQA,EACf4L,EAAOlM,OAASA,EAChB,MAAMmM,EAAMD,EAAOE,WAAW,MAC9B,IAAKD,EACD,MAAO,sDACX,MACME,EAAa/L,IACbgM,EAActM,IACd9W,EAAMtD,KAAK4lB,UAAYlO,KAAKpU,OAAOkX,GAEnCG,GADM3a,KAAK6lB,UAAYnO,KAAKnU,OAAOiX,IACrBlX,GAAO,EAE3BijB,EAAII,UAAU,EAAG,EAAGjM,EAAON,GAE3B,IAAIwM,EAAgB1R,EACpB,GAAIA,EAAMpd,WAAW,QAAS,CAC1B,MAAMsa,EAAQ8C,EAAM9C,MAAM,kBACtBA,IACAwU,EAAgB9M,iBAAiB9Z,MAAM+Z,iBAAiB3H,EAAM,GAAGrD,MAAM,KAAK,GAAGjH,QAAQA,QAAU,UAEzG,CAOA,GALAye,EAAIM,YAAcD,EAClBL,EAAIO,UAAYF,EAChBL,EAAIQ,UAAY/mB,KAAK2lB,YACrBY,EAAIS,QAAU,QACdT,EAAIU,SAAW,QACF,SAAT1mB,GAA4B,SAATA,EAAiB,CACpC,MAAMqa,EAASJ,EAAK/M,IAAI,CAACoN,EAAKtkB,IAGnB,CA1BC,EAwBaA,GAAKikB,EAAKhkB,OAAS,GAAMiwB,EAxBtC,EAyBYC,GAAgB7L,EAAMvX,GAAOqX,EAAS+L,IAIjD,SAATnmB,IACAgmB,EAAIW,YACJX,EAAIY,OAAOvM,EAAO,GAAG,GAAIA,EAAO,GAAG,IACnCA,EAAOlI,QAAQ,EAAE0U,EAAGC,KAAOd,EAAIe,OAAOF,EAAGC,IACzCd,EAAIe,OAAO1M,EAAOA,EAAOpkB,OAAS,GAAG,GAAI4jB,EAjCjC,GAkCRmM,EAAIe,OAAO1M,EAAO,GAAG,GAAIR,EAlCjB,GAmCRmM,EAAIgB,YACJhB,EAAIiB,YAAc,GAClBjB,EAAIkB,OACJlB,EAAIiB,YAAc,GAGtBjB,EAAIW,YACJX,EAAIY,OAAOvM,EAAO,GAAG,GAAIA,EAAO,GAAG,IACnCA,EAAOlI,QAAQ,EAAE0U,EAAGC,KAAOd,EAAIe,OAAOF,EAAGC,IACzCd,EAAImB,SAEA1nB,KAAKylB,UACL7K,EAAOlI,QAAQ,EAAE0U,EAAGC,MAChBd,EAAIW,YACJX,EAAIoB,IAAIP,EAAGC,EAAG,IAAK,EAAG,EAAI3P,KAAKkQ,IAC/BrB,EAAIkB,QAGhB,MACK,GAAa,QAATlnB,EAAgB,CACrB,MAAMua,EAAY2L,EAAajM,EAAKhkB,OAAU,GACxCqxB,EAAcpB,EAAajM,EAAKhkB,OAAU,GAChDgkB,EAAK9H,QAAQ,CAACmI,EAAKtkB,KACf,MAAMykB,GAAcH,EAAMvX,GAAOqX,EAAS+L,EACpCU,EA3DE,EA2DY7wB,GAAKukB,EAAW+M,GAC9BR,EA5DE,EA4DYX,EAAc1L,EAClCuL,EAAIuB,SAASV,EAAGC,EAAGvM,EAAUE,IAErC,CAEA,IAEI,MAAO,aADSsL,EAAOyB,UAAU,wBACMrN,cAAkBN,2EAC7D,CACA,MAAO4N,GAEH,OADAC,QAAQD,MAAM,+BAAgCA,GACvC,6CACX,CACJ,CACA,WAAAxjB,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,cAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,KAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,YACNsD,MAAO,UAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClIjU,KAAKwlB,WAAapuB,EAAkB4I,KAAMkU,GAAoC9c,EAAkB4I,KAAMskB,EAAyB,SAC/HtkB,KAAKkV,OAAS9d,EAAkB4I,KAAMukB,GAA+BntB,EAAkB4I,KAAMyiB,EAAqB,+BAClHziB,KAAK0a,OAAStjB,EAAkB4I,KAAM0iB,GAA2BtrB,EAAkB4I,KAAMwkB,EAAqB,KAC9GxkB,KAAKoa,QAAUhjB,EAAkB4I,KAAMykB,GAA2BrtB,EAAkB4I,KAAMsjB,EAAsB,KAChHtjB,KAAKylB,UAAYruB,EAAkB4I,KAAMujB,GAA4BnsB,EAAkB4I,KAAM0kB,GAAwB,IACrH1kB,KAAK0lB,cAAgBtuB,EAAkB4I,KAAM2kB,GAA8BvtB,EAAkB4I,KAAM4kB,IAA4B,IAC/H5kB,KAAK2lB,aAAevuB,EAAkB4I,KAAM6kB,IAAkCztB,EAAkB4I,KAAM8kB,GAA2B,MACjI9kB,KAAK4lB,UAAYxuB,EAAkB4I,KAAM+kB,IAAiC3tB,EAAkB4I,KAAMglB,QAAwB,IAC1HhlB,KAAK6lB,UAAYzuB,EAAkB4I,KAAMilB,IAA8B7tB,EAAkB4I,KAAMklB,QAAwB,IACvHllB,KAAKwa,MAAQpjB,EAAkB4I,KAAMmlB,IAA8B/tB,EAAkB4I,KAAMolB,GAAoB,KAC/GhuB,EAAkB4I,KAAMqlB,GAC5B,GAGP,EAxTwB,GCDP,MACd,IACIjtB,EAEAC,EAGA6vB,EAGAvvB,EAGAL,EAGAuB,EAGAiqB,EAGAqE,EAGAC,EAGAC,EAGAC,EAGAC,EAGAjM,EAGAC,EAGAiM,EAGAC,EAGA/L,EAGAmB,EAGA6K,EAGAC,EAGA3H,EAGAC,EAGAC,EAGAC,EAGAC,EAGAwH,EAGAC,EAGAC,EAGAC,EAGAC,EAGA7F,EAGA8F,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAxvB,EACAyvB,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,GACAC,GA5IA1uB,GAAmB,CAACC,UAAQ,iBAE5BE,GAA0B,GAE1BC,GAAcC,YACdC,GAA6B,GAE7BquB,GAAoB,GACpBC,GAAyB,GAEzB3tB,GAAsB,GACtBC,GAA2B,GAE3BX,GAAqB,GACrBC,GAA0B,GAE1B6C,GAAsB,GACtBC,GAA2B,GAE3BulB,GAAsB,GACtBC,GAA2B,GAE3B+F,GAAyB,GACzBC,GAA8B,GAE9BC,GAA2B,GAC3BC,GAAgC,GAEhCC,GAAqB,GACrBC,GAA0B,GAE1BC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAwB,GACxBC,GAA6B,GAE7BrO,GAAyB,GACzBC,GAA8B,GAE9BC,GAAmC,GACnCC,GAAwC,GAExCmO,GAA6B,GAC7BC,GAAkC,GAElCC,GAA6B,GAC7BC,GAAkC,GAElCjO,GAA8B,GAC9BC,GAAmC,GAEnCa,GAA2B,GAC3BC,GAAgC,GAEhCmN,GAAiC,GACjCC,GAAsC,GAEtCC,GAA2B,GAC3BC,GAAgC,GAEhCpK,GAA0B,GAC1BC,GAA+B,GAE/BC,GAA2B,GAC3BC,GAAgC,GAEhCC,GAA2B,GAC3BC,GAAgC,GAEhCC,GAA2B,GAC3BC,GAAgC,GAEhCC,GAA4B,GAC5BC,GAAiC,GAEjC4J,GAA0B,GAC1BC,GAA+B,GAE/BC,GAA6B,GAC7BC,GAAkC,GAElCC,GAAkC,GAClCC,GAAuC,GAEvCC,GAA4B,GAC5BC,GAAiC,GAEjCC,GAA4B,GAC5BC,GAAiC,GAEjC3I,GAA+B,GAC/BC,GAAoC,GAEpC2I,GAA8B,GAC9BC,GAAmC,GAEnCC,GAAgC,GAChCC,GAAqC,GAErCC,GAA+B,GAC/BC,GAAoC,GAEpCC,GAA8B,GAC9BC,GAAmC,GAEnCC,GAA+B,GAC/BC,GAAoC,GAEpCC,GAA+B,GAC/BC,GAAoC,GAEpCC,GAAgC,GAChCC,GAAqC,GAErCC,GAA4B,GAC5BC,GAAiC,GAEjCC,GAA0B,GAC1BC,GAA+B,GAE/BC,GAA+B,GAC/BC,GAAoC,GAEpCC,GAA8B,GAC9BC,GAAmC,GAEnCC,GAA6B,GAC7BC,GAAkC,GAElCC,GAAmC,GACnCC,GAAwC,IAU5C,cAAe9xB,UACF1D,EAAa2H,IAAK,CAC3B,WAAAwE,GACIC,SAASjN,WACTwI,KAAKjK,KAAOqB,EAAkB4I,KAAM/D,IAA6B7E,EAAkB4I,KAAMsqB,GAAmB,KAC5GtqB,KAAK4C,OAASxL,EAAkB4I,KAAMuqB,IAAyBnzB,EAAkB4I,KAAMpD,GAAqB,KAC5GoD,KAAKO,MAAQnJ,EAAkB4I,KAAMnD,IAA2BzF,EAAkB4I,KAAM9D,GAAoB,SAC5G8D,KAAK6D,OAASzM,EAAkB4I,KAAM7D,IAA0B/E,EAAkB4I,KAAMhB,GAAqB,SAC7GgB,KAAK0a,OAAStjB,EAAkB4I,KAAMf,IAA2B7H,EAAkB4I,KAAMwkB,GAAqB,KAC9GxkB,KAAK8tB,UAAY12B,EAAkB4I,KAAMykB,IAA2BrtB,EAAkB4I,KAAMwqB,IAAwB,IACpHxqB,KAAK+tB,YAAc32B,EAAkB4I,KAAMyqB,IAA8BrzB,EAAkB4I,KAAM0qB,IAA0B,IAC3H1qB,KAAKqc,MAAQjlB,EAAkB4I,KAAM2qB,IAAgCvzB,EAAkB4I,KAAM4qB,IAAoB,IACjH5qB,KAAKoc,UAAYhlB,EAAkB4I,KAAM6qB,IAA0BzzB,EAAkB4I,KAAM8qB,IAAwB,IACnH9qB,KAAKguB,SAAW52B,EAAkB4I,KAAM+qB,IAA8B3zB,EAAkB4I,KAAMgrB,IAAuB,IAErHhrB,KAAK4W,UAAYxf,EAAkB4I,KAAMirB,IAA6B7zB,EAAkB4I,KAAM4c,QAAwB,IACtH5c,KAAK6W,oBAAsBzf,EAAkB4I,KAAM6c,IAA8BzlB,EAAkB4I,KAAM8c,QAAkC,IAC3I9c,KAAKiuB,cAAgB72B,EAAkB4I,KAAM+c,IAAwC3lB,EAAkB4I,KAAMkrB,QAA4B,IACzIlrB,KAAKkuB,cAAgB92B,EAAkB4I,KAAMmrB,IAAkC/zB,EAAkB4I,KAAMorB,QAA4B,IACnIprB,KAAKgX,eAAiB5f,EAAkB4I,KAAMqrB,IAAkCj0B,EAAkB4I,KAAMod,QAA6B,IAErIpd,KAAKqY,YAAcjhB,EAAkB4I,KAAMqd,IAAmCjmB,EAAkB4I,KAAMke,QAA0B,IAChIle,KAAKmuB,kBAAoB/2B,EAAkB4I,KAAMme,IAAgC/mB,EAAkB4I,KAAMsrB,QAAgC,IACzItrB,KAAKouB,YAAch3B,EAAkB4I,KAAMurB,IAAsCn0B,EAAkB4I,KAAMwrB,QAA0B,IAEnIxrB,KAAKuZ,WAAaniB,EAAkB4I,KAAMyrB,IAAgCr0B,EAAkB4I,KAAMqhB,QAAyB,IAC3HrhB,KAAKwZ,YAAcpiB,EAAkB4I,KAAMshB,IAA+BlqB,EAAkB4I,KAAMuhB,QAA0B,IAC5HvhB,KAAKoZ,YAAchiB,EAAkB4I,KAAMwhB,IAAgCpqB,EAAkB4I,KAAMyhB,QAA0B,IAC7HzhB,KAAKqZ,YAAcjiB,EAAkB4I,KAAM0hB,IAAgCtqB,EAAkB4I,KAAM2hB,QAA0B,IAC7H3hB,KAAKsZ,aAAeliB,EAAkB4I,KAAM4hB,IAAgCxqB,EAAkB4I,KAAM6hB,QAA2B,IAE/H7hB,KAAKquB,WAAaj3B,EAAkB4I,KAAM8hB,IAAiC1qB,EAAkB4I,KAAM0rB,QAAyB,IAC5H1rB,KAAKsuB,cAAgBl3B,EAAkB4I,KAAM2rB,IAA+Bv0B,EAAkB4I,KAAM4rB,QAA4B,IAChI5rB,KAAKuuB,mBAAqBn3B,EAAkB4I,KAAM6rB,IAAkCz0B,EAAkB4I,KAAM8rB,QAAiC,IAC7I9rB,KAAKwuB,aAAep3B,EAAkB4I,KAAM+rB,IAAuC30B,EAAkB4I,KAAMgsB,QAA2B,IAEtIhsB,KAAKyuB,aAAer3B,EAAkB4I,KAAMisB,IAAiC70B,EAAkB4I,KAAMksB,QAA2B,IAChIlsB,KAAKqa,gBAAkBjjB,EAAkB4I,KAAMmsB,IAAiC/0B,EAAkB4I,KAAMwjB,QAA8B,IACtIxjB,KAAK0uB,eAAiBt3B,EAAkB4I,KAAMyjB,IAAoCrsB,EAAkB4I,KAAMosB,QAA6B,IACvIpsB,KAAK2uB,iBAAmBv3B,EAAkB4I,KAAMqsB,IAAmCj1B,EAAkB4I,KAAMssB,QAA+B,IAC1ItsB,KAAK4uB,gBAAkBx3B,EAAkB4I,KAAMusB,IAAqCn1B,EAAkB4I,KAAMwsB,QAA8B,IAE1IxsB,KAAK6uB,eAAiBz3B,EAAkB4I,KAAMysB,IAAoCr1B,EAAkB4I,KAAM0sB,QAA6B,IACvI1sB,KAAK8uB,gBAAkB13B,EAAkB4I,KAAM2sB,IAAmCv1B,EAAkB4I,KAAM4sB,QAA8B,IACxI5sB,KAAK+uB,gBAAkB33B,EAAkB4I,KAAM6sB,IAAoCz1B,EAAkB4I,KAAM8sB,QAA8B,IACzI9sB,KAAKgvB,iBAAmB53B,EAAkB4I,KAAM+sB,IAAoC31B,EAAkB4I,KAAMgtB,QAA+B,IAE3IhtB,KAAKivB,aAAe73B,EAAkB4I,KAAMitB,IAAqC71B,EAAkB4I,KAAMktB,QAA2B,IACpIltB,KAAKkvB,WAAa93B,EAAkB4I,KAAMmtB,IAAiC/1B,EAAkB4I,KAAMotB,QAAyB,IAC5HptB,KAAKmvB,gBAAkB/3B,EAAkB4I,KAAMqtB,IAA+Bj2B,EAAkB4I,KAAMstB,QAA8B,IACpIttB,KAAKovB,eAAiBh4B,EAAkB4I,KAAMutB,IAAoCn2B,EAAkB4I,KAAMwtB,QAA6B,IACvIxtB,KAAKqvB,cAAgBj4B,EAAkB4I,KAAMytB,IAAmCr2B,EAAkB4I,KAAM0tB,QAA4B,IACpI1tB,KAAKsvB,oBAAsBl4B,EAAkB4I,KAAM2tB,IAAkCv2B,EAAkB4I,KAAM4tB,QAAkC,IAC/I5tB,KAAKwV,UAAYpe,EAAkB4I,KAAM6tB,IACzC7tB,KAAK4U,mBAAqB,EAC9B,QAEI,MAAM3U,GAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,GAAYmE,OAAOC,WAAa,WAAQ,EAC1H+nB,EAAkB,CAAC7nB,WAAS,CAAA,IAC5B1H,EAAoB,CAAC0H,WAAS,CAAA,IAC9B/H,EAAmB,CAAC+H,WAAS,CAAA,IAC7BxG,EAAoB,CAACwG,WAAS,CAAA,IAC9ByjB,EAAoB,CAACzjB,WAAS,CAAA,IAC9B8nB,EAAuB,CAAC9nB,EAAAA,SAAS,CAAEE,KAAMC,WACzC4nB,EAAyB,CAAC/nB,EAAAA,SAAS,CAAEE,KAAMC,WAC3C6nB,EAAmB,CAAChoB,EAAAA,SAAS,CAAEE,KAAMC,WACrC8nB,EAAuB,CAACjoB,EAAAA,SAAS,CAAEE,KAAMC,WACzC+nB,EAAsB,CAACloB,EAAAA,SAAS,CAAEE,KAAMC,WACxC8b,EAAuB,CAACjc,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,cAC5Dic,EAAiC,CAAClc,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,yBACvEkoB,EAA2B,CAACnoB,EAAAA,SAAS,CAAEC,UAAW,mBAClDmoB,EAA2B,CAACpoB,EAAAA,SAAS,CAAEC,UAAW,mBAClDoc,EAA4B,CAACrc,EAAAA,SAAS,CAAEC,UAAW,oBACnDud,EAAyB,CAACxd,EAAAA,SAAS,CAAEC,UAAW,iBAChDooB,EAA+B,CAACroB,EAAAA,SAAS,CAAEC,UAAW,wBACtDqoB,EAAyB,CAACtoB,EAAAA,SAAS,CAAEC,UAAW,iBAChD0gB,EAAwB,CAAC3gB,EAAAA,SAAS,CAAEC,UAAW,gBAC/C2gB,EAAyB,CAAC5gB,EAAAA,SAAS,CAAEC,UAAW,iBAChD4gB,EAAyB,CAAC7gB,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,iBAC/D6gB,EAAyB,CAAC9gB,EAAAA,SAAS,CAAEC,UAAW,iBAChD8gB,EAA0B,CAAC/gB,EAAAA,SAAS,CAAEC,UAAW,kBACjDsoB,EAAwB,CAACvoB,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,gBAC7DuoB,EAA2B,CAACxoB,EAAAA,SAAS,CAAEC,UAAW,mBAClDwoB,EAAgC,CAACzoB,EAAAA,SAAS,CAAEC,UAAW,yBACvDyoB,EAA0B,CAAC1oB,EAAAA,SAAS,CAAEC,UAAW,kBACjD0oB,EAA0B,CAAC3oB,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,kBAC/D6iB,EAA6B,CAAC9iB,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,qBACnE2oB,EAA4B,CAAC5oB,EAAAA,SAAS,CAAEC,UAAW,oBACnD4oB,EAA8B,CAAC7oB,EAAAA,SAAS,CAAEC,UAAW,uBACrD6oB,EAA6B,CAAC9oB,EAAAA,SAAS,CAAEC,UAAW,qBACpD8oB,EAA4B,CAAC/oB,EAAAA,SAAS,CAAEC,UAAW,oBACnD+oB,EAA6B,CAAChpB,EAAAA,SAAS,CAAEC,UAAW,qBACpDgpB,EAA6B,CAACjpB,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,qBAClEipB,EAA8B,CAAClpB,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,sBACnEkpB,EAA0B,CAACnpB,EAAAA,SAAS,CAAEC,UAAW,mBACjDmpB,EAAwB,CAACppB,EAAAA,SAAS,CAAEC,UAAW,gBAC/CopB,EAA6B,CAACrpB,EAAAA,SAAS,CAAEC,UAAW,sBACpDqpB,EAA4B,CAACtpB,EAAAA,SAAS,CAAEC,UAAW,qBACnDspB,EAA2B,CAACvpB,EAAAA,SAAS,CAAEC,UAAW,oBAClDupB,EAAiC,CAACxpB,EAAAA,SAAS,CAAEC,UAAW,0BACxDjG,EAAqB,CAACsG,EAAAA,UACtBmpB,EAAqC,CAAChpB,EAAAA,MAAM,MAAO,QAAS,OAAQ,QAAS,QAAS,WAAY,aAAc,OAAQ,WAAY,YACpIipB,EAAuC,CAACjpB,EAAAA,MAAM,WAAY,qBAAsB,eAAgB,eAAgB,kBAChHkpB,EAAqC,CAAClpB,EAAAA,MAAM,aAAc,mBAAoB,eAC9EmpB,EAAwC,CAACnpB,EAAAA,MAAM,YAAa,aAAc,aAAc,aAAc,gBACtGopB,EAAuC,CAACppB,EAAAA,MAAM,YAAa,eAAgB,oBAAqB,gBAChGqpB,EAAyC,CAACrpB,EAAAA,MAAM,cAAe,iBAAkB,gBAAiB,kBAAmB,mBACrHspB,GAA0C,CAACtpB,EAAAA,MAAM,gBAAiB,iBAAkB,iBAAkB,oBACtGupB,GAAgC,CAACvpB,EAAAA,MAAM,cAAe,YAAa,iBAAkB,gBAAiB,eAAgB,uBACtH3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,IAAa,KAAMhE,IAC5M9G,EAAa6K,KAAM,KAAM8pB,EAAoC,CAAEh0B,KAAM,SAAUO,KAAM,yBAA0B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,2BAA4BA,EAAKtK,IAAKsK,GAAOA,EAAIkuB,wBAA0BpvB,SAAUF,IAAa,KAAMhE,IAC5Q9G,EAAa6K,KAAM,KAAM+pB,EAAsC,CAAEj0B,KAAM,SAAUO,KAAM,2BAA4B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,6BAA8BA,EAAKtK,IAAKsK,GAAOA,EAAImuB,0BAA4BrvB,SAAUF,IAAa,KAAMhE,IACpR9G,EAAa6K,KAAM,KAAMgqB,EAAoC,CAAEl0B,KAAM,SAAUO,KAAM,yBAA0B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,2BAA4BA,EAAKtK,IAAKsK,GAAOA,EAAIouB,wBAA0BtvB,SAAUF,IAAa,KAAMhE,IAC5Q9G,EAAa6K,KAAM,KAAMiqB,EAAuC,CAAEn0B,KAAM,SAAUO,KAAM,4BAA6B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,8BAA+BA,EAAKtK,IAAKsK,GAAOA,EAAIquB,2BAA6BvvB,SAAUF,IAAa,KAAMhE,IACxR9G,EAAa6K,KAAM,KAAMkqB,EAAsC,CAAEp0B,KAAM,SAAUO,KAAM,2BAA4B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,6BAA8BA,EAAKtK,IAAKsK,GAAOA,EAAIsuB,0BAA4BxvB,SAAUF,IAAa,KAAMhE,IACpR9G,EAAa6K,KAAM,KAAMmqB,EAAwC,CAAEr0B,KAAM,SAAUO,KAAM,6BAA8B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,+BAAgCA,EAAKtK,IAAKsK,GAAOA,EAAIuuB,4BAA8BzvB,SAAUF,IAAa,KAAMhE,IAC5R9G,EAAa6K,KAAM,KAAMoqB,GAAyC,CAAEt0B,KAAM,SAAUO,KAAM,8BAA+B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gCAAiCA,EAAKtK,IAAKsK,GAAOA,EAAIwuB,6BAA+B1vB,SAAUF,IAAa,KAAMhE,IAChS9G,EAAa6K,KAAM,KAAMqqB,GAA+B,CAAEv0B,KAAM,SAAUO,KAAM,oBAAqB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,sBAAuBA,EAAKtK,IAAKsK,GAAOA,EAAIyuB,mBAAqB3vB,SAAUF,IAAa,KAAMhE,IACxP9G,EAAa,KAAM,KAAM+yB,EAAiB,CAAEpyB,KAAM,QAASO,KAAM,MAAO6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,QAASA,EAAKtK,IAAKsK,GAAOA,EAAItL,IAAKiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAItL,IAAMuB,IAAY6I,SAAUF,IAAaqqB,GAAmBC,IACvPp1B,EAAa,KAAM,KAAMwD,EAAmB,CAAE7C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIuB,MAAO5L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuB,MAAQtL,IAAY6I,SAAUF,IAAarD,GAAqBC,IACnQ1H,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,IAAa/D,GAAoBC,IAC7PhH,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,IAAajB,GAAqBC,IACnQ9J,EAAa,KAAM,KAAM2uB,EAAmB,CAAEhuB,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIqZ,MAAO1jB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqZ,MAAQpjB,IAAY6I,SAAUF,IAAaukB,GAAqBC,IACnQtvB,EAAa,KAAM,KAAMgzB,EAAsB,CAAEryB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIysB,SAAU92B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIysB,SAAWx2B,IAAY6I,SAAUF,IAAauqB,GAAwBC,IACrRt1B,EAAa,KAAM,KAAMizB,EAAwB,CAAEtyB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI0sB,WAAY/2B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0sB,WAAaz2B,IAAY6I,SAAUF,IAAayqB,GAA0BC,IACjSx1B,EAAa,KAAM,KAAMkzB,EAAkB,CAAEvyB,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIgb,KAAMrlB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgb,KAAO/kB,IAAY6I,SAAUF,IAAa2qB,GAAoBC,IAC7P11B,EAAa,KAAM,KAAMmzB,EAAsB,CAAExyB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI+a,SAAUplB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+a,SAAW9kB,IAAY6I,SAAUF,IAAa6qB,GAAwBC,IACrR51B,EAAa,KAAM,KAAMozB,EAAqB,CAAEzyB,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI2sB,QAASh3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2sB,QAAU12B,IAAY6I,SAAUF,IAAa+qB,GAAuBC,IAC/Q91B,EAAa,KAAM,KAAMmnB,EAAsB,CAAExmB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIuV,SAAU5f,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuV,SAAWtf,IAAY6I,SAAUF,IAAa2c,GAAwBC,IACrR1nB,EAAa,KAAM,KAAMonB,EAAgC,CAAEzmB,KAAM,QAASO,KAAM,qBAAsB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,uBAAwBA,EAAKtK,IAAKsK,GAAOA,EAAIwV,mBAAoB7f,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwV,mBAAqBvf,IAAY6I,SAAUF,IAAa6c,GAAkCC,IACjV5nB,EAAa,KAAM,KAAMqzB,EAA0B,CAAE1yB,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAI4sB,aAAcj3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4sB,aAAe32B,IAAY6I,SAAUF,IAAairB,GAA4BC,IAC7Sh2B,EAAa,KAAM,KAAMszB,EAA0B,CAAE3yB,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAI6sB,aAAcl3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6sB,aAAe52B,IAAY6I,SAAUF,IAAamrB,GAA4BC,IAC7Sl2B,EAAa,KAAM,KAAMunB,EAA2B,CAAE5mB,KAAM,QAASO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI2V,cAAehgB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2V,cAAgB1f,IAAY6I,SAAUF,IAAamd,GAA6BC,IACnTloB,EAAa,KAAM,KAAM0oB,EAAwB,CAAE/nB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIgX,WAAYrhB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgX,WAAa/gB,IAAY6I,SAAUF,IAAaie,GAA0BC,IACjShpB,EAAa,KAAM,KAAMuzB,EAA8B,CAAE5yB,KAAM,QAASO,KAAM,mBAAoB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,qBAAsBA,EAAKtK,IAAKsK,GAAOA,EAAI8sB,iBAAkBn3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI8sB,iBAAmB72B,IAAY6I,SAAUF,IAAaqrB,GAAgCC,IACrUp2B,EAAa,KAAM,KAAMwzB,EAAwB,CAAE7yB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI+sB,WAAYp3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+sB,WAAa92B,IAAY6I,SAAUF,IAAaurB,GAA0BC,IACjSt2B,EAAa,KAAM,KAAM6rB,EAAuB,CAAElrB,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIkY,UAAWviB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkY,UAAYjiB,IAAY6I,SAAUF,IAAaohB,GAAyBC,IAC3RnsB,EAAa,KAAM,KAAM8rB,EAAwB,CAAEnrB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAImY,WAAYxiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImY,WAAaliB,IAAY6I,SAAUF,IAAashB,GAA0BC,IACjSrsB,EAAa,KAAM,KAAM+rB,EAAwB,CAAEprB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI+X,WAAYpiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+X,WAAa9hB,IAAY6I,SAAUF,IAAawhB,GAA0BC,IACjSvsB,EAAa,KAAM,KAAMgsB,EAAwB,CAAErrB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIgY,WAAYriB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgY,WAAa/hB,IAAY6I,SAAUF,IAAa0hB,GAA0BC,IACjSzsB,EAAa,KAAM,KAAMisB,EAAyB,CAAEtrB,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIiY,YAAatiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiY,YAAchiB,IAAY6I,SAAUF,IAAa4hB,GAA2BC,IACvS3sB,EAAa,KAAM,KAAMyzB,EAAuB,CAAE9yB,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIgtB,UAAWr3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgtB,UAAY/2B,IAAY6I,SAAUF,IAAayrB,GAAyBC,IAC3Rx2B,EAAa,KAAM,KAAM0zB,EAA0B,CAAE/yB,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIitB,aAAct3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIitB,aAAeh3B,IAAY6I,SAAUF,IAAa2rB,GAA4BC,IAC7S12B,EAAa,KAAM,KAAM2zB,EAA+B,CAAEhzB,KAAM,QAASO,KAAM,oBAAqB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,sBAAuBA,EAAKtK,IAAKsK,GAAOA,EAAIktB,kBAAmBv3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIktB,kBAAoBj3B,IAAY6I,SAAUF,IAAa6rB,GAAiCC,IAC3U52B,EAAa,KAAM,KAAM4zB,EAAyB,CAAEjzB,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAImtB,YAAax3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImtB,YAAcl3B,IAAY6I,SAAUF,IAAa+rB,GAA2BC,IACvS92B,EAAa,KAAM,KAAM6zB,EAAyB,CAAElzB,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIotB,YAAaz3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIotB,YAAcn3B,IAAY6I,SAAUF,IAAaisB,GAA2BC,IACvSh3B,EAAa,KAAM,KAAMguB,EAA4B,CAAErtB,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIgZ,eAAgBrjB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgZ,eAAiB/iB,IAAY6I,SAAUF,IAAaujB,GAA8BC,IACzTtuB,EAAa,KAAM,KAAM8zB,EAA2B,CAAEnzB,KAAM,QAASO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAIqtB,cAAe13B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqtB,cAAgBp3B,IAAY6I,SAAUF,IAAamsB,GAA6BC,IACnTl3B,EAAa,KAAM,KAAM+zB,EAA6B,CAAEpzB,KAAM,QAASO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAIstB,gBAAiB33B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIstB,gBAAkBr3B,IAAY6I,SAAUF,IAAaqsB,GAA+BC,IAC/Tp3B,EAAa,KAAM,KAAMg0B,EAA4B,CAAErzB,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIutB,eAAgB53B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIutB,eAAiBt3B,IAAY6I,SAAUF,IAAausB,GAA8BC,IACzTt3B,EAAa,KAAM,KAAMi0B,EAA2B,CAAEtzB,KAAM,QAASO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAIwtB,cAAe73B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwtB,cAAgBv3B,IAAY6I,SAAUF,IAAaysB,GAA6BC,IACnTx3B,EAAa,KAAM,KAAMk0B,EAA4B,CAAEvzB,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIytB,eAAgB93B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIytB,eAAiBx3B,IAAY6I,SAAUF,IAAa2sB,GAA8BC,IACzT13B,EAAa,KAAM,KAAMm0B,EAA4B,CAAExzB,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAI0tB,eAAgB/3B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0tB,eAAiBz3B,IAAY6I,SAAUF,IAAa6sB,GAA8BC,IACzT53B,EAAa,KAAM,KAAMo0B,EAA6B,CAAEzzB,KAAM,QAASO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI2tB,gBAAiBh4B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2tB,gBAAkB13B,IAAY6I,SAAUF,IAAa+sB,GAA+BC,IAC/T93B,EAAa,KAAM,KAAMq0B,EAAyB,CAAE1zB,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAI4tB,YAAaj4B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4tB,YAAc33B,IAAY6I,SAAUF,IAAaitB,GAA2BC,IACvSh4B,EAAa,KAAM,KAAMs0B,EAAuB,CAAE3zB,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAI6tB,UAAWl4B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6tB,UAAY53B,IAAY6I,SAAUF,IAAamtB,GAAyBC,IAC3Rl4B,EAAa,KAAM,KAAMu0B,EAA4B,CAAE5zB,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAI8tB,eAAgBn4B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI8tB,eAAiB73B,IAAY6I,SAAUF,IAAaqtB,GAA8BC,IACzTp4B,EAAa,KAAM,KAAMw0B,EAA2B,CAAE7zB,KAAM,QAASO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+tB,cAAep4B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+tB,cAAgB93B,IAAY6I,SAAUF,IAAautB,GAA6BC,IACnTt4B,EAAa,KAAM,KAAMy0B,EAA0B,CAAE9zB,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIguB,aAAcr4B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIguB,aAAe/3B,IAAY6I,SAAUF,IAAaytB,GAA4BC,IAC7Sx4B,EAAa,KAAM,KAAM00B,EAAgC,CAAE/zB,KAAM,QAASO,KAAM,qBAAsB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,uBAAwBA,EAAKtK,IAAKsK,GAAOA,EAAIiuB,mBAAoBt4B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiuB,mBAAqBh4B,IAAY6I,SAAUF,IAAa2tB,GAAkCC,IACjV14B,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,GAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,IAAa,KAAMnE,IACpJzD,EAAaD,EAAiBd,MAC1B2I,IAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,KACjI7I,EAAkBiB,EAAYyD,GAC1C,CACQ,MAAA6E,GACI,OAAO9I,EAAAA,IAAc,eACzB,CAEA,YAAAk4B,CAAava,GACTxV,KAAKwV,UAAYA,EACjBxV,KAAKgwB,qBACT,CAEA,oBAAAC,CAAqBlb,GACjB/U,KAAK4U,mBAAmB/d,KAAKke,GAC7B/U,KAAKgwB,qBACT,CAEA,uBAAAE,CAAwBthB,GACpB5O,KAAK4U,mBAAmBub,OAAOvhB,EAAO,GACtC5O,KAAKgwB,qBACT,CAEA,uBAAAI,GACIpwB,KAAK4U,mBAAqB,GAC1B5U,KAAKgwB,qBACT,CAEA,mBAAAK,GACI,MAAMC,EAAa,CACfv6B,IAAKiK,KAAKjK,IACV6M,MAAO5C,KAAK4C,MACZrC,KAAMP,KAAKO,KACXsD,MAAO7D,KAAK6D,MACZ6W,MAAO1a,KAAK0a,MACZoT,SAAU9tB,KAAK8tB,SACfC,WAAY/tB,KAAK+tB,WACjB1R,KAAMrc,KAAKqc,KACXD,SAAUpc,KAAKoc,SACf4R,QAAShuB,KAAKguB,QACdxY,UAAWxV,KAAKwV,UAChBZ,mBAAoB5U,KAAK4U,oBAG7B,GAAkB,WAAd5U,KAAKO,MAAmC,aAAdP,KAAKO,MAAqC,YAAdP,KAAKO,MAC7C,eAAdP,KAAKO,MAAuC,eAAdP,KAAKO,MAAuC,aAAdP,KAAKO,KAAqB,CACtF,MAAMgW,EAAe,CAAA,OACChB,IAAlBvV,KAAK4W,WACLL,EAAaK,SAAW5W,KAAK4W,eACDrB,IAA5BvV,KAAK6W,qBACLN,EAAaM,mBAAqB7W,KAAK6W,oBACvC7W,KAAKiuB,eACL1X,EAAaU,OAASjX,KAAKiuB,cAC3BjuB,KAAKkuB,eACL3X,EAAaW,OAASlX,KAAKkuB,cAC3BluB,KAAKgX,gBACLT,EAAaS,cAAgBhX,KAAKgX,eAClC7gB,OAAOo6B,KAAKha,GAAc/f,OAAS,IACnC85B,EAAW/Z,aAAeA,EAElC,CACA,GAAkB,SAAdvW,KAAKO,KAAiB,CACtB,MAAM8X,EAAa,CAAA,EACfrY,KAAKqY,aACLA,EAAWtD,OAAS/U,KAAKqY,YACzBrY,KAAKmuB,mBACL9V,EAAWI,aAAezY,KAAKmuB,kBAC/BnuB,KAAKouB,aACL/V,EAAWY,OAASjZ,KAAKouB,YACzBj4B,OAAOo6B,KAAKlY,GAAY7hB,OAAS,IACjC85B,EAAWjY,WAAaA,EAEhC,CACA,GAAkB,YAAdrY,KAAKO,KAAoB,CACzB,MAAM2Y,EAAgB,CAAA,EAClBlZ,KAAKuZ,YACLL,EAAcK,UAAYvZ,KAAKuZ,WAC/BvZ,KAAKwZ,aACLN,EAAcM,WAAaxZ,KAAKwZ,iBACZjE,IAApBvV,KAAKoZ,aACLF,EAAcE,WAAapZ,KAAKoZ,YAChCpZ,KAAKqZ,aACLH,EAAcG,WAAarZ,KAAKqZ,YAChCrZ,KAAKsZ,cACLJ,EAAcI,YAActZ,KAAKsZ,aACjCnjB,OAAOo6B,KAAKrX,GAAe1iB,OAAS,IACpC85B,EAAWpX,cAAgBA,EAEnC,CACA,GAAkB,WAAdlZ,KAAKO,KAAmB,CACxB,MAAMkZ,EAAe,CAAA,OACElE,IAAnBvV,KAAKquB,YACL5U,EAAalW,IAAMvD,KAAKquB,WACxBruB,KAAKsuB,eACL7U,EAAaE,OAAS3Z,KAAKsuB,cAC3BtuB,KAAKuuB,oBACL9U,EAAaG,YAAc5Z,KAAKuuB,mBAChCvuB,KAAKwuB,cACL/U,EAAavE,MAAQlV,KAAKwuB,aAC1Br4B,OAAOo6B,KAAK9W,GAAcjjB,OAAS,IACnC85B,EAAW7W,aAAeA,EAElC,CACA,GAAkB,aAAdzZ,KAAKO,KAAqB,CAC1B,MAAM0Z,EAAiB,CAAA,OACE1E,IAArBvV,KAAKyuB,cACLxU,EAAe1W,IAAMvD,KAAKyuB,kBACFlZ,IAAxBvV,KAAKqa,iBACLJ,EAAeI,eAAiBra,KAAKqa,gBACrCra,KAAK0uB,gBACLzU,EAAe/E,MAAQlV,KAAK0uB,eAC5B1uB,KAAK2uB,kBACL1U,EAAehF,gBAAkBjV,KAAK2uB,iBACtC3uB,KAAK4uB,iBACL3U,EAAeG,OAASpa,KAAK4uB,gBAC7Bz4B,OAAOo6B,KAAKtW,GAAgBzjB,OAAS,IACrC85B,EAAWrW,eAAiBA,EAEpC,CACA,GAAkB,cAAdja,KAAKO,KAAsB,CAC3B,MAAMga,EAAkB,CAAA,EACpBva,KAAK6uB,gBACLtU,EAAgBha,KAAOP,KAAK6uB,eAC5B7uB,KAAK8uB,iBACLvU,EAAgBrF,MAAQlV,KAAK8uB,qBACLvZ,IAAxBvV,KAAK+uB,iBACLxU,EAAgBG,MAAQ1a,KAAK+uB,qBACJxZ,IAAzBvV,KAAKgvB,kBACLzU,EAAgBH,OAASpa,KAAKgvB,iBAC9B74B,OAAOo6B,KAAKhW,GAAiB/jB,OAAS,IACtC85B,EAAW/V,gBAAkBA,EAErC,CAEA,MAAMiW,EAAY,CAAA,EAgBlB,OAfIxwB,KAAKivB,cACLuB,EAAUvb,gBAAkBjV,KAAKivB,aACjCjvB,KAAKkvB,YACLsB,EAAUtb,MAAQlV,KAAKkvB,WACvBlvB,KAAKmvB,iBACLqB,EAAUrb,WAAanV,KAAKmvB,gBAC5BnvB,KAAKovB,gBACLoB,EAAUpb,UAAYpV,KAAKovB,eAC3BpvB,KAAKqvB,eACLmB,EAAUnb,SAAWrV,KAAKqvB,cAC1BrvB,KAAKsvB,qBACLkB,EAAUlb,eAAiBtV,KAAKsvB,oBAChCn5B,OAAOo6B,KAAKC,GAAWh6B,OAAS,IAChC85B,EAAW3qB,MAAQ6qB,GAEhBF,CACX,CACA,sBAAAf,GACIvvB,KAAKgwB,qBACT,CACA,wBAAAR,GACsB,WAAdxvB,KAAKO,MAAmC,aAAdP,KAAKO,MAAqC,YAAdP,KAAKO,MAC7C,eAAdP,KAAKO,MAAuC,eAAdP,KAAKO,MAAuC,aAAdP,KAAKO,MACjEP,KAAKgwB,qBAEb,CACA,sBAAAP,GACsB,SAAdzvB,KAAKO,MACLP,KAAKgwB,qBAEb,CACA,yBAAAN,GACsB,YAAd1vB,KAAKO,MACLP,KAAKgwB,qBAEb,CACA,wBAAAL,GACsB,WAAd3vB,KAAKO,MACLP,KAAKgwB,qBAEb,CACA,0BAAAJ,GACsB,aAAd5vB,KAAKO,MACLP,KAAKgwB,qBAEb,CACA,2BAAAH,GACsB,cAAd7vB,KAAKO,MACLP,KAAKgwB,qBAEb,CACA,iBAAAF,GACI9vB,KAAKgwB,qBACT,CACA,mBAAAA,GAEIhwB,KAAKywB,cAAc,IAAIC,YAAY,iBAAkB,CACjDC,OAAQ,CAAEtc,OAAQrU,KAAKqwB,uBACvBrvB,SAAS,EACTC,UAAU,IAElB,GAGP,EAtfiB,GCEE,MAChB,IACI7I,EAEAC,EAGAI,EAGAm4B,EAGAC,EAGAC,EAGAtpB,EAGAupB,EAGAvd,EAGAC,EAGA5Z,EAGAvB,EAGA+B,EACAC,EACAC,EACAy2B,EAvCAr1B,EAAmB,CAACC,UAAQ,oBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3Bw0B,EAAqB,GACrBC,EAA0B,GAE1BC,EAAuB,GACvBC,EAA4B,GAE5BC,EAAyB,GACzBC,EAA8B,GAE9B3pB,EAAqB,GACrBC,EAA0B,GAE1B2pB,EAAqB,GACrBC,EAA0B,GAE1B3d,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAK9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtCmqB,EAAmB,CAACvwB,EAAAA,SAAS,CAAEE,KAAMkG,UACrCoqB,EAAqB,CAACxwB,EAAAA,SAAS,CAAEE,KAAMkG,UACvCqqB,EAAuB,CAACzwB,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,cAC7DkH,EAAmB,CAACnH,EAAAA,SAAS,CAAEE,KAAMkG,UACrCsqB,EAAmB,CAAC1wB,EAAAA,SAAS,CAAEE,KAAMkG,UACrC+M,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBmwB,EAAmC,CAAClwB,EAAAA,MAAM,QAAS,WACnD3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAMgxB,EAAkC,CAAEl7B,KAAM,SAAUO,KAAM,uBAAwB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,yBAA0BA,EAAKtK,IAAKsK,GAAOA,EAAIowB,sBAAwBtxB,SAAUF,GAAa,KAAMhE,GACpQ9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMy7B,EAAkB,CAAE96B,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIqwB,KAAM16B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqwB,KAAOp6B,IAAY6I,SAAUF,GAAagxB,EAAoBC,GAC7P/7B,EAAa,KAAM,KAAM07B,EAAoB,CAAE/6B,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIrL,OAAQgB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIrL,OAASsB,IAAY6I,SAAUF,GAAakxB,EAAsBC,GACzQj8B,EAAa,KAAM,KAAM27B,EAAsB,CAAEh7B,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIswB,SAAU36B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIswB,SAAWr6B,IAAY6I,SAAUF,GAAaoxB,EAAwBC,GACrRn8B,EAAa,KAAM,KAAMqS,EAAkB,CAAE1R,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAI1J,KAAMX,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI1J,KAAOL,IAAY6I,SAAUF,GAAa0H,EAAoBC,GAC7PzS,EAAa,KAAM,KAAM47B,EAAkB,CAAEj7B,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAI8a,KAAMnlB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI8a,KAAO7kB,IAAY6I,SAAUF,GAAasxB,EAAoBC,GAC7Pr8B,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAMixB,EAAW5xB,KAAK0xB,MAAQ1xB,KAAK1I,MAC7Bu6B,EAAW7xB,KAAKmc,MAAQnc,KAAK1I,MAC7Bw6B,EAAa9xB,KAAK2xB,UAA4B,WAAhB3xB,KAAKhK,QAAuB47B,EAAS95B,WAAW,QAC9Ei6B,EAAW/xB,KAAKrI,KAAO,2BAA2BqI,KAAKrI,cAAgB,GACvEq6B,EAAeF,EAAa,uCAAyC,GAC3E,OAAOj6B,MAAc;;;kBAGf+5B;oBACEE,EAAa,SAAW9xB,KAAKhK;iBAChC87B,EAAa,sBAAwB;;;;YAI1C9P,EAAAA,WAAW+P;oCACaF;YACxB7P,EAAAA,WAAWgQ;;;KAIf,CACA,MAAApxB,GACI,OAAO4E,EAAAA,GAAY,GAvGd,suCAwGT,CACA,IAAAvO,GACI+I,KAAKyxB,sBACT,CACA,oBAAAA,GAEI,GAAIzxB,KAAKqU,QAAQ4d,WAAY,CACzB,MAAMld,EAAS/U,KAAKqU,OAAO4d,WAC3BjyB,KAAK0xB,KAAO3c,EAAO2c,MAAQ1xB,KAAK1I,MAChC0I,KAAKhK,OAAS+e,EAAO/e,QAAU,QAC/BgK,KAAK2xB,SAAW5c,EAAO4c,WAAY,EACnC3xB,KAAKrI,KAAOod,EAAOpd,MAAQ,GAC3BqI,KAAKmc,KAAOpH,EAAOoH,MAAQnc,KAAK1I,KACpC,CACJ,CACA,WAAAkN,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAK0xB,MAAQt6B,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAMixB,EAAoB,KAC5GjxB,KAAKhK,QAAUoB,EAAkB4I,KAAMkxB,GAA0B95B,EAAkB4I,KAAMmxB,EAAsB,UAC/GnxB,KAAK2xB,UAAYv6B,EAAkB4I,KAAMoxB,GAA4Bh6B,EAAkB4I,KAAMqxB,GAAwB,IACrHrxB,KAAKrI,MAAQP,EAAkB4I,KAAMsxB,GAA8Bl6B,EAAkB4I,KAAM2H,EAAoB,KAC/G3H,KAAKmc,MAAQ/kB,EAAkB4I,KAAM4H,GAA0BxQ,EAAkB4I,KAAMuxB,EAAoB,KAC3GvxB,KAAKqU,QAAUjd,EAAkB4I,KAAMwxB,GAA0Bp6B,EAAkB4I,KAAM6T,EAAsB,OAC/G7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,SAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EArImB,GCAG,MACnB,IACI/D,EAEAC,EAGA65B,EAGA1e,EAGAC,EAGAhb,EAGAoB,EAGAvB,EAGA+B,EACAC,EACAC,EACA43B,EACAC,EA5BAz2B,EAAmB,CAACC,UAAQ,uBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7Bo2B,EAAwB,GACxBC,EAA6B,GAE7Bze,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BxX,EAAsB,GACtBC,EAA2B,GAE3BuC,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAM9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H+xB,EAAsB,CAAC7xB,EAAAA,SAAS,CAAEE,KAAMiL,MAAOlL,WAAW,KAC1DkT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3D7H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtC5M,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBsxB,EAAuC,CAACrxB,QAAM,WAC9CsxB,EAA6B,CAACrxB,EAAAA,SAAS,cAAe,CAAEC,SAAS,EAAMC,UAAU,KACjF9L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAMmyB,EAAsC,CAAEr8B,KAAM,SAAUO,KAAM,2BAA4B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,6BAA8BA,EAAKtK,IAAKsK,GAAOA,EAAIkxB,0BAA4BpyB,SAAUF,GAAa,KAAMhE,GACpR9G,EAAa6K,KAAM,KAAMoyB,EAA4B,CAAEt8B,KAAM,SAAUO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAImxB,gBAAkBryB,SAAUF,GAAa,KAAMhE,GAC5O9G,EAAa,KAAM,KAAM+8B,EAAqB,CAAEp8B,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIoxB,QAASz7B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIoxB,QAAUn7B,IAAY6I,SAAUF,GAAaoyB,EAAuBC,GAC/Qn9B,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,OAA4B,IAAxBX,KAAKyyB,QAAQj8B,OACNqB,MAAc;;;;QAMlBA,MAAc;;;YAGrBmI,KAAKyyB,QAAQhlB,IAAIilB,GAAU1yB,KAAK2yB,mBAAmBD;;;KAIvD,CACA,MAAA9xB,GACI,OAAO4E,EAAAA,GAAY,GAhFd,uuDAiFT,CACA,IAAAvO,GACI+I,KAAKuyB,0BACT,CACA,wBAAAA,GACQvyB,KAAKqU,QAAQue,eAAeH,UAC5BzyB,KAAKyyB,QAAUzyB,KAAKqU,OAAOue,cAAcH,QAEjD,CACA,kBAAAE,CAAmBD,GACf,MAAM/6B,EAAO+6B,EAAO/6B,MAAQ,GACtBiL,EAAQ8vB,EAAO9vB,OAAS,GACxBF,EAAUgwB,EAAOhwB,SAAW,YAC5BK,EAAW2vB,EAAO3vB,WAAY,EAE9B8vB,EAAal7B,IAASA,EAAKG,WAAW,YAAcH,EAAKG,WAAW,aAAeH,EAAKG,WAAW,MAAQH,EAAKG,WAAW,OACjI,IAAIi6B,EAAW,GASf,OARIp6B,IAEIo6B,EADAc,EACW,0DAA0Dl7B,sBAG1D,6BAA6BA,YAGzCE,MAAc;;8CAEa6K;;iBAE7BgwB,EAAOI,OAASJ,EAAOA;oBACpB3vB;iBACFqD,GAAMpG,KAAK+yB,kBAAkB3sB,EAAGssB,EAAOA;;UAE/C1Q,EAAAA,WAAW+P;UACXnvB,EAAQ/K,EAAAA,IAAc,8BAA8B+K,WAAiB;;KAGvE,CACA,iBAAAmwB,CAAkB3sB,EAAGssB,GACjBtsB,EAAE6L,kBACFjS,KAAKwyB,eAAeE,EACxB,CACA,cAAAF,CAAeE,GACX,MAAO,CACHA,SACApe,QAAStU,KAAKsU,QACdD,OAAQrU,KAAKqU,OAErB,CACA,WAAA7P,GACIC,SAASjN,WACTwI,KAAKyyB,SAAWr7B,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMqyB,EAAuB,KACpHryB,KAAKqU,QAAUjd,EAAkB4I,KAAMsyB,GAA6Bl7B,EAAkB4I,KAAM6T,EAAsB,OAClH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK1I,OAASF,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAK6D,OAASzM,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAMhB,EAAqB,SAC9GgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,YAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EA5IsB,GCAJ,MACf,IACI/D,EAEAC,EAGA26B,EAGAv6B,EAGAD,EAGAgb,EAGAC,EAGA5Z,EAGAvB,EAGA+B,EACAC,EACAC,EACA04B,EA9BAt3B,EAAmB,CAACC,UAAQ,mBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7Bi3B,EAAqB,GACrBC,EAA0B,GAE1B32B,EAAsB,GACtBC,EAA2B,GAE3BH,EAAwB,GACxBC,EAA6B,GAE7BsX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAK9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H6yB,EAAmB,CAAC3yB,EAAAA,SAAS,CAAEE,KAAMiL,MAAOlL,WAAW,KACvD7H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtCjO,EAAsB,CAAC6H,EAAAA,SAAS,CAAEE,KAAMkG,UACxC+M,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBoyB,EAAoC,CAACnyB,EAAAA,MAAM,QAAS,WACpD3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAMizB,EAAmC,CAAEn9B,KAAM,SAAUO,KAAM,wBAAyB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,0BAA2BA,EAAKtK,IAAKsK,GAAOA,EAAI+xB,uBAAyBjzB,SAAUF,GAAa,KAAMhE,GACxQ9G,EAAa,KAAM,KAAM69B,EAAkB,CAAEl9B,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIgyB,KAAMr8B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgyB,KAAO/7B,IAAY6I,SAAUF,GAAaizB,EAAoBC,GAC7Ph+B,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqD,EAAqB,CAAE1C,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIqB,QAAS1L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqB,QAAUpL,IAAY6I,SAAUF,GAAa3D,EAAuBC,GAC/QpH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM2yB,EAAUtzB,KAAKqzB,KAAK78B,OAAS,EAAIwJ,KAAKqzB,KAAOrzB,KAAKuzB,aACxD,OAAO17B,MAAc;;;YAGrBy7B,EAAQ7lB,IAAI+lB,GAAOxzB,KAAKyzB,UAAUD;;;KAItC,CACA,MAAA5yB,GACI,OAAO4E,EAAAA,GAAY,GA5Ed,+vCA6ET,CACA,IAAAvO,GACI+I,KAAKozB,uBACT,CACA,qBAAAA,GACQpzB,KAAKqU,QAAQqf,YACb1zB,KAAK0C,QAAU1C,KAAKqU,OAAOqf,UAAUhxB,SAAW,UAExD,CACA,UAAA6wB,GACI,IAAKvzB,KAAK1I,MACN,MAAO,GACX,GAAIkU,MAAMiP,QAAQza,KAAK1I,OACnB,OAAO0I,KAAK1I,MAChB,GAA0B,iBAAf0I,KAAK1I,MAAoB,CAEhC,IACI,MAAM6uB,EAASC,KAAKC,MAAMrmB,KAAK1I,OAC/B,GAAIkU,MAAMiP,QAAQ0L,GACd,OAAOA,CACf,CACA,MAAQ,CAER,OAAOnmB,KAAK1I,MAAMyX,MAAM,KAAKtB,IAAIkmB,GAAKA,EAAE7rB,QAAQhD,OAAO6uB,GAAKA,EAChE,CACA,MAAO,CAACltB,OAAOzG,KAAK1I,OACxB,CACA,SAAAm8B,CAAUD,GACN,OAAO37B,MAAc;8BACHmI,KAAK0C;UACzB8wB;;KAGF,CACA,WAAAhvB,GACIC,SAASjN,WACTwI,KAAKqzB,MAAQj8B,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMkzB,EAAoB,KAC9GlzB,KAAK1I,OAASF,EAAkB4I,KAAMmzB,GAA0B/7B,EAAkB4I,KAAMxD,EAAqB,KAC7GwD,KAAK0C,SAAWtL,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM1D,EAAuB,YAClH0D,KAAKqU,QAAUjd,EAAkB4I,KAAMzD,GAA6BnF,EAAkB4I,KAAM6T,EAAsB,OAClH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,QAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EA1HkB,GCAE,MACjB,IACI/D,EAEAC,EAGAI,EAGAm7B,EAGAC,EAGAC,EAGAt7B,EAGAD,EAGAw7B,EAGAvgB,EAGAC,EAGA5Z,EAGAvB,EAGA07B,EAGA35B,EACAC,EACAC,EACA05B,EA7CAt4B,EAAmB,CAACC,UAAQ,qBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3By3B,EAAoB,GACpBC,EAAyB,GAEzBC,EAAoB,GACpBC,EAAyB,GAEzBC,EAAyB,GACzBC,EAA8B,GAE9Bj4B,EAAwB,GACxBC,EAA6B,GAE7BH,EAAqB,GACrBC,EAA0B,GAE1Bm4B,EAAqB,GACrBC,EAA0B,GAE1B5gB,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1Bu4B,EAA2B,GAC3BC,EAAgC,IAKpC,cAAe54B,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtCmtB,EAAkB,CAACvzB,EAAAA,SAAS,CAAEE,KAAMkG,UACpCotB,EAAkB,CAACxzB,EAAAA,SAAS,CAAEE,KAAMkG,UACpCqtB,EAAuB,CAACzzB,EAAAA,SAAS,CAAEE,KAAMkG,UACzCjO,EAAsB,CAAC6H,EAAAA,SAAS,CAAEE,KAAMkG,UACxClO,EAAmB,CAAC8H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCstB,EAAmB,CAAC1zB,EAAAA,SAAS,CAAEE,KAAMC,WACrCgT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCutB,EAAyB,CAAC3zB,EAAAA,SAAS,CAAEE,KAAMC,WAC3CnG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBozB,EAAoC,CAACnzB,QAAM,WAC3C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAMi0B,EAAmC,CAAEn+B,KAAM,SAAUO,KAAM,wBAAyB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,0BAA2BA,EAAKtK,IAAKsK,GAAOA,EAAIuzB,uBAAyBz0B,SAAUF,GAAa,KAAMhE,GACxQ9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMy+B,EAAiB,CAAE99B,KAAM,QAASO,KAAM,MAAO6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,QAASA,EAAKtK,IAAKsK,GAAOA,EAAItJ,IAAKf,IAAK,CAACqK,EAAK/J,KAAY+J,EAAItJ,IAAMT,IAAY6I,SAAUF,GAAai0B,EAAmBC,GACvPh/B,EAAa,KAAM,KAAM0+B,EAAiB,CAAE/9B,KAAM,QAASO,KAAM,MAAO6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,QAASA,EAAKtK,IAAKsK,GAAOA,EAAIwzB,IAAK79B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwzB,IAAMv9B,IAAY6I,SAAUF,GAAam0B,EAAmBC,GACvPl/B,EAAa,KAAM,KAAM2+B,EAAsB,CAAEh+B,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIyzB,SAAU99B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIyzB,SAAWx9B,IAAY6I,SAAUF,GAAaq0B,EAAwBC,GACrRp/B,EAAa,KAAM,KAAMqD,EAAqB,CAAE1C,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIqB,QAAS1L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqB,QAAUpL,IAAY6I,SAAUF,GAAa3D,EAAuBC,GAC/QpH,EAAa,KAAM,KAAMoD,EAAkB,CAAEzC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIoB,KAAMzL,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIoB,KAAOnL,IAAY6I,SAAUF,GAAa7D,EAAoBC,GAC7PlH,EAAa,KAAM,KAAM4+B,EAAkB,CAAEj+B,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAI0zB,KAAM/9B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0zB,KAAOz9B,IAAY6I,SAAUF,GAAau0B,EAAoBC,GAC7Pt/B,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAM6+B,EAAwB,CAAEl+B,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI2zB,WAAYh+B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2zB,WAAa19B,IAAY6I,SAAUF,GAAay0B,EAA0BC,GACjSx/B,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAMs0B,EAAWj1B,KAAKjI,KAAOiI,KAAK1I,MAC5B49B,EAAWl1B,KAAK60B,KAAO,QACvBM,EAAcn1B,KAAK+0B,KAAO,OAAS,QAGnCK,EAAU,cAFK,UAAUp1B,KAAK0C,aAClB,UAAU1C,KAAKyC,SAEjC,OAAIzC,KAAKg1B,YAAch1B,KAAK80B,SACjBj9B,MAAc;;sBAEfmI,KAAK80B,kBAAkBI,aAAoBE;;QAIjDH,EACOp9B,MAAc;;sBAEfo9B,WAAkBC,eAAsBC,aAAuBC,aAAmBp1B,KAAKq1B;;QAI1Fx9B,MAAc;;sBAEXu9B;;KAGd,CACA,MAAAx0B,GACI,OAAO4E,EAAAA,GAAY,GAtHd,2/CAuHT,CACA,IAAAvO,GACI+I,KAAK40B,uBACT,CACA,qBAAAA,GACI,GAAI50B,KAAKqU,QAAQihB,YAAa,CAC1B,MAAMvgB,EAAS/U,KAAKqU,OAAOihB,YAC3Bt1B,KAAKjI,IAAMgd,EAAOhd,KAAOiI,KAAK1I,MAC9B0I,KAAK60B,IAAM9f,EAAO8f,KAAO,GACzB70B,KAAK80B,SAAW/f,EAAO+f,UAAY,GACnC90B,KAAK0C,QAAUqS,EAAOrS,SAAW,UACjC1C,KAAKyC,KAAOsS,EAAOtS,MAAQ,SAC3BzC,KAAK+0B,KAAOhgB,EAAOggB,OAAQ,CAC/B,CACJ,CACA,gBAAAM,GACIr1B,KAAKg1B,YAAa,CACtB,CACA,WAAAxwB,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAKjI,KAAOX,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAMk0B,EAAmB,KAC1Gl0B,KAAK60B,KAAOz9B,EAAkB4I,KAAMm0B,GAAyB/8B,EAAkB4I,KAAMo0B,EAAmB,KACxGp0B,KAAK80B,UAAY19B,EAAkB4I,KAAMq0B,GAAyBj9B,EAAkB4I,KAAMs0B,EAAwB,KAClHt0B,KAAK0C,SAAWtL,EAAkB4I,KAAMu0B,GAA8Bn9B,EAAkB4I,KAAM1D,EAAuB,YACrH0D,KAAKyC,MAAQrL,EAAkB4I,KAAMzD,GAA6BnF,EAAkB4I,KAAM5D,EAAoB,WAC9G4D,KAAK+0B,MAAQ39B,EAAkB4I,KAAM3D,GAA0BjF,EAAkB4I,KAAMw0B,GAAoB,IAC3Gx0B,KAAKqU,QAAUjd,EAAkB4I,KAAMy0B,GAA0Br9B,EAAkB4I,KAAM6T,EAAsB,OAC/G7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,WAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,UAC5G8D,KAAKg1B,YAAc59B,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAM00B,GAA0B,IACvHt9B,EAAkB4I,KAAM20B,EAC5B,GAGP,EAzJoB,GCAA,MACjB,IACIv8B,EAEAC,EAGAI,EAGA88B,EAGAC,EAGAC,EAGAjiB,EAGAC,EAGA5Z,EAGAvB,EAGA+B,EACAC,EACAC,EACAm7B,EAjCA/5B,EAAmB,CAACC,UAAQ,qBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3Bk5B,EAAsB,GACtBC,EAA2B,GAE3BC,EAA4B,GAC5BC,EAAiC,GAEjCC,EAAyB,GACzBC,EAA8B,GAE9BniB,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAK9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtC8uB,EAAoB,CAACl1B,EAAAA,SAAS,CAAEE,KAAMkG,UACtC+uB,EAA0B,CAACn1B,EAAAA,SAAS,CAAEE,KAAMkG,UAC5CgvB,EAAuB,CAACp1B,EAAAA,SAAS,CAAEE,KAAMC,WACzCgT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB60B,EAAoC,CAAC50B,EAAAA,MAAM,QAAS,WACpD3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM01B,EAAmC,CAAE5/B,KAAM,SAAUO,KAAM,wBAAyB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,0BAA2BA,EAAKtK,IAAKsK,GAAOA,EAAI40B,uBAAyB91B,SAAUF,GAAa,KAAMhE,GACxQ9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMogC,EAAmB,CAAEz/B,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI60B,MAAOl/B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI60B,MAAQ5+B,IAAY6I,SAAUF,GAAa01B,EAAqBC,GACnQzgC,EAAa,KAAM,KAAMqgC,EAAyB,CAAE1/B,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAI80B,YAAan/B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI80B,YAAc7+B,IAAY6I,SAAUF,GAAa41B,EAA2BC,GACvS3gC,EAAa,KAAM,KAAMsgC,EAAsB,CAAE3/B,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI+0B,SAAUp/B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+0B,SAAW9+B,IAAY6I,SAAUF,GAAa81B,EAAwBC,GACrR7gC,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM01B,EAAer2B,KAAKk2B,OAASl2B,KAAK1I,MAClCg/B,EAAct2B,KAAKm2B,aAAeE,EAClCtE,EAAW/xB,KAAKo2B,SAAW,oCAAsC,GACvE,OAAKC,EAOEx+B,MAAc;;UAEvBmqB,EAAAA,WAAW+P;0BACKsE;YACdC;;;MAVWz+B,MAAc;;;;OAc7B,CACA,MAAA+I,GACI,OAAO4E,EAAAA,GAAY,GA3Fd,0xCA4FT,CACA,IAAAvO,GACI+I,KAAKi2B,uBACT,CACA,qBAAAA,GACI,GAAIj2B,KAAKqU,QAAQkiB,YAAa,CAC1B,MAAMxhB,EAAS/U,KAAKqU,OAAOkiB,YAC3Bv2B,KAAKk2B,MAAQnhB,EAAOmhB,OAASl2B,KAAK1I,MAClC0I,KAAKm2B,YAAcphB,EAAOohB,aAAe,GACzCn2B,KAAKo2B,SAAWrhB,EAAOqhB,WAAY,CACvC,CACJ,CACA,WAAA5xB,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAKk2B,OAAS9+B,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM21B,EAAqB,KAC9G31B,KAAKm2B,aAAe/+B,EAAkB4I,KAAM41B,GAA2Bx+B,EAAkB4I,KAAM61B,EAA2B,KAC1H71B,KAAKo2B,UAAYh/B,EAAkB4I,KAAM81B,GAAiC1+B,EAAkB4I,KAAM+1B,GAAwB,IAC1H/1B,KAAKqU,QAAUjd,EAAkB4I,KAAMg2B,GAA8B5+B,EAAkB4I,KAAM6T,EAAsB,OACnH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,UAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EApHoB,GCAA,MACjB,IACI/D,EAEAC,EAGAI,EAGA+9B,EAGAhB,EAGAC,EAGAgB,EAGAC,EAGAljB,EAGAC,EAGA5Z,EAGAvB,EAGA+B,EACAC,EACAC,EACAo8B,EAvCAh7B,EAAmB,CAACC,UAAQ,qBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3Bm6B,EAAsB,GACtBC,EAA2B,GAE3BhB,EAA4B,GAC5BC,EAAiC,GAEjCC,EAAyB,GACzBC,EAA8B,GAE9Bc,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BpjB,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAK9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtC+vB,EAAoB,CAACn2B,EAAAA,SAAS,CAAEE,KAAMkG,UACtC+uB,EAA0B,CAACn1B,EAAAA,SAAS,CAAEE,KAAMkG,UAC5CgvB,EAAuB,CAACp1B,EAAAA,SAAS,CAAEE,KAAMC,WACzCi2B,EAAqB,CAACp2B,EAAAA,SAAS,CAAEE,KAAMC,WACvCk2B,EAAsB,CAACr2B,EAAAA,SAAS,CAAEE,KAAMkG,UACxC+M,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB81B,EAAoC,CAAC71B,EAAAA,MAAM,QAAS,WACpD3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM22B,EAAmC,CAAE7gC,KAAM,SAAUO,KAAM,wBAAyB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,0BAA2BA,EAAKtK,IAAKsK,GAAOA,EAAI61B,uBAAyB/2B,SAAUF,GAAa,KAAMhE,GACxQ9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqhC,EAAmB,CAAE1gC,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI81B,MAAOngC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI81B,MAAQ7/B,IAAY6I,SAAUF,GAAa22B,EAAqBC,GACnQ1hC,EAAa,KAAM,KAAMqgC,EAAyB,CAAE1/B,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAI80B,YAAan/B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI80B,YAAc7+B,IAAY6I,SAAUF,GAAa41B,EAA2BC,GACvS3gC,EAAa,KAAM,KAAMsgC,EAAsB,CAAE3/B,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI+0B,SAAUp/B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+0B,SAAW9+B,IAAY6I,SAAUF,GAAa81B,EAAwBC,GACrR7gC,EAAa,KAAM,KAAMshC,EAAoB,CAAE3gC,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAI0T,OAAQ/d,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0T,OAASzd,IAAY6I,SAAUF,GAAa62B,EAAsBC,GACzQ5hC,EAAa,KAAM,KAAMuhC,EAAqB,CAAE5gC,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI+1B,QAASpgC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+1B,QAAU9/B,IAAY6I,SAAUF,GAAa+2B,EAAuBC,GAC/Q9hC,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM02B,EAAcr3B,KAAKm3B,OAASn3B,KAAK1I,MACjC6+B,EAAcn2B,KAAKm2B,cAAgBn2B,KAAK+U,OAAS/U,KAAKs3B,kBAAkBD,GAAeA,GACvFtF,EAAW/xB,KAAKo2B,SAAW,qCAAuC,GACxE,OAAKiB,EAOEx/B,MAAc;;UAEvBmqB,EAAAA,WAAW+P;uBACEsF;YACXlB;;;MAVWt+B,MAAc;;;;OAc7B,CACA,MAAA+I,GACI,OAAO4E,EAAAA,GAAY,GArGd,4zCAsGT,CACA,IAAAvO,GACI+I,KAAKk3B,uBACT,CACA,qBAAAA,GACI,GAAIl3B,KAAKqU,QAAQkjB,YAAa,CAC1B,MAAMxiB,EAAS/U,KAAKqU,OAAOkjB,YAC3Bv3B,KAAKm3B,MAAQpiB,EAAOoiB,OAASn3B,KAAK1I,MAClC0I,KAAKm2B,YAAcphB,EAAOohB,aAAe,GACzCn2B,KAAKo2B,SAAWrhB,EAAOqhB,WAAY,EACnCp2B,KAAK+U,OAASA,EAAOA,SAAU,EAC/B/U,KAAKo3B,QAAUriB,EAAOqiB,SAAW,IACrC,CACJ,CACA,iBAAAE,CAAkBH,GAEd,MAAMK,EAAUL,EAAMpgB,QAAQ,MAAO,IAErC,MAAqB,OAAjB/W,KAAKo3B,SAAuC,KAAnBI,EAAQhhC,OAC1B,IAAIghC,EAAQx/B,MAAM,EAAG,OAAOw/B,EAAQx/B,MAAM,EAAG,MAAMw/B,EAAQx/B,MAAM,KAGvD,OAAjBgI,KAAKo3B,SAAuC,KAAnBI,EAAQhhC,QAAgC,MAAfghC,EAAQ,GACnD,OAAOA,EAAQx/B,MAAM,EAAG,OAAOw/B,EAAQx/B,MAAM,EAAG,MAAMw/B,EAAQx/B,MAAM,KAGxEm/B,CACX,CACA,WAAA3yB,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAKm3B,OAAS//B,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM42B,EAAqB,KAC9G52B,KAAKm2B,aAAe/+B,EAAkB4I,KAAM62B,GAA2Bz/B,EAAkB4I,KAAM61B,EAA2B,KAC1H71B,KAAKo2B,UAAYh/B,EAAkB4I,KAAM81B,GAAiC1+B,EAAkB4I,KAAM+1B,GAAwB,IAC1H/1B,KAAK+U,QAAU3d,EAAkB4I,KAAMg2B,GAA8B5+B,EAAkB4I,KAAM82B,GAAsB,IACnH92B,KAAKo3B,SAAWhgC,EAAkB4I,KAAM+2B,GAA4B3/B,EAAkB4I,KAAMg3B,EAAuB,OACnHh3B,KAAKqU,QAAUjd,EAAkB4I,KAAMi3B,GAA6B7/B,EAAkB4I,KAAM6T,EAAsB,OAClH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,UAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EAhJoB,GCAC,MAClB,IACI/D,EAEAC,EAGAI,EAGAg/B,EAGA9+B,EAGA++B,EAGAl/B,EAGAgb,EAGAC,EAGA5Z,EAGAvB,EAGA+B,EACAC,EACAC,EACAo9B,EApCAh8B,EAAmB,CAACC,UAAQ,sBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3Bm7B,EAAuB,GACvBC,EAA4B,GAE5Bj7B,EAAsB,GACtBC,EAA2B,GAE3Bi7B,EAAwB,GACxBC,EAA6B,GAE7Bz7B,EAAwB,GACxBC,EAA6B,GAE7BsX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAK9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtCgxB,EAAqB,CAACp3B,EAAAA,SAAS,CAAEE,KAAMkG,UACvC9N,EAAoB,CAAC0H,EAAAA,SAAS,CAAEE,KAAMkG,UACtCixB,EAAsB,CAACr3B,EAAAA,SAAS,CAAEE,KAAMC,WACxChI,EAAsB,CAAC6H,EAAAA,SAAS,CAAEE,KAAMkG,UACxC+M,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB82B,EAAqC,CAAC72B,EAAAA,MAAM,QAAS,WACrD3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM23B,EAAoC,CAAE7hC,KAAM,SAAUO,KAAM,yBAA0B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,2BAA4BA,EAAKtK,IAAKsK,GAAOA,EAAI22B,wBAA0B73B,SAAUF,GAAa,KAAMhE,GAC5Q9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMsiC,EAAoB,CAAE3hC,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAI42B,OAAQjhC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI42B,OAAS3gC,IAAY6I,SAAUF,GAAa23B,EAAsBC,GACzQ1iC,EAAa,KAAM,KAAMwD,EAAmB,CAAE7C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIuB,MAAO5L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuB,MAAQtL,IAAY6I,SAAUF,GAAarD,EAAqBC,GACnQ1H,EAAa,KAAM,KAAMuiC,EAAqB,CAAE5hC,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI62B,QAASlhC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI62B,QAAU5gC,IAAY6I,SAAUF,GAAa63B,EAAuBC,GAC/Q5iC,EAAa,KAAM,KAAMqD,EAAqB,CAAE1C,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIqB,QAAS1L,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqB,QAAUpL,IAAY6I,SAAUF,GAAa3D,EAAuBC,GAC/QpH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAMw3B,EAAcn4B,KAAKi4B,QAAUj4B,KAAK1I,MAClC8gC,EAAcp4B,KAAK4C,OAASu1B,EAC5BE,EAAgBr4B,KAAKs4B,iBAAiBH,GACtCI,EAAUv4B,KAAKk4B,QAAU,uCAAuCG,aAA2B,GACjG,OAAOxgC,MAAc;;UAEvBmqB,EAAAA,WAAWuW;kDAC6BF,MAAkBD;;KAG5D,CACA,MAAAx3B,GACI,OAAO4E,EAAAA,GAAY,GAxFd,49EAyFT,CACA,IAAAvO,GACI+I,KAAKg4B,wBACT,CACA,sBAAAA,GACI,GAAIh4B,KAAKqU,QAAQmkB,aAAc,CAC3B,MAAMzjB,EAAS/U,KAAKqU,OAAOmkB,aAC3Bx4B,KAAKi4B,OAASljB,EAAOkjB,QAAUj4B,KAAK1I,MACpC0I,KAAK4C,MAAQmS,EAAOnS,OAAS5C,KAAK1I,MAClC0I,KAAKk4B,QAAUnjB,EAAOmjB,UAAW,EACjCl4B,KAAK0C,QAAUqS,EAAOrS,SAAW,QACrC,CACJ,CACA,gBAAA41B,CAAiBL,GACb,GAAqB,WAAjBj4B,KAAK0C,QACL,OAAO1C,KAAK0C,QAGhB,MAAM+1B,EAAcR,EAAO3lB,cAC3B,MAAoB,WAAhBmmB,GAA4C,WAAhBA,GAA4C,cAAhBA,EACjD,SAES,YAAhBA,GAA6C,aAAhBA,GAA8C,gBAAhBA,EACpD,UAES,SAAhBA,GAA0C,QAAhBA,GAAyC,mBAAhBA,EAC5C,OAES,SAAhBA,GAA0C,SAAhBA,EACnB,OAEJ,QACX,CACA,WAAAj0B,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAKi4B,QAAU7gC,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM43B,EAAsB,KAChH53B,KAAK4C,OAASxL,EAAkB4I,KAAM63B,GAA4BzgC,EAAkB4I,KAAMpD,EAAqB,KAC/GoD,KAAKk4B,SAAW9gC,EAAkB4I,KAAMnD,GAA2BzF,EAAkB4I,KAAM83B,GAAuB,IAClH93B,KAAK0C,SAAWtL,EAAkB4I,KAAM+3B,GAA6B3gC,EAAkB4I,KAAM1D,EAAuB,WACpH0D,KAAKqU,QAAUjd,EAAkB4I,KAAMzD,GAA6BnF,EAAkB4I,KAAM6T,EAAsB,OAClH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,WAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EAvIqB,GCAD,MACjB,IACI/D,EAEAC,EAGAI,EAGA2pB,EAGAsW,EAGAC,EAGAC,EAGAC,EAGArlB,EAGAC,EAGA5Z,EAGAvB,EAGA+B,EACAC,EACAC,EACAu+B,EAvCAn9B,EAAmB,CAACC,UAAQ,qBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3BgmB,EAAsB,GACtBC,EAA2B,GAE3BqW,EAA2B,GAC3BC,EAAgC,GAEhCC,EAAwB,GACxBC,EAA6B,GAE7BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA2B,GAC3BC,EAAgC,GAEhCzlB,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAK9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtC2b,EAAoB,CAAC/hB,EAAAA,SAAS,CAAEE,KAAMkG,UACtCiyB,EAAyB,CAACr4B,EAAAA,SAAS,CAAEE,KAAMC,WAC3Cm4B,EAAsB,CAACt4B,EAAAA,SAAS,CAAEE,KAAMC,WACxCo4B,EAAsB,CAACv4B,EAAAA,SAAS,CAAEE,KAAMC,WACxCq4B,EAAyB,CAACx4B,EAAAA,SAAS,CAAEE,KAAMkG,UAC3C+M,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBi4B,EAAoC,CAACh4B,EAAAA,MAAM,QAAS,WACpD3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM84B,EAAmC,CAAEhjC,KAAM,SAAUO,KAAM,wBAAyB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,0BAA2BA,EAAKtK,IAAKsK,GAAOA,EAAIk4B,uBAAyBp5B,SAAUF,GAAa,KAAMhE,GACxQ9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMitB,EAAmB,CAAEtsB,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI6T,MAAOle,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI6T,MAAQ5d,IAAY6I,SAAUF,GAAawiB,EAAqBC,GACnQvtB,EAAa,KAAM,KAAMujC,EAAwB,CAAE5iC,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIm4B,WAAYxiC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIm4B,WAAaliC,IAAY6I,SAAUF,GAAa84B,EAA0BC,GACjS7jC,EAAa,KAAM,KAAMwjC,EAAqB,CAAE7iC,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIo4B,QAASziC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIo4B,QAAUniC,IAAY6I,SAAUF,GAAag5B,EAAuBC,GAC/Q/jC,EAAa,KAAM,KAAMyjC,EAAqB,CAAE9iC,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIq4B,QAAS1iC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIq4B,QAAUpiC,IAAY6I,SAAUF,GAAak5B,EAAuBC,GAC/QjkC,EAAa,KAAM,KAAM0jC,EAAwB,CAAE/iC,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIs4B,WAAY3iC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIs4B,WAAariC,IAAY6I,SAAUF,GAAao5B,EAA0BC,GACjSnkC,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAMi5B,EAAa55B,KAAKkV,OAASlV,KAAK1I,MAChCuiC,EAAa75B,KAAKw5B,WAClB,2CAA2Cx5B,KAAK25B,wCAAwCC,cACxF,GACN,IAAIE,EAAc,GAIlB,GAHI95B,KAAKy5B,UACLK,EAAcF,GAEd55B,KAAK05B,SAAWE,EAAW9hC,WAAW,KAAM,CAC5C,MAAMiiC,EAAM/5B,KAAKg6B,SAASJ,GAC1BE,EAAcC,EAAM,OAAOA,EAAIE,MAAMF,EAAIG,MAAMH,EAAI9hB,KAAO2hB,CAC9D,CACA,OAAO/hC,MAAc;;UAEvBmqB,EAAAA,WAAW6X;UACXC,EAAcjiC,EAAAA,IAAK,4BAA4BiiC,WAAuB;;KAGxE,CACA,MAAAl5B,GACI,OAAO4E,EAAAA,GAAY,GArGd,4sCAsGT,CACA,IAAAvO,GACI+I,KAAKu5B,uBACT,CACA,qBAAAA,GACI,GAAIv5B,KAAKqU,QAAQ8lB,YAAa,CAC1B,MAAMplB,EAAS/U,KAAKqU,OAAO8lB,YAC3Bn6B,KAAKkV,MAAQH,EAAOG,OAASlV,KAAK1I,MAClC0I,KAAKw5B,WAAazkB,EAAOykB,aAAc,EACvCx5B,KAAKy5B,QAAU1kB,EAAO0kB,UAAW,EACjCz5B,KAAK05B,QAAU3kB,EAAO2kB,UAAW,EACjC15B,KAAK25B,WAAa5kB,EAAO4kB,YAAc,QAC3C,CACJ,CACA,QAAAK,CAASI,GACL,MAAMtjC,EAAS,4CAA4CujC,KAAKD,GAChE,OAAOtjC,EACD,CACEmjC,EAAGK,SAASxjC,EAAO,GAAI,IACvBojC,EAAGI,SAASxjC,EAAO,GAAI,IACvBmhB,EAAGqiB,SAASxjC,EAAO,GAAI,KAEzB,IACV,CACA,WAAA0N,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAKkV,OAAS9d,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAMyiB,EAAqB,KAC9GziB,KAAKw5B,YAAcpiC,EAAkB4I,KAAM0iB,GAA2BtrB,EAAkB4I,KAAM+4B,GAA0B,IACxH/4B,KAAKy5B,SAAWriC,EAAkB4I,KAAMg5B,GAAgC5hC,EAAkB4I,KAAMi5B,GAAuB,IACvHj5B,KAAK05B,SAAWtiC,EAAkB4I,KAAMk5B,GAA6B9hC,EAAkB4I,KAAMm5B,GAAuB,IACpHn5B,KAAK25B,YAAcviC,EAAkB4I,KAAMo5B,GAA6BhiC,EAAkB4I,KAAMq5B,EAA0B,WAC1Hr5B,KAAKqU,QAAUjd,EAAkB4I,KAAMs5B,GAAgCliC,EAAkB4I,KAAM6T,EAAsB,OACrH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,UAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EA5IoB,GCAD,MAChB,IACI/D,EAEAC,EAGAI,EAGA8hC,EAGAC,EAGAC,EAGAjnB,EAGAC,EAGA5Z,EAGAvB,EAGA+B,EACAC,EACAC,EACAmgC,EACAC,EAlCAh/B,EAAmB,CAACC,UAAQ,oBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3Bm+B,EAA0B,GAC1BC,EAA+B,GAE/BC,EAAyB,GACzBC,EAA8B,GAE9BC,EAA2B,GAC3BC,EAAgC,GAEhCpnB,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAM9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtC8zB,EAAwB,CAACl6B,EAAAA,SAAS,CAAEE,KAAMC,WAC1Cg6B,EAAuB,CAACn6B,EAAAA,SAAS,CAAEE,KAAME,UACzCg6B,EAAyB,CAACp6B,EAAAA,SAAS,CAAEE,KAAMC,WAC3CgT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB65B,EAAmC,CAAC55B,EAAAA,MAAM,QAAS,WACnD65B,EAA2B,CAACO,EAAAA,GAAG,QAAS,iBACxC/lC,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM06B,EAAkC,CAAE5kC,KAAM,SAAUO,KAAM,uBAAwB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,yBAA0BA,EAAKtK,IAAKsK,GAAOA,EAAI85B,sBAAwBh7B,SAAUF,GAAa,KAAMhE,GACpQ9G,EAAa6K,KAAM,KAAM26B,EAA0B,CAAE7kC,KAAM,SAAUO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAI+5B,cAAgBj7B,SAAUF,GAAa,KAAMhE,GACpO9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMolC,EAAuB,CAAEzkC,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIg6B,UAAWrkC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIg6B,UAAY/jC,IAAY6I,SAAUF,GAAa26B,EAAyBC,GAC3R1lC,EAAa,KAAM,KAAMqlC,EAAsB,CAAE1kC,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIi6B,SAAUtkC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIi6B,SAAWhkC,IAAY6I,SAAUF,GAAa66B,EAAwBC,GACrR5lC,EAAa,KAAM,KAAMslC,EAAwB,CAAE3kC,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIk6B,WAAYvkC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIk6B,WAAajkC,IAAY6I,SAAUF,GAAa+6B,EAA0BC,GACjS9lC,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM66B,EAAkC,iBAAfx7B,KAAK1I,MAAqB0I,KAAKy7B,aAAaz7B,KAAK1I,OAAS0I,KAAK1I,MACxF,GAAIkkC,QACA,OAAO3jC,MAAc;;;;QAMzB,MAAM6jC,EAAa17B,KAAKu7B,WAClB,yDAAyDv7B,KAAKq7B,UAAY,SAAW,eAAer7B,KAAKq7B,UAAY,IAAM,eAC3H,GACAM,EAAW37B,KAAKq7B,UAChBr7B,KAAK47B,gBAAgBJ,GACrBx7B,KAAK67B,eAAeL,GAC1B,OAAO3jC,MAAc;;UAEvBmqB,EAAAA,WAAW0Z;kCACa17B,KAAKq7B,UAAY,yBAA2B;YAClErZ,EAAAA,WAAW2Z;;;KAIf,CACA,MAAA/6B,GACI,OAAO4E,EAAAA,GAAY,GAlGd,2vDAmGT,CACA,IAAAvO,GACI+I,KAAKm7B,sBACT,CACA,oBAAAA,GACI,GAAIn7B,KAAKqU,QAAQynB,WAAY,CACzB,MAAM/mB,EAAS/U,KAAKqU,OAAOynB,WAC3B97B,KAAKq7B,UAAYtmB,EAAOsmB,YAAa,EACrCr7B,KAAKs7B,SAAWvmB,EAAOumB,UAAY,EACnCt7B,KAAKu7B,WAAaxmB,EAAOwmB,aAAc,CAC3C,CACJ,CACA,YAAAH,GACIp7B,KAAKq7B,WAAar7B,KAAKq7B,SAC3B,CACA,YAAAI,CAAaM,GACT,IACI,OAAO3V,KAAKC,MAAM0V,EACtB,CACA,MACI,OAAOA,CACX,CACJ,CACA,eAAAH,CAAgBI,GACZ,GAAoB,iBAATA,GAA8B,OAATA,EAAe,CAC3C,GAAIxwB,MAAMiP,QAAQuhB,GACd,MAAO,+BAA+BA,EAAKxlC,uBAG/C,MAAO,+BADML,OAAOo6B,KAAKyL,GACkBxlC,qBAC/C,CACA,OAAOwJ,KAAKi8B,YAAYD,EAC5B,CACA,cAAAH,CAAeG,EAAME,EAAQ,GACzB,GAAIA,GAASl8B,KAAKs7B,SACd,OAAOt7B,KAAK47B,gBAAgBI,GAEhC,GAAoB,iBAATA,GAA8B,OAATA,EAAe,CAC3C,GAAIxwB,MAAMiP,QAAQuhB,GAAO,CAKrB,MAAO,6BAJOA,EAAKvuB,IAAI,CAAC0uB,EAAM5lC,IAEnB,iDAAiDA,aAD1CyJ,KAAK67B,eAAeM,EAAMD,EAAQ,YAEjDn3B,KAAK,YAEZ,CAKA,MAAO,6BAJS5O,OAAOiqB,QAAQ4b,GAAMvuB,IAAI,EAAE1X,EAAKuB,KAErC,iDAAiDvB,aADlCiK,KAAK67B,eAAevkC,EAAO4kC,EAAQ,YAE1Dn3B,KAAK,YAEZ,CACA,OAAO/E,KAAKi8B,YAAYD,EAC5B,CACA,WAAAC,CAAY3kC,GACR,OAAc,OAAVA,EACO,2CACGie,IAAVje,EACO,gDACU,kBAAVA,EACA,8BAA8BA,WACpB,iBAAVA,EACA,6BAA6BA,WACnB,iBAAVA,EACA,8BAA8BA,YAClCmP,OAAOnP,EAClB,CACA,WAAAkN,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,OAChHwD,KAAKq7B,WAAajkC,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM46B,GAAyB,IACtH56B,KAAKs7B,UAAYlkC,EAAkB4I,KAAM66B,GAA+BzjC,EAAkB4I,KAAM86B,EAAwB,IACxH96B,KAAKu7B,YAAcnkC,EAAkB4I,KAAM+6B,GAA8B3jC,EAAkB4I,KAAMg7B,GAA0B,IAC3Hh7B,KAAKqU,QAAUjd,EAAkB4I,KAAMi7B,GAAgC7jC,EAAkB4I,KAAM6T,EAAsB,OACrH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,SAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EAjLmB,GCDI,MACpB,IACI/D,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGA4I,EAGAC,EAGA6f,EAGAC,EAGAte,EAGArB,EAGAC,EAGAtiB,EACAC,EACAC,EACAoZ,EACAC,EAjDAjY,EAAmB,CAACC,UAAQ,wBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,GAEpC0I,EAAyB,GACzBC,EAA8B,GAE9BC,EAAmC,GACnCC,EAAwC,GAExCuf,EAAyB,GACzBC,EAA8B,GAE9BC,EAAgC,GAChCC,EAAqC,GAErCne,EAAuB,GACvBC,EAA4B,GAE5BnB,EAA8B,GAC9BC,EAAmC,GAEnCC,EAA0B,GAC1BC,EAA+B,IAMnC,cAAexhB,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrChO,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpC4b,EAAuB,CAACjc,EAAAA,SAAS,CAAEE,KAAME,UACzC8b,EAAiC,CAAClc,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,yBACvE87B,EAAuB,CAAC/7B,EAAAA,SAAS,CAAEE,KAAMkG,UACzC41B,EAA8B,CAACh8B,EAAAA,SAAS,CAAEE,KAAMkG,UAChDsX,EAAqB,CAAC1d,EAAAA,SAAS,CAAEE,KAAMkG,UACvCiW,EAA4B,CAACrc,EAAAA,SAAS,CAAEE,KAAMkG,OAAQnG,UAAW,oBACjEqc,EAAwB,CAACtc,EAAAA,SAAS,CAAEE,KAAMC,WAC1CnG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAM,KAAMmnB,EAAsB,CAAExmB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIuV,SAAU5f,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuV,SAAWtf,IAAY6I,SAAUF,GAAa2c,EAAwBC,GACrR1nB,EAAa,KAAM,KAAMonB,EAAgC,CAAEzmB,KAAM,QAASO,KAAM,qBAAsB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,uBAAwBA,EAAKtK,IAAKsK,GAAOA,EAAIwV,mBAAoB7f,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwV,mBAAqBvf,IAAY6I,SAAUF,GAAa6c,EAAkCC,GACjV5nB,EAAa,KAAM,KAAMinC,EAAsB,CAAEtmC,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI+V,SAAUpgB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+V,SAAW9f,IAAY6I,SAAUF,GAAaq8B,EAAwBC,GACrRpnC,EAAa,KAAM,KAAMknC,EAA6B,CAAEvmC,KAAM,QAASO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAIq7B,gBAAiB1lC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIq7B,gBAAkBplC,IAAY6I,SAAUF,GAAau8B,EAA+BC,GAC/TtnC,EAAa,KAAM,KAAM4oB,EAAoB,CAAEjoB,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAI4X,OAAQjiB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4X,OAAS3hB,IAAY6I,SAAUF,GAAaqe,EAAsBC,GACzQppB,EAAa,KAAM,KAAMunB,EAA2B,CAAE5mB,KAAM,QAASO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI2V,cAAehgB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2V,cAAgB1f,IAAY6I,SAAUF,GAAamd,EAA6BC,GACnTloB,EAAa,KAAM,KAAMwnB,EAAuB,CAAE7mB,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAImc,UAAWxmB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImc,UAAYlmB,IAAY6I,SAAUF,GAAaqd,EAAyBC,GAC3RpoB,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM8c,EAAiBzd,KAAK28B,sBACtB/7B,EAASZ,KAAK48B,oBACpB,OAAO/kC,MAAc;6EAC4C+I;UACnE6c;;KAGF,CACA,MAAA7c,GACI,OAAO4E,EAAAA,GAAY,GAAG+N,GAC1B,CACA,IAAAtc,GACI+I,KAAKyU,gBACT,CACA,cAAAA,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACI,GAAIpU,KAAKuU,eAAgB,CACrB,MAAMkJ,EAAiBzd,KAAK28B,sBACtB/7B,EAASZ,KAAK48B,oBACpB58B,KAAKuU,eAAelB,UAAYoK,EAChCzd,KAAKuU,eAAexO,aAAa,QAASnF,EAC9C,CACJ,CACA,mBAAA+7B,GACI,GAAmB,OAAf38B,KAAK1I,YAAiCie,IAAfvV,KAAK1I,OAAsC,KAAf0I,KAAK1I,MACxD,MAAO,GAGX,GAAI0I,KAAKqU,OAAOmB,UACZ,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAGlD,MAAMS,EAAS/U,KAAKqU,OAAO8C,gBAAkB,CACzCP,SAAU5W,KAAK4W,SACfQ,SAAUpX,KAAKoX,SACfslB,gBAAiB18B,KAAK08B,gBACtBzjB,OAAQjZ,KAAKiZ,OACbjC,cAAehX,KAAKgX,eAElBR,EAAM/V,OAAOT,KAAK1I,OACxB,GAAImf,MAAMD,GACN,OAAO/P,OAAOzG,KAAK1I,OAEvB,IAQI,IAAIof,EAPc,IAAIa,KAAKC,aAAazC,EAAOkE,QAAUjZ,KAAKiZ,OAAQ,CAClEtT,MAAO,WACPyR,SAAUrC,EAAOqC,UAAYpX,KAAKoX,SAClCslB,gBAAiB3nB,EAAO2nB,iBAAmB18B,KAAK08B,gBAChDrlB,sBAAuBtC,EAAO6B,UAAY5W,KAAK4W,SAC/CU,sBAAuBvC,EAAO6B,UAAY5W,KAAK4W,WAEzB7B,OAAO2C,KAAKC,IAAInB,IAE1C,GAAIA,EAAM,EAAG,CACT,MAAMoH,EAAW7I,EAAOiC,eAAiBhX,KAAKgX,cAE1CN,EADa,gBAAbkH,EACY,IAAIlH,KAGJ,IAAIA,GAKxB,CACA,OAAOA,CACX,CACA,MAAOsR,GAEH,IAAItR,EAAYF,EAAIG,QAAQ5B,EAAO6B,UAAY5W,KAAK4W,UACpD,GAAI5W,KAAK6W,mBAAoB,CACzB,MAAMC,EAAQJ,EAAU3H,MAAM,KAC9B+H,EAAM,GAAKA,EAAM,GAAGC,QAAQ,wBAAyB,KACrDL,EAAYI,EAAM/R,KAAK,IAC3B,CACA,MAAO,IAAI2R,GACf,CACJ,CACA,iBAAAkmB,GACI,MAAMpmB,EAAM/V,OAAOT,KAAK1I,OAIxB,GAFA0I,KAAK6F,UAAUa,OAAO,mBAAoB,mBAAoB,eAAgB,uBAE1E8P,EAAM,EAAG,CACTxW,KAAK6F,UAAUG,IAAI,oBAEF,SADAhG,KAAKqU,OAAO8C,gBAAgBH,eAAiBhX,KAAKgX,gBAE/DhX,KAAK6F,UAAUG,IAAI,uBAE3B,MACSwQ,EAAM,GACXxW,KAAK6F,UAAUG,IAAI,oBACfhG,KAAKwd,WACLxd,KAAK6F,UAAUG,IAAI,wBAGV,IAARwQ,GACLxW,KAAK6F,UAAUG,IAAI,gBAEvB,MAAO,mBACX,CACA,WAAAxB,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,UAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,aAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,KAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,CAC5G9d,IAAK,GACL6M,MAAO,GACPrC,KAAM,WACNsD,MAAO,WAEX7D,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClIjU,KAAK4W,UAAYxf,EAAkB4I,KAAMkU,GAAoC9c,EAAkB4I,KAAM4c,EAAwB,IAC7H5c,KAAK6W,oBAAsBzf,EAAkB4I,KAAM6c,GAA8BzlB,EAAkB4I,KAAM8c,GAAkC,IAC3I9c,KAAKoX,UAAYhgB,EAAkB4I,KAAM+c,GAAwC3lB,EAAkB4I,KAAMs8B,EAAwB,QACjIt8B,KAAK08B,iBAAmBtlC,EAAkB4I,KAAMu8B,GAA8BnlC,EAAkB4I,KAAMw8B,EAA+B,WACrIx8B,KAAKiZ,QAAU7hB,EAAkB4I,KAAMy8B,GAAqCrlC,EAAkB4I,KAAMse,EAAsB,UAC1Hte,KAAKgX,eAAiB5f,EAAkB4I,KAAMue,GAA4BnnB,EAAkB4I,KAAMod,EAA6B,QAC/Hpd,KAAKwd,WAAapmB,EAAkB4I,KAAMqd,GAAmCjmB,EAAkB4I,KAAMsd,GAAyB,IAC9HlmB,EAAkB4I,KAAMud,EAC5B,GAGP,EAnOuB,GCCE,MACtB,IACInlB,EAEAC,EAGAwB,EAGAvB,EAGAG,EAGA+a,EAGAC,EAGAC,EAGA4I,EAGAugB,EAGAC,EAGAC,EAGA1iC,EACAC,EACAC,EACAoZ,EACAC,EAxCAjY,EAAmB,CAACC,UAAQ,0BAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7B+C,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,GAE1BK,EAAsB,GACtBC,EAA2B,GAE3BoX,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BC,EAA+B,GAC/BC,EAAoC,GAEpC0I,EAAyB,GACzBC,EAA8B,GAE9BmgB,EAA0B,GAC1BC,EAA+B,GAE/BC,EAA2B,GAC3BC,EAAgC,GAEhCC,EAAyB,GACzBC,EAA8B,IAMlC,cAAethC,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HtG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrChO,EAAoB,CAAC4H,WAAS,CAAA,IAC9BmT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DoT,EAA6B,CAAChT,QAAM,kBACpC4b,EAAuB,CAACjc,EAAAA,SAAS,CAAEE,KAAME,UACzCo8B,EAAwB,CAACx8B,EAAAA,SAAS,CAAEE,KAAMC,WAC1Cs8B,EAAyB,CAACz8B,EAAAA,SAAS,CAAEE,KAAME,UAC3Cs8B,EAAuB,CAAC18B,EAAAA,SAAS,CAAEE,KAAMC,WACzCnG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpB8S,EAA8B,CAAC7S,QAAM,UACrC8S,EAA4B,CAAC9S,EAAAA,MAAM,QAAS,WAC5C3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAM2T,EAA6B,CAAE7d,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8S,iBAAmBhU,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAM4T,EAA2B,CAAE9d,KAAM,SAAUO,KAAM,gBAAiB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,kBAAmBA,EAAKtK,IAAKsK,GAAOA,EAAI+S,eAAiBjU,SAAUF,GAAa,KAAMhE,GACxO9G,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAMue,EAA4B,CAAE5d,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAIkT,eAAgBvd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIkT,eAAiBjd,IAAY6I,SAAUF,GAAagU,EAA8BC,GACzT/e,EAAa,KAAM,KAAMmnB,EAAsB,CAAExmB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIuV,SAAU5f,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuV,SAAWtf,IAAY6I,SAAUF,GAAa2c,EAAwBC,GACrR1nB,EAAa,KAAM,KAAM0nC,EAAuB,CAAE/mC,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIi8B,UAAWtmC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIi8B,UAAYhmC,IAAY6I,SAAUF,GAAa+8B,EAAyBC,GAC3R9nC,EAAa,KAAM,KAAM2nC,EAAwB,CAAEhnC,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIk8B,WAAYvmC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIk8B,WAAajmC,IAAY6I,SAAUF,GAAai9B,EAA0BC,GACjShoC,EAAa,KAAM,KAAM4nC,EAAsB,CAAEjnC,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIm8B,SAAUxmC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIm8B,SAAWlmC,IAAY6I,SAAUF,GAAam9B,EAAwBC,GACrRloC,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM8c,EAAiBzd,KAAKy9B,wBACtBC,EAAa19B,KAAK29B,gBAClB/8B,EAASZ,KAAK49B,sBACpB,OAAO/lC,MAAc;iFACgD+I;UACvE6c;UACAzd,KAAKs9B,WAAaI,EAAa1b,EAAAA,WAAW,kCAAkC0b,YAAuB;;KAGrG,CACA,MAAA98B,GACI,OAAO4E,EAAAA,GAAY,GA/Fd,20CAgGT,CACA,IAAAvO,GACI+I,KAAKyU,gBACT,CACA,cAAAA,GACIzU,KAAK2F,MAAMgP,UAAY3U,KAAK6D,KAChC,CACA,eAAAsQ,GACInU,KAAKyU,gBACT,CACA,aAAAL,GACI,GAAIpU,KAAKuU,eAAgB,CACrB,MAAMkJ,EAAiBzd,KAAKy9B,wBACtBC,EAAa19B,KAAK29B,gBAClB/8B,EAASZ,KAAK49B,sBACdC,EAAY79B,KAAKs9B,WAAaI,EAC9B,kCAAkCA,WAClC,GACN19B,KAAKuU,eAAelB,UAAYoK,EAAiBogB,EACjD79B,KAAKuU,eAAexO,aAAa,QAASnF,EAC9C,CACJ,CACA,qBAAA68B,GACI,GAAmB,OAAfz9B,KAAK1I,YAAiCie,IAAfvV,KAAK1I,OAAsC,KAAf0I,KAAK1I,MACxD,MAAO,GAGX,GAAI0I,KAAKqU,QAAQmB,UACb,OAAOxV,KAAKqU,OAAOmB,UAAUxV,KAAK1I,MAAO0I,KAAKsU,SAGlD,MAAMS,EAAS/U,KAAKqU,QAAQypB,kBAAoB,CAC5ClnB,SAAU5W,KAAK4W,SACf0mB,UAAWt9B,KAAKs9B,UAChBC,WAAYv9B,KAAKu9B,WACjBC,SAAUx9B,KAAKw9B,UAEbhnB,EAAM/V,OAAOT,KAAK1I,OACxB,GAAImf,MAAMD,GACN,OAAO/P,OAAOzG,KAAK1I,OAGvB,MAAO,GADWkf,EAAIG,QAAQ5B,EAAO6B,UAAY5W,KAAK4W,YAE1D,CACA,aAAA+mB,GACI,MAAMI,EAAQ/9B,KAAKqU,QAAQypB,kBAAkBP,YAAcv9B,KAAKu9B,WAChE,OAAIQ,QACO,GAEPA,EAAQ,EACD,IAEFA,EAAQ,EACN,IAEJ,GACX,CACA,mBAAAH,GACI,MAAMpnB,EAAM/V,OAAOT,KAAK1I,OAClB0mC,EAAiBh+B,KAAKqU,QAAQypB,kBAAkBN,UAAYx9B,KAAKw9B,SAEvEx9B,KAAK6F,UAAUa,OAAO,uBAAwB,uBAAwB,oBAClEs3B,IACIxnB,EAAM,EACNxW,KAAK6F,UAAUG,IAAI,wBAEdwQ,EAAM,EACXxW,KAAK6F,UAAUG,IAAI,wBAEN,IAARwQ,GACLxW,KAAK6F,UAAUG,IAAI,qBAI3B,MAAM+3B,EAAQ/9B,KAAKqU,QAAQypB,kBAAkBP,YAAcv9B,KAAKu9B,WAahE,OAZAv9B,KAAK6F,UAAUa,OAAO,uBAAwB,yBAA0B,6BACpEq3B,UACIA,EAAQ,EACR/9B,KAAK6F,UAAUG,IAAI,wBAEd+3B,EAAQ,EACb/9B,KAAK6F,UAAUG,IAAI,0BAGnBhG,KAAK6F,UAAUG,IAAI,8BAGpB,mBACX,CACA,WAAAxB,GACIC,SAASjN,WACTwI,KAAK6D,OAASzM,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMhB,EAAqB,UAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,eAC5G8D,KAAK1I,OAASF,EAAkB4I,KAAM7D,GAA0B/E,EAAkB4I,KAAMxD,EAAqB,KAC7GwD,KAAKqU,QAAUjd,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAM6T,EAAsB,OAChH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAKuU,gBAAkBnd,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMiU,OAA8B,IAClIjU,KAAK4W,UAAYxf,EAAkB4I,KAAMkU,GAAoC9c,EAAkB4I,KAAM4c,EAAwB,IAC7H5c,KAAKs9B,WAAalmC,EAAkB4I,KAAM6c,GAA8BzlB,EAAkB4I,KAAMg9B,GAAyB,IACzHh9B,KAAKu9B,YAAcnmC,EAAkB4I,KAAMi9B,GAA+B7lC,EAAkB4I,KAAMk9B,EAA0B,OAC5Hl9B,KAAKw9B,UAAYpmC,EAAkB4I,KAAMm9B,GAAgC/lC,EAAkB4I,KAAMo9B,GAAwB,IACzHhmC,EAAkB4I,KAAMq9B,EAC5B,GAGP,EAvMyB,GCAF,MACpB,IACIjlC,EAEAC,EAGAI,EAGAwlC,EAGAC,EAGAC,EAGAC,EAGAC,EAGA5I,EAGAjiB,EAGAC,EAGA5Z,EAGAvB,EAGA+B,EACAC,EACAC,EACA+jC,EA1CA3iC,EAAmB,CAACC,UAAQ,wBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BO,EAAsB,GACtBC,EAA2B,GAE3B8hC,EAAwB,GACxBC,EAA6B,GAE7BC,EAAyB,GACzBC,EAA8B,GAE9BC,EAA0B,GAC1BC,EAA+B,GAE/BC,EAA4B,GAC5BC,EAAiC,GAEjCC,EAA4B,GAC5BC,EAAiC,GAEjCjJ,EAAyB,GACzBC,EAA8B,GAE9BniB,EAAuB,GACvBC,EAA4B,GAE5BC,EAAwB,GACxBC,EAA6B,GAE7BhV,EAAsB,GACtBC,EAA2B,GAE3B/C,EAAqB,GACrBC,EAA0B,IAK9B,cAAeJ,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1H1H,EAAoB,CAAC4H,EAAAA,SAAS,CAAEE,KAAMkG,UACtCw3B,EAAsB,CAAC59B,EAAAA,SAAS,CAAEE,KAAMkG,UACxCy3B,EAAuB,CAAC79B,EAAAA,SAAS,CAAEE,KAAMkG,UACzC03B,EAAwB,CAAC99B,EAAAA,SAAS,CAAEE,KAAMkG,UAC1C23B,EAA0B,CAAC/9B,EAAAA,SAAS,CAAEE,KAAMC,WAC5C69B,EAA0B,CAACh+B,EAAAA,SAAS,CAAEE,KAAMkG,UAC5CgvB,EAAuB,CAACp1B,EAAAA,SAAS,CAAEE,KAAMC,WACzCgT,EAAqB,CAACnT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC1DmT,EAAsB,CAACpT,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KAC3DzG,EAAoB,CAACwG,EAAAA,SAAS,CAAEE,KAAMkG,UACtCnO,EAAmB,CAAC+H,EAAAA,SAAS,CAAEE,KAAMkG,UACrCpM,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBy9B,EAAuC,CAACx9B,EAAAA,MAAM,QAAS,WACvD3L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAMs+B,EAAsC,CAAExoC,KAAM,SAAUO,KAAM,2BAA4B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,6BAA8BA,EAAKtK,IAAKsK,GAAOA,EAAI49B,0BAA4B9+B,SAAUF,GAAa,KAAMhE,GACpR9G,EAAa,KAAM,KAAMsD,EAAmB,CAAE3C,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI/J,MAAON,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI/J,MAAQA,IAAY6I,SAAUF,GAAazD,EAAqBC,GACnQtH,EAAa,KAAM,KAAM8oC,EAAqB,CAAEnoC,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI69B,QAASloC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI69B,QAAU5nC,IAAY6I,SAAUF,GAAas+B,EAAuBC,GAC/QrpC,EAAa,KAAM,KAAM+oC,EAAsB,CAAEpoC,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI89B,SAAUnoC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI89B,SAAW7nC,IAAY6I,SAAUF,GAAaw+B,EAAwBC,GACrRvpC,EAAa,KAAM,KAAMgpC,EAAuB,CAAEroC,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAI+9B,UAAWpoC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+9B,UAAY9nC,IAAY6I,SAAUF,GAAa0+B,EAAyBC,GAC3RzpC,EAAa,KAAM,KAAMipC,EAAyB,CAAEtoC,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIg+B,YAAaroC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIg+B,YAAc/nC,IAAY6I,SAAUF,GAAa4+B,EAA2BC,GACvS3pC,EAAa,KAAM,KAAMkpC,EAAyB,CAAEvoC,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIi+B,YAAatoC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIi+B,YAAchoC,IAAY6I,SAAUF,GAAa8+B,EAA2BC,GACvS7pC,EAAa,KAAM,KAAMsgC,EAAsB,CAAE3/B,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAI+0B,SAAUp/B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI+0B,SAAW9+B,IAAY6I,SAAUF,GAAa81B,EAAwBC,GACrR7gC,EAAa,KAAM,KAAMqe,EAAoB,CAAE1d,KAAM,QAASO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIgT,OAAQrd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIgT,OAAS/c,IAAY6I,SAAUF,GAAa4T,EAAsBC,GACzQ3e,EAAa,KAAM,KAAMse,EAAqB,CAAE3d,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIiT,QAAStd,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIiT,QAAUhd,IAAY6I,SAAUF,GAAa8T,EAAuBC,GAC/Q7e,EAAa,KAAM,KAAM0E,EAAmB,CAAE/D,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIwC,MAAO7M,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwC,MAAQvM,IAAY6I,SAAUF,GAAajB,EAAqBC,GACnQ9J,EAAa,KAAM,KAAMmD,EAAkB,CAAExC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAId,KAAMvJ,IAAK,CAACqK,EAAK/J,KAAY+J,EAAId,KAAOjJ,IAAY6I,SAAUF,GAAa/D,EAAoBC,GAC7PhH,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,MAAA6E,GACI,MAAM4+B,EAAgBv/B,KAAKk/B,SAAWl/B,KAAK1I,MACrCy6B,EAAW/xB,KAAKo2B,SAAW,wCAA0C,GACrEoJ,EAAUx/B,KAAKy/B,aACrB,IAAKF,IAAkBv/B,KAAKm/B,WAAan/B,KAAKo/B,UAC1C,OAAOvnC,MAAc;;;;QAMzB,MAAMs+B,EAAcoJ,GAAiB,GAAGv/B,KAAKm/B,aAAan/B,KAAKo/B,YAC/D,OAAOvnC,MAAc;;UAEvBmqB,EAAAA,WAAW+P;UACX/xB,KAAKq/B,aAAeG,EACZ3nC,MAAK,YAAY2nC;gBACnBrJ;kBAEEt+B,EAAAA,IAAK,+BAA+Bs+B;;KAG9C,CACA,MAAAv1B,GACI,OAAO4E,EAAAA,GAAY,GA7Gd,+5CA8GT,CACA,IAAAvO,GACI+I,KAAKi/B,0BACT,CACA,wBAAAA,GACI,GAAIj/B,KAAKqU,QAAQqrB,eAAgB,CAC7B,MAAM3qB,EAAS/U,KAAKqU,OAAOqrB,eAC3B1/B,KAAKk/B,QAAUnqB,EAAOmqB,SAAWl/B,KAAK1I,MACtC0I,KAAKm/B,SAAWpqB,EAAOoqB,SAAW14B,OAAOsO,EAAOoqB,UAAY,GAC5Dn/B,KAAKo/B,UAAYrqB,EAAOqqB,UAAY34B,OAAOsO,EAAOqqB,WAAa,GAC/Dp/B,KAAKq/B,YAActqB,EAAOsqB,cAAe,EACzCr/B,KAAKs/B,YAAcvqB,EAAOuqB,aAAe,SACzCt/B,KAAKo2B,SAAWrhB,EAAOqhB,WAAY,CACvC,CACJ,CACA,UAAAqJ,GACI,IAAKz/B,KAAKq/B,YACN,MAAO,GAEX,MAAMH,EAAUl/B,KAAKk/B,SAAWl/B,KAAK1I,MAC/BqoC,EAAM3/B,KAAKm/B,SACXS,EAAM5/B,KAAKo/B,UACjB,OAAQp/B,KAAKs/B,aACT,IAAK,SACD,OAAIK,GAAOC,EACA,iCAAiCD,KAAOC,IAE/CV,EACO,mDAAmDW,mBAAmBX,KAE1E,GACX,IAAK,gBACD,OAAIS,GAAOC,EACA,uCAAuCD,UAAYC,YAE1DV,EACO,8CAA8CW,mBAAmBX,KAErE,GACX,IAAK,QACD,OAAIS,GAAOC,EACA,8BAA8BD,KAAOC,IAE5CV,EACO,mCAAmCW,mBAAmBX,KAE1D,GACX,QACI,MAAO,GAEnB,CACA,WAAA16B,GACIC,SAASjN,WACTwI,KAAK1I,OAASF,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMxD,EAAqB,KAChHwD,KAAKk/B,SAAW9nC,EAAkB4I,KAAMvD,GAA2BrF,EAAkB4I,KAAMu+B,EAAuB,KAClHv+B,KAAKm/B,UAAY/nC,EAAkB4I,KAAMw+B,GAA6BpnC,EAAkB4I,KAAMy+B,EAAwB,KACtHz+B,KAAKo/B,WAAahoC,EAAkB4I,KAAM0+B,GAA8BtnC,EAAkB4I,KAAM2+B,EAAyB,KACzH3+B,KAAKq/B,aAAejoC,EAAkB4I,KAAM4+B,GAA+BxnC,EAAkB4I,KAAM6+B,GAA2B,IAC9H7+B,KAAKs/B,aAAeloC,EAAkB4I,KAAM8+B,GAAiC1nC,EAAkB4I,KAAM++B,EAA2B,WAChI/+B,KAAKo2B,UAAYh/B,EAAkB4I,KAAMg/B,GAAiC5nC,EAAkB4I,KAAM+1B,GAAwB,IAC1H/1B,KAAKqU,QAAUjd,EAAkB4I,KAAMg2B,GAA8B5+B,EAAkB4I,KAAM6T,EAAsB,OACnH7T,KAAKsU,SAAWld,EAAkB4I,KAAM8T,GAA4B1c,EAAkB4I,KAAM+T,EAAuB,OACnH/T,KAAK6D,OAASzM,EAAkB4I,KAAMgU,GAA6B5c,EAAkB4I,KAAMhB,EAAqB,SAChHgB,KAAKO,MAAQnJ,EAAkB4I,KAAMf,GAA2B7H,EAAkB4I,KAAM9D,EAAoB,aAC5G9E,EAAkB4I,KAAM7D,EAC5B,GAGP,EAhLuB,GCkBT,MACX,IACI/D,EAEAC,EAGAkP,EAGAu4B,EAGAC,EAGAC,EAGA5b,EAGA6b,EAGAC,EAGA7lC,EACAC,EACAC,EACA4lC,EACAC,EACAC,EACAC,EACAC,EACAC,EAnCA7kC,EAAmB,CAACC,UAAQ,cAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BwL,EAAyB,GACzBC,EAA8B,GAE9B+4B,EAA0B,GAC1BC,EAA+B,GAE/BC,EAA0B,GAC1BC,EAA+B,GAE/BC,EAA2B,GAC3BC,EAAgC,GAEhC1b,EAAqB,GACrBC,EAA0B,GAE1B0b,EAAsB,GACtBC,EAA2B,GAE3BC,EAAwB,GACxBC,EAA6B,IAUjC,cAAenlC,SACF1D,EAAa2H,IAAK,QAEvB,MAAMC,EAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HoH,EAAuB,CAAClH,EAAAA,SAAS,CAAEE,KAAMC,WACzCs/B,EAAwB,CAACz/B,EAAAA,SAAS,CAAEE,KAAMC,WAC1Cu/B,EAAwB,CAAC1/B,EAAAA,SAAS,CAAEE,KAAMC,WAC1Cw/B,EAAyB,CAAC3/B,EAAAA,SAAS,CAAEE,KAAMC,WAC3C4jB,EAAmB,CAAC/jB,EAAAA,SAAS,CAAEE,KAAMpK,OAAQmK,WAAW,KACxD2/B,EAAoB,CAAC5/B,EAAAA,SAAS,CAAEE,KAAME,UACtCy/B,EAAsB,CAAC7/B,EAAAA,SAAS,CAAEE,KAAMiL,MAAOlL,WAAW,KAC1DjG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAqB,CAACsG,EAAAA,UACtBrG,EAAmB,CAACsG,EAAAA,SACpBs/B,EAA8B,CAACr/B,QAAM,aACrCs/B,EAAkC,CAACt/B,EAAAA,MAAM,YAAa,YAAa,eACnEu/B,EAA0B,CAACv/B,EAAAA,MAAM,OAAQ,YACzCw/B,EAA+B,CAACv/B,EAAAA,SAAS,YAAa,CAAEC,SAAS,EAAMC,UAAU,KACjFs/B,EAAgC,CAACx/B,EAAAA,SAAS,aAAc,CAAEC,SAAS,EAAMC,UAAU,KACnFu/B,EAA+B,CAACz/B,EAAAA,SAAS,YAAa,CAAEC,SAAS,EAAMC,UAAU,KACjF9L,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,GAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMzF,EAAkB,CAAEzE,KAAM,SAAUO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIpK,MAAQkJ,SAAUF,GAAa,KAAMhE,GACpM9G,EAAa6K,KAAM,KAAMmgC,EAA6B,CAAErqC,KAAM,SAAUO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAI8/B,iBAAmBhhC,SAAUF,GAAa,KAAMhE,GAChP9G,EAAa6K,KAAM,KAAMogC,EAAiC,CAAEtqC,KAAM,SAAUO,KAAM,sBAAuB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,wBAAyBA,EAAKtK,IAAKsK,GAAOA,EAAI+/B,qBAAuBjhC,SAAUF,GAAa,KAAMhE,GAChQ9G,EAAa6K,KAAM,KAAMqgC,EAAyB,CAAEvqC,KAAM,SAAUO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIggC,aAAelhC,SAAUF,GAAa,KAAMhE,GAChO9G,EAAa6K,KAAM,KAAMsgC,EAA8B,CAAExqC,KAAM,SAAUO,KAAM,mBAAoB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,qBAAsBA,EAAKtK,IAAKsK,GAAOA,EAAIigC,kBAAoBnhC,SAAUF,GAAa,KAAMhE,GACpP9G,EAAa6K,KAAM,KAAMugC,EAA+B,CAAEzqC,KAAM,SAAUO,KAAM,oBAAqB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,sBAAuBA,EAAKtK,IAAKsK,GAAOA,EAAIkgC,mBAAqBphC,SAAUF,GAAa,KAAMhE,GACxP9G,EAAa6K,KAAM,KAAMwgC,EAA8B,CAAE1qC,KAAM,SAAUO,KAAM,mBAAoB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,qBAAsBA,EAAKtK,IAAKsK,GAAOA,EAAImgC,kBAAoBrhC,SAAUF,GAAa,KAAMhE,GACpP9G,EAAa,KAAM,KAAMoS,EAAsB,CAAEzR,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIwG,SAAU7Q,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwG,SAAWvQ,IAAY6I,SAAUF,GAAawH,EAAwBC,GACrRvS,EAAa,KAAM,KAAM2qC,EAAuB,CAAEhqC,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIogC,UAAWzqC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIogC,UAAYnqC,IAAY6I,SAAUF,GAAawgC,EAAyBC,GAC3RvrC,EAAa,KAAM,KAAM4qC,EAAuB,CAAEjqC,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIqgC,UAAW1qC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqgC,UAAYpqC,IAAY6I,SAAUF,GAAa0gC,EAAyBC,GAC3RzrC,EAAa,KAAM,KAAM6qC,EAAwB,CAAElqC,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIsgC,WAAY3qC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIsgC,WAAarqC,IAAY6I,SAAUF,GAAa4gC,EAA0BC,GACjS3rC,EAAa,KAAM,KAAMivB,EAAkB,CAAEtuB,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAImZ,KAAMxjB,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImZ,KAAOljB,IAAY6I,SAAUF,GAAamlB,EAAoBC,GAC7PlwB,EAAa,KAAM,KAAM8qC,EAAmB,CAAEnqC,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIuN,MAAO5X,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIuN,MAAQtX,IAAY6I,SAAUF,GAAa8gC,EAAqBC,GACnQ7rC,EAAa,KAAM,KAAM+qC,EAAqB,CAAEpqC,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIugC,QAAS5qC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIugC,QAAUtqC,IAAY6I,SAAUF,GAAaghC,EAAuBC,GAC/Q/rC,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,GAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,GAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,IACjI7I,EAAkBiB,EAAYyD,EAC1C,CAEQ,yBAAA+lC,GACI,MAAMrnB,EAAO,CAAA,EAUb,OARkBxa,KAAK8hC,oBAAoBh9B,OAAOzO,GAAQA,EAAKyB,WAAW,UAAqB,sBAATzB,GAC5Eqc,QAAQqvB,IACd,MAAMhsC,EAAMgsC,EAAS/pC,MAAM,GACrBV,EAAQ0I,KAAK4R,aAAamwB,GAClB,OAAVzqC,IACAkjB,EAAKzkB,GAAOuB,KAGbkjB,CACX,CACA,MAAA7Z,GACI,OAAO9I,MAAc;2DAC2BuO,GAAMpG,KAAKgiC,eAAe57B,eAAgBA,GAAMpG,KAAKiiC,cAAc77B;cACjHpG,KAAK2hC;YACP3hC,KAAKkiC;;;gBAGDliC,KAAK4hC,SAAW5hC,KAAK4hC,QAAQprC;cAC/BwJ,KAAK4hC,QAAQn0B,IAAI,CAAC4G,EAAQ8tB,IAAgBniC,KAAKoiC,WAAW/tB,EAAQ8tB;;iBAE/DniC,KAAK4hC,UAAY5hC,KAAK4hC,QAAQprC;;;;;KAMvC,CACA,MAAAoK,GACI,OAAO4E,EAAAA,GAAY,GAhHd,+5GAiHT,CACA,IAAAvO,GAES+I,KAAKwa,MAA0C,IAAlCrkB,OAAOo6B,KAAKvwB,KAAKwa,MAAMhkB,SACrCwJ,KAAKwa,KAAOxa,KAAK6hC,6BAErB7hC,KAAKohC,sBACLphC,KAAKqiC,gBACT,CACA,cAAAA,GACSriC,KAAK4hC,SAGV5hC,KAAK4hC,QAAQlvB,QAAQ,CAAC2B,EAAQzF,KAC1B,MAAM0zB,EAActiC,KAAK4G,YAAYL,cAAc,uBAAuBqI,OAC1E,GAAI0zB,EAAa,CACb,MAAMhrC,EAAQ0I,KAAKwa,KAAKnG,EAAOte,KAC/BusC,EAAYhrC,MAAQA,EACpBgrC,EAAYjuB,OAASA,EACrBiuB,EAAYhuB,QAAUtU,KAAKwa,KAEP,cAAhBnG,EAAO9T,MAAwBiL,MAAMiP,QAAQnjB,KAC7CgrC,EAAY9nB,KAAOljB,EAE3B,GAER,CACA,eAAA6pC,GACInhC,KAAKohC,sBACL,MAAMmB,EAAWviC,KAAK4G,YAAYL,cAAc,iBAC5Cg8B,IACAA,EAASC,QAAUxiC,KAAK6H,SAEhC,CACA,mBAAAu5B,GACIphC,KAAK6F,UAAUC,OAAO,iBAAkB9F,KAAKyhC,WAC7CzhC,KAAK6F,UAAUC,OAAO,iBAAkB9F,KAAK0hC,WAC7C1hC,KAAK6F,UAAUC,OAAO,kBAAmB9F,KAAK2hC,YAC9C3hC,KAAK6F,UAAUC,OAAO,gBAAiB9F,KAAK6H,SAChD,CACA,WAAAw5B,GAGIrvB,WAAW,IAAMhS,KAAKqiC,iBAAkB,EAC5C,CACA,cAAAL,CAAe57B,GACX,MAAMpQ,EAASoQ,EAAEpQ,OAEbA,EAAOysC,QAAQ,kBAIfzsC,EAAOysC,QAAQ,6BAGfziC,KAAK0hC,WACL1hC,KAAKshC,mBAELthC,KAAK2hC,YACL3hC,KAAK0iC,kBAEb,CACA,YAAAv9B,CAAaiB,GACT,MAAMpQ,EAASoQ,EAAEpQ,OACjB,IAAKA,EAAOysC,QAAQ,iBAChB,OACJ,MAAMF,EAAWvsC,EACjBgK,KAAK6H,SAAW06B,EAASC,QACzBxiC,KAAKuhC,mBACT,CACA,aAAAU,CAAc77B,GACI,UAAVA,EAAErQ,KAA6B,MAAVqQ,EAAErQ,MACvBqQ,EAAE+J,iBACEnQ,KAAK2hC,WACL3hC,KAAK0iC,kBAEA1iC,KAAK0hC,WACV1hC,KAAKshC,mBAGjB,CACA,cAAAY,GACI,OAAOrqC,MAAc;;;;;qBAKZmI,KAAK6H;;oBAELzB,GAAMpG,KAAKmF,aAAaiB;;;KAIrC,CACA,UAAAg8B,CAAW/tB,EAAQ8tB,GACfniC,KAAKwa,KAAKnG,EAAOte,KACjB,MAAM4sC,EAAgB3iC,KAAK4iC,iBAAiBvuB,EAAO9T,MACnD,OAAO1I,MAAc;+BACFwc,EAAO9T,4BAA4BP,KAAK6iC,cAAcxuB;UAC3E2N,EAAAA,WAAW,IAAI2gB,sBACPtuB,EAAO9T,2BACN8T,EAAOxQ,OAAS,yCACJs+B,kBAClBQ;;KAGL,CACA,gBAAAC,CAAiBriC,GACb,OAAQA,GACJ,IAAK,OACD,MAAO,kBACX,IAAK,SACL,IAAK,aACL,IAAK,aACL,IAAK,WACD,MAAO,oBACX,IAAK,OACD,MAAO,kBACX,IAAK,UACD,MAAO,qBACX,IAAK,YACD,MAAO,uBACX,IAAK,SACD,MAAO,oBACX,IAAK,WACD,MAAO,sBACX,IAAK,WACD,MAAO,sBACX,IAAK,WACD,MAAO,sBACX,IAAK,OACL,IAAK,MACD,MAAO,kBACX,IAAK,UACD,MAAO,qBACX,IAAK,MACL,IAAK,OACL,IAAK,QACL,IAAK,SACD,MAAO,iBACX,IAAK,QACL,IAAK,SACL,IAAK,YACD,MAAO,mBACX,IAAK,QACD,MAAO,mBACX,IAAK,QACL,IAAK,MACL,IAAK,YACD,MAAO,mBACX,IAAK,SACD,MAAO,oBACX,IAAK,QACD,MAAO,mBACX,IAAK,OACL,IAAK,SACD,MAAO,kBACX,IAAK,WACL,IAAK,QACD,MAAO,sBACX,IAAK,UACL,IAAK,aACD,MAAO,wBACX,IAAK,WACL,IAAK,UACL,IAAK,cACD,MAAO,sBAEX,QACI,MAAO,aAEnB,CACA,aAAAsiC,CAAcxuB,GACV,IAAIzT,EAAS,GASb,OARIyT,EAAOqG,QACP9Z,EAAO/J,KAAK,UAAUwd,EAAOqG,SAC7B9Z,EAAO/J,KAAK,cAAcwd,EAAOqG,SACjC9Z,EAAO/J,KAAK,cAAcwd,EAAOqG,UAEjCrG,EAAOxQ,OACPjD,EAAO/J,KAAK,eAAewd,EAAOxQ,SAE/BjD,EAAOmE,KAAK,KACvB,CACA,UAAA+9B,CAAWxrC,GACP,GAAIA,QACA,MAAO,GAEX,MAAMykC,EAAMt1B,OAAOnP,GACbyrC,EAAMvyB,SAASuS,cAAc,OAEnC,OADAggB,EAAIl8B,YAAck1B,EACXgH,EAAI1vB,SACf,CACA,eAAAqvB,GACI1iC,KAAK6H,UAAY7H,KAAK6H,SACtB7H,KAAKuhC,mBACT,CACA,gBAAAD,GACI,MAAO,CACH9mB,KAAMxa,KAAKwa,KACX5L,MAAO5O,KAAK4O,MACZhT,QAASoE,KAEjB,CACA,iBAAAuhC,GACI,MAAO,CACH15B,SAAU7H,KAAK6H,SACf2S,KAAMxa,KAAKwa,KACX5L,MAAO5O,KAAK4O,MACZhT,QAASoE,KAEjB,CACA,gBAAAwhC,GACI,MAAO,CACHhnB,KAAMxa,KAAKwa,KACX5L,MAAO5O,KAAK4O,MACZhT,QAASoE,KAEjB,CAEA,MAAAkH,GACIlH,KAAK6H,UAAW,EAChB7H,KAAKuhC,mBACT,CACA,QAAAyB,GACIhjC,KAAK6H,UAAW,EAChB7H,KAAKuhC,mBACT,CACA,QAAA0B,GACIx+B,MAAMuC,QACNhH,KAAK6S,eAAe,CAAEqwB,SAAU,SAAUpwB,MAAO,WACrD,CACA,YAAAqwB,CAAaC,GACT,OAAOpjC,KAAKwa,KAAK4oB,EACrB,CACA,YAAAC,CAAaD,EAAW9rC,GACpB0I,KAAKwa,KAAO,IAAKxa,KAAKwa,KAAM4oB,CAACA,GAAY9rC,GACzC0I,KAAKqhC,aACT,CACA,cAAAiC,CAAeF,GACX,MAAM/uB,EAASrU,KAAK4hC,QAAQvvB,KAAKkxB,GAAOA,EAAIxtC,MAAQqtC,GACpD,IAAK/uB,EACD,OAAO,KACX,MAAM8tB,EAAcniC,KAAK4hC,QAAQ4B,QAAQnvB,GACzC,OAAOrU,KAAK4G,YAAYL,cAAc,uBAAuB47B,QAAoB,IACrF,CAEA,SAAA3kB,CAAUimB,EAAW,KACjBzjC,KAAK6F,UAAUG,IAAI,oBACnBgM,WAAW,KACPhS,KAAK6F,UAAUa,OAAO,qBACvB+8B,EACP,CACA,WAAAj/B,GACIC,SAASjN,WACTwI,KAAK6H,UAAYzQ,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMyH,GAAwB,IACtHzH,KAAKyhC,WAAarqC,EAAkB4I,KAAM0H,GAA8BtQ,EAAkB4I,KAAMygC,GAAyB,IACzHzgC,KAAK0hC,WAAatqC,EAAkB4I,KAAM0gC,GAA+BtpC,EAAkB4I,KAAM2gC,GAAyB,IAC1H3gC,KAAK2hC,YAAcvqC,EAAkB4I,KAAM4gC,GAA+BxpC,EAAkB4I,KAAM6gC,GAA0B,IAC5H7gC,KAAKwa,MAAQpjB,EAAkB4I,KAAM8gC,GAAgC1pC,EAAkB4I,KAAMolB,EAAoB,CAAA,IACjHplB,KAAK4O,OAASxX,EAAkB4I,KAAMqlB,GAA0BjuB,EAAkB4I,KAAM+gC,EAAqB,IAC7G/gC,KAAK4hC,SAAWxqC,EAAkB4I,KAAMghC,GAA2B5pC,EAAkB4I,KAAMihC,EAAuB,KAClH7pC,EAAkB4I,KAAMkhC,EAC5B,GAGP,EAzXc,GCWZ,IAACwC,EAAa,MACb,IACItrC,EAEAC,EAGAsrC,EAGA17B,EAGAmgB,EAGAD,EAGA6X,EAGAF,EAGAC,EAGA6D,EAGAC,EAGAC,EAGAC,EAGAC,EAGAhrC,EAGAirC,EAGAC,EAGAC,EAGAC,EAGAC,EACAC,EACAhqC,EACAD,EACAkqC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAvEAtpC,EAAmB,CAACC,UAAQ,gBAE5BE,EAA0B,GAE1BC,EAAcC,YACdC,EAA6B,GAE7BipC,EAAwB,GACxBC,EAA6B,GAE7B37B,EAA2B,GAC3BC,EAAgC,GAEhCihB,EAA2B,GAC3BC,EAAgC,GAEhCH,EAAyB,GACzBC,EAA8B,GAE9BoW,EAA2B,GAC3BC,EAAgC,GAEhCL,EAA0B,GAC1BC,EAA+B,GAE/BC,EAA0B,GAC1BC,GAA+B,GAE/BwE,GAAqB,GACrBC,GAA0B,GAE1BC,GAA+B,GAC/BC,GAAoC,GAEpCC,GAA4B,GAC5BC,GAAiC,GAEjCC,GAAyB,GACzBC,GAA8B,GAE9BC,GAAgC,GAChCC,GAAqC,GAErCvoC,GAAwB,GACxBC,GAA6B,GAE7BuoC,GAA6B,GAC7BC,GAAkC,GAElCC,GAAsB,GACtBC,GAA2B,GAE3BC,GAAsB,GACtBC,GAA2B,GAE3BC,GAAsB,GACtBC,GAA2B,GA06B/B,OA15BA,cAAetqC,SACF1D,EAAa2H,IAAK,CAC3B,WAAAwE,GACIC,SAASjN,WACTwI,KAAKsmC,SAAWlvC,EAAkB4I,KAAM/D,GAA6B7E,EAAkB4I,KAAMklC,GAAuB,IACpHllC,KAAKiM,YAAc7U,EAAkB4I,KAAMmlC,GAA6B/tC,EAAkB4I,KAAMwJ,GAA0B,IAC1HxJ,KAAK+tB,YAAc32B,EAAkB4I,KAAMyJ,GAAgCrS,EAAkB4I,KAAM0qB,GAA0B,IAC7H1qB,KAAK8tB,UAAY12B,EAAkB4I,KAAM2qB,GAAgCvzB,EAAkB4I,KAAMwqB,GAAwB,IACzHxqB,KAAK2hC,YAAcvqC,EAAkB4I,KAAMyqB,GAA8BrzB,EAAkB4I,KAAM6gC,GAA0B,IAC3H7gC,KAAKyhC,WAAarqC,EAAkB4I,KAAM8gC,GAAgC1pC,EAAkB4I,KAAMygC,GAAyB,IAC3HzgC,KAAK0hC,WAAatqC,EAAkB4I,KAAM0gC,GAA+BtpC,EAAkB4I,KAAM2gC,GAAyB,IAC1H3gC,KAAKumC,MAAQnvC,EAAkB4I,KAAM4gC,IAA+BxpC,EAAkB4I,KAAMolC,IAAoB,IAChHplC,KAAKwmC,gBAAkBpvC,EAAkB4I,KAAMqlC,IAA0BjuC,EAAkB4I,KAAMslC,GAA8B,MAE/HtlC,KAAK4hC,SAAWxqC,EAAkB4I,KAAMulC,IAAoC,IAC5EvlC,KAAKwa,KAAO,GACZxa,KAAKymC,YAAcrvC,EAAkB4I,KAAMwlC,GAA2B,IAGtExlC,KAAK0mC,YAActvC,EAAkB4I,KAAMylC,IAAiC,IAC5EzlC,KAAK2mC,SAAWvvC,EAAkB4I,KAAM0lC,GAAwB,IAChE1lC,KAAK4mC,iBAAmBxvC,EAAkB4I,KAAM2lC,IAA8BvuC,EAAkB4I,KAAM4lC,GAA+B,KACrI5lC,KAAKiD,SAAW7L,EAAkB4I,KAAM6lC,IAAqCzuC,EAAkB4I,KAAM1C,IAAuB,IAC5H0C,KAAK6mC,cAAgBzvC,EAAkB4I,KAAMzC,IAA6BnG,EAAkB4I,KAAM8lC,GAA4B,KAC9H9lC,KAAK8mC,OAAS1vC,EAAkB4I,KAAM+lC,IAAkC3uC,EAAkB4I,KAAMgmC,QAAqB,IACrHhmC,KAAK+mC,OAAS3vC,EAAkB4I,KAAMimC,IAA2B7uC,EAAkB4I,KAAMkmC,QAAqB,IAC9GlmC,KAAKgnC,OAAS5vC,EAAkB4I,KAAMmmC,IAA2B/uC,EAAkB4I,KAAMomC,QAAqB,IAC9GpmC,KAAKinC,gBAAkB7vC,EAAkB4I,KAAMqmC,KAA2B,GAC1ErmC,KAAKknC,cAAgB,GACrBlnC,KAAKmnC,mBAAqB,KAC1BnnC,KAAKonC,YAAehhC,IAChB,MAAMpQ,EAASoQ,EAAEpQ,OAEXqxC,EAAKrxC,EAAO+c,QAAQ,eAC1B,GAAIs0B,EAAI,CACJ,MAAMjE,EAAYiE,EAAGz1B,aAAa,YAIlC,YAHIwxB,GACApjC,KAAKsnC,WAAWlE,GAAW,GAGnC,CAEA,MAAMmE,EAAKvxC,EAAO+c,QAAQ,YAC1B,GAAIw0B,EAAI,CAEJ,GAAIvxC,EAAOysC,QAAQ,mDACf,OAEJ,MAAM+E,EAAWlN,SAASiN,EAAG31B,aAAa,eAAiB,KACrD0C,EAAUtU,KAAKwa,KAAKgtB,GAE1B,GAAIxnC,KAAK2hC,WAAY,CACjB,MAAM8F,EAAsBznC,KAAK6mC,aAAav1B,SAASk2B,GAEnDxnC,KAAK6mC,aADLY,EACoBznC,KAAK6mC,aAAa/hC,OAAOvO,GAAKA,IAAMixC,GAGpC,IAAIxnC,KAAK6mC,aAAcW,GAE/CxnC,KAAK0nC,0BACL1nC,KAAK2nC,uBACL3nC,KAAK4nC,4BAA4BJ,GAAWC,EAChD,CAEIznC,KAAK0hC,WACL1hC,KAAKywB,cAAc,IAAIC,YAAY,cAAe,CAC9CC,OAAQ,CAAErc,UAASkzB,cAG/B,GAEJxnC,KAAKmF,aAAgBiB,IACjB,MAAMpQ,EAASoQ,EAAEpQ,OAEjB,GAAIA,EAAOysC,QAAQ,eAAgB,CAC/B,MAAMF,EAAWvsC,EACXwxC,EAAWlN,SAASiI,EAAS3wB,aAAa,mBAAqB,KAYrE,OAXI2wB,EAASC,QACJxiC,KAAK6mC,aAAav1B,SAASk2B,KAC5BxnC,KAAK6mC,aAAe,IAAI7mC,KAAK6mC,aAAcW,IAI/CxnC,KAAK6mC,aAAe7mC,KAAK6mC,aAAa/hC,OAAOvO,GAAKA,IAAMixC,GAE5DxnC,KAAK0nC,0BACL1nC,KAAK2nC,4BACL3nC,KAAK4nC,4BAA4BJ,EAAUjF,EAASC,QAExD,CAEA,GAAIxsC,EAAOysC,QAAQ,eAAgB,CAC/B,MAAMF,EAAWvsC,EACbusC,EAASC,QACTxiC,KAAK6mC,aAAe7mC,KAAKwa,KAAK/M,IAAI,CAAC5X,EAAG+Y,IAAUA,GAGhD5O,KAAK6mC,aAAe,GAExB7mC,KAAK0nC,0BACL1nC,KAAK6nC,yBAAyBtF,EAASC,QAC3C,GAEJxiC,KAAK8nC,WAAa,KACd9nC,KAAKinC,gBAAiB,EACtBjnC,KAAK+nC,iBACL/nC,KAAKgoC,gBAEThoC,KAAKioC,sBAAwB,KAC7BjoC,KAAKyO,kBAAqBrI,IACtB,MACMlC,EADSkC,EAAEpQ,OAEjBgK,KAAK0mC,WAAaxiC,EAAM5M,MAEpB0I,KAAKioC,uBACLC,aAAaloC,KAAKioC,uBAEtBjoC,KAAKioC,sBAAwBj2B,WAAW,KACpChS,KAAKmoC,wBACNnoC,KAAKwmC,iBAEZxmC,KAAKooC,wBAA0B,KAC/BpoC,KAAKqoC,qBAAwBjiC,IACzBpG,KAAK2mC,SAAWn7B,MAAMiP,QAAQrU,EAAEuqB,OAAOr5B,OAAS8O,EAAEuqB,OAAOr5B,MAAMyN,KAAK,KAAOqB,EAAEuqB,OAAOr5B,MAEhF0I,KAAKooC,yBACLF,aAAaloC,KAAKooC,yBAEtBpoC,KAAKooC,wBAA0Bp2B,WAAW,KACtChS,KAAKmoC,wBACN,KAEX,QAEI,MAAMloC,GAA8B,mBAAXC,QAAyBA,OAAOC,SAAWhK,OAAOiK,OAAOrE,EAAYmE,OAAOC,WAAa,WAAQ,EAC1HwjC,EAAsB,CAACtjC,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,aAC5D2H,EAAyB,CAAC5H,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,gBAC/D8nB,EAAyB,CAAC/nB,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,gBAC/D6nB,EAAuB,CAAC9nB,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,cAC7D0/B,EAAyB,CAAC3/B,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,gBAC/Dw/B,EAAwB,CAACz/B,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,eAC9Dy/B,EAAwB,CAAC1/B,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,eAC9DsjC,EAAmB,CAACvjC,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,UACzDujC,EAA6B,CAACxjC,EAAAA,SAAS,CAAEE,KAAME,OAAQH,UAAW,qBAClEwjC,EAA0B,CAACzjC,EAAAA,SAAS,CAAEE,KAAMiL,MAAOlL,WAAW,KAC9DyjC,EAAuB,CAAC1jC,EAAAA,SAAS,CAAEE,KAAMkG,OAAQnG,UAAW,cAC5D0jC,EAA8B,CAAC3jC,EAAAA,SAAS,CAAEE,KAAMiL,MAAOlL,WAAW,KAClEtH,EAAsB,CAACqH,EAAAA,SAAS,CAAEE,KAAMC,QAASF,UAAW,aAC5D2jC,EAA2B,CAAC5jC,EAAAA,SAAS,CAAEE,KAAMiL,MAAOlL,WAAW,KAC/D4jC,EAAoB,CAACxjC,QAAM,UAC3ByjC,EAAoB,CAACzjC,QAAM,UAC3B0jC,EAAoB,CAAC1jC,QAAM,UAC3B2jC,EAA6B,CAACiE,UAAQ,iBACtChE,EAA2B,CAACgE,UAAQ,eACpChuC,EAAqB,CAACsG,EAAAA,UACtBvG,EAAqB,CAACsG,EAAAA,UACtB4jC,EAAyB,CAAC1jC,EAAAA,SAC1B2jC,EAA0C,CAAC1jC,QAAM,qBACjD2jC,EAAmC,CAAC3jC,QAAM,aAC1C4jC,EAAqC,CAAC5jC,QAAM,eAC5C6jC,EAAkC,CAAC7jC,QAAM,YACzC8jC,EAA+B,CAAC9jC,EAAAA,MAAM,OAAQ,YAC9C+jC,EAAuC,CAAC/jC,QAAM,kBAC9CgkC,EAA+B,CAAChkC,QAAM,iBACtCikC,EAAmC,CAACjkC,EAAAA,MAAM,aAAc,eACxDkkC,EAA0C,CAACjkC,EAAAA,SAAS,8BAA+B,CAAEC,SAAS,EAAMC,UAAU,KAC9GgkC,EAAuC,CAAClkC,EAAAA,SAAS,2BAA4B,CAAEC,SAAS,EAAMC,UAAU,KACxG9L,EAAa6K,KAAM,KAAMqkC,EAA4B,CAAEvuC,KAAM,SAAUO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAI0mC,gBAAkB5nC,SAAUF,IAAa,KAAMhE,GAC5O9G,EAAa6K,KAAM,KAAMskC,EAA0B,CAAExuC,KAAM,SAAUO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAI2mC,cAAgB7nC,SAAUF,IAAa,KAAMhE,GACpO9G,EAAa6K,KAAM,KAAM1F,EAAoB,CAAExE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIT,QAAUT,SAAUF,IAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAM3F,EAAoB,CAAEvE,KAAM,SAAUO,KAAM,SAAU6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,WAAYA,EAAKtK,IAAKsK,GAAOA,EAAIV,QAAUR,SAAUF,IAAa,KAAMhE,GAC5M9G,EAAa6K,KAAM,KAAMukC,EAAwB,CAAEzuC,KAAM,SAAUO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIknC,YAAcpoC,SAAUF,IAAa,KAAMhE,GAC5N9G,EAAa6K,KAAM,KAAMwkC,EAAyC,CAAE1uC,KAAM,SAAUO,KAAM,8BAA+B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gCAAiCA,EAAKtK,IAAKsK,GAAOA,EAAImnC,6BAA+BroC,SAAUF,IAAa,KAAMhE,GAChS9G,EAAa6K,KAAM,KAAMykC,EAAkC,CAAE3uC,KAAM,SAAUO,KAAM,uBAAwB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,yBAA0BA,EAAKtK,IAAKsK,GAAOA,EAAIonC,sBAAwBtoC,SAAUF,IAAa,KAAMhE,GACpQ9G,EAAa6K,KAAM,KAAM0kC,EAAoC,CAAE5uC,KAAM,SAAUO,KAAM,yBAA0B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,2BAA4BA,EAAKtK,IAAKsK,GAAOA,EAAIqnC,wBAA0BvoC,SAAUF,IAAa,KAAMhE,GAC5Q9G,EAAa6K,KAAM,KAAM2kC,EAAiC,CAAE7uC,KAAM,SAAUO,KAAM,sBAAuB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,wBAAyBA,EAAKtK,IAAKsK,GAAOA,EAAIsnC,qBAAuBxoC,SAAUF,IAAa,KAAMhE,GAChQ9G,EAAa6K,KAAM,KAAM4kC,EAA8B,CAAE9uC,KAAM,SAAUO,KAAM,mBAAoB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,qBAAsBA,EAAKtK,IAAKsK,GAAOA,EAAIunC,kBAAoBzoC,SAAUF,IAAa,KAAMhE,GACpP9G,EAAa6K,KAAM,KAAM6kC,EAAsC,CAAE/uC,KAAM,SAAUO,KAAM,2BAA4B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,6BAA8BA,EAAKtK,IAAKsK,GAAOA,EAAIwnC,0BAA4B1oC,SAAUF,IAAa,KAAMhE,GACpR9G,EAAa6K,KAAM,KAAM8kC,EAA8B,CAAEhvC,KAAM,SAAUO,KAAM,mBAAoB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,qBAAsBA,EAAKtK,IAAKsK,GAAOA,EAAIynC,kBAAoB3oC,SAAUF,IAAa,KAAMhE,GACpP9G,EAAa6K,KAAM,KAAM+kC,EAAkC,CAAEjvC,KAAM,SAAUO,KAAM,uBAAwB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,yBAA0BA,EAAKtK,IAAKsK,GAAOA,EAAI0nC,sBAAwB5oC,SAAUF,IAAa,KAAMhE,GACpQ9G,EAAa6K,KAAM,KAAMglC,EAAyC,CAAElvC,KAAM,SAAUO,KAAM,8BAA+B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gCAAiCA,EAAKtK,IAAKsK,GAAOA,EAAIumC,6BAA+BznC,SAAUF,IAAa,KAAMhE,GAChS9G,EAAa6K,KAAM,KAAMilC,EAAsC,CAAEnvC,KAAM,SAAUO,KAAM,2BAA4B6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,6BAA8BA,EAAKtK,IAAKsK,GAAOA,EAAIwmC,0BAA4B1nC,SAAUF,IAAa,KAAMhE,GACpR9G,EAAa,KAAM,KAAMwuC,EAAqB,CAAE7tC,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAIilC,QAAStvC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIilC,QAAUhvC,IAAY6I,SAAUF,IAAailC,EAAuBC,GAC/QhwC,EAAa,KAAM,KAAM8S,EAAwB,CAAEnS,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI4K,WAAYjV,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4K,WAAa3U,IAAY6I,SAAUF,IAAauJ,EAA0BC,GACjStU,EAAa,KAAM,KAAMizB,EAAwB,CAAEtyB,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAI0sB,WAAY/2B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0sB,WAAaz2B,IAAY6I,SAAUF,IAAayqB,EAA0BC,GACjSx1B,EAAa,KAAM,KAAMgzB,EAAsB,CAAEryB,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIysB,SAAU92B,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIysB,SAAWx2B,IAAY6I,SAAUF,IAAauqB,EAAwBC,GACrRt1B,EAAa,KAAM,KAAM6qC,EAAwB,CAAElqC,KAAM,QAASO,KAAM,aAAc6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,eAAgBA,EAAKtK,IAAKsK,GAAOA,EAAIsgC,WAAY3qC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIsgC,WAAarqC,IAAY6I,SAAUF,IAAa4gC,EAA0BC,GACjS3rC,EAAa,KAAM,KAAM2qC,EAAuB,CAAEhqC,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIogC,UAAWzqC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIogC,UAAYnqC,IAAY6I,SAAUF,IAAawgC,EAAyBC,GAC3RvrC,EAAa,KAAM,KAAM4qC,EAAuB,CAAEjqC,KAAM,QAASO,KAAM,YAAa6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,cAAeA,EAAKtK,IAAKsK,GAAOA,EAAIqgC,UAAW1qC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIqgC,UAAYpqC,IAAY6I,SAAUF,IAAa0gC,EAAyBC,IAC3RzrC,EAAa,KAAM,KAAMyuC,EAAkB,CAAE9tC,KAAM,QAASO,KAAM,OAAQ6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,SAAUA,EAAKtK,IAAKsK,GAAOA,EAAIklC,KAAMvvC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIklC,KAAOjvC,IAAY6I,SAAUF,IAAamlC,GAAoBC,IAC7PlwC,EAAa,KAAM,KAAM0uC,EAA4B,CAAE/tC,KAAM,QAASO,KAAM,iBAAkB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,mBAAoBA,EAAKtK,IAAKsK,GAAOA,EAAImlC,eAAgBxvC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAImlC,eAAiBlvC,IAAY6I,SAAUF,IAAaqlC,GAA8BC,IACzTpwC,EAAa,KAAM,KAAM2uC,EAAyB,CAAEhuC,KAAM,QAASO,KAAM,cAAe6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,gBAAiBA,EAAKtK,IAAKsK,GAAOA,EAAIolC,YAAazvC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIolC,YAAcnvC,IAAY6I,SAAUF,IAAaulC,GAA2BC,IACvStwC,EAAa,KAAM,KAAM4uC,EAAsB,CAAEjuC,KAAM,QAASO,KAAM,WAAY6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,aAAcA,EAAKtK,IAAKsK,GAAOA,EAAIslC,SAAU3vC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIslC,SAAWrvC,IAAY6I,SAAUF,IAAaylC,GAAwBC,IACrRxwC,EAAa,KAAM,KAAM6uC,EAA6B,CAAEluC,KAAM,QAASO,KAAM,kBAAmB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,oBAAqBA,EAAKtK,IAAKsK,GAAOA,EAAIulC,gBAAiB5vC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIulC,gBAAkBtvC,IAAY6I,SAAUF,IAAa2lC,GAA+BC,IAC/T1wC,EAAa,KAAM,KAAM6D,EAAqB,CAAElD,KAAM,QAASO,KAAM,UAAW6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,YAAaA,EAAKtK,IAAKsK,GAAOA,EAAI4B,QAASjM,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI4B,QAAU3L,IAAY6I,SAAUF,IAAa3C,GAAuBC,IAC/QpI,EAAa,KAAM,KAAM8uC,EAA0B,CAAEnuC,KAAM,QAASO,KAAM,eAAgB6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,iBAAkBA,EAAKtK,IAAKsK,GAAOA,EAAIwlC,aAAc7vC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIwlC,aAAevvC,IAAY6I,SAAUF,IAAa6lC,GAA4BC,IAC7S5wC,EAAa,KAAM,KAAM+uC,EAAmB,CAAEpuC,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAIylC,MAAO9vC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAIylC,MAAQxvC,IAAY6I,SAAUF,IAAa+lC,GAAqBC,IACnQ9wC,EAAa,KAAM,KAAMgvC,EAAmB,CAAEruC,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI0lC,MAAO/vC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI0lC,MAAQzvC,IAAY6I,SAAUF,IAAaimC,GAAqBC,IACnQhxC,EAAa,KAAM,KAAMivC,EAAmB,CAAEtuC,KAAM,QAASO,KAAM,QAAS6K,QAAQ,EAAOC,SAAS,EAAOxK,OAAQ,CAAEyK,IAAKC,GAAO,UAAWA,EAAKtK,IAAKsK,GAAOA,EAAI2lC,MAAOhwC,IAAK,CAACqK,EAAK/J,KAAY+J,EAAI2lC,MAAQ1vC,IAAY6I,SAAUF,IAAammC,GAAqBC,IACnQlxC,EAAa,KAAMiD,EAAmB,CAAEd,MAAOe,GAAcsD,EAAkB,CAAE7F,KAAM,QAASO,KAAMgC,EAAWhC,KAAM8J,SAAUF,IAAa,KAAMnE,GACpJzD,EAAaD,EAAiBd,MAC1B2I,IAAW9J,OAAOgB,eAAekB,EAAY6H,OAAOC,SAAU,CAAEkE,YAAY,EAAMC,cAAc,EAAMC,UAAU,EAAMjN,MAAO2I,KACjI7I,EAAkBiB,EAAYyD,EAC1C,CACQ,OAAAktC,CAAQxuB,GACJxa,KAAKknC,cAAgB,IAAI1sB,GACzBxa,KAAKwa,KAAOA,EACZxa,KAAKW,QACT,CACA,UAAAsoC,CAAWrH,GACP5hC,KAAK4hC,QAAUA,EACf5hC,KAAKW,QACT,CACA,oBAAOonC,GACH,MAAMmB,aAAsB,IAO5B,OANAlpC,KAAK4hC,QAAUsH,EAAOtH,SAAW,GACjC5hC,KAAK4mC,gBAAkBsC,EAAOtC,iBAAmB,SAE3C,IAAIuC,QAAQC,GAAWn6B,sBAAsBm6B,IACnDppC,KAAKqpC,eACLrpC,KAAKspC,iBACEJ,CACX,CACA,kBAAOlB,GACHhoC,KAAKiD,SAAU,EACfjD,KAAK6mC,aAAe,GACpB,IACI,MAAM0C,EAAS,CACXC,OAAQxpC,KAAK0mC,WACb+C,KAAMzpC,KAAKymC,YACXE,SAAU3mC,KAAK2mC,UAEb+C,cAAwBH,GAM9B,OALAvpC,KAAKwa,KAAOkvB,EAASlvB,MAAQ,GAC7Bxa,KAAKiD,SAAU,QAET,IAAIkmC,QAAQC,GAAWn6B,sBAAsBm6B,IACnDppC,KAAK2pC,aACED,CACX,CACA,MAAO1hB,GACHC,QAAQD,MAAM,4BAA6BA,GAC3ChoB,KAAKwa,KAAO,GACZxa,KAAKiD,SAAU,QAET,IAAIkmC,QAAQC,GAAWn6B,sBAAsBm6B,IACnDppC,KAAK2pC,YACT,CACJ,CACA,oBAAAxB,GAESnoC,KAAKiD,UACNjD,KAAKiD,SAAU,GAEfjD,KAAKmnC,oBACLe,aAAaloC,KAAKmnC,oBAEtBnnC,KAAKmnC,mBAAqBn1B,WAAW,KACjChS,KAAKgoC,eACLhoC,KAAKmnC,mBAAqB,MAC3B,IACP,CACA,MAAAvmC,GACI,OAAO4E,KAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6OvB,CACA,MAAA7E,GAGI,OADuBX,KAAK0R,iBAAiB,0BAA0Blb,OAAS,EAGrEqB,MAAc;+DAC0BmI,KAAKonC,uBAAuBpnC,KAAKmF;;;;;;;;QAYzEtN,MAAc;0CACKmI,KAAKonC,uBAAuBpnC,KAAKmF;;;;;;;OASnE,CACA,cAAAmkC,GACI,MAAMM,EAAY5pC,KAAK4G,YAAYL,cAAc,6BACjD,IAAKqjC,EACD,OAEJ,GADqB5pC,KAAKiM,YAAcjM,KAAK+tB,YAM7C,GAAkC,IAA9B6b,EAAUC,SAASrzC,OAAc,CACjC,MAAMszC,EAAct5B,SAASuS,cAAc,OAG3C,GAFA+mB,EAAYlyC,UAAY,iBACxBkyC,EAAY/jC,aAAa,OAAQ,YAC7B/F,KAAKiM,WAAY,CACjB,MAAMU,EAAc6D,SAASuS,cAAc,eAC3CpW,EAAY/U,UAAY,eACxB+U,EAAY5G,aAAa,OAAQ,UACjC4G,EAAY5G,aAAa,cAAe,aACxC4G,EAAY5G,aAAa,OAAQ,UACjC4G,EAAY8D,iBAAiB,QAASzQ,KAAKyO,mBAC3Cq7B,EAAY9mB,YAAYrW,EAC5B,CACA,GAAI3M,KAAK+tB,WAAY,CACjB,MAAM7mB,EAASsJ,SAASuS,cAAc,gBACtC7b,EAAOtP,UAAY,iBACnBsP,EAAOnB,aAAa,WAAY,IAChCmB,EAAOnB,aAAa,aAAc,IAClCmB,EAAOnB,aAAa,YAAa,IACjCmB,EAAOnB,aAAa,cAAe,aACnCmB,EAAOnB,aAAa,OAAQ,UAC5B/F,KAAK4mC,gBAAgBl0B,QAAQ/D,IACzB,MAAM2B,EAASE,SAASuS,cAAc,gBACtCzS,EAAOvK,aAAa,QAAS4I,EAAIrX,OACjCgZ,EAAOzJ,YAAc8H,EAAI/L,MACzBsE,EAAO8b,YAAY1S,KAEvBw5B,EAAY9mB,YAAY9b,EAC5B,CACA0iC,EAAU5mB,YAAY8mB,EAC1B,OAlCIF,EAAUv2B,UAAY,EAmC9B,CACA,gBAAMk1B,GAEFvoC,KAAKyQ,iBAAiB,sBAAuBzQ,KAAK8nC,YAElD9nC,KAAKyQ,iBAAiB,gBAAiBzQ,KAAKqoC,4BAEtC0B,eAAeC,YAAY,sBAC3BD,eAAeC,YAAY,mBAE3BhqC,KAAKiqC,wBAEXjqC,KAAKspC,gBACT,CACA,2BAAMW,GAEF,MAAMC,EAAiB1+B,MAAMiG,KAAKzR,KAAK0R,iBAAiB,iCACxD,GAAIw4B,EAAe1zC,OAAS,EAAG,CAE3BwJ,KAAK4hC,QAAUsI,EAAez8B,IAAK81B,GAAQA,EAAIlT,uBAE3B7kB,MAAMiG,KAAKzR,KAAK0R,iBAAiB,2BACzCgB,QAAQ,CAACy3B,EAAKv7B,KACtBu7B,EAAIvI,QAAU5hC,KAAK4hC,QACnBuI,EAAIv7B,MAAQA,EACZu7B,EAAI1I,UAAYzhC,KAAKyhC,UACrB0I,EAAIzI,UAAY1hC,KAAK0hC,UACrByI,EAAIxI,WAAa3hC,KAAK2hC,aAG1B1yB,sBAAsB,IAAMjP,KAAKoqC,sBACrC,CACJ,CACA,mBAAAA,GACI,MAAMC,EAAkBrqC,KAAK4G,YAAYL,cAAc,mBAClD8jC,GAA2C,IAAxBrqC,KAAK4hC,QAAQprC,SAGrC6zC,EAAgBh3B,UAAYrT,KAAK4hC,QAAQn0B,IAAI81B,GAAO,4BAA4BA,EAAI3gC,eAAemC,KAAK,IAC5G,CACA,2BAAAyjC,GAEwC,IAAhCxoC,KAAK4mC,gBAAgBpwC,OACrBwJ,KAAK6F,UAAUG,IAAI,0BAGnBhG,KAAK6F,UAAUa,OAAO,yBAE9B,CACA,oBAAA+hC,GACIzoC,KAAKqpC,cACT,CACA,sBAAAX,GACI1oC,KAAKW,QACT,CACA,mBAAAgoC,GACI3oC,KAAKqpC,cACT,CACA,gBAAAT,GACI5oC,KAAK2pC,YACT,CACA,wBAAAd,GACI7oC,KAAK0nC,0BACL1nC,KAAK2nC,sBACT,CACA,gBAAAmB,GACI9oC,KAAKqpC,cACT,CACA,oBAAAN,GACI/oC,KAAKspC,gBACT,CACA,YAAAD,GACI,IAAKrpC,KAAK+mC,MACN,OACJ,MAAMuD,EAAY95B,SAASuS,cAAc,MACzC,GAAI/iB,KAAK2hC,WAAY,CACjB,MAAM4I,EAAa/5B,SAASuS,cAAc,MAC1CwnB,EAAW3yC,UAAY,gBACvB,MAAM4yC,EAAcxqC,KAAK6mC,aAAarwC,SAAWwJ,KAAKwa,KAAKhkB,QAAUwJ,KAAKwa,KAAKhkB,OAAS,EAClFi0C,EAAezqC,KAAK6mC,aAAarwC,OAAS,GAAKwJ,KAAK6mC,aAAarwC,OAASwJ,KAAKwa,KAAKhkB,OAC1F+zC,EAAWl3B,UAAY,6CAA6Cm3B,EAAc,UAAY,QAC9FF,EAAUtnB,YAAYunB,GAEtBv4B,WAAW,KACP,MAAMuwB,EAAWgI,EAAWhkC,cAAc,eACtCg8B,IACAA,EAASmI,cAAgBD,IAE9B,EACP,CACAzqC,KAAK4hC,QAAQlvB,QAAQ2B,IACjB,MAAMgzB,EAAK72B,SAASuS,cAAc,MAClCskB,EAAGthC,aAAa,WAAYsO,EAAOte,KAC/BiK,KAAK8tB,WAAgC,IAApBzZ,EAAOyZ,UACxBuZ,EAAGxhC,UAAUG,IAAI,YACjBqhC,EAAGthC,aAAa,OAAQ,UACxBshC,EAAGh0B,UAAYrT,KAAK2qC,qBAAqBt2B,IAGzCgzB,EAAGxgC,YAAcwN,EAAOzR,MAE5B0nC,EAAUtnB,YAAYqkB,KAE1BrnC,KAAK+mC,MAAM1zB,UAAY,GACvBrT,KAAK+mC,MAAM/jB,YAAYsnB,EAC3B,CACA,oBAAAK,CAAqBt2B,GACjB,MAAMu2B,EAAW5qC,KAAKymC,YAAYp0B,KAAK6N,GAAKA,EAAE7L,SAAWA,EAAOte,KAC1D80C,EAAY7qC,KAAKymC,YAAYqE,UAAU5qB,GAAKA,EAAE7L,SAAWA,EAAOte,KAChEg1C,IAAaH,EACnB,IAAII,EAAY,KACZC,EAAc,GACdL,IAC2B,QAAvBA,EAASM,UACTF,EAAY,IAEgB,SAAvBJ,EAASM,YACdF,EAAY,KAEZhrC,KAAKymC,YAAYjwC,OAAS,IAC1By0C,EAAc,4BAA4BJ,EAAY,aAG9D,MAAMM,EAAmB,CAAC,iBAAkBJ,EAAW,SAAW,IAAIjmC,OAAOtE,SAASuE,KAAK,KAC3F,MAAO,oDAEHsP,EAAOzR,qCACDuoC,kBACVH,gBACAC,uCAIJ,CACA,UAAAtB,GACI,IAAK3pC,KAAKgnC,MACN,OAEJ,GADAhnC,KAAKgnC,MAAM3zB,UAAY,GACE,IAArBrT,KAAKwa,KAAKhkB,QAAgBwJ,KAAK4hC,QAAQprC,OAAS,EAAG,CACnD,GAAIwJ,KAAKiD,QAAS,CAEd,MAAMskC,EAAK/2B,SAASuS,cAAc,MAC5BqoB,EAAK56B,SAASuS,cAAc,MAC5BsoB,EAAUrrC,KAAK4hC,QAAQprC,QAAUwJ,KAAK2hC,WAAa,EAAI,GAM7D,OALAyJ,EAAGC,QAAUA,EACbD,EAAGxzC,UAAY,UACfwzC,EAAG/3B,UAAY,kFACfk0B,EAAGvkB,YAAYooB,QACfprC,KAAKgnC,MAAMhkB,YAAYukB,EAE3B,CACK,CAED,MAAMA,EAAK/2B,SAASuS,cAAc,MAC5BqoB,EAAK56B,SAASuS,cAAc,MAC5BsoB,EAAUrrC,KAAK4hC,QAAQprC,QAAUwJ,KAAK2hC,WAAa,EAAI,GAM7D,OALAyJ,EAAGC,QAAUA,EACbD,EAAGxzC,UAAY,UACfwzC,EAAGvkC,YAAc,UACjB0gC,EAAGvkB,YAAYooB,QACfprC,KAAKgnC,MAAMhkB,YAAYukB,EAE3B,CACJ,CACA,MAAM+D,EAAW96B,SAAS+6B,yBAC1BvrC,KAAKwa,KAAK9H,QAAQ,CAAC4B,EAAS1F,KACxB,MAAM24B,EAAK/2B,SAASuS,cAAc,MAClCwkB,EAAGxhC,aAAa,aAAcU,OAAOmI,IAErC,MAAMC,EAAa7O,KAAK6mC,aAAav1B,SAAS1C,GAE9C,GADA24B,EAAGxhC,aAAa,gBAAiBU,OAAOoI,IACpC7O,KAAK2hC,WAAY,CACjB,MAAM4I,EAAa/5B,SAASuS,cAAc,MAC1CwnB,EAAW3yC,UAAY,gBACvB2yC,EAAWl3B,UAAY,6CAA6CxE,EAAa,UAAY,sBAAsBD,QACnH24B,EAAGvkB,YAAYunB,EACnB,CACAvqC,KAAK4hC,QAAQlvB,QAAQ2B,IACjB,MAAM+2B,EAAK56B,SAASuS,cAAc,MAC5BzrB,EAAQgd,EAAQD,EAAOte,KAEvBy1C,EAAcxrC,KAAKyrC,eAAep3B,EAAO9T,MACzC2Q,EAAalR,KAAK0rC,kBAAkBr3B,EAAQ/c,GAClD8zC,EAAG/3B,UAAY,IAAIm4B,KAAet6B,OAAgBs6B,KAClDjE,EAAGvkB,YAAYooB,KAEnBE,EAAStoB,YAAYukB,KAEzBvnC,KAAKgnC,MAAMhkB,YAAYsoB,EAC3B,CACA,iBAAAI,CAAkBr3B,EAAQ/c,GACtB,MAAM4Z,EAAa,CACf,SAASmD,EAAO9T,QAChB,UAAU8T,EAAOxQ,OAAS,UAC1B,UAAU4C,OAAOnP,GAAS,IAAIyf,QAAQ,KAAM,aAC5C,mBA6BJ,MA1BoB,WAAhB1C,EAAO9T,MAAqC,aAAhB8T,EAAO9T,YACXgV,IAApBlB,EAAOuC,UACP1F,EAAWra,KAAK,aAAawd,EAAOuC,aACpCvC,EAAOwC,oBACP3F,EAAWra,KAAK,8BAChBwd,EAAO4C,QACP/F,EAAWra,KAAK,WAAWwd,EAAO4C,WAClC5C,EAAO6C,QACPhG,EAAWra,KAAK,WAAWwd,EAAO6C,YAEtB,SAAhB7C,EAAO9T,MACH8T,EAAOgE,YACPnH,EAAWra,KAAK,gBAAgBwd,EAAOgE,eAE3B,YAAhBhE,EAAO9T,OACH8T,EAAO+E,YACPlI,EAAWra,KAAK,sBAChBwd,EAAOgF,YACPnI,EAAWra,KAAK,gBAAgBwd,EAAOgF,eACvChF,EAAOiF,aACPpI,EAAWra,KAAK,iBAAiBwd,EAAOiF,gBACxCjF,EAAOkF,WACPrI,EAAWra,KAAK,eAAewd,EAAOkF,cACtClF,EAAOmF,YACPtI,EAAWra,KAAK,gBAAgBwd,EAAOmF,gBAExCtI,EAAWnM,KAAK,IAC3B,CACA,cAAA0mC,CAAelrC,GACX,OAAQA,GACJ,IAAK,OACD,MAAO,kBACX,IAAK,SACL,IAAK,WACD,MAAO,oBACX,IAAK,OACD,MAAO,kBACX,IAAK,UACD,MAAO,qBACX,IAAK,SACD,MAAO,oBACX,IAAK,WACD,MAAO,sBACX,IAAK,WACD,MAAO,sBACX,IAAK,WACD,MAAO,sBACX,IAAK,YACD,MAAO,uBACX,IAAK,QACD,MAAO,mBACX,QACI,MAAO,aAEnB,CACA,uBAAAmnC,GACI,IAAK1nC,KAAKgnC,MACN,OACShnC,KAAKgnC,MAAMt1B,iBAAiB,MACpCgB,QAAQ,CAACy3B,EAAKv7B,KACf,MAAMC,EAAa7O,KAAK6mC,aAAav1B,SAAS1C,GAC9Cu7B,EAAIpkC,aAAa,gBAAiBU,OAAOoI,IACzC,MAAM0zB,EAAW4H,EAAI5jC,cAAc,eAC/Bg8B,IACAA,EAASC,QAAU3zB,IAG/B,CACA,oBAAA84B,GACI,MAAMgE,EAAoB3rC,KAAK+mC,OAAOxgC,cAAc,eACpD,IAAKolC,EACD,OACJ,MAAMnB,EAAcxqC,KAAK6mC,aAAarwC,SAAWwJ,KAAKwa,KAAKhkB,OACrDi0C,EAAezqC,KAAK6mC,aAAarwC,OAAS,GAAKwJ,KAAK6mC,aAAarwC,OAASwJ,KAAKwa,KAAKhkB,OAC1Fm1C,EAAkBnJ,QAAUgI,EAC5BmB,EAAkBjB,cAAgBD,CACtC,CACA,UAAAnD,CAAWlE,EAAWwI,GAAY,GAC9B,GAAKA,EAaA,CAED,MAAMC,EAAoB7rC,KAAKymC,YAAYqE,UAAU5qB,GAAKA,EAAE7L,SAAW+uB,GACvE,IAA0B,IAAtByI,EAEA7rC,KAAKymC,YAAc,IAAIzmC,KAAKymC,YAAa,CAAEpyB,OAAQ+uB,EAAW8H,UAAW,YAExE,CAE8B,QADVlrC,KAAKymC,YAAYoF,GACrBX,UAEblrC,KAAKymC,YAAczmC,KAAKymC,YAAYh5B,IAAI,CAACg8B,EAAM76B,IAAUA,IAAUi9B,EAAoB,IAAKpC,EAAMyB,UAAW,QAAWzB,GAIxHzpC,KAAKymC,YAAczmC,KAAKymC,YAAY3hC,OAAOob,GAAKA,EAAE7L,SAAW+uB,EAErE,CACJ,KA/BgB,CAEZ,MAAM0I,EAAe9rC,KAAKymC,YAAYp0B,KAAK6N,GAAKA,EAAE7L,SAAW+uB,GACxD0I,EAG+B,QAA3BA,EAAaZ,UAClBlrC,KAAKymC,YAAc,CAAC,CAAEpyB,OAAQ+uB,EAAW8H,UAAW,SAGpDlrC,KAAKymC,YAAc,GANnBzmC,KAAKymC,YAAc,CAAC,CAAEpyB,OAAQ+uB,EAAW8H,UAAW,OAQ5D,CAoBAlrC,KAAKqpC,eACDrpC,KAAKinC,eACLjnC,KAAKmoC,uBAGLnoC,KAAK+rC,eAEb,CACA,aAAAA,GACS/rC,KAAKknC,cAAc1wC,SACpBwJ,KAAKknC,cAAgB,IAAIlnC,KAAKwa,OAEF,IAA5Bxa,KAAKymC,YAAYjwC,OACjBwJ,KAAKwa,KAAO,IAAIxa,KAAKknC,eAGrBlnC,KAAKwa,KAAO,IAAIxa,KAAKknC,eAAeuC,KAAK,CAACvxB,EAAGD,KACzC,IAAK,MAAM5D,OAAEA,EAAM62B,UAAEA,KAAelrC,KAAKymC,YAAa,CAClD,MAAMuF,EAAO9zB,EAAE7D,IAAW,GACpB43B,EAAOh0B,EAAE5D,IAAW,GACpB63B,EAAMzlC,OAAOulC,GAAMG,cAAc1lC,OAAOwlC,QAAO12B,EAAW,CAAE62B,SAAS,IAC3E,GAAY,IAARF,EACA,MAAqB,QAAdhB,EAAsBgB,GAAOA,CAC5C,CACA,OAAO,IAGflsC,KAAK2pC,YACT,CACA,2BAAA/B,CAA4BJ,EAAU3/B,GAClC,MAAO,CACHg/B,aAAc7mC,KAAK6mC,aACnBW,WACA3/B,WAER,CACA,wBAAAggC,CAAyB2C,GACrB,MAAO,CACH3D,aAAc7mC,KAAK6mC,aACnB2D,cAER,GAEGnyC,CACV,EAp+BgB","x_google_ignoreList":[0]}