snice 4.27.0 → 4.29.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 (624) hide show
  1. package/adapters/react/action-bar.d.ts +30 -0
  2. package/adapters/react/action-bar.d.ts.map +1 -0
  3. package/adapters/react/action-bar.js +24 -0
  4. package/adapters/react/action-bar.js.map +1 -0
  5. package/adapters/react/action-bar.tsx +38 -0
  6. package/adapters/react/binpack.d.ts +35 -0
  7. package/adapters/react/binpack.d.ts.map +1 -0
  8. package/adapters/react/binpack.js +24 -0
  9. package/adapters/react/binpack.js.map +1 -0
  10. package/adapters/react/binpack.tsx +43 -0
  11. package/adapters/react/components.d.ts +4 -0
  12. package/adapters/react/components.d.ts.map +1 -1
  13. package/adapters/react/components.js +2 -0
  14. package/adapters/react/components.js.map +1 -1
  15. package/adapters/react/components.ts +4 -0
  16. package/adapters/react/useRequestHandler.d.ts +56 -0
  17. package/adapters/react/useRequestHandler.js +103 -0
  18. package/adapters/react/useRequestHandler.js.map +1 -0
  19. package/dist/cdn/accordion/snice-accordion.js +1 -1
  20. package/dist/cdn/accordion/snice-accordion.min.js +1 -1
  21. package/dist/cdn/action-bar/README.md +27 -0
  22. package/dist/cdn/action-bar/snice-action-bar.js +249 -0
  23. package/dist/cdn/action-bar/snice-action-bar.js.map +1 -0
  24. package/dist/cdn/action-bar/snice-action-bar.min.js +12 -0
  25. package/dist/cdn/action-bar/snice-action-bar.min.js.map +1 -0
  26. package/dist/cdn/activity-feed/snice-activity-feed.js +1 -1
  27. package/dist/cdn/activity-feed/snice-activity-feed.min.js +1 -1
  28. package/dist/cdn/alert/snice-alert.js +1 -1
  29. package/dist/cdn/alert/snice-alert.min.js +1 -1
  30. package/dist/cdn/app-tiles/snice-app-tiles.js +1 -1
  31. package/dist/cdn/app-tiles/snice-app-tiles.min.js +1 -1
  32. package/dist/cdn/approval-flow/snice-approval-flow.js +1 -1
  33. package/dist/cdn/approval-flow/snice-approval-flow.min.js +1 -1
  34. package/dist/cdn/audio-recorder/snice-audio-recorder.js +1 -1
  35. package/dist/cdn/audio-recorder/snice-audio-recorder.min.js +1 -1
  36. package/dist/cdn/availability/snice-availability.js +1 -1
  37. package/dist/cdn/availability/snice-availability.min.js +1 -1
  38. package/dist/cdn/avatar/snice-avatar.js +1 -1
  39. package/dist/cdn/avatar/snice-avatar.min.js +1 -1
  40. package/dist/cdn/avatar-group/snice-avatar-group.js +1 -1
  41. package/dist/cdn/avatar-group/snice-avatar-group.min.js +1 -1
  42. package/dist/cdn/badge/snice-badge.js +2 -2
  43. package/dist/cdn/badge/snice-badge.js.map +1 -1
  44. package/dist/cdn/badge/snice-badge.min.js +2 -2
  45. package/dist/cdn/badge/snice-badge.min.js.map +1 -1
  46. package/dist/cdn/banner/snice-banner.js +1 -1
  47. package/dist/cdn/banner/snice-banner.min.js +1 -1
  48. package/dist/cdn/binpack/README.md +27 -0
  49. package/dist/cdn/binpack/snice-binpack.js +1037 -0
  50. package/dist/cdn/binpack/snice-binpack.js.map +1 -0
  51. package/dist/cdn/binpack/snice-binpack.min.js +13 -0
  52. package/dist/cdn/binpack/snice-binpack.min.js.map +1 -0
  53. package/dist/cdn/book/snice-book.js +1 -1
  54. package/dist/cdn/book/snice-book.min.js +1 -1
  55. package/dist/cdn/booking/snice-booking.js +1 -1
  56. package/dist/cdn/booking/snice-booking.min.js +1 -1
  57. package/dist/cdn/breadcrumbs/snice-breadcrumbs.js +1 -1
  58. package/dist/cdn/breadcrumbs/snice-breadcrumbs.min.js +1 -1
  59. package/dist/cdn/button/README.md +1 -1
  60. package/dist/cdn/button/snice-button.js +11 -10
  61. package/dist/cdn/button/snice-button.js.map +1 -1
  62. package/dist/cdn/button/snice-button.min.js +3 -3
  63. package/dist/cdn/button/snice-button.min.js.map +1 -1
  64. package/dist/cdn/calendar/snice-calendar.js +1 -1
  65. package/dist/cdn/calendar/snice-calendar.min.js +1 -1
  66. package/dist/cdn/camera/snice-camera.js +1 -1
  67. package/dist/cdn/camera/snice-camera.min.js +1 -1
  68. package/dist/cdn/camera-annotate/snice-camera-annotate.js +1 -1
  69. package/dist/cdn/camera-annotate/snice-camera-annotate.min.js +1 -1
  70. package/dist/cdn/candlestick/snice-candlestick.js +1 -1
  71. package/dist/cdn/candlestick/snice-candlestick.min.js +1 -1
  72. package/dist/cdn/card/snice-card.js +1 -1
  73. package/dist/cdn/card/snice-card.min.js +1 -1
  74. package/dist/cdn/carousel/snice-carousel.js +1 -1
  75. package/dist/cdn/carousel/snice-carousel.min.js +1 -1
  76. package/dist/cdn/cart/snice-cart.js +1 -1
  77. package/dist/cdn/cart/snice-cart.min.js +1 -1
  78. package/dist/cdn/chart/snice-chart.js +1 -1
  79. package/dist/cdn/chart/snice-chart.min.js +1 -1
  80. package/dist/cdn/chat/snice-chat.js +1 -1
  81. package/dist/cdn/chat/snice-chat.min.js +1 -1
  82. package/dist/cdn/checkbox/snice-checkbox.js +1 -1
  83. package/dist/cdn/checkbox/snice-checkbox.min.js +1 -1
  84. package/dist/cdn/chip/snice-chip.js +1 -1
  85. package/dist/cdn/chip/snice-chip.min.js +1 -1
  86. package/dist/cdn/code-block/snice-code-block.js +1 -1
  87. package/dist/cdn/code-block/snice-code-block.min.js +1 -1
  88. package/dist/cdn/color-display/snice-color-display.js +1 -1
  89. package/dist/cdn/color-display/snice-color-display.min.js +1 -1
  90. package/dist/cdn/color-picker/snice-color-picker.js +1 -1
  91. package/dist/cdn/color-picker/snice-color-picker.min.js +1 -1
  92. package/dist/cdn/command-palette/snice-command-palette.js +1 -1
  93. package/dist/cdn/command-palette/snice-command-palette.min.js +1 -1
  94. package/dist/cdn/comments/snice-comments.js +1 -1
  95. package/dist/cdn/comments/snice-comments.min.js +1 -1
  96. package/dist/cdn/countdown/snice-countdown.js +1 -1
  97. package/dist/cdn/countdown/snice-countdown.min.js +1 -1
  98. package/dist/cdn/cropper/snice-cropper.js +1 -1
  99. package/dist/cdn/cropper/snice-cropper.min.js +1 -1
  100. package/dist/cdn/data-card/snice-data-card.js +1 -1
  101. package/dist/cdn/data-card/snice-data-card.min.js +1 -1
  102. package/dist/cdn/date-picker/snice-date-picker.js +1 -1
  103. package/dist/cdn/date-picker/snice-date-picker.min.js +1 -1
  104. package/dist/cdn/date-range-picker/snice-date-range-picker.js +1 -1
  105. package/dist/cdn/date-range-picker/snice-date-range-picker.min.js +1 -1
  106. package/dist/cdn/date-time-picker/snice-date-time-picker.js +1 -1
  107. package/dist/cdn/date-time-picker/snice-date-time-picker.min.js +1 -1
  108. package/dist/cdn/diff/snice-diff.js +1 -1
  109. package/dist/cdn/diff/snice-diff.min.js +1 -1
  110. package/dist/cdn/divider/snice-divider.js +1 -1
  111. package/dist/cdn/divider/snice-divider.min.js +1 -1
  112. package/dist/cdn/doc/snice-doc.js +1 -1
  113. package/dist/cdn/doc/snice-doc.min.js +1 -1
  114. package/dist/cdn/draw/snice-draw.js +1 -1
  115. package/dist/cdn/draw/snice-draw.min.js +1 -1
  116. package/dist/cdn/drawer/snice-drawer.js +1 -1
  117. package/dist/cdn/drawer/snice-drawer.min.js +1 -1
  118. package/dist/cdn/empty-state/snice-empty-state.js +1 -1
  119. package/dist/cdn/empty-state/snice-empty-state.min.js +1 -1
  120. package/dist/cdn/estimate/snice-estimate.js +1 -1
  121. package/dist/cdn/estimate/snice-estimate.min.js +1 -1
  122. package/dist/cdn/file-gallery/snice-file-gallery.js +1 -1
  123. package/dist/cdn/file-gallery/snice-file-gallery.min.js +1 -1
  124. package/dist/cdn/file-upload/snice-file-upload.js +1 -1
  125. package/dist/cdn/file-upload/snice-file-upload.min.js +1 -1
  126. package/dist/cdn/flip-card/snice-flip-card.js +1 -1
  127. package/dist/cdn/flip-card/snice-flip-card.min.js +1 -1
  128. package/dist/cdn/flow/snice-flow.js +1 -1
  129. package/dist/cdn/flow/snice-flow.min.js +1 -1
  130. package/dist/cdn/form-layout/snice-form-layout.js +1 -1
  131. package/dist/cdn/form-layout/snice-form-layout.min.js +1 -1
  132. package/dist/cdn/funnel/snice-funnel.js +1 -1
  133. package/dist/cdn/funnel/snice-funnel.min.js +1 -1
  134. package/dist/cdn/gantt/snice-gantt.js +1 -1
  135. package/dist/cdn/gantt/snice-gantt.min.js +1 -1
  136. package/dist/cdn/gauge/snice-gauge.js +1 -1
  137. package/dist/cdn/gauge/snice-gauge.min.js +1 -1
  138. package/dist/cdn/heatmap/snice-heatmap.js +1 -1
  139. package/dist/cdn/heatmap/snice-heatmap.min.js +1 -1
  140. package/dist/cdn/image/snice-image.js +1 -1
  141. package/dist/cdn/image/snice-image.min.js +1 -1
  142. package/dist/cdn/input/snice-input.js +1 -1
  143. package/dist/cdn/input/snice-input.min.js +1 -1
  144. package/dist/cdn/invoice/snice-invoice.js +1 -1
  145. package/dist/cdn/invoice/snice-invoice.min.js +1 -1
  146. package/dist/cdn/kanban/snice-kanban.js +1 -1
  147. package/dist/cdn/kanban/snice-kanban.min.js +1 -1
  148. package/dist/cdn/key-value/snice-key-value.js +1 -1
  149. package/dist/cdn/key-value/snice-key-value.min.js +1 -1
  150. package/dist/cdn/kpi/snice-kpi.js +1 -1
  151. package/dist/cdn/kpi/snice-kpi.min.js +1 -1
  152. package/dist/cdn/layout/snice-layout.js +1 -1
  153. package/dist/cdn/layout/snice-layout.min.js +1 -1
  154. package/dist/cdn/leaderboard/snice-leaderboard.js +1 -1
  155. package/dist/cdn/leaderboard/snice-leaderboard.min.js +1 -1
  156. package/dist/cdn/link/snice-link.js +1 -1
  157. package/dist/cdn/link/snice-link.min.js +1 -1
  158. package/dist/cdn/link-preview/snice-link-preview.js +1 -1
  159. package/dist/cdn/link-preview/snice-link-preview.min.js +1 -1
  160. package/dist/cdn/list/snice-list.js +1 -1
  161. package/dist/cdn/list/snice-list.min.js +1 -1
  162. package/dist/cdn/location/snice-location.js +1 -1
  163. package/dist/cdn/location/snice-location.min.js +1 -1
  164. package/dist/cdn/login/README.md +2 -2
  165. package/dist/cdn/login/snice-login.js +11 -10
  166. package/dist/cdn/login/snice-login.js.map +1 -1
  167. package/dist/cdn/login/snice-login.min.js +5 -5
  168. package/dist/cdn/login/snice-login.min.js.map +1 -1
  169. package/dist/cdn/map/snice-map.js +1 -1
  170. package/dist/cdn/map/snice-map.min.js +1 -1
  171. package/dist/cdn/markdown/snice-markdown.js +1 -1
  172. package/dist/cdn/markdown/snice-markdown.min.js +1 -1
  173. package/dist/cdn/masonry/snice-masonry.js +1 -1
  174. package/dist/cdn/masonry/snice-masonry.min.js +1 -1
  175. package/dist/cdn/menu/snice-menu.js +1 -1
  176. package/dist/cdn/menu/snice-menu.min.js +1 -1
  177. package/dist/cdn/message-strip/snice-message-strip.js +1 -1
  178. package/dist/cdn/message-strip/snice-message-strip.min.js +1 -1
  179. package/dist/cdn/metric-table/snice-metric-table.js +1 -1
  180. package/dist/cdn/metric-table/snice-metric-table.min.js +1 -1
  181. package/dist/cdn/modal/snice-modal.js +1 -1
  182. package/dist/cdn/modal/snice-modal.min.js +1 -1
  183. package/dist/cdn/music-player/snice-music-player.js +1 -1
  184. package/dist/cdn/music-player/snice-music-player.min.js +1 -1
  185. package/dist/cdn/nav/snice-nav.js +1 -1
  186. package/dist/cdn/nav/snice-nav.min.js +1 -1
  187. package/dist/cdn/network-graph/snice-network-graph.js +1 -1
  188. package/dist/cdn/network-graph/snice-network-graph.min.js +1 -1
  189. package/dist/cdn/notification-center/snice-notification-center.js +1 -1
  190. package/dist/cdn/notification-center/snice-notification-center.min.js +1 -1
  191. package/dist/cdn/order-tracker/snice-order-tracker.js +1 -1
  192. package/dist/cdn/order-tracker/snice-order-tracker.min.js +1 -1
  193. package/dist/cdn/org-chart/snice-org-chart.js +1 -1
  194. package/dist/cdn/org-chart/snice-org-chart.min.js +1 -1
  195. package/dist/cdn/pagination/snice-pagination.js +1 -1
  196. package/dist/cdn/pagination/snice-pagination.min.js +1 -1
  197. package/dist/cdn/paint/snice-paint.js +1 -1
  198. package/dist/cdn/paint/snice-paint.min.js +1 -1
  199. package/dist/cdn/pdf-viewer/snice-pdf-viewer.js +1 -1
  200. package/dist/cdn/pdf-viewer/snice-pdf-viewer.min.js +1 -1
  201. package/dist/cdn/permission-matrix/snice-permission-matrix.js +1 -1
  202. package/dist/cdn/permission-matrix/snice-permission-matrix.min.js +1 -1
  203. package/dist/cdn/podcast-player/snice-podcast-player.js +1 -1
  204. package/dist/cdn/podcast-player/snice-podcast-player.min.js +1 -1
  205. package/dist/cdn/pricing-table/snice-pricing-table.js +1 -1
  206. package/dist/cdn/pricing-table/snice-pricing-table.min.js +1 -1
  207. package/dist/cdn/product-card/snice-product-card.js +1 -1
  208. package/dist/cdn/product-card/snice-product-card.min.js +1 -1
  209. package/dist/cdn/progress/snice-progress.js +1 -1
  210. package/dist/cdn/progress/snice-progress.min.js +1 -1
  211. package/dist/cdn/progress-ring/snice-progress-ring.js +1 -1
  212. package/dist/cdn/progress-ring/snice-progress-ring.min.js +1 -1
  213. package/dist/cdn/qr-code/snice-qr-code.js +1 -1
  214. package/dist/cdn/qr-code/snice-qr-code.min.js +1 -1
  215. package/dist/cdn/qr-reader/snice-qr-reader.js +1 -1
  216. package/dist/cdn/qr-reader/snice-qr-reader.min.js +1 -1
  217. package/dist/cdn/radio/snice-radio.js +1 -1
  218. package/dist/cdn/radio/snice-radio.min.js +1 -1
  219. package/dist/cdn/range-slider/snice-range-slider.js +1 -1
  220. package/dist/cdn/range-slider/snice-range-slider.min.js +1 -1
  221. package/dist/cdn/rating/snice-rating.js +1 -1
  222. package/dist/cdn/rating/snice-rating.min.js +1 -1
  223. package/dist/cdn/receipt/snice-receipt.js +1 -1
  224. package/dist/cdn/receipt/snice-receipt.min.js +1 -1
  225. package/dist/cdn/recipe/snice-recipe.js +1 -1
  226. package/dist/cdn/recipe/snice-recipe.min.js +1 -1
  227. package/dist/cdn/runtime/README.md +2 -2
  228. package/dist/cdn/runtime/snice-runtime.esm.js +152 -62
  229. package/dist/cdn/runtime/snice-runtime.esm.js.map +1 -1
  230. package/dist/cdn/runtime/snice-runtime.esm.min.js +8 -8
  231. package/dist/cdn/runtime/snice-runtime.esm.min.js.map +1 -1
  232. package/dist/cdn/runtime/snice-runtime.js +152 -61
  233. package/dist/cdn/runtime/snice-runtime.js.map +1 -1
  234. package/dist/cdn/runtime/snice-runtime.min.js +8 -8
  235. package/dist/cdn/runtime/snice-runtime.min.js.map +1 -1
  236. package/dist/cdn/sankey/snice-sankey.js +1 -1
  237. package/dist/cdn/sankey/snice-sankey.min.js +1 -1
  238. package/dist/cdn/segmented-control/snice-segmented-control.js +1 -1
  239. package/dist/cdn/segmented-control/snice-segmented-control.min.js +1 -1
  240. package/dist/cdn/select/snice-select.js +1 -1
  241. package/dist/cdn/select/snice-select.min.js +1 -1
  242. package/dist/cdn/skeleton/snice-skeleton.js +1 -1
  243. package/dist/cdn/skeleton/snice-skeleton.min.js +1 -1
  244. package/dist/cdn/slider/snice-slider.js +1 -1
  245. package/dist/cdn/slider/snice-slider.min.js +1 -1
  246. package/dist/cdn/sortable/snice-sortable.js +1 -1
  247. package/dist/cdn/sortable/snice-sortable.min.js +1 -1
  248. package/dist/cdn/sparkline/snice-sparkline.js +1 -1
  249. package/dist/cdn/sparkline/snice-sparkline.min.js +1 -1
  250. package/dist/cdn/spinner/snice-spinner.js +1 -1
  251. package/dist/cdn/spinner/snice-spinner.min.js +1 -1
  252. package/dist/cdn/split-button/snice-split-button.js +1 -1
  253. package/dist/cdn/split-button/snice-split-button.min.js +1 -1
  254. package/dist/cdn/split-pane/snice-split-pane.js +1 -1
  255. package/dist/cdn/split-pane/snice-split-pane.min.js +1 -1
  256. package/dist/cdn/spotlight/snice-spotlight.js +1 -1
  257. package/dist/cdn/spotlight/snice-spotlight.min.js +1 -1
  258. package/dist/cdn/spreadsheet/snice-spreadsheet.js +1 -1
  259. package/dist/cdn/spreadsheet/snice-spreadsheet.min.js +1 -1
  260. package/dist/cdn/stat-group/snice-stat-group.js +1 -1
  261. package/dist/cdn/stat-group/snice-stat-group.min.js +1 -1
  262. package/dist/cdn/step-input/snice-step-input.js +1 -1
  263. package/dist/cdn/step-input/snice-step-input.min.js +1 -1
  264. package/dist/cdn/stepper/snice-stepper.js +1 -1
  265. package/dist/cdn/stepper/snice-stepper.min.js +1 -1
  266. package/dist/cdn/switch/snice-switch.js +1 -1
  267. package/dist/cdn/switch/snice-switch.min.js +1 -1
  268. package/dist/cdn/table/README.md +1 -1
  269. package/dist/cdn/table/snice-table.js +11 -10
  270. package/dist/cdn/table/snice-table.js.map +1 -1
  271. package/dist/cdn/table/snice-table.min.js +73 -73
  272. package/dist/cdn/table/snice-table.min.js.map +1 -1
  273. package/dist/cdn/tabs/snice-tabs.js +1 -1
  274. package/dist/cdn/tabs/snice-tabs.min.js +1 -1
  275. package/dist/cdn/tag/snice-tag.js +1 -1
  276. package/dist/cdn/tag/snice-tag.min.js +1 -1
  277. package/dist/cdn/tag-input/snice-tag-input.js +1 -1
  278. package/dist/cdn/tag-input/snice-tag-input.min.js +1 -1
  279. package/dist/cdn/terminal/snice-terminal.js +1 -1
  280. package/dist/cdn/terminal/snice-terminal.min.js +1 -1
  281. package/dist/cdn/testimonial/snice-testimonial.js +1 -1
  282. package/dist/cdn/testimonial/snice-testimonial.min.js +1 -1
  283. package/dist/cdn/textarea/snice-textarea.js +1 -1
  284. package/dist/cdn/textarea/snice-textarea.min.js +1 -1
  285. package/dist/cdn/time-picker/snice-time-picker.js +1 -1
  286. package/dist/cdn/time-picker/snice-time-picker.min.js +1 -1
  287. package/dist/cdn/time-range-picker/snice-time-range-picker.js +1 -1
  288. package/dist/cdn/time-range-picker/snice-time-range-picker.min.js +1 -1
  289. package/dist/cdn/timeline/snice-timeline.js +1 -1
  290. package/dist/cdn/timeline/snice-timeline.min.js +1 -1
  291. package/dist/cdn/timer/snice-timer.js +1 -1
  292. package/dist/cdn/timer/snice-timer.min.js +1 -1
  293. package/dist/cdn/toast/snice-toast.js +1 -1
  294. package/dist/cdn/toast/snice-toast.min.js +1 -1
  295. package/dist/cdn/tooltip/snice-tooltip.js +1 -1
  296. package/dist/cdn/tooltip/snice-tooltip.min.js +1 -1
  297. package/dist/cdn/tree/snice-tree.js +1 -1
  298. package/dist/cdn/tree/snice-tree.min.js +1 -1
  299. package/dist/cdn/treemap/snice-treemap.js +1 -1
  300. package/dist/cdn/treemap/snice-treemap.min.js +1 -1
  301. package/dist/cdn/user-card/snice-user-card.js +1 -1
  302. package/dist/cdn/user-card/snice-user-card.min.js +1 -1
  303. package/dist/cdn/video-player/snice-video-player.js +1 -1
  304. package/dist/cdn/video-player/snice-video-player.min.js +1 -1
  305. package/dist/cdn/virtual-scroller/snice-virtual-scroller.js +1 -1
  306. package/dist/cdn/virtual-scroller/snice-virtual-scroller.min.js +1 -1
  307. package/dist/cdn/waterfall/snice-waterfall.js +1 -1
  308. package/dist/cdn/waterfall/snice-waterfall.min.js +1 -1
  309. package/dist/cdn/weather/snice-weather.js +1 -1
  310. package/dist/cdn/weather/snice-weather.min.js +1 -1
  311. package/dist/cdn/work-order/snice-work-order.js +1 -1
  312. package/dist/cdn/work-order/snice-work-order.min.js +1 -1
  313. package/dist/components/action-bar/snice-action-bar.d.ts +22 -0
  314. package/dist/components/action-bar/snice-action-bar.js +182 -0
  315. package/dist/components/action-bar/snice-action-bar.js.map +1 -0
  316. package/dist/components/action-bar/snice-action-bar.types.d.ts +17 -0
  317. package/dist/components/badge/snice-badge.js +1 -1
  318. package/dist/components/badge/snice-badge.js.map +1 -1
  319. package/dist/components/binpack/snice-binpack.d.ts +82 -0
  320. package/dist/components/binpack/snice-binpack.js +970 -0
  321. package/dist/components/binpack/snice-binpack.js.map +1 -0
  322. package/dist/components/binpack/snice-binpack.types.d.ts +52 -0
  323. package/dist/components/button/snice-button.d.ts +2 -2
  324. package/dist/components/button/snice-button.js +11 -10
  325. package/dist/components/button/snice-button.js.map +1 -1
  326. package/dist/create-request-handler.d.ts +42 -0
  327. package/dist/index.cjs +149 -58
  328. package/dist/index.cjs.map +1 -1
  329. package/dist/index.d.ts +2 -0
  330. package/dist/index.esm.js +149 -59
  331. package/dist/index.esm.js.map +1 -1
  332. package/dist/index.iife.js +149 -58
  333. package/dist/index.iife.js.map +1 -1
  334. package/dist/parts.d.ts +9 -7
  335. package/dist/react/useRequestHandler.d.ts +56 -0
  336. package/dist/react/useRequestHandler.js +103 -0
  337. package/dist/react/useRequestHandler.js.map +1 -0
  338. package/dist/symbols.cjs +1 -1
  339. package/dist/symbols.esm.js +1 -1
  340. package/dist/transitions.cjs +1 -1
  341. package/dist/transitions.esm.js +1 -1
  342. package/docs/ai/DEVELOPMENT.md +1 -1
  343. package/docs/ai/components/accordion.md +46 -80
  344. package/docs/ai/components/action-bar.md +75 -0
  345. package/docs/ai/components/activity-feed.md +7 -7
  346. package/docs/ai/components/alert.md +26 -44
  347. package/docs/ai/components/app-tiles.md +34 -39
  348. package/docs/ai/components/approval-flow.md +1 -1
  349. package/docs/ai/components/audio-recorder.md +35 -67
  350. package/docs/ai/components/availability.md +13 -34
  351. package/docs/ai/components/avatar-group.md +26 -13
  352. package/docs/ai/components/avatar.md +52 -36
  353. package/docs/ai/components/badge.md +21 -32
  354. package/docs/ai/components/banner.md +21 -43
  355. package/docs/ai/components/binpack.md +89 -0
  356. package/docs/ai/components/book.md +25 -23
  357. package/docs/ai/components/booking.md +31 -36
  358. package/docs/ai/components/breadcrumbs.md +36 -11
  359. package/docs/ai/components/button.md +33 -44
  360. package/docs/ai/components/calendar.md +37 -70
  361. package/docs/ai/components/camera-annotate.md +31 -64
  362. package/docs/ai/components/camera.md +38 -120
  363. package/docs/ai/components/candlestick.md +32 -52
  364. package/docs/ai/components/card.md +20 -30
  365. package/docs/ai/components/carousel.md +32 -32
  366. package/docs/ai/components/cart.md +24 -29
  367. package/docs/ai/components/chart.md +29 -114
  368. package/docs/ai/components/chat.md +38 -75
  369. package/docs/ai/components/checkbox.md +22 -41
  370. package/docs/ai/components/chip.md +18 -54
  371. package/docs/ai/components/code-block.md +57 -178
  372. package/docs/ai/components/color-display.md +12 -32
  373. package/docs/ai/components/color-picker.md +17 -39
  374. package/docs/ai/components/command-palette.md +49 -71
  375. package/docs/ai/components/comments.md +55 -36
  376. package/docs/ai/components/countdown.md +28 -30
  377. package/docs/ai/components/cropper.md +33 -33
  378. package/docs/ai/components/data-card.md +20 -14
  379. package/docs/ai/components/date-picker.md +40 -47
  380. package/docs/ai/components/date-range-picker.md +31 -15
  381. package/docs/ai/components/date-time-picker.md +23 -46
  382. package/docs/ai/components/diff.md +30 -31
  383. package/docs/ai/components/divider.md +17 -47
  384. package/docs/ai/components/doc.md +43 -68
  385. package/docs/ai/components/draw.md +35 -87
  386. package/docs/ai/components/drawer.md +48 -77
  387. package/docs/ai/components/empty-state.md +10 -44
  388. package/docs/ai/components/estimate.md +33 -58
  389. package/docs/ai/components/file-gallery.md +48 -100
  390. package/docs/ai/components/file-upload.md +17 -53
  391. package/docs/ai/components/flip-card.md +31 -23
  392. package/docs/ai/components/flow.md +37 -65
  393. package/docs/ai/components/form-builder.md +35 -75
  394. package/docs/ai/components/form-layout.md +10 -20
  395. package/docs/ai/components/funnel.md +33 -48
  396. package/docs/ai/components/gantt.md +27 -23
  397. package/docs/ai/components/gauge.md +16 -17
  398. package/docs/ai/components/heatmap.md +21 -21
  399. package/docs/ai/components/image.md +7 -13
  400. package/docs/ai/components/input.md +38 -70
  401. package/docs/ai/components/invoice.md +35 -36
  402. package/docs/ai/components/kanban.md +32 -61
  403. package/docs/ai/components/key-value.md +32 -16
  404. package/docs/ai/components/kpi.md +38 -73
  405. package/docs/ai/components/layout.md +29 -23
  406. package/docs/ai/components/leaderboard.md +28 -37
  407. package/docs/ai/components/link-preview.md +12 -18
  408. package/docs/ai/components/link.md +10 -7
  409. package/docs/ai/components/list.md +21 -5
  410. package/docs/ai/components/location.md +21 -25
  411. package/docs/ai/components/login.md +14 -9
  412. package/docs/ai/components/map.md +27 -33
  413. package/docs/ai/components/markdown.md +20 -24
  414. package/docs/ai/components/masonry.md +10 -14
  415. package/docs/ai/components/mentions.md +26 -12
  416. package/docs/ai/components/menu.md +54 -52
  417. package/docs/ai/components/message-strip.md +20 -20
  418. package/docs/ai/components/metric-table.md +14 -21
  419. package/docs/ai/components/modal.md +27 -18
  420. package/docs/ai/components/music-player.md +49 -41
  421. package/docs/ai/components/nav.md +34 -31
  422. package/docs/ai/components/network-graph.md +27 -42
  423. package/docs/ai/components/notification-center.md +31 -33
  424. package/docs/ai/components/order-tracker.md +36 -27
  425. package/docs/ai/components/org-chart.md +36 -31
  426. package/docs/ai/components/pagination.md +34 -26
  427. package/docs/ai/components/paint.md +53 -91
  428. package/docs/ai/components/pdf-viewer.md +35 -36
  429. package/docs/ai/components/permission-matrix.md +26 -31
  430. package/docs/ai/components/podcast-player.md +64 -70
  431. package/docs/ai/components/pricing-table.md +37 -48
  432. package/docs/ai/components/product-card.md +58 -41
  433. package/docs/ai/components/progress-ring.md +20 -24
  434. package/docs/ai/components/progress.md +28 -45
  435. package/docs/ai/components/qr-code.md +25 -27
  436. package/docs/ai/components/qr-reader.md +20 -23
  437. package/docs/ai/components/radio.md +17 -15
  438. package/docs/ai/components/range-slider.md +22 -11
  439. package/docs/ai/components/rating.md +29 -33
  440. package/docs/ai/components/receipt.md +50 -127
  441. package/docs/ai/components/recipe.md +44 -42
  442. package/docs/ai/components/sankey.md +21 -30
  443. package/docs/ai/components/scheduler.md +29 -41
  444. package/docs/ai/components/segmented-control.md +11 -15
  445. package/docs/ai/components/select.md +58 -102
  446. package/docs/ai/components/skeleton.md +16 -30
  447. package/docs/ai/components/slider.md +26 -20
  448. package/docs/ai/components/sortable.md +25 -27
  449. package/docs/ai/components/sparkline.md +21 -17
  450. package/docs/ai/components/spinner.md +9 -5
  451. package/docs/ai/components/split-button.md +10 -13
  452. package/docs/ai/components/split-pane.md +19 -14
  453. package/docs/ai/components/spotlight.md +31 -26
  454. package/docs/ai/components/spreadsheet.md +51 -97
  455. package/docs/ai/components/stat-group.md +9 -19
  456. package/docs/ai/components/step-input.md +17 -15
  457. package/docs/ai/components/stepper.md +14 -15
  458. package/docs/ai/components/switch.md +15 -9
  459. package/docs/ai/components/table.md +24 -84
  460. package/docs/ai/components/tabs.md +18 -10
  461. package/docs/ai/components/tag-input.md +18 -29
  462. package/docs/ai/components/tag.md +10 -22
  463. package/docs/ai/components/terminal.md +9 -9
  464. package/docs/ai/components/testimonial.md +9 -19
  465. package/docs/ai/components/textarea.md +15 -16
  466. package/docs/ai/components/theme.md +3 -3
  467. package/docs/ai/components/time-picker.md +30 -49
  468. package/docs/ai/components/time-range-picker.md +16 -15
  469. package/docs/ai/components/timeline.md +5 -4
  470. package/docs/ai/components/timer.md +8 -8
  471. package/docs/ai/components/toast.md +24 -18
  472. package/docs/ai/components/tooltip.md +11 -22
  473. package/docs/ai/components/tree.md +9 -9
  474. package/docs/ai/components/treemap.md +14 -13
  475. package/docs/ai/components/user-card.md +21 -27
  476. package/docs/ai/components/video-player.md +35 -52
  477. package/docs/ai/components/virtual-scroller.md +1 -1
  478. package/docs/ai/components/waterfall.md +17 -16
  479. package/docs/ai/components/weather.md +19 -34
  480. package/docs/ai/components/work-order.md +58 -134
  481. package/docs/ai/patterns.md +63 -0
  482. package/docs/components/accordion.md +72 -151
  483. package/docs/components/action-bar.md +185 -0
  484. package/docs/components/activity-feed.md +9 -14
  485. package/docs/components/alert.md +17 -109
  486. package/docs/components/app-tiles.md +58 -43
  487. package/docs/components/approval-flow.md +8 -14
  488. package/docs/components/audio-recorder.md +45 -51
  489. package/docs/components/availability.md +30 -45
  490. package/docs/components/avatar-group.md +34 -14
  491. package/docs/components/avatar.md +20 -55
  492. package/docs/components/badge.md +53 -470
  493. package/docs/components/banner.md +44 -30
  494. package/docs/components/binpack.md +208 -0
  495. package/docs/components/book.md +78 -57
  496. package/docs/components/booking.md +35 -87
  497. package/docs/components/breadcrumbs.md +74 -448
  498. package/docs/components/button.md +72 -603
  499. package/docs/components/calendar.md +77 -261
  500. package/docs/components/camera-annotate.md +44 -96
  501. package/docs/components/camera.md +94 -333
  502. package/docs/components/candlestick.md +79 -116
  503. package/docs/components/card.md +51 -689
  504. package/docs/components/carousel.md +29 -76
  505. package/docs/components/cart.md +44 -136
  506. package/docs/components/chart.md +95 -438
  507. package/docs/components/chat.md +175 -439
  508. package/docs/components/checkbox.md +52 -609
  509. package/docs/components/chip.md +45 -574
  510. package/docs/components/code-block.md +157 -421
  511. package/docs/components/color-display.md +45 -54
  512. package/docs/components/color-picker.md +103 -36
  513. package/docs/components/command-palette.md +98 -92
  514. package/docs/components/comments.md +16 -10
  515. package/docs/components/countdown.md +15 -20
  516. package/docs/components/cropper.md +14 -16
  517. package/docs/components/data-card.md +16 -15
  518. package/docs/components/date-picker.md +45 -25
  519. package/docs/components/date-range-picker.md +140 -87
  520. package/docs/components/date-time-picker.md +25 -28
  521. package/docs/components/diff.md +22 -17
  522. package/docs/components/divider.md +18 -20
  523. package/docs/components/doc.md +105 -197
  524. package/docs/components/draw.md +117 -223
  525. package/docs/components/drawer.md +113 -478
  526. package/docs/components/empty-state.md +13 -29
  527. package/docs/components/estimate.md +58 -118
  528. package/docs/components/file-gallery.md +123 -495
  529. package/docs/components/file-upload.md +36 -123
  530. package/docs/components/flip-card.md +30 -34
  531. package/docs/components/flow.md +74 -89
  532. package/docs/components/form-builder.md +59 -86
  533. package/docs/components/form-layout.md +21 -31
  534. package/docs/components/funnel.md +21 -22
  535. package/docs/components/gantt.md +5 -5
  536. package/docs/components/gauge.md +5 -23
  537. package/docs/components/heatmap.md +13 -55
  538. package/docs/components/image.md +28 -32
  539. package/docs/components/input.md +25 -14
  540. package/docs/components/invoice.md +34 -33
  541. package/docs/components/kanban.md +99 -394
  542. package/docs/components/key-value.md +22 -12
  543. package/docs/components/kpi.md +41 -112
  544. package/docs/components/layout.md +7 -13
  545. package/docs/components/leaderboard.md +52 -76
  546. package/docs/components/link-preview.md +20 -16
  547. package/docs/components/link.md +22 -19
  548. package/docs/components/list.md +44 -26
  549. package/docs/components/location.md +9 -13
  550. package/docs/components/login.md +42 -36
  551. package/docs/components/map.md +24 -46
  552. package/docs/components/markdown.md +14 -25
  553. package/docs/components/masonry.md +15 -13
  554. package/docs/components/mentions.md +36 -25
  555. package/docs/components/menu.md +39 -46
  556. package/docs/components/message-strip.md +15 -51
  557. package/docs/components/metric-table.md +50 -72
  558. package/docs/components/modal.md +32 -43
  559. package/docs/components/music-player.md +41 -49
  560. package/docs/components/nav.md +23 -13
  561. package/docs/components/network-graph.md +14 -13
  562. package/docs/components/notification-center.md +68 -172
  563. package/docs/components/order-tracker.md +72 -117
  564. package/docs/components/org-chart.md +58 -207
  565. package/docs/components/pagination.md +67 -89
  566. package/docs/components/paint.md +86 -172
  567. package/docs/components/pdf-viewer.md +46 -151
  568. package/docs/components/permission-matrix.md +61 -112
  569. package/docs/components/podcast-player.md +41 -119
  570. package/docs/components/pricing-table.md +104 -147
  571. package/docs/components/product-card.md +94 -197
  572. package/docs/components/progress-ring.md +29 -32
  573. package/docs/components/progress.md +30 -61
  574. package/docs/components/qr-code.md +53 -61
  575. package/docs/components/qr-reader.md +53 -42
  576. package/docs/components/radio.md +42 -40
  577. package/docs/components/range-slider.md +41 -30
  578. package/docs/components/rating.md +50 -84
  579. package/docs/components/receipt.md +91 -129
  580. package/docs/components/recipe.md +107 -216
  581. package/docs/components/sankey.md +47 -83
  582. package/docs/components/scheduler.md +81 -184
  583. package/docs/components/segmented-control.md +48 -40
  584. package/docs/components/select.md +107 -129
  585. package/docs/components/skeleton.md +33 -47
  586. package/docs/components/slider.md +49 -53
  587. package/docs/components/sortable.md +43 -186
  588. package/docs/components/sparkline.md +26 -25
  589. package/docs/components/spinner.md +32 -37
  590. package/docs/components/split-button.md +43 -23
  591. package/docs/components/split-pane.md +41 -58
  592. package/docs/components/spotlight.md +53 -145
  593. package/docs/components/spreadsheet.md +84 -307
  594. package/docs/components/stat-group.md +27 -61
  595. package/docs/components/step-input.md +44 -41
  596. package/docs/components/stepper.md +55 -89
  597. package/docs/components/switch.md +39 -39
  598. package/docs/components/table.md +27 -32
  599. package/docs/components/tabs.md +36 -27
  600. package/docs/components/tag-input.md +50 -176
  601. package/docs/components/tag.md +12 -50
  602. package/docs/components/terminal.md +32 -37
  603. package/docs/components/testimonial.md +24 -81
  604. package/docs/components/textarea.md +9 -14
  605. package/docs/components/theme.md +10 -23
  606. package/docs/components/time-picker.md +48 -72
  607. package/docs/components/time-range-picker.md +22 -41
  608. package/docs/components/timeline.md +7 -14
  609. package/docs/components/timer.md +16 -32
  610. package/docs/components/toast.md +19 -45
  611. package/docs/components/tooltip.md +13 -115
  612. package/docs/components/tree.md +2 -19
  613. package/docs/components/treemap.md +19 -43
  614. package/docs/components/user-card.md +13 -22
  615. package/docs/components/video-player.md +53 -227
  616. package/docs/components/virtual-scroller.md +11 -44
  617. package/docs/components/waterfall.md +58 -137
  618. package/docs/components/weather.md +94 -153
  619. package/docs/components/work-order.md +56 -143
  620. package/docs/plans/2026-03-09-action-bar-design.md +104 -0
  621. package/docs/plans/2026-03-09-action-bar-plan.md +676 -0
  622. package/docs/plans/2026-03-10-react-integration-design.md +166 -0
  623. package/docs/request-response.md +77 -0
  624. package/package.json +20 -10
