snice 3.1.0 → 3.3.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 (464) hide show
  1. package/README.md +90 -41
  2. package/dist/components/accordion/snice-accordion-item.d.ts +2 -2
  3. package/dist/components/accordion/snice-accordion-item.js +9 -9
  4. package/dist/components/accordion/snice-accordion-item.js.map +1 -1
  5. package/dist/components/accordion/snice-accordion.d.ts +2 -2
  6. package/dist/components/accordion/snice-accordion.js +9 -9
  7. package/dist/components/accordion/snice-accordion.js.map +1 -1
  8. package/dist/components/actions/snice-actions.d.ts +28 -0
  9. package/dist/components/actions/snice-actions.js +220 -0
  10. package/dist/components/actions/snice-actions.js.map +1 -0
  11. package/dist/components/actions/snice-actions.types.d.ts +27 -0
  12. package/dist/components/alert/snice-alert.d.ts +2 -2
  13. package/dist/components/alert/snice-alert.js +9 -9
  14. package/dist/components/alert/snice-alert.js.map +1 -1
  15. package/dist/components/audio-recorder/snice-audio-recorder.d.ts +58 -0
  16. package/dist/components/audio-recorder/snice-audio-recorder.js +413 -0
  17. package/dist/components/audio-recorder/snice-audio-recorder.js.map +1 -0
  18. package/dist/components/audio-recorder/snice-audio-recorder.types.d.ts +28 -0
  19. package/dist/components/avatar/snice-avatar.d.ts +2 -2
  20. package/dist/components/avatar/snice-avatar.js +9 -9
  21. package/dist/components/avatar/snice-avatar.js.map +1 -1
  22. package/dist/components/badge/snice-badge.d.ts +2 -2
  23. package/dist/components/badge/snice-badge.js +10 -10
  24. package/dist/components/badge/snice-badge.js.map +1 -1
  25. package/dist/components/banner/snice-banner.d.ts +22 -0
  26. package/dist/components/banner/snice-banner.js +180 -0
  27. package/dist/components/banner/snice-banner.js.map +1 -0
  28. package/dist/components/banner/snice-banner.types.d.ts +14 -0
  29. package/dist/components/breadcrumbs/snice-breadcrumbs.d.ts +2 -2
  30. package/dist/components/breadcrumbs/snice-breadcrumbs.js +9 -9
  31. package/dist/components/breadcrumbs/snice-breadcrumbs.js.map +1 -1
  32. package/dist/components/button/snice-button.d.ts +2 -2
  33. package/dist/components/button/snice-button.js +9 -9
  34. package/dist/components/button/snice-button.js.map +1 -1
  35. package/dist/components/calendar/snice-calendar.d.ts +46 -0
  36. package/dist/components/calendar/snice-calendar.js +294 -0
  37. package/dist/components/calendar/snice-calendar.js.map +1 -0
  38. package/dist/components/calendar/snice-calendar.types.d.ts +34 -0
  39. package/dist/components/camera/snice-camera.d.ts +39 -0
  40. package/dist/components/camera/snice-camera.js +286 -0
  41. package/dist/components/camera/snice-camera.js.map +1 -0
  42. package/dist/components/camera/snice-camera.types.d.ts +28 -0
  43. package/dist/components/card/snice-card.d.ts +2 -2
  44. package/dist/components/card/snice-card.js +9 -9
  45. package/dist/components/card/snice-card.js.map +1 -1
  46. package/dist/components/carousel/snice-carousel.d.ts +32 -0
  47. package/dist/components/carousel/snice-carousel.js +279 -0
  48. package/dist/components/carousel/snice-carousel.js.map +1 -0
  49. package/dist/components/carousel/snice-carousel.types.d.ts +22 -0
  50. package/dist/components/chart/snice-chart.d.ts +73 -0
  51. package/dist/components/chart/snice-chart.js +940 -0
  52. package/dist/components/chart/snice-chart.js.map +1 -0
  53. package/dist/components/chart/snice-chart.types.d.ts +71 -0
  54. package/dist/components/chat/snice-chat.d.ts +98 -0
  55. package/dist/components/chat/snice-chat.js +589 -0
  56. package/dist/components/chat/snice-chat.js.map +1 -0
  57. package/dist/components/chat/snice-chat.types.d.ts +141 -0
  58. package/dist/components/checkbox/snice-checkbox.d.ts +2 -2
  59. package/dist/components/checkbox/snice-checkbox.js +9 -9
  60. package/dist/components/checkbox/snice-checkbox.js.map +1 -1
  61. package/dist/components/chip/snice-chip.d.ts +2 -2
  62. package/dist/components/chip/snice-chip.js +9 -9
  63. package/dist/components/chip/snice-chip.js.map +1 -1
  64. package/dist/components/code-block/snice-code-block.d.ts +15 -0
  65. package/dist/components/code-block/snice-code-block.js +141 -0
  66. package/dist/components/code-block/snice-code-block.js.map +1 -0
  67. package/dist/components/code-block/snice-code-block.types.d.ts +15 -0
  68. package/dist/components/color-display/snice-color-display.d.ts +14 -0
  69. package/dist/components/color-display/snice-color-display.js +151 -0
  70. package/dist/components/color-display/snice-color-display.js.map +1 -0
  71. package/dist/components/color-display/snice-color-display.types.d.ts +10 -0
  72. package/dist/components/color-picker/snice-color-picker.d.ts +50 -0
  73. package/dist/components/color-picker/snice-color-picker.js +489 -0
  74. package/dist/components/color-picker/snice-color-picker.js.map +1 -0
  75. package/dist/components/color-picker/snice-color-picker.types.d.ts +19 -0
  76. package/dist/components/command-palette/snice-command-palette.d.ts +47 -0
  77. package/dist/components/command-palette/snice-command-palette.js +428 -0
  78. package/dist/components/command-palette/snice-command-palette.js.map +1 -0
  79. package/dist/components/command-palette/snice-command-palette.types.d.ts +49 -0
  80. package/dist/components/date-picker/snice-date-picker.d.ts +2 -2
  81. package/dist/components/date-picker/snice-date-picker.js +10 -10
  82. package/dist/components/date-picker/snice-date-picker.js.map +1 -1
  83. package/dist/components/divider/snice-divider.d.ts +2 -2
  84. package/dist/components/divider/snice-divider.js +9 -9
  85. package/dist/components/divider/snice-divider.js.map +1 -1
  86. package/dist/components/doc/snice-doc.d.ts +93 -0
  87. package/dist/components/doc/snice-doc.js +626 -0
  88. package/dist/components/doc/snice-doc.js.map +1 -0
  89. package/dist/components/doc/snice-doc.types.d.ts +118 -0
  90. package/dist/components/draw/snice-draw.d.ts +71 -0
  91. package/dist/components/draw/snice-draw.js +709 -0
  92. package/dist/components/draw/snice-draw.js.map +1 -0
  93. package/dist/components/draw/snice-draw.types.d.ts +41 -0
  94. package/dist/components/drawer/snice-drawer.d.ts +2 -2
  95. package/dist/components/drawer/snice-drawer.js +9 -9
  96. package/dist/components/drawer/snice-drawer.js.map +1 -1
  97. package/dist/components/empty-state/snice-empty-state.d.ts +13 -0
  98. package/dist/components/empty-state/snice-empty-state.js +121 -0
  99. package/dist/components/empty-state/snice-empty-state.js.map +1 -0
  100. package/dist/components/empty-state/snice-empty-state.types.d.ts +9 -0
  101. package/dist/components/file-upload/snice-file-upload.d.ts +44 -0
  102. package/dist/components/file-upload/snice-file-upload.js +387 -0
  103. package/dist/components/file-upload/snice-file-upload.js.map +1 -0
  104. package/dist/components/file-upload/snice-file-upload.types.d.ts +22 -0
  105. package/dist/components/gantt/snice-gantt.d.ts +29 -0
  106. package/dist/components/gantt/snice-gantt.js +268 -0
  107. package/dist/components/gantt/snice-gantt.js.map +1 -0
  108. package/dist/components/gantt/snice-gantt.types.d.ts +23 -0
  109. package/dist/components/image/snice-image.d.ts +22 -0
  110. package/dist/components/image/snice-image.js +201 -0
  111. package/dist/components/image/snice-image.js.map +1 -0
  112. package/dist/components/image/snice-image.types.d.ts +17 -0
  113. package/dist/components/input/snice-input.d.ts +2 -2
  114. package/dist/components/input/snice-input.js +9 -9
  115. package/dist/components/input/snice-input.js.map +1 -1
  116. package/dist/components/kanban/snice-kanban.d.ts +31 -0
  117. package/dist/components/kanban/snice-kanban.js +243 -0
  118. package/dist/components/kanban/snice-kanban.js.map +1 -0
  119. package/dist/components/kanban/snice-kanban.types.d.ts +29 -0
  120. package/dist/components/kpi/snice-kpi.d.ts +16 -0
  121. package/dist/components/kpi/snice-kpi.js +162 -0
  122. package/dist/components/kpi/snice-kpi.js.map +1 -0
  123. package/dist/components/kpi/snice-kpi.types.d.ts +12 -0
  124. package/dist/components/layout/snice-layout-blog.d.ts +2 -2
  125. package/dist/components/layout/snice-layout-blog.js +9 -9
  126. package/dist/components/layout/snice-layout-blog.js.map +1 -1
  127. package/dist/components/layout/snice-layout-card.d.ts +2 -2
  128. package/dist/components/layout/snice-layout-card.js +9 -9
  129. package/dist/components/layout/snice-layout-card.js.map +1 -1
  130. package/dist/components/layout/snice-layout-centered.d.ts +2 -2
  131. package/dist/components/layout/snice-layout-centered.js +9 -9
  132. package/dist/components/layout/snice-layout-centered.js.map +1 -1
  133. package/dist/components/layout/snice-layout-dashboard.d.ts +2 -2
  134. package/dist/components/layout/snice-layout-dashboard.js +9 -9
  135. package/dist/components/layout/snice-layout-dashboard.js.map +1 -1
  136. package/dist/components/layout/snice-layout-fullscreen.d.ts +2 -2
  137. package/dist/components/layout/snice-layout-fullscreen.js +9 -9
  138. package/dist/components/layout/snice-layout-fullscreen.js.map +1 -1
  139. package/dist/components/layout/snice-layout-landing.d.ts +2 -2
  140. package/dist/components/layout/snice-layout-landing.js +9 -9
  141. package/dist/components/layout/snice-layout-landing.js.map +1 -1
  142. package/dist/components/layout/snice-layout-minimal.d.ts +2 -2
  143. package/dist/components/layout/snice-layout-minimal.js +9 -9
  144. package/dist/components/layout/snice-layout-minimal.js.map +1 -1
  145. package/dist/components/layout/snice-layout-sidebar.d.ts +2 -2
  146. package/dist/components/layout/snice-layout-sidebar.js +9 -9
  147. package/dist/components/layout/snice-layout-sidebar.js.map +1 -1
  148. package/dist/components/layout/snice-layout-split.d.ts +2 -2
  149. package/dist/components/layout/snice-layout-split.js +9 -9
  150. package/dist/components/layout/snice-layout-split.js.map +1 -1
  151. package/dist/components/layout/snice-layout.d.ts +2 -2
  152. package/dist/components/layout/snice-layout.js +9 -9
  153. package/dist/components/layout/snice-layout.js.map +1 -1
  154. package/dist/components/link/snice-link.d.ts +13 -0
  155. package/dist/components/link/snice-link.js +137 -0
  156. package/dist/components/link/snice-link.js.map +1 -0
  157. package/dist/components/link/snice-link.types.d.ts +11 -0
  158. package/dist/components/list/snice-list-item.d.ts +6 -0
  159. package/dist/components/list/snice-list-item.js +68 -0
  160. package/dist/components/list/snice-list-item.js.map +1 -0
  161. package/dist/components/list/snice-list.d.ts +23 -0
  162. package/dist/components/list/snice-list.js +270 -0
  163. package/dist/components/list/snice-list.js.map +1 -0
  164. package/dist/components/list/snice-list.types.d.ts +28 -0
  165. package/dist/components/location/snice-location.d.ts +35 -0
  166. package/dist/components/location/snice-location.js +238 -0
  167. package/dist/components/location/snice-location.js.map +1 -0
  168. package/dist/components/location/snice-location.types.d.ts +35 -0
  169. package/dist/components/login/snice-login.d.ts +2 -2
  170. package/dist/components/login/snice-login.js +9 -9
  171. package/dist/components/login/snice-login.js.map +1 -1
  172. package/dist/components/menu/snice-menu-divider.d.ts +4 -0
  173. package/dist/components/menu/snice-menu-divider.js +53 -0
  174. package/dist/components/menu/snice-menu-divider.js.map +1 -0
  175. package/dist/components/menu/snice-menu-item.d.ts +10 -0
  176. package/dist/components/menu/snice-menu-item.js +99 -0
  177. package/dist/components/menu/snice-menu-item.js.map +1 -0
  178. package/dist/components/menu/snice-menu-item.types.d.ts +9 -0
  179. package/dist/components/menu/snice-menu.d.ts +27 -0
  180. package/dist/components/menu/snice-menu.js +199 -0
  181. package/dist/components/menu/snice-menu.js.map +1 -0
  182. package/dist/components/menu/snice-menu.types.d.ts +18 -0
  183. package/dist/components/modal/snice-modal.d.ts +2 -2
  184. package/dist/components/modal/snice-modal.js +9 -9
  185. package/dist/components/modal/snice-modal.js.map +1 -1
  186. package/dist/components/nav/snice-nav.js +1 -1
  187. package/dist/components/nav/snice-nav.js.map +1 -1
  188. package/dist/components/pagination/snice-pagination.d.ts +2 -2
  189. package/dist/components/pagination/snice-pagination.js +8 -8
  190. package/dist/components/pagination/snice-pagination.js.map +1 -1
  191. package/dist/components/progress/snice-progress.d.ts +2 -2
  192. package/dist/components/progress/snice-progress.js +9 -9
  193. package/dist/components/progress/snice-progress.js.map +1 -1
  194. package/dist/components/qr-code/qrcode.d.ts +28 -0
  195. package/dist/components/qr-code/qrcode.js +906 -0
  196. package/dist/components/qr-code/qrcode.js.map +1 -0
  197. package/dist/components/qr-code/snice-qr-code.d.ts +35 -0
  198. package/dist/components/qr-code/snice-qr-code.js +256 -0
  199. package/dist/components/qr-code/snice-qr-code.js.map +1 -0
  200. package/dist/components/qr-code/snice-qr-code.types.d.ts +33 -0
  201. package/dist/components/radio/snice-radio.d.ts +2 -2
  202. package/dist/components/radio/snice-radio.js +9 -9
  203. package/dist/components/radio/snice-radio.js.map +1 -1
  204. package/dist/components/select/snice-option.d.ts +2 -2
  205. package/dist/components/select/snice-option.js +8 -8
  206. package/dist/components/select/snice-option.js.map +1 -1
  207. package/dist/components/select/snice-select.d.ts +2 -2
  208. package/dist/components/select/snice-select.js +9 -9
  209. package/dist/components/select/snice-select.js.map +1 -1
  210. package/dist/components/skeleton/snice-skeleton.d.ts +2 -2
  211. package/dist/components/skeleton/snice-skeleton.js +9 -9
  212. package/dist/components/skeleton/snice-skeleton.js.map +1 -1
  213. package/dist/components/slider/snice-slider.d.ts +53 -0
  214. package/dist/components/slider/snice-slider.js +479 -0
  215. package/dist/components/slider/snice-slider.js.map +1 -0
  216. package/dist/components/slider/snice-slider.types.d.ts +26 -0
  217. package/dist/components/snice-cell-C0slgOpe.js +4 -0
  218. package/dist/components/snice-cell-C0slgOpe.js.map +1 -0
  219. package/dist/components/sparkline/snice-sparkline.d.ts +21 -0
  220. package/dist/components/sparkline/snice-sparkline.js +228 -0
  221. package/dist/components/sparkline/snice-sparkline.js.map +1 -0
  222. package/dist/components/sparkline/snice-sparkline.types.d.ts +16 -0
  223. package/dist/components/spinner/snice-spinner.d.ts +10 -0
  224. package/dist/components/spinner/snice-spinner.js +109 -0
  225. package/dist/components/spinner/snice-spinner.js.map +1 -0
  226. package/dist/components/spinner/snice-spinner.types.d.ts +8 -0
  227. package/dist/components/split-pane/snice-split-pane.d.ts +32 -0
  228. package/dist/components/split-pane/snice-split-pane.js +191 -0
  229. package/dist/components/split-pane/snice-split-pane.js.map +1 -0
  230. package/dist/components/split-pane/snice-split-pane.types.d.ts +19 -0
  231. package/dist/components/stat/snice-stat.d.ts +14 -0
  232. package/dist/components/stat/snice-stat.js +140 -0
  233. package/dist/components/stat/snice-stat.js.map +1 -0
  234. package/dist/components/stat/snice-stat.types.d.ts +12 -0
  235. package/dist/components/stepper/snice-stepper-panel.d.ts +8 -0
  236. package/dist/components/stepper/snice-stepper-panel.js +70 -0
  237. package/dist/components/stepper/snice-stepper-panel.js.map +1 -0
  238. package/dist/components/stepper/snice-stepper-panel.types.d.ts +4 -0
  239. package/dist/components/stepper/snice-stepper.d.ts +15 -0
  240. package/dist/components/stepper/snice-stepper.js +163 -0
  241. package/dist/components/stepper/snice-stepper.js.map +1 -0
  242. package/dist/components/stepper/snice-stepper.types.d.ts +13 -0
  243. package/dist/components/switch/snice-switch.d.ts +2 -2
  244. package/dist/components/switch/snice-switch.js +9 -9
  245. package/dist/components/switch/snice-switch.js.map +1 -1
  246. package/dist/components/table/snice-cell-actions.d.ts +2 -2
  247. package/dist/components/table/snice-cell-actions.js +9 -9
  248. package/dist/components/table/snice-cell-actions.js.map +1 -1
  249. package/dist/components/table/snice-cell-boolean.d.ts +2 -2
  250. package/dist/components/table/snice-cell-boolean.js +9 -9
  251. package/dist/components/table/snice-cell-boolean.js.map +1 -1
  252. package/dist/components/table/snice-cell-color.d.ts +2 -2
  253. package/dist/components/table/snice-cell-color.js +9 -9
  254. package/dist/components/table/snice-cell-color.js.map +1 -1
  255. package/dist/components/table/snice-cell-currency.d.ts +2 -2
  256. package/dist/components/table/snice-cell-currency.js +9 -9
  257. package/dist/components/table/snice-cell-currency.js.map +1 -1
  258. package/dist/components/table/snice-cell-date.d.ts +2 -2
  259. package/dist/components/table/snice-cell-date.js +9 -9
  260. package/dist/components/table/snice-cell-date.js.map +1 -1
  261. package/dist/components/table/snice-cell-duration.d.ts +2 -2
  262. package/dist/components/table/snice-cell-duration.js +9 -9
  263. package/dist/components/table/snice-cell-duration.js.map +1 -1
  264. package/dist/components/table/snice-cell-email.d.ts +2 -2
  265. package/dist/components/table/snice-cell-email.js +9 -9
  266. package/dist/components/table/snice-cell-email.js.map +1 -1
  267. package/dist/components/table/snice-cell-filesize.d.ts +2 -2
  268. package/dist/components/table/snice-cell-filesize.js +9 -9
  269. package/dist/components/table/snice-cell-filesize.js.map +1 -1
  270. package/dist/components/table/snice-cell-image.d.ts +2 -2
  271. package/dist/components/table/snice-cell-image.js +9 -9
  272. package/dist/components/table/snice-cell-image.js.map +1 -1
  273. package/dist/components/table/snice-cell-json.d.ts +2 -2
  274. package/dist/components/table/snice-cell-json.js +9 -9
  275. package/dist/components/table/snice-cell-json.js.map +1 -1
  276. package/dist/components/table/snice-cell-link.d.ts +2 -2
  277. package/dist/components/table/snice-cell-link.js +9 -9
  278. package/dist/components/table/snice-cell-link.js.map +1 -1
  279. package/dist/components/table/snice-cell-location.d.ts +2 -2
  280. package/dist/components/table/snice-cell-location.js +9 -9
  281. package/dist/components/table/snice-cell-location.js.map +1 -1
  282. package/dist/components/table/snice-cell-number.d.ts +2 -2
  283. package/dist/components/table/snice-cell-number.js +9 -9
  284. package/dist/components/table/snice-cell-number.js.map +1 -1
  285. package/dist/components/table/snice-cell-percentage.d.ts +2 -2
  286. package/dist/components/table/snice-cell-percentage.js +9 -9
  287. package/dist/components/table/snice-cell-percentage.js.map +1 -1
  288. package/dist/components/table/snice-cell-phone.d.ts +2 -2
  289. package/dist/components/table/snice-cell-phone.js +9 -9
  290. package/dist/components/table/snice-cell-phone.js.map +1 -1
  291. package/dist/components/table/snice-cell-progress.d.ts +2 -2
  292. package/dist/components/table/snice-cell-progress.js +9 -9
  293. package/dist/components/table/snice-cell-progress.js.map +1 -1
  294. package/dist/components/table/snice-cell-rating.d.ts +2 -2
  295. package/dist/components/table/snice-cell-rating.js +9 -9
  296. package/dist/components/table/snice-cell-rating.js.map +1 -1
  297. package/dist/components/table/snice-cell-sparkline.d.ts +2 -2
  298. package/dist/components/table/snice-cell-sparkline.js +9 -9
  299. package/dist/components/table/snice-cell-sparkline.js.map +1 -1
  300. package/dist/components/table/snice-cell-status.d.ts +2 -2
  301. package/dist/components/table/snice-cell-status.js +9 -9
  302. package/dist/components/table/snice-cell-status.js.map +1 -1
  303. package/dist/components/table/snice-cell-tag.d.ts +2 -2
  304. package/dist/components/table/snice-cell-tag.js +9 -9
  305. package/dist/components/table/snice-cell-tag.js.map +1 -1
  306. package/dist/components/table/snice-cell-text.d.ts +2 -2
  307. package/dist/components/table/snice-cell-text.js +9 -9
  308. package/dist/components/table/snice-cell-text.js.map +1 -1
  309. package/dist/components/table/snice-cell.d.ts +2 -2
  310. package/dist/components/table/snice-cell.js +9 -9
  311. package/dist/components/table/snice-cell.js.map +1 -1
  312. package/dist/components/table/snice-column.d.ts +1 -1
  313. package/dist/components/table/snice-column.js +4 -4
  314. package/dist/components/table/snice-column.js.map +1 -1
  315. package/dist/components/table/snice-header.d.ts +2 -2
  316. package/dist/components/table/snice-header.js +9 -9
  317. package/dist/components/table/snice-header.js.map +1 -1
  318. package/dist/components/table/snice-progress.d.ts +2 -2
  319. package/dist/components/table/snice-progress.js +8 -8
  320. package/dist/components/table/snice-progress.js.map +1 -1
  321. package/dist/components/table/snice-rating.d.ts +2 -2
  322. package/dist/components/table/snice-rating.js +8 -8
  323. package/dist/components/table/snice-rating.js.map +1 -1
  324. package/dist/components/table/snice-row.d.ts +2 -2
  325. package/dist/components/table/snice-row.js +10 -10
  326. package/dist/components/table/snice-row.js.map +1 -1
  327. package/dist/components/table/snice-table.d.ts +2 -3
  328. package/dist/components/table/snice-table.js +9 -14
  329. package/dist/components/table/snice-table.js.map +1 -1
  330. package/dist/components/tabs/snice-tab-panel.d.ts +2 -2
  331. package/dist/components/tabs/snice-tab-panel.js +9 -9
  332. package/dist/components/tabs/snice-tab-panel.js.map +1 -1
  333. package/dist/components/tabs/snice-tab.d.ts +2 -2
  334. package/dist/components/tabs/snice-tab.js +9 -9
  335. package/dist/components/tabs/snice-tab.js.map +1 -1
  336. package/dist/components/tabs/snice-tabs.d.ts +2 -2
  337. package/dist/components/tabs/snice-tabs.js +9 -9
  338. package/dist/components/tabs/snice-tabs.js.map +1 -1
  339. package/dist/components/terminal/snice-terminal.types.d.ts +133 -0
  340. package/dist/components/textarea/snice-textarea.d.ts +52 -0
  341. package/dist/components/textarea/snice-textarea.js +407 -0
  342. package/dist/components/textarea/snice-textarea.js.map +1 -0
  343. package/dist/components/textarea/snice-textarea.types.d.ts +30 -0
  344. package/dist/components/timeline/snice-timeline.d.ts +11 -0
  345. package/dist/components/timeline/snice-timeline.js +112 -0
  346. package/dist/components/timeline/snice-timeline.js.map +1 -0
  347. package/dist/components/timeline/snice-timeline.types.d.ts +16 -0
  348. package/dist/components/toast/snice-toast-container.d.ts +2 -2
  349. package/dist/components/toast/snice-toast-container.js +8 -8
  350. package/dist/components/toast/snice-toast-container.js.map +1 -1
  351. package/dist/components/toast/snice-toast.d.ts +2 -2
  352. package/dist/components/toast/snice-toast.js +8 -8
  353. package/dist/components/toast/snice-toast.js.map +1 -1
  354. package/dist/components/tooltip/snice-tooltip.d.ts +2 -2
  355. package/dist/components/tooltip/snice-tooltip.js +10 -10
  356. package/dist/components/tooltip/snice-tooltip.js.map +1 -1
  357. package/dist/components/tree/snice-tree-item.d.ts +35 -0
  358. package/dist/components/tree/snice-tree-item.js +301 -0
  359. package/dist/components/tree/snice-tree-item.js.map +1 -0
  360. package/dist/components/tree/snice-tree-item.types.d.ts +30 -0
  361. package/dist/components/tree/snice-tree.d.ts +45 -0
  362. package/dist/components/tree/snice-tree.js +390 -0
  363. package/dist/components/tree/snice-tree.js.map +1 -0
  364. package/dist/components/tree/snice-tree.types.d.ts +65 -0
  365. package/dist/components/virtual-scroller/snice-virtual-scroller.d.ts +31 -0
  366. package/dist/components/virtual-scroller/snice-virtual-scroller.js +160 -0
  367. package/dist/components/virtual-scroller/snice-virtual-scroller.js.map +1 -0
  368. package/dist/components/virtual-scroller/snice-virtual-scroller.types.d.ts +19 -0
  369. package/dist/index.cjs +125 -158
  370. package/dist/index.cjs.map +1 -1
  371. package/dist/index.esm.js +125 -158
  372. package/dist/index.esm.js.map +1 -1
  373. package/dist/index.iife.js +125 -158
  374. package/dist/index.iife.js.map +1 -1
  375. package/dist/parts.d.ts +13 -16
  376. package/dist/symbols.cjs +1 -1
  377. package/dist/symbols.esm.js +1 -1
  378. package/dist/template.d.ts +0 -1
  379. package/dist/transitions.cjs +1 -1
  380. package/dist/transitions.esm.js +1 -1
  381. package/docs/ai/README.md +10 -1
  382. package/docs/ai/components/actions.md +81 -0
  383. package/docs/ai/components/audio-recorder.md +97 -0
  384. package/docs/ai/components/banner.md +84 -0
  385. package/docs/ai/components/calendar.md +95 -0
  386. package/docs/ai/components/camera.md +130 -0
  387. package/docs/ai/components/carousel.md +49 -0
  388. package/docs/ai/components/chart.md +160 -0
  389. package/docs/ai/components/chat.md +189 -0
  390. package/docs/ai/components/code-block.md +32 -0
  391. package/docs/ai/components/color-display.md +48 -0
  392. package/docs/ai/components/color-picker.md +75 -0
  393. package/docs/ai/components/command-palette.md +117 -0
  394. package/docs/ai/components/doc.md +154 -0
  395. package/docs/ai/components/draw.md +140 -0
  396. package/docs/ai/components/empty-state.md +72 -0
  397. package/docs/ai/components/file-upload.md +93 -0
  398. package/docs/ai/components/gantt.md +95 -0
  399. package/docs/ai/components/image.md +60 -0
  400. package/docs/ai/components/kanban.md +102 -0
  401. package/docs/ai/components/kpi.md +158 -0
  402. package/docs/ai/components/layout.md +261 -0
  403. package/docs/ai/components/link.md +77 -0
  404. package/docs/ai/components/list.md +50 -0
  405. package/docs/ai/components/location.md +75 -0
  406. package/docs/ai/components/menu.md +114 -0
  407. package/docs/ai/components/popover.md +70 -0
  408. package/docs/ai/components/qr-code.md +106 -0
  409. package/docs/ai/components/slider.md +87 -0
  410. package/docs/ai/components/sparkline.md +168 -0
  411. package/docs/ai/components/spinner.md +47 -0
  412. package/docs/ai/components/split-pane.md +71 -0
  413. package/docs/ai/components/stat.md +29 -0
  414. package/docs/ai/components/stepper.md +216 -0
  415. package/docs/ai/components/textarea.md +87 -0
  416. package/docs/ai/components/timeline.md +77 -0
  417. package/docs/ai/components/tree.md +191 -0
  418. package/docs/ai/components/virtual-scroller.md +71 -0
  419. package/docs/components/actions.md +317 -0
  420. package/docs/components/alert.md +540 -0
  421. package/docs/components/audio-recorder.md +152 -0
  422. package/docs/components/badge.md +593 -0
  423. package/docs/components/banner.md +106 -0
  424. package/docs/components/breadcrumbs.md +568 -0
  425. package/docs/components/button.md +648 -0
  426. package/docs/components/calendar.md +397 -0
  427. package/docs/components/camera.md +383 -0
  428. package/docs/components/card.md +778 -0
  429. package/docs/components/carousel.md +63 -0
  430. package/docs/components/chart.md +526 -0
  431. package/docs/components/chat.md +482 -0
  432. package/docs/components/checkbox.md +714 -0
  433. package/docs/components/chip.md +670 -0
  434. package/docs/components/code-block.md +49 -0
  435. package/docs/components/color-display.md +96 -0
  436. package/docs/components/color-picker.md +81 -0
  437. package/docs/components/command-palette.md +159 -0
  438. package/docs/components/doc.md +357 -0
  439. package/docs/components/draw.md +307 -0
  440. package/docs/components/empty-state.md +79 -0
  441. package/docs/components/file-upload.md +263 -0
  442. package/docs/components/gantt.md +347 -0
  443. package/docs/components/image.md +110 -0
  444. package/docs/components/kanban.md +410 -0
  445. package/docs/components/kpi.md +251 -0
  446. package/docs/components/link.md +229 -0
  447. package/docs/components/list.md +65 -0
  448. package/docs/components/location.md +369 -0
  449. package/docs/components/menu.md +633 -0
  450. package/docs/components/popover.md +333 -0
  451. package/docs/components/qr-code.md +464 -0
  452. package/docs/components/slider.md +297 -0
  453. package/docs/components/sparkline.md +293 -0
  454. package/docs/components/spinner.md +63 -0
  455. package/docs/components/split-pane.md +315 -0
  456. package/docs/components/stat.md +45 -0
  457. package/docs/components/stepper.md +410 -0
  458. package/docs/components/textarea.md +235 -0
  459. package/docs/components/timeline.md +192 -0
  460. package/docs/components/tree.md +536 -0
  461. package/docs/components/virtual-scroller.md +298 -0
  462. package/package.json +2 -1
  463. package/dist/components/snice-cell-BLFVdxPp.js +0 -4
  464. package/dist/components/snice-cell-BLFVdxPp.js.map +0 -1
@@ -0,0 +1,158 @@
1
+ # snice-kpi
2
+
3
+ Key performance indicator display with value, label, trend, sparkline, and sentiment.
4
+
5
+ ## Properties
6
+
7
+ ```typescript
8
+ label: string = '' // Metric label/name
9
+ value: string | number = '' // Main metric value
10
+ trendValue?: string | number // Trend value (e.g., "+12.5%")
11
+ trendData?: number[] // Sparkline data array
12
+ sentiment?: KpiSentiment // 'up' | 'down' | 'neutral'
13
+ size: KpiSize = 'medium' // 'small' | 'medium' | 'large'
14
+ showSparkline: boolean = true // Show sparkline when data provided
15
+ ```
16
+
17
+ ## Usage
18
+
19
+ ```html
20
+ <!-- Basic -->
21
+ <snice-kpi label="Revenue" value="$45,231"></snice-kpi>
22
+
23
+ <!-- With trend -->
24
+ <snice-kpi
25
+ label="Monthly Revenue"
26
+ value="$54,239"
27
+ trend-value="+12.5%"
28
+ sentiment="up">
29
+ </snice-kpi>
30
+
31
+ <!-- With sparkline -->
32
+ <snice-kpi
33
+ id="sales"
34
+ label="Weekly Sales"
35
+ value="$28,450"
36
+ trend-value="+15.3%"
37
+ sentiment="up">
38
+ </snice-kpi>
39
+ <script>
40
+ document.getElementById('sales').trendData = [20, 25, 22, 30, 28, 35, 32];
41
+ </script>
42
+
43
+ <!-- Sentiments -->
44
+ <snice-kpi sentiment="up"></snice-kpi> <!-- Green, ↑ -->
45
+ <snice-kpi sentiment="down"></snice-kpi> <!-- Red, ↓ -->
46
+ <snice-kpi sentiment="neutral"></snice-kpi> <!-- Gray, → -->
47
+
48
+ <!-- Sizes -->
49
+ <snice-kpi size="small"></snice-kpi>
50
+ <snice-kpi size="medium"></snice-kpi>
51
+ <snice-kpi size="large"></snice-kpi>
52
+
53
+ <!-- Without sparkline -->
54
+ <snice-kpi show-sparkline="false"></snice-kpi>
55
+
56
+ <!-- Dashboard grid -->
57
+ <div style="display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;">
58
+ <snice-kpi
59
+ id="mrr"
60
+ label="MRR"
61
+ value="$127K"
62
+ trend-value="+22%"
63
+ sentiment="up">
64
+ </snice-kpi>
65
+
66
+ <snice-kpi
67
+ id="users"
68
+ label="Active Users"
69
+ value="2,345"
70
+ trend-value="+8.7%"
71
+ sentiment="up">
72
+ </snice-kpi>
73
+
74
+ <snice-kpi
75
+ id="churn"
76
+ label="Churn"
77
+ value="2.3%"
78
+ trend-value="+0.8%"
79
+ sentiment="down">
80
+ </snice-kpi>
81
+ </div>
82
+ <script>
83
+ document.getElementById('mrr').trendData = [100, 110, 105, 120, 115, 130, 127];
84
+ document.getElementById('users').trendData = [2000, 2100, 2200, 2250, 2300, 2345];
85
+ document.getElementById('churn').trendData = [1.5, 1.8, 2.0, 2.2, 2.1, 2.3];
86
+ </script>
87
+ ```
88
+
89
+ ## CSS Parts
90
+
91
+ ```css
92
+ ::part(container) /* Main container */
93
+ ::part(header) /* Header section */
94
+ ::part(main) /* Main content (label + value) */
95
+ ::part(label) /* Label text */
96
+ ::part(value) /* Value text */
97
+ ::part(trend) /* Trend container */
98
+ ::part(trend-icon) /* Trend icon (↑↓→) */
99
+ ::part(trend-value) /* Trend value text */
100
+ ::part(sparkline) /* Sparkline container */
101
+ ```
102
+
103
+ ## Styling
104
+
105
+ ```css
106
+ --snice-color-background
107
+ --snice-color-border
108
+ --snice-color-text
109
+ --snice-color-text-secondary
110
+ --snice-color-success /* Up sentiment */
111
+ --snice-color-danger /* Down sentiment */
112
+ --snice-spacing-xs
113
+ --snice-spacing-sm
114
+ --snice-spacing-md
115
+ --snice-spacing-lg
116
+ --snice-font-size-xs
117
+ --snice-font-size-sm
118
+ --snice-font-size-md
119
+ --snice-font-size-2xl
120
+ --snice-font-size-3xl
121
+ --snice-font-size-4xl
122
+ --snice-font-weight-medium
123
+ --snice-font-weight-semibold
124
+ --snice-font-weight-bold
125
+ --snice-border-radius-md
126
+ ```
127
+
128
+ ## Common Patterns
129
+
130
+ ```html
131
+ <!-- Financial metrics -->
132
+ <snice-kpi label="Revenue" value="$127K" trend-value="+22%" sentiment="up"></snice-kpi>
133
+ <snice-kpi label="Costs" value="$45K" trend-value="-5%" sentiment="down"></snice-kpi>
134
+ <snice-kpi label="Profit" value="$82K" trend-value="+35%" sentiment="up"></snice-kpi>
135
+
136
+ <!-- User metrics -->
137
+ <snice-kpi label="Total Users" value="12,345" trend-value="+234" sentiment="up"></snice-kpi>
138
+ <snice-kpi label="Active Users" value="8,901" trend-value="+156" sentiment="up"></snice-kpi>
139
+ <snice-kpi label="Churn Rate" value="2.3%" trend-value="+0.2%" sentiment="down"></snice-kpi>
140
+
141
+ <!-- Performance metrics -->
142
+ <snice-kpi label="Response Time" value="245ms" trend-value="-23ms" sentiment="down"></snice-kpi>
143
+ <snice-kpi label="Uptime" value="99.9%" trend-value="±0%" sentiment="neutral"></snice-kpi>
144
+ <snice-kpi label="Error Rate" value="0.12%" trend-value="-0.03%" sentiment="down"></snice-kpi>
145
+
146
+ <!-- Marketing metrics -->
147
+ <snice-kpi label="Conversion Rate" value="3.24%" trend-value="+0.5%" sentiment="up"></snice-kpi>
148
+ <snice-kpi label="CAC" value="$156" trend-value="-$12" sentiment="down"></snice-kpi>
149
+ <snice-kpi label="LTV" value="$1,245" trend-value="+$87" sentiment="up"></snice-kpi>
150
+ ```
151
+
152
+ ## Notes
153
+
154
+ - Sparkline automatically uses sentiment color (success/danger/muted)
155
+ - Sentiment icons: up=↑, down=↓, neutral=→
156
+ - trendData array automatically renders sparkline
157
+ - Value can be string or number for formatting flexibility
158
+ - showSparkline=false hides sparkline even if data provided
@@ -0,0 +1,261 @@
1
+ # snice-layout
2
+
3
+ Collection of pre-built page layouts for common application patterns.
4
+
5
+ ## snice-layout
6
+
7
+ Base layout with header navigation, main content area, and footer.
8
+
9
+ ### Slots
10
+
11
+ - `brand` - Logo/brand in header
12
+ - `page` - Main page content
13
+ - `footer` - Footer content
14
+
15
+ ### Methods
16
+
17
+ - `update(appContext, placards, currentRoute, routeParams)` - Update layout navigation
18
+
19
+ ### Usage
20
+
21
+ ```html
22
+ <snice-layout>
23
+ <div slot="brand">
24
+ <h1>My App</h1>
25
+ </div>
26
+ <div slot="page">
27
+ <!-- Page content -->
28
+ </div>
29
+ <div slot="footer">
30
+ <p>© 2025 My Company</p>
31
+ </div>
32
+ </snice-layout>
33
+ ```
34
+
35
+ ## snice-layout-centered
36
+
37
+ Centered single-column layout with configurable width.
38
+
39
+ ### Properties
40
+
41
+ ```typescript
42
+ width: 'sm'|'md'|'lg'|'xl' = 'md';
43
+ ```
44
+
45
+ ### Slots
46
+
47
+ - `page` - Main content (centered)
48
+
49
+ ### Usage
50
+
51
+ ```html
52
+ <snice-layout-centered width="lg">
53
+ <div slot="page">
54
+ <!-- Centered content -->
55
+ </div>
56
+ </snice-layout-centered>
57
+ ```
58
+
59
+ ## snice-layout-split
60
+
61
+ Two-column split layout.
62
+
63
+ ### Slots
64
+
65
+ - `left` - Left column content
66
+ - `right` - Right column content
67
+
68
+ ### Usage
69
+
70
+ ```html
71
+ <snice-layout-split>
72
+ <div slot="left">
73
+ <!-- Left sidebar -->
74
+ </div>
75
+ <div slot="right">
76
+ <!-- Main content -->
77
+ </div>
78
+ </snice-layout-split>
79
+ ```
80
+
81
+ ## snice-layout-sidebar
82
+
83
+ Layout with collapsible sidebar and main content area.
84
+
85
+ ### Slots
86
+
87
+ - `brand` - Logo/brand in sidebar header
88
+ - `sidebar` - Sidebar navigation content
89
+ - `page` - Main page content
90
+ - `footer` - Footer content
91
+
92
+ ### Usage
93
+
94
+ ```html
95
+ <snice-layout-sidebar>
96
+ <div slot="brand">
97
+ <h1>My App</h1>
98
+ </div>
99
+ <nav slot="sidebar">
100
+ <!-- Sidebar navigation -->
101
+ </nav>
102
+ <div slot="page">
103
+ <!-- Main content -->
104
+ </div>
105
+ </snice-layout-sidebar>
106
+ ```
107
+
108
+ ## snice-layout-dashboard
109
+
110
+ Dashboard layout with header, sidebar, and content grid.
111
+
112
+ ### Slots
113
+
114
+ - `brand` - Logo/brand
115
+ - `header` - Top header content
116
+ - `sidebar` - Left sidebar navigation
117
+ - `page` - Main dashboard content
118
+
119
+ ### Usage
120
+
121
+ ```html
122
+ <snice-layout-dashboard>
123
+ <div slot="brand">
124
+ <h1>Dashboard</h1>
125
+ </div>
126
+ <div slot="header">
127
+ <!-- User menu, notifications -->
128
+ </div>
129
+ <nav slot="sidebar">
130
+ <!-- Nav items -->
131
+ </nav>
132
+ <div slot="page">
133
+ <!-- Dashboard widgets -->
134
+ </div>
135
+ </snice-layout-dashboard>
136
+ ```
137
+
138
+ ## snice-layout-landing
139
+
140
+ Landing page layout with hero section.
141
+
142
+ ### Slots
143
+
144
+ - `header` - Top navigation
145
+ - `hero` - Hero section
146
+ - `page` - Main content
147
+ - `footer` - Footer
148
+
149
+ ### Usage
150
+
151
+ ```html
152
+ <snice-layout-landing>
153
+ <nav slot="header">
154
+ <!-- Top nav -->
155
+ </nav>
156
+ <div slot="hero">
157
+ <h1>Welcome</h1>
158
+ </div>
159
+ <div slot="page">
160
+ <!-- Features, content -->
161
+ </div>
162
+ <footer slot="footer">
163
+ <!-- Links, copyright -->
164
+ </footer>
165
+ </snice-layout-landing>
166
+ ```
167
+
168
+ ## snice-layout-blog
169
+
170
+ Blog-style layout with header, content, and sidebar.
171
+
172
+ ### Slots
173
+
174
+ - `header` - Header navigation
175
+ - `page` - Main blog content
176
+ - `sidebar` - Blog sidebar (recent posts, categories)
177
+ - `footer` - Footer
178
+
179
+ ### Usage
180
+
181
+ ```html
182
+ <snice-layout-blog>
183
+ <nav slot="header">
184
+ <!-- Blog nav -->
185
+ </nav>
186
+ <article slot="page">
187
+ <!-- Blog post -->
188
+ </article>
189
+ <aside slot="sidebar">
190
+ <!-- Recent posts, categories -->
191
+ </aside>
192
+ </snice-layout-blog>
193
+ ```
194
+
195
+ ## snice-layout-fullscreen
196
+
197
+ Full viewport layout with no margins.
198
+
199
+ ### Slots
200
+
201
+ - `page` - Fullscreen content
202
+
203
+ ### Usage
204
+
205
+ ```html
206
+ <snice-layout-fullscreen>
207
+ <div slot="page">
208
+ <!-- Fullscreen app -->
209
+ </div>
210
+ </snice-layout-fullscreen>
211
+ ```
212
+
213
+ ## snice-layout-minimal
214
+
215
+ Minimal layout with just header and content.
216
+
217
+ ### Slots
218
+
219
+ - `header` - Minimal header
220
+ - `page` - Main content
221
+
222
+ ### Usage
223
+
224
+ ```html
225
+ <snice-layout-minimal>
226
+ <div slot="header">
227
+ <h1>Simple App</h1>
228
+ </div>
229
+ <div slot="page">
230
+ <!-- Content -->
231
+ </div>
232
+ </snice-layout-minimal>
233
+ ```
234
+
235
+ ## snice-layout-card
236
+
237
+ Card-based centered layout for login/signup pages.
238
+
239
+ ### Slots
240
+
241
+ - `page` - Card content
242
+
243
+ ### Usage
244
+
245
+ ```html
246
+ <snice-layout-card>
247
+ <div slot="page">
248
+ <h2>Sign In</h2>
249
+ <!-- Login form -->
250
+ </div>
251
+ </snice-layout-card>
252
+ ```
253
+
254
+ ## Features
255
+
256
+ - 10 pre-built layout patterns
257
+ - Responsive design
258
+ - Slotted content areas
259
+ - Navigation integration (where applicable)
260
+ - Router integration support
261
+ - Common UI patterns (dashboard, blog, landing, etc.)
@@ -0,0 +1,77 @@
1
+ # snice-link
2
+
3
+ Link component with variants and external link handling.
4
+
5
+ ## Properties
6
+
7
+ ```typescript
8
+ href: string = '' // Link URL
9
+ target: LinkTarget = '_self' // '_self' | '_blank' | '_parent' | '_top'
10
+ variant: LinkVariant = 'default' // 'default' | 'primary' | 'secondary' | 'muted'
11
+ disabled: boolean = false // Disable link
12
+ external: boolean = false // Auto _blank + noopener
13
+ underline: boolean = false // Show underline
14
+ hash: boolean = false // Auto prepend # to href (for hash routing)
15
+ ```
16
+
17
+ ## Events
18
+
19
+ ```typescript
20
+ @dispatch('click') // Emitted on click (prevented if disabled)
21
+ @dispatch('navigate') // Emitted on hash link click (for router integration)
22
+ // detail: { href: string }
23
+ // cancelable: true
24
+ ```
25
+
26
+ ## Usage
27
+
28
+ ```html
29
+ <!-- Basic -->
30
+ <snice-link href="/page">Link text</snice-link>
31
+
32
+ <!-- External -->
33
+ <snice-link href="https://example.com" external>External</snice-link>
34
+
35
+ <!-- Variants -->
36
+ <snice-link href="/page" variant="primary">Primary</snice-link>
37
+ <snice-link href="/page" variant="secondary">Secondary</snice-link>
38
+ <snice-link href="/page" variant="muted">Muted</snice-link>
39
+
40
+ <!-- Underlined -->
41
+ <snice-link href="/page" underline>Underlined link</snice-link>
42
+
43
+ <!-- Disabled -->
44
+ <snice-link href="/page" disabled>Disabled</snice-link>
45
+
46
+ <!-- Hash links (for routing) -->
47
+ <snice-link href="home" hash>Home</snice-link>
48
+ <snice-link href="about" hash>About</snice-link>
49
+ <!-- Renders as: <a href="#home">Home</a> -->
50
+
51
+ <!-- Router integration -->
52
+ <snice-link href="profile" hash @navigate="${handleNavigate}">Profile</snice-link>
53
+ <script>
54
+ function handleNavigate(e) {
55
+ console.log('Navigate to:', e.detail.href);
56
+ // e.preventDefault() in the handler will cancel navigation
57
+ }
58
+ </script>
59
+ ```
60
+
61
+ ## CSS Parts
62
+
63
+ ```css
64
+ ::part(link) /* Anchor element */
65
+ ::part(external-icon) /* External icon */
66
+ ```
67
+
68
+ ## Styling
69
+
70
+ ```css
71
+ --snice-color-primary
72
+ --snice-color-primary-dark
73
+ --snice-color-text-secondary
74
+ --snice-color-text
75
+ --snice-color-text-muted
76
+ --snice-color-text-disabled
77
+ ```
@@ -0,0 +1,50 @@
1
+ # snice-list
2
+
3
+ List of items with optional selection, icons, descriptions.
4
+
5
+ ## Properties
6
+
7
+ ```typescript
8
+ items: ListItem[] = [];
9
+ selectionMode: 'single'|'multiple'|'none' = 'none';
10
+ selectedItems: string[] = [];
11
+ hoverable: boolean = true;
12
+ dividers: boolean = false;
13
+ dense: boolean = false;
14
+ ```
15
+
16
+ ## ListItem
17
+
18
+ ```typescript
19
+ interface ListItem {
20
+ id: string;
21
+ label: string;
22
+ description?: string;
23
+ icon?: string;
24
+ iconImage?: string;
25
+ disabled?: boolean;
26
+ selected?: boolean;
27
+ data?: any;
28
+ }
29
+ ```
30
+
31
+ ## Methods
32
+
33
+ - `selectItem(id)`, `deselectItem(id)`, `toggleSelection(id)`
34
+ - `getSelectedItems(): ListItem[]`
35
+
36
+ ## Events
37
+
38
+ - `@snice/list-item-select` (detail: { item, selected, list })
39
+
40
+ ## Usage
41
+
42
+ ```html
43
+ <snice-list id="list" selection-mode="single" dividers></snice-list>
44
+ <script>
45
+ list.items = [
46
+ { id: '1', label: 'Item 1', description: 'First', icon: '📄' },
47
+ { id: '2', label: 'Item 2', description: 'Second', icon: '📄' }
48
+ ];
49
+ </script>
50
+ ```
@@ -0,0 +1,75 @@
1
+ # snice-location
2
+
3
+ Display location information with addresses, coordinates, and maps.
4
+
5
+ ## Properties
6
+
7
+ ```typescript
8
+ mode: 'full'|'compact'|'coordinates'|'address' = 'full';
9
+ name: string = '';
10
+ address: string = '';
11
+ city: string = '';
12
+ state: string = '';
13
+ country: string = '';
14
+ zipCode: string = '';
15
+ latitude: number | string = '';
16
+ longitude: number | string = '';
17
+ showMap: boolean = false;
18
+ showIcon: boolean = true;
19
+ icon: string = '📍';
20
+ iconImage: string = '';
21
+ mapUrl: string = '';
22
+ clickable: boolean = false;
23
+ ```
24
+
25
+ ## Methods
26
+
27
+ ```typescript
28
+ getData(): LocationData
29
+ getCoordinates(): { latitude: number; longitude: number } | null
30
+ getFullAddress(): string
31
+ openMap(): void
32
+ ```
33
+
34
+ ## Events
35
+
36
+ - `location-click` - Dispatched when clicked (detail: LocationData)
37
+
38
+ ## Usage
39
+
40
+ ```html
41
+ <snice-location
42
+ name="Central Park"
43
+ address="Central Park"
44
+ city="New York"
45
+ state="NY"
46
+ latitude="40.7829"
47
+ longitude="-73.9654"
48
+ clickable>
49
+ </snice-location>
50
+
51
+ <!-- With embedded map -->
52
+ <snice-location
53
+ name="Times Square"
54
+ latitude="40.7580"
55
+ longitude="-73.9855"
56
+ show-map>
57
+ </snice-location>
58
+
59
+ <!-- Coordinates only -->
60
+ <snice-location
61
+ latitude="40.7580"
62
+ longitude="-73.9855"
63
+ mode="coordinates">
64
+ </snice-location>
65
+ ```
66
+
67
+ ## Features
68
+
69
+ - Multiple display modes (full/compact/coordinates/address)
70
+ - Embedded Google Maps support
71
+ - Custom icons (emoji or image)
72
+ - Clickable to open in maps app
73
+ - Custom map URL support
74
+ - Complete address formatting
75
+ - Coordinate validation