@@ -1,25 +1,22 @@
1
1
  # snice-map
2
2
 
3
- Interactive slippy map using OpenStreetMap tiles with markers, popups, drag panning, scroll zoom, and programmatic control.
3
+ Interactive slippy map using OpenStreetMap tiles with markers, popups, drag panning, scroll zoom.
4
4
 
5
5
  ## Properties
6
6
 
7
7
  ```ts
8
- center: MapCenter = { lat: 51.505, lng: -0.09 } // Map center (set via JS)
9
- zoom: number = 13 // attr: zoom — Zoom level
8
+ center: MapCenter = { lat: 51.505, lng: -0.09 } // JS only
9
+ zoom: number = 13
10
10
  minZoom: number = 1 // attr: min-zoom
11
11
  maxZoom: number = 18 // attr: max-zoom
12
- markers: MapMarker[] = [] // Marker data (set via JS)
13
- tileUrl: string = 'https://tile.openstreetmap.org/{z}/{x}/{y}.png' // attr: tile-url — Tile server template
12
+ markers: MapMarker[] = [] // JS only
13
+ tileUrl: string = 'https://tile.openstreetmap.org/{z}/{x}/{y}.png' // attr: tile-url
14
14
  ```
15
15
 
16
16
  ## Types
17
17
 
18
18
  ```ts
19
- interface MapCenter {
20
- lat: number;
21
- lng: number;
22
- }
19
+ interface MapCenter { lat: number; lng: number; }
23
20
 
24
21
  interface MapMarker {
25
22
  id: string;
@@ -27,40 +24,37 @@ interface MapMarker {
27
24
  lng: number;
28
25
  label?: string;
29
26
  icon?: string;
30
- popup?: string; // Popup text shown on marker click
27
+ popup?: string;
31
28
  }
32
29
  ```
33
30
 
34
- ## Events
31
+ ## Methods
35
32
 
36
- - `map-click` -> `{ lat: number, lng: number }` Click on map (not a marker)
37
- - `marker-click` -> `{ marker: MapMarker }` — Marker clicked (also toggles popup)
38
- - `map-move` -> `{ center: MapCenter, zoom: number }` — After drag pan completes
39
- - `map-zoom` -> `{ zoom: number }` — Zoom level changed
33
+ - `setCenter(lat, lng)` Pan to coordinates
34
+ - `setZoom(zoom)` Set zoom (clamped to min/max)
35
+ - `addMarker(marker)` Add a marker
36
+ - `removeMarker(id)` Remove marker by ID
37
+ - `fitBounds(markers?)` → Auto-zoom/center to fit markers (defaults to all)
40
38
 
41
- ## Methods
39
+ ## Events
42
40
 
43
- - `setCenter(lat: number, lng: number): void` Pan to coordinates
44
- - `setZoom(zoom: number): void` Set zoom level (clamped to min/max)
45
- - `addMarker(marker: MapMarker): void` Add a marker
46
- - `removeMarker(id: string): void` Remove marker by ID
47
- - `fitBounds(markers?: MapMarker[]): void` — Auto-zoom/center to fit markers (defaults to all)
41
+ - `map-click` → `{ lat, lng }` (click on map, not marker)
42
+ - `marker-click` `{ marker: MapMarker }` (also toggles popup)
43
+ - `map-move` → `{ center: MapCenter, zoom }` (after drag pan)
44
+ - `map-zoom` `{ zoom }` (zoom level changed)
48
45
 
49
- **CSS Parts:**
50
- - `base` - The outer map container
51
- - `tiles` - The tile layer container
52
- - `markers` - The markers layer container
53
- - `controls` - The zoom controls container
46
+ ## CSS Parts
54
47
 
55
- ## Behavior
48
+ - `base` - Outer map container
49
+ - `tiles` - Tile layer container
50
+ - `markers` - Markers layer container
51
+ - `controls` - Zoom controls container
56
52
 
57
- - Mouse drag to pan, scroll wheel to zoom
58
- - Zoom +/- buttons in top-right corner
59
- - Marker click toggles popup display
60
- - OpenStreetMap attribution included
61
- - Custom tile servers via `tile-url` with `{x}`, `{y}`, `{z}` placeholders
53
+ ## Basic Usage
62
54
 
63
- ## Usage
55
+ ```typescript
56
+ import 'snice/components/map/snice-map';
57
+ ```
64
58
 
65
59
  ```html
66
60
  <snice-map zoom="10" min-zoom="3" max-zoom="16"></snice-map>
@@ -5,26 +5,24 @@ Lightweight GFM-compatible markdown renderer with built-in sanitization.
5
5
  ## Properties
6
6
 
7
7
  ```ts
8
- sanitize: boolean // Sanitize HTML output (default: true)
9
- theme: 'default' | 'github' // Visual theme
8
+ sanitize: boolean = true; // Sanitize HTML output
9
+ theme: 'default'|'github' = 'default';
10
10
  ```
11
11
 
12
- ## Methods
13
-
14
- - `setContent(markdown: string)` — Set markdown source programmatically
12
+ > `content` is a plain class field, not `@property`. Use `setContent()` or slotted text.
15
13
 
16
- ## Slots
14
+ ## Methods
17
15
 
18
- - (default) - Markdown source text
16
+ - `setContent(markdown: string)` Set markdown source and re-render
19
17
 
20
- ## Input
18
+ ## Events
21
19
 
22
- Content via slotted text or `setContent()`. No `content` attribute/property.
20
+ - `markdown-render` `{ html: string }` (after render)
21
+ - `link-click` → `{ href: string, text: string }` (default prevented)
23
22
 
24
- ## Events
23
+ ## Slots
25
24
 
26
- - `markdown-render` → `{ html: string }` - Fired after markdown is rendered
27
- - `link-click` → `{ href: string; text: string }` - Fired when a link is clicked (default prevented)
25
+ - `(default)` - Markdown source text
28
26
 
29
27
  ## CSS Custom Properties
30
28
 
@@ -44,21 +42,19 @@ Content via slotted text or `setContent()`. No `content` attribute/property.
44
42
  --snice-font-weight-semibold
45
43
  ```
46
44
 
47
- **CSS Parts:**
48
- - `base` - The rendered markdown body container
45
+ ## CSS Parts
46
+
47
+ - `base` - Rendered markdown body container
48
+
49
+ ## Supported Syntax
49
50
 
50
- ## Supported Markdown
51
+ Headings (h1-h6), bold, italic, strikethrough, ordered/unordered/task lists, code blocks with language class, inline code, blockquotes, tables (GFM), images, links, autolinks, horizontal rules.
51
52
 
52
- - Headings (h1-h6)
53
- - Bold, italic, strikethrough
54
- - Ordered/unordered lists, task lists
55
- - Code blocks with language class, inline code
56
- - Blockquotes
57
- - Tables (GFM)
58
- - Images, links, autolinks
59
- - Horizontal rules
53
+ ## Basic Usage
60
54
 
61
- ## Usage
55
+ ```typescript
56
+ import 'snice/components/markdown/snice-markdown';
57
+ ```
62
58
 
63
59
  ```html
64
60
  <snice-markdown># Hello
@@ -4,7 +4,7 @@ Pinterest-style masonry layout using CSS columns.
4
4
 
5
5
  ## Properties
6
6
 
7
- ```typescript
7
+ ```ts
8
8
  columns: number = 3; // Column count (0 = auto based on minColumnWidth)
9
9
  gap: string = '1rem'; // Gap between items
10
10
  minColumnWidth: string = '250px'; // attr: min-column-width, min width when columns=0
@@ -14,7 +14,15 @@ minColumnWidth: string = '250px'; // attr: min-column-width, min width when
14
14
 
15
15
  - `(default)` - Items to arrange in masonry layout
16
16
 
17
- ## Usage
17
+ ## CSS Parts
18
+
19
+ - `base` - Masonry layout container
20
+
21
+ ## Basic Usage
22
+
23
+ ```typescript
24
+ import 'snice/components/masonry/snice-masonry';
25
+ ```
18
26
 
19
27
  ```html
20
28
  <!-- Fixed columns -->
@@ -36,15 +44,3 @@ minColumnWidth: string = '250px'; // attr: min-column-width, min width when
36
44
  <div>Card 2</div>
37
45
  </snice-masonry>
38
46
  ```
39
-
40
- **CSS Parts:**
41
- - `base` - The masonry layout container
42
-
43
- ## Features
44
-
45
- - CSS columns-based layout (no JS measurement)
46
- - Auto-responsive when columns=0
47
- - Configurable gap
48
- - Items flow top-to-bottom, left-to-right
49
- - `break-inside: avoid` on slotted children
50
- - `role="list"` for accessibility
@@ -4,13 +4,17 @@ Text input with inline @mention autocomplete. Mentions stored as `@[Name](id)` m
4
4
 
5
5
  ## Properties
6
6
 
7
- ```typescript
7
+ ```ts
8
8
  value: string = ''; // Raw text with @[Name](id) markers
9
- users: MentionUser[] = []; // Autocomplete candidates
9
+ users: MentionUser[] = []; // JS only — autocomplete candidates
10
10
  placeholder: string = 'Type @ to mention someone...';
11
11
  readonly: boolean = false;
12
12
  trigger: string = '@'; // Trigger character
13
+ ```
14
+
15
+ ## Types
13
16
 
17
+ ```ts
14
18
  interface MentionUser {
15
19
  id: string;
16
20
  name: string;
@@ -25,26 +29,30 @@ interface Mention {
25
29
  }
26
30
  ```
27
31
 
28
- ## Events
32
+ ## Methods
29
33
 
30
- - `mention-add` -> `{ user: MentionUser, value: string }`
31
- - `mention-remove` -> `{ user: MentionUser, value: string }`
32
- - `value-change` -> `{ value: string, plainText: string, mentions: Mention[] }`
34
+ - `getValue()` `string` (raw value with markers)
35
+ - `getPlainText()` `string` (mentions replaced by names)
36
+ - `getMentions()` `Mention[]` (structured mention data)
33
37
 
34
- ## Methods
38
+ ## Events
35
39
 
36
- - `getValue()` - Raw value with mention markers
37
- - `getPlainText()` - Text with mentions replaced by names only
38
- - `getMentions()` - Array of Mention objects with id, name, indices
40
+ - `mention-add` `{ user: MentionUser, value: string }`
41
+ - `mention-remove` `{ user: MentionUser, value: string }`
42
+ - `value-change` `{ value: string, plainText: string, mentions: Mention[] }`
39
43
 
40
44
  ## CSS Parts
41
45
 
42
- - `base` - Wrapper
46
+ - `base` - Wrapper container
43
47
  - `editor` - Editor container
44
48
  - `textarea` - Text input
45
49
  - `dropdown` - Autocomplete dropdown
46
50
 
47
- ## Usage
51
+ ## Basic Usage
52
+
53
+ ```typescript
54
+ import 'snice/components/mentions/snice-mentions';
55
+ ```
48
56
 
49
57
  ```html
50
58
  <snice-mentions placeholder="Write something..."></snice-mentions>
@@ -59,3 +67,9 @@ editor.value = 'Hey @[Alice Johnson](u1), check this out!';
59
67
  editor.addEventListener('mention-add', e => console.log('Mentioned:', e.detail.user));
60
68
  editor.addEventListener('value-change', e => console.log('Mentions:', e.detail.mentions));
61
69
  ```
70
+
71
+ ## Keyboard Navigation
72
+
73
+ - Arrow Down/Up navigate dropdown
74
+ - Enter/Tab select
75
+ - Escape closes
@@ -2,97 +2,99 @@
2
2
 
3
3
  Dropdown menu with items, dividers, and configurable trigger behavior.
4
4
 
5
+ ## Components
6
+
7
+ - `<snice-menu>` - Container with trigger and panel
8
+ - `<snice-menu-item>` - Selectable item with icon/shortcut slots
9
+ - `<snice-menu-divider>` - Visual separator
10
+
5
11
  ## Properties
6
12
 
7
- ```typescript
13
+ ```ts
14
+ // snice-menu
8
15
  open: boolean = false;
9
16
  placement: 'bottom-start'|'bottom-end'|'top-start'|'top-end'|'right-start'|'right-end'|'left-start'|'left-end' = 'bottom-start';
10
17
  trigger: 'click'|'hover'|'manual' = 'click';
11
18
  closeOnSelect: boolean = true; // attr: close-on-select
12
19
  distance: number = 4;
13
- ```
14
-
15
- ## Methods
16
-
17
- - `openMenu()` - Open the menu
18
- - `closeMenu()` - Close the menu
19
- - `toggleMenu()` - Toggle open/closed
20
-
21
- ## Slots (menu)
22
20
 
23
- - `trigger` - Trigger element (required)
24
- - `image-left` - Image before trigger
25
- - `image-right` - Image after trigger
26
- - `(default)` - Menu items and dividers
27
-
28
- ## Events
29
-
30
- - `menu-open` → `{ menu }`
31
- - `menu-close` → `{ menu }`
32
- - `menu-item-select` → `{ item, value }`
33
-
34
- ## snice-menu-item
35
-
36
- ```typescript
21
+ // snice-menu-item
37
22
  value: string = '';
38
23
  disabled: boolean = false;
39
24
  selected: boolean = false;
40
25
  ```
41
26
 
42
- Slots: `icon`, `(default)`, `shortcut`
27
+ ## Methods
43
28
 
44
- ## snice-menu-divider
29
+ - `openMenu()` → Open the menu
30
+ - `closeMenu()` → Close the menu
31
+ - `toggleMenu()` → Toggle open/closed
45
32
 
46
- Visual separator between items.
33
+ ## Events
47
34
 
48
- ## Usage
35
+ - `menu-open` → `{ menu }`
36
+ - `menu-close` → `{ menu }`
37
+ - `menu-item-select` → `{ item, value }` (bubbles from menu-item)
49
38
 
50
- ```html
51
- <snice-menu>
52
- <button slot="trigger">File</button>
53
- <snice-menu-item value="new">New</snice-menu-item>
54
- <snice-menu-item value="save">
55
- <span slot="icon">💾</span>
56
- Save
57
- <span slot="shortcut">⌘S</span>
58
- </snice-menu-item>
59
- <snice-menu-divider></snice-menu-divider>
60
- <snice-menu-item value="exit">Exit</snice-menu-item>
61
- </snice-menu>
39
+ ## Slots (snice-menu)
62
40
 
63
- <!-- Hover trigger -->
64
- <snice-menu trigger="hover">...</snice-menu>
41
+ - `trigger` - Trigger element (required)
42
+ - `image-left` - Image before trigger
43
+ - `image-right` - Image after trigger
44
+ - `(default)` - Menu items and dividers
65
45
 
66
- <!-- Manual control -->
67
- <snice-menu trigger="manual">...</snice-menu>
46
+ ## Slots (snice-menu-item)
68
47
 
69
- <!-- Keep open -->
70
- <snice-menu close-on-select="false">...</snice-menu>
71
- ```
48
+ - `icon` - Icon before label
49
+ - `(default)` - Label content
50
+ - `shortcut` - Keyboard shortcut hint
72
51
 
73
- ## CSS Parts
52
+ ## CSS Parts (snice-menu)
74
53
 
75
- ### snice-menu
76
54
  - `trigger` - Trigger wrapper
77
55
  - `image-left` - Left image container
78
56
  - `image-right` - Right image container
79
57
  - `panel` - Dropdown panel
80
58
  - `content` - Panel content wrapper
81
59
 
82
- ### snice-menu-item
60
+ ## CSS Parts (snice-menu-item)
61
+
83
62
  - `item` - Item container
84
63
  - `icon` - Icon wrapper
85
64
  - `label` - Label wrapper
86
65
  - `shortcut` - Shortcut wrapper
87
66
 
67
+ ## CSS Parts (snice-menu-divider)
68
+
69
+ - `divider` - Separator line
70
+
88
71
  ## CSS Custom Properties
89
72
 
90
73
  ```css
91
74
  --menu-bg: var(--snice-color-background, white);
92
75
  --menu-border: var(--snice-color-border, #e5e7eb);
93
- --menu-shadow: var(--snice-shadow-lg, ...);
76
+ --menu-shadow: var(--snice-shadow-lg);
94
77
  --menu-z-index: var(--snice-z-index-dropdown, 1000);
95
78
  --menu-border-radius: var(--snice-radius-md, 0.375rem);
96
79
  --menu-min-width: 10rem;
97
- --menu-distance: 4px; /* set via distance property */
80
+ ```
81
+
82
+ ## Basic Usage
83
+
84
+ ```typescript
85
+ import 'snice/components/menu/snice-menu';
86
+ ```
87
+
88
+ ```html
89
+ <snice-menu>
90
+ <button slot="trigger">File</button>
91
+ <snice-menu-item value="new">New</snice-menu-item>
92
+ <snice-menu-item value="save">
93
+ <span slot="icon">💾</span>
94
+ Save
95
+ <span slot="shortcut">⌘S</span>
96
+ </snice-menu-item>
97
+ <snice-menu-divider></snice-menu-divider>
98
+ <snice-menu-item value="exit">Exit</snice-menu-item>
99
+ </snice-menu>
98
100
  ```
@@ -1,36 +1,44 @@
1
1
  # snice-message-strip
2
2
 
3
- Inline contextual message bar within content flow. Differs from alert (dismissable card), banner (full-width top), toast (floating).
3
+ Inline contextual message bar within content flow. Differs from alert (card), banner (full-width), toast (floating).
4
4
 
5
5
  ## Properties
6
6
 
7
- ```typescript
7
+ ```ts
8
8
  variant: 'info'|'success'|'warning'|'danger' = 'info';
9
9
  dismissable: boolean = false;
10
10
  icon: string = ''; // Custom icon (set "none" to hide)
11
11
  ```
12
12
 
13
- ## Slots
13
+ ## Methods
14
14
 
15
- - `(default)` - Message content
16
- - `icon` - Custom icon element
15
+ - `show()` Show the message strip
16
+ - `hide()` Hide with slide-out animation
17
17
 
18
18
  ## Events
19
19
 
20
20
  - `dismiss` → `{ variant: string }`
21
21
 
22
- ## Methods
22
+ ## Slots
23
23
 
24
- - `show()` - Show the message strip
25
- - `hide()` - Hide with animation
24
+ - `(default)` - Message content
25
+ - `icon` - Custom icon element
26
26
 
27
- ## Usage
27
+ ## CSS Parts
28
28
 
29
- ```html
30
- <!-- Basic -->
31
- <snice-message-strip variant="info">Informational message.</snice-message-strip>
29
+ - `icon` - Icon container
30
+ - `content` - Message content area
31
+ - `dismiss` - Dismiss button
32
+
33
+ ## Basic Usage
34
+
35
+ ```typescript
36
+ import 'snice/components/message-strip/snice-message-strip';
37
+ ```
32
38
 
39
+ ```html
33
40
  <!-- Variants -->
41
+ <snice-message-strip variant="info">Informational message.</snice-message-strip>
34
42
  <snice-message-strip variant="success">Operation completed.</snice-message-strip>
35
43
  <snice-message-strip variant="warning">Review your changes.</snice-message-strip>
36
44
  <snice-message-strip variant="danger">An error occurred.</snice-message-strip>
@@ -43,17 +51,9 @@ icon: string = ''; // Custom icon (set "none" to hide)
43
51
 
44
52
  <!-- No icon -->
45
53
  <snice-message-strip variant="info" icon="none">No icon shown.</snice-message-strip>
46
-
47
- <!-- Programmatic -->
48
- <snice-message-strip>Message</snice-message-strip>
49
54
  ```
50
55
 
51
56
  ```typescript
52
57
  messageStrip.hide();
53
58
  messageStrip.show();
54
59
  ```
55
-
56
- **CSS Parts:**
57
- - `icon` - The icon container
58
- - `content` - The message content area
59
- - `dismiss` - The dismiss button
@@ -4,29 +4,29 @@ Compact metrics table with sparklines, color-coded values, and built-in sorting.
4
4
 
5
5
  ## Properties
6
6
 
7
- ```typescript
8
- columns: MetricColumn[] = [];
9
- data: Record<string, any>[] = [];
10
- sortBy: string = ''; // attr: sort-by
11
- sortDirection: 'asc'|'desc' = 'desc'; // attr: sort-direction
7
+ ```ts
8
+ columns: MetricColumn[] = []; // JS only
9
+ data: Record<string, any>[] = []; // JS only
10
+ sortBy: string = '';
11
+ sortDirection: 'asc'|'desc' = 'desc';
12
12
  ```
13
13
 
14
14
  ## Types
15
15
 
16
- ```typescript
16
+ ```ts
17
17
  interface MetricColumn {
18
18
  key: string;
19
19
  label: string;
20
20
  type?: 'text'|'number'|'percent'|'currency';
21
- format?: string; // Currency code for 'currency' type (default: 'USD')
21
+ format?: string; // Currency code (default: 'USD')
22
22
  sparkline?: boolean; // Render array values as sparkline
23
23
  }
24
24
  ```
25
25
 
26
26
  ## Events
27
27
 
28
- - `sort-change` -> `{ sortBy: string, sortDirection: 'asc'|'desc' }`
29
- - `row-click` -> `{ row: Record<string, any>, index: number }`
28
+ - `sort-change` `{ sortBy: string, sortDirection: 'asc'|'desc' }`
29
+ - `row-click` `{ row: Record<string, any>, index: number }`
30
30
 
31
31
  ## CSS Parts
32
32
 
@@ -34,7 +34,11 @@ interface MetricColumn {
34
34
  - `table` - Table element
35
35
  - `row` - Table row
36
36
 
37
- ## Usage
37
+ ## Basic Usage
38
+
39
+ ```typescript
40
+ import 'snice/components/metric-table/snice-metric-table';
41
+ ```
38
42
 
39
43
  ```html
40
44
  <snice-metric-table sort-by="value"></snice-metric-table>
@@ -53,14 +57,3 @@ el.data = [
53
57
  { name: 'Bounce Rate', value: 34.2, change: -2.5, revenue: null, trend: [40, 38, 35, 33] }
54
58
  ];
55
59
  ```
56
-
57
- ## Features
58
-
59
- - Column types: text, number, percent, currency
60
- - Inline SVG sparklines from array data
61
- - Positive values green, negative values red
62
- - Click column headers to sort (toggles asc/desc)
63
- - Compact row density
64
- - Currency formatting with locale
65
- - Null/undefined shown as em-dash
66
- - Keyboard accessible rows
@@ -4,35 +4,48 @@ Dialog overlay with focus trap, backdrop dismiss, and accessibility.
4
4
 
5
5
  ## Properties
6
6
 
7
- ```typescript
7
+ ```ts
8
8
  open: boolean = false;
9
9
  size: 'small'|'medium'|'large'|'fullscreen' = 'medium';
10
10
  noBackdropDismiss: boolean = false; // attr: no-backdrop-dismiss
11
11
  noEscapeDismiss: boolean = false; // attr: no-escape-dismiss
12
12
  noFocusTrap: boolean = false; // attr: no-focus-trap
13
13
  noCloseButton: boolean = false; // attr: no-close-button
14
- noHeader: boolean = false; // attr: no-header — hides header entirely
15
- noFooter: boolean = false; // attr: no-footer — hides footer entirely
14
+ noHeader: boolean = false; // attr: no-header
15
+ noFooter: boolean = false; // attr: no-footer
16
16
  label: string = ''; // Accessible label
17
17
  ```
18
18
 
19
- ## Slots
19
+ ## Methods
20
20
 
21
- - `(default)` - Modal body content
22
- - `header` - Header content (title)
23
- - `footer` - Footer content (action buttons)
21
+ - `show()` Open modal
22
+ - `close()` Close modal
24
23
 
25
24
  ## Events
26
25
 
27
26
  - `modal-open` → `{ modal: SniceModalElement }`
28
27
  - `modal-close` → `{ modal: SniceModalElement }`
29
28
 
30
- ## Methods
29
+ ## Slots
30
+
31
+ - `(default)` - Modal body content
32
+ - `header` - Header content (title)
33
+ - `footer` - Footer content (action buttons)
34
+
35
+ ## CSS Parts
31
36
 
32
- - `show()` - Open modal
33
- - `close()` - Close modal
37
+ - `backdrop` - Backdrop overlay
38
+ - `panel` - Modal panel container
39
+ - `header` - Header section
40
+ - `close` - Close button
41
+ - `body` - Body content section
42
+ - `footer` - Footer section
34
43
 
35
- ## Usage
44
+ ## Basic Usage
45
+
46
+ ```typescript
47
+ import 'snice/components/modal/snice-modal';
48
+ ```
36
49
 
37
50
  ```html
38
51
  <snice-modal label="Confirm Action">
@@ -51,11 +64,7 @@ modal.close();
51
64
  modal.addEventListener('modal-close', () => console.log('Closed'));
52
65
  ```
53
66
 
54
- ## CSS Parts
67
+ ## Keyboard Navigation
55
68
 
56
- - `backdrop` - The backdrop overlay
57
- - `panel` - The modal panel container
58
- - `header` - Header section
59
- - `close` - Close button
60
- - `body` - Body content section
61
- - `footer` - Footer section
69
+ - Escape closes (unless `no-escape-dismiss`)
70
+ - Tab/Shift+Tab cycle focus within modal