snice 2.5.4 → 3.2.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 (411) hide show
  1. package/README.md +537 -869
  2. package/bin/templates/base/src/components/counter-button.ts +13 -26
  3. package/bin/templates/base/src/controllers/counter-controller.ts +3 -3
  4. package/dist/components/accordion/snice-accordion-item.d.ts +4 -5
  5. package/dist/components/accordion/snice-accordion-item.js +37 -39
  6. package/dist/components/accordion/snice-accordion-item.js.map +1 -1
  7. package/dist/components/accordion/snice-accordion.d.ts +5 -11
  8. package/dist/components/accordion/snice-accordion.js +51 -52
  9. package/dist/components/accordion/snice-accordion.js.map +1 -1
  10. package/dist/components/alert/snice-alert.d.ts +2 -6
  11. package/dist/components/alert/snice-alert.js +41 -56
  12. package/dist/components/alert/snice-alert.js.map +1 -1
  13. package/dist/components/avatar/snice-avatar.d.ts +2 -6
  14. package/dist/components/avatar/snice-avatar.js +64 -71
  15. package/dist/components/avatar/snice-avatar.js.map +1 -1
  16. package/dist/components/badge/snice-badge.d.ts +2 -3
  17. package/dist/components/badge/snice-badge.js +22 -23
  18. package/dist/components/badge/snice-badge.js.map +1 -1
  19. package/dist/components/banner/snice-banner.d.ts +22 -0
  20. package/dist/components/banner/snice-banner.js +180 -0
  21. package/dist/components/banner/snice-banner.js.map +1 -0
  22. package/dist/components/banner/snice-banner.types.d.ts +14 -0
  23. package/dist/components/breadcrumbs/snice-breadcrumbs.d.ts +5 -12
  24. package/dist/components/breadcrumbs/snice-breadcrumbs.js +88 -89
  25. package/dist/components/breadcrumbs/snice-breadcrumbs.js.map +1 -1
  26. package/dist/components/button/snice-button.d.ts +3 -7
  27. package/dist/components/button/snice-button.js +37 -58
  28. package/dist/components/button/snice-button.js.map +1 -1
  29. package/dist/components/card/snice-card.d.ts +5 -8
  30. package/dist/components/card/snice-card.js +71 -56
  31. package/dist/components/card/snice-card.js.map +1 -1
  32. package/dist/components/checkbox/snice-checkbox.d.ts +4 -13
  33. package/dist/components/checkbox/snice-checkbox.js +66 -137
  34. package/dist/components/checkbox/snice-checkbox.js.map +1 -1
  35. package/dist/components/chip/snice-chip.d.ts +5 -11
  36. package/dist/components/chip/snice-chip.js +44 -47
  37. package/dist/components/chip/snice-chip.js.map +1 -1
  38. package/dist/components/color-display/snice-color-display.d.ts +14 -0
  39. package/dist/components/color-display/snice-color-display.js +151 -0
  40. package/dist/components/color-display/snice-color-display.js.map +1 -0
  41. package/dist/components/color-display/snice-color-display.types.d.ts +10 -0
  42. package/dist/components/color-picker/snice-color-picker.d.ts +50 -0
  43. package/dist/components/color-picker/snice-color-picker.js +489 -0
  44. package/dist/components/color-picker/snice-color-picker.js.map +1 -0
  45. package/dist/components/color-picker/snice-color-picker.types.d.ts +19 -0
  46. package/dist/components/date-picker/snice-date-picker.d.ts +11 -11
  47. package/dist/components/date-picker/snice-date-picker.js +134 -133
  48. package/dist/components/date-picker/snice-date-picker.js.map +1 -1
  49. package/dist/components/divider/snice-divider.d.ts +2 -4
  50. package/dist/components/divider/snice-divider.js +14 -22
  51. package/dist/components/divider/snice-divider.js.map +1 -1
  52. package/dist/components/drawer/snice-drawer.d.ts +4 -4
  53. package/dist/components/drawer/snice-drawer.js +25 -19
  54. package/dist/components/drawer/snice-drawer.js.map +1 -1
  55. package/dist/components/empty-state/snice-empty-state.d.ts +13 -0
  56. package/dist/components/empty-state/snice-empty-state.js +121 -0
  57. package/dist/components/empty-state/snice-empty-state.js.map +1 -0
  58. package/dist/components/empty-state/snice-empty-state.types.d.ts +9 -0
  59. package/dist/components/file-upload/snice-file-upload.d.ts +45 -0
  60. package/dist/components/file-upload/snice-file-upload.js +394 -0
  61. package/dist/components/file-upload/snice-file-upload.js.map +1 -0
  62. package/dist/components/file-upload/snice-file-upload.types.d.ts +22 -0
  63. package/dist/components/image/snice-image.d.ts +22 -0
  64. package/dist/components/image/snice-image.js +201 -0
  65. package/dist/components/image/snice-image.js.map +1 -0
  66. package/dist/components/image/snice-image.types.d.ts +17 -0
  67. package/dist/components/input/snice-input.d.ts +8 -6
  68. package/dist/components/input/snice-input.js +122 -105
  69. package/dist/components/input/snice-input.js.map +1 -1
  70. package/dist/components/kpi/snice-kpi.d.ts +16 -0
  71. package/dist/components/kpi/snice-kpi.js +162 -0
  72. package/dist/components/kpi/snice-kpi.js.map +1 -0
  73. package/dist/components/kpi/snice-kpi.types.d.ts +12 -0
  74. package/dist/components/layout/snice-layout-blog.d.ts +4 -4
  75. package/dist/components/layout/snice-layout-blog.js +21 -19
  76. package/dist/components/layout/snice-layout-blog.js.map +1 -1
  77. package/dist/components/layout/snice-layout-card.d.ts +2 -2
  78. package/dist/components/layout/snice-layout-card.js +16 -9
  79. package/dist/components/layout/snice-layout-card.js.map +1 -1
  80. package/dist/components/layout/snice-layout-centered.d.ts +2 -2
  81. package/dist/components/layout/snice-layout-centered.js +14 -7
  82. package/dist/components/layout/snice-layout-centered.js.map +1 -1
  83. package/dist/components/layout/snice-layout-dashboard.d.ts +5 -5
  84. package/dist/components/layout/snice-layout-dashboard.js +38 -30
  85. package/dist/components/layout/snice-layout-dashboard.js.map +1 -1
  86. package/dist/components/layout/snice-layout-fullscreen.d.ts +2 -2
  87. package/dist/components/layout/snice-layout-fullscreen.js +17 -10
  88. package/dist/components/layout/snice-layout-fullscreen.js.map +1 -1
  89. package/dist/components/layout/snice-layout-landing.d.ts +4 -4
  90. package/dist/components/layout/snice-layout-landing.js +21 -19
  91. package/dist/components/layout/snice-layout-landing.js.map +1 -1
  92. package/dist/components/layout/snice-layout-minimal.d.ts +2 -2
  93. package/dist/components/layout/snice-layout-minimal.js +17 -6
  94. package/dist/components/layout/snice-layout-minimal.js.map +1 -1
  95. package/dist/components/layout/snice-layout-sidebar.d.ts +5 -4
  96. package/dist/components/layout/snice-layout-sidebar.js +42 -20
  97. package/dist/components/layout/snice-layout-sidebar.js.map +1 -1
  98. package/dist/components/layout/snice-layout-split.d.ts +2 -2
  99. package/dist/components/layout/snice-layout-split.js +14 -7
  100. package/dist/components/layout/snice-layout-split.js.map +1 -1
  101. package/dist/components/layout/snice-layout.d.ts +4 -4
  102. package/dist/components/layout/snice-layout.js +16 -10
  103. package/dist/components/layout/snice-layout.js.map +1 -1
  104. package/dist/components/link/snice-link.d.ts +13 -0
  105. package/dist/components/link/snice-link.js +137 -0
  106. package/dist/components/link/snice-link.js.map +1 -0
  107. package/dist/components/link/snice-link.types.d.ts +11 -0
  108. package/dist/components/login/snice-login.d.ts +6 -11
  109. package/dist/components/login/snice-login.js +97 -71
  110. package/dist/components/login/snice-login.js.map +1 -1
  111. package/dist/components/modal/snice-modal.d.ts +5 -9
  112. package/dist/components/modal/snice-modal.js +47 -78
  113. package/dist/components/modal/snice-modal.js.map +1 -1
  114. package/dist/components/nav/snice-nav.d.ts +13 -7
  115. package/dist/components/nav/snice-nav.js +191 -100
  116. package/dist/components/nav/snice-nav.js.map +1 -1
  117. package/dist/components/nav/snice-nav.types.d.ts +3 -3
  118. package/dist/components/pagination/snice-pagination.d.ts +6 -7
  119. package/dist/components/pagination/snice-pagination.js +94 -81
  120. package/dist/components/pagination/snice-pagination.js.map +1 -1
  121. package/dist/components/progress/snice-progress.d.ts +2 -7
  122. package/dist/components/progress/snice-progress.js +41 -98
  123. package/dist/components/progress/snice-progress.js.map +1 -1
  124. package/dist/components/radio/snice-radio.d.ts +4 -4
  125. package/dist/components/radio/snice-radio.js +52 -44
  126. package/dist/components/radio/snice-radio.js.map +1 -1
  127. package/dist/components/select/snice-option.d.ts +2 -1
  128. package/dist/components/select/snice-option.js +12 -5
  129. package/dist/components/select/snice-option.js.map +1 -1
  130. package/dist/components/select/snice-select.d.ts +9 -21
  131. package/dist/components/select/snice-select.js +98 -170
  132. package/dist/components/select/snice-select.js.map +1 -1
  133. package/dist/components/skeleton/snice-skeleton.d.ts +2 -6
  134. package/dist/components/skeleton/snice-skeleton.js +18 -49
  135. package/dist/components/skeleton/snice-skeleton.js.map +1 -1
  136. package/dist/components/slider/snice-slider.d.ts +53 -0
  137. package/dist/components/slider/snice-slider.js +479 -0
  138. package/dist/components/slider/snice-slider.js.map +1 -0
  139. package/dist/components/slider/snice-slider.types.d.ts +26 -0
  140. package/dist/components/snice-cell-C0slgOpe.js +4 -0
  141. package/dist/components/snice-cell-C0slgOpe.js.map +1 -0
  142. package/dist/components/sparkline/snice-sparkline.d.ts +21 -0
  143. package/dist/components/sparkline/snice-sparkline.js +228 -0
  144. package/dist/components/sparkline/snice-sparkline.js.map +1 -0
  145. package/dist/components/sparkline/snice-sparkline.types.d.ts +16 -0
  146. package/dist/components/spinner/snice-spinner.d.ts +10 -0
  147. package/dist/components/spinner/snice-spinner.js +109 -0
  148. package/dist/components/spinner/snice-spinner.js.map +1 -0
  149. package/dist/components/spinner/snice-spinner.types.d.ts +8 -0
  150. package/dist/components/stepper/snice-stepper-panel.d.ts +8 -0
  151. package/dist/components/stepper/snice-stepper-panel.js +70 -0
  152. package/dist/components/stepper/snice-stepper-panel.js.map +1 -0
  153. package/dist/components/stepper/snice-stepper-panel.types.d.ts +4 -0
  154. package/dist/components/stepper/snice-stepper.d.ts +15 -0
  155. package/dist/components/stepper/snice-stepper.js +163 -0
  156. package/dist/components/stepper/snice-stepper.js.map +1 -0
  157. package/dist/components/stepper/snice-stepper.types.d.ts +13 -0
  158. package/dist/components/switch/snice-switch.d.ts +2 -2
  159. package/dist/components/switch/snice-switch.js +38 -26
  160. package/dist/components/switch/snice-switch.js.map +1 -1
  161. package/dist/components/table/snice-cell-actions.d.ts +24 -0
  162. package/dist/components/table/snice-cell-actions.js +149 -0
  163. package/dist/components/table/snice-cell-actions.js.map +1 -0
  164. package/dist/components/table/snice-cell-boolean.d.ts +2 -2
  165. package/dist/components/table/snice-cell-boolean.js +13 -7
  166. package/dist/components/table/snice-cell-boolean.js.map +1 -1
  167. package/dist/components/table/snice-cell-color.d.ts +18 -0
  168. package/dist/components/table/snice-cell-color.js +149 -0
  169. package/dist/components/table/snice-cell-color.js.map +1 -0
  170. package/dist/components/table/snice-cell-currency.d.ts +24 -0
  171. package/dist/components/table/snice-cell-currency.js +235 -0
  172. package/dist/components/table/snice-cell-currency.js.map +1 -0
  173. package/dist/components/table/snice-cell-date.d.ts +2 -2
  174. package/dist/components/table/snice-cell-date.js +14 -8
  175. package/dist/components/table/snice-cell-date.js.map +1 -1
  176. package/dist/components/table/snice-cell-duration.d.ts +2 -2
  177. package/dist/components/table/snice-cell-duration.js +12 -6
  178. package/dist/components/table/snice-cell-duration.js.map +1 -1
  179. package/dist/components/table/snice-cell-email.d.ts +15 -0
  180. package/dist/components/table/snice-cell-email.js +125 -0
  181. package/dist/components/table/snice-cell-email.js.map +1 -0
  182. package/dist/components/table/snice-cell-filesize.d.ts +2 -2
  183. package/dist/components/table/snice-cell-filesize.js +12 -6
  184. package/dist/components/table/snice-cell-filesize.js.map +1 -1
  185. package/dist/components/table/snice-cell-image.d.ts +20 -0
  186. package/dist/components/table/snice-cell-image.js +162 -0
  187. package/dist/components/table/snice-cell-image.js.map +1 -0
  188. package/dist/components/table/snice-cell-json.d.ts +20 -0
  189. package/dist/components/table/snice-cell-json.js +186 -0
  190. package/dist/components/table/snice-cell-json.js.map +1 -0
  191. package/dist/components/table/snice-cell-link.d.ts +17 -0
  192. package/dist/components/table/snice-cell-link.js +142 -0
  193. package/dist/components/table/snice-cell-link.js.map +1 -0
  194. package/dist/components/table/snice-cell-location.d.ts +19 -0
  195. package/dist/components/table/snice-cell-location.js +185 -0
  196. package/dist/components/table/snice-cell-location.js.map +1 -0
  197. package/dist/components/table/snice-cell-number.d.ts +2 -2
  198. package/dist/components/table/snice-cell-number.js +12 -6
  199. package/dist/components/table/snice-cell-number.js.map +1 -1
  200. package/dist/components/table/snice-cell-percentage.d.ts +22 -0
  201. package/dist/components/table/snice-cell-percentage.js +208 -0
  202. package/dist/components/table/snice-cell-percentage.js.map +1 -0
  203. package/dist/components/table/snice-cell-phone.d.ts +18 -0
  204. package/dist/components/table/snice-cell-phone.js +153 -0
  205. package/dist/components/table/snice-cell-phone.js.map +1 -0
  206. package/dist/components/table/snice-cell-progress.d.ts +2 -2
  207. package/dist/components/table/snice-cell-progress.js +12 -6
  208. package/dist/components/table/snice-cell-progress.js.map +1 -1
  209. package/dist/components/table/snice-cell-rating.d.ts +2 -2
  210. package/dist/components/table/snice-cell-rating.js +12 -6
  211. package/dist/components/table/snice-cell-rating.js.map +1 -1
  212. package/dist/components/table/snice-cell-sparkline.d.ts +2 -2
  213. package/dist/components/table/snice-cell-sparkline.js +13 -7
  214. package/dist/components/table/snice-cell-sparkline.js.map +1 -1
  215. package/dist/components/table/snice-cell-status.d.ts +17 -0
  216. package/dist/components/table/snice-cell-status.js +144 -0
  217. package/dist/components/table/snice-cell-status.js.map +1 -0
  218. package/dist/components/table/snice-cell-tag.d.ts +16 -0
  219. package/dist/components/table/snice-cell-tag.js +131 -0
  220. package/dist/components/table/snice-cell-tag.js.map +1 -0
  221. package/dist/components/table/snice-cell-text.d.ts +2 -2
  222. package/dist/components/table/snice-cell-text.js +14 -8
  223. package/dist/components/table/snice-cell-text.js.map +1 -1
  224. package/dist/components/table/snice-cell.d.ts +2 -2
  225. package/dist/components/table/snice-cell.js +12 -6
  226. package/dist/components/table/snice-cell.js.map +1 -1
  227. package/dist/components/table/snice-column.d.ts +1 -1
  228. package/dist/components/table/snice-column.js +6 -3
  229. package/dist/components/table/snice-column.js.map +1 -1
  230. package/dist/components/table/snice-header.d.ts +5 -5
  231. package/dist/components/table/snice-header.js +60 -50
  232. package/dist/components/table/snice-header.js.map +1 -1
  233. package/dist/components/table/snice-progress.d.ts +2 -2
  234. package/dist/components/table/snice-progress.js +18 -11
  235. package/dist/components/table/snice-progress.js.map +1 -1
  236. package/dist/components/table/snice-rating.d.ts +2 -2
  237. package/dist/components/table/snice-rating.js +15 -8
  238. package/dist/components/table/snice-rating.js.map +1 -1
  239. package/dist/components/table/snice-row.d.ts +17 -6
  240. package/dist/components/table/snice-row.js +95 -44
  241. package/dist/components/table/snice-row.js.map +1 -1
  242. package/dist/components/table/snice-table.d.ts +18 -10
  243. package/dist/components/table/snice-table.js +355 -173
  244. package/dist/components/table/snice-table.js.map +1 -1
  245. package/dist/components/table/snice-table.types.d.ts +101 -2
  246. package/dist/components/tabs/snice-tab-panel.d.ts +2 -2
  247. package/dist/components/tabs/snice-tab-panel.js +12 -6
  248. package/dist/components/tabs/snice-tab-panel.js.map +1 -1
  249. package/dist/components/tabs/snice-tab.d.ts +6 -5
  250. package/dist/components/tabs/snice-tab.js +36 -19
  251. package/dist/components/tabs/snice-tab.js.map +1 -1
  252. package/dist/components/tabs/snice-tabs.d.ts +5 -5
  253. package/dist/components/tabs/snice-tabs.js +38 -28
  254. package/dist/components/tabs/snice-tabs.js.map +1 -1
  255. package/dist/components/textarea/snice-textarea.d.ts +52 -0
  256. package/dist/components/textarea/snice-textarea.js +407 -0
  257. package/dist/components/textarea/snice-textarea.js.map +1 -0
  258. package/dist/components/textarea/snice-textarea.types.d.ts +30 -0
  259. package/dist/components/timeline/snice-timeline.d.ts +11 -0
  260. package/dist/components/timeline/snice-timeline.js +112 -0
  261. package/dist/components/timeline/snice-timeline.js.map +1 -0
  262. package/dist/components/timeline/snice-timeline.types.d.ts +16 -0
  263. package/dist/components/toast/snice-toast-container.d.ts +7 -7
  264. package/dist/components/toast/snice-toast-container.js +19 -12
  265. package/dist/components/toast/snice-toast-container.js.map +1 -1
  266. package/dist/components/toast/snice-toast.d.ts +3 -15
  267. package/dist/components/toast/snice-toast.js +49 -108
  268. package/dist/components/toast/snice-toast.js.map +1 -1
  269. package/dist/components/tooltip/snice-tooltip.d.ts +2 -2
  270. package/dist/components/tooltip/snice-tooltip.js +15 -8
  271. package/dist/components/tooltip/snice-tooltip.js.map +1 -1
  272. package/dist/context.d.ts +44 -0
  273. package/dist/element-ready.d.ts +40 -0
  274. package/dist/{types/element.d.ts → element.d.ts} +2 -8
  275. package/dist/{types/events.d.ts → events.d.ts} +0 -4
  276. package/dist/index.cjs +2556 -605
  277. package/dist/index.cjs.map +1 -1
  278. package/dist/index.d.ts +21 -0
  279. package/dist/index.esm.js +2535 -604
  280. package/dist/index.esm.js.map +1 -1
  281. package/dist/index.iife.js +2556 -605
  282. package/dist/index.iife.js.map +1 -1
  283. package/dist/method-decorators.d.ts +121 -0
  284. package/dist/on.d.ts +59 -0
  285. package/dist/parts.d.ts +156 -0
  286. package/dist/render-debug.d.ts +27 -0
  287. package/dist/render-tracker.d.ts +14 -0
  288. package/dist/render.d.ts +96 -0
  289. package/dist/symbols.cjs +163 -0
  290. package/dist/symbols.cjs.map +1 -1
  291. package/dist/{types/symbols.d.ts → symbols.d.ts} +22 -0
  292. package/dist/symbols.esm.js +27 -3
  293. package/dist/symbols.esm.js.map +1 -1
  294. package/dist/template.d.ts +99 -0
  295. package/dist/transitions.cjs +219 -0
  296. package/dist/transitions.esm.js +2 -2
  297. package/dist/types/context.d.ts +48 -0
  298. package/dist/types/element-options.d.ts +26 -0
  299. package/dist/types/index.d.ts +25 -9
  300. package/dist/types/nav-context.d.ts +19 -0
  301. package/dist/types/{types/on-options.d.ts → on-options.d.ts} +2 -0
  302. package/dist/types/{types/placard.d.ts → placard.d.ts} +0 -1
  303. package/docs/ai/README.md +26 -0
  304. package/docs/ai/api.md +175 -0
  305. package/docs/ai/architecture.md +160 -0
  306. package/docs/ai/components/accordion.md +174 -0
  307. package/docs/ai/components/alert.md +77 -0
  308. package/docs/ai/components/avatar.md +61 -0
  309. package/docs/ai/components/badge.md +69 -0
  310. package/docs/ai/components/banner.md +84 -0
  311. package/docs/ai/components/breadcrumbs.md +74 -0
  312. package/docs/ai/components/button.md +75 -0
  313. package/docs/ai/components/card.md +61 -0
  314. package/docs/ai/components/checkbox.md +74 -0
  315. package/docs/ai/components/chip.md +73 -0
  316. package/docs/ai/components/color-display.md +48 -0
  317. package/docs/ai/components/color-picker.md +75 -0
  318. package/docs/ai/components/date-picker.md +75 -0
  319. package/docs/ai/components/divider.md +66 -0
  320. package/docs/ai/components/drawer.md +80 -0
  321. package/docs/ai/components/empty-state.md +72 -0
  322. package/docs/ai/components/file-upload.md +93 -0
  323. package/docs/ai/components/image.md +60 -0
  324. package/docs/ai/components/input.md +111 -0
  325. package/docs/ai/components/kpi.md +158 -0
  326. package/docs/ai/components/link.md +77 -0
  327. package/docs/ai/components/login.md +109 -0
  328. package/docs/ai/components/modal.md +67 -0
  329. package/docs/ai/components/nav.md +76 -0
  330. package/docs/ai/components/pagination.md +55 -0
  331. package/docs/ai/components/progress.md +72 -0
  332. package/docs/ai/components/radio.md +79 -0
  333. package/docs/ai/components/select.md +92 -0
  334. package/docs/ai/components/skeleton.md +57 -0
  335. package/docs/ai/components/slider.md +87 -0
  336. package/docs/ai/components/sparkline.md +168 -0
  337. package/docs/ai/components/spinner.md +47 -0
  338. package/docs/ai/components/stepper.md +216 -0
  339. package/docs/ai/components/switch.md +53 -0
  340. package/docs/ai/components/table.md +227 -0
  341. package/docs/ai/components/tabs.md +83 -0
  342. package/docs/ai/components/textarea.md +87 -0
  343. package/docs/ai/components/timeline.md +77 -0
  344. package/docs/ai/components/toast.md +140 -0
  345. package/docs/ai/components/tooltip.md +146 -0
  346. package/docs/ai/patterns.md +244 -0
  347. package/docs/components/accordion.md +558 -0
  348. package/docs/components/banner.md +106 -0
  349. package/docs/components/color-display.md +96 -0
  350. package/docs/components/color-picker.md +81 -0
  351. package/docs/components/drawer.md +602 -0
  352. package/docs/components/empty-state.md +79 -0
  353. package/docs/components/file-upload.md +263 -0
  354. package/docs/components/image.md +110 -0
  355. package/docs/components/kpi.md +251 -0
  356. package/docs/components/link.md +229 -0
  357. package/docs/components/modal.md +558 -0
  358. package/docs/components/nav.md +239 -0
  359. package/docs/components/pagination.md +289 -0
  360. package/docs/components/select.md +599 -0
  361. package/docs/components/slider.md +297 -0
  362. package/docs/components/sparkline.md +293 -0
  363. package/docs/components/spinner.md +63 -0
  364. package/docs/components/stepper.md +410 -0
  365. package/docs/components/switch.md +354 -0
  366. package/docs/components/tabs.md +546 -0
  367. package/docs/components/textarea.md +235 -0
  368. package/docs/components/timeline.md +192 -0
  369. package/docs/components/toast.md +506 -0
  370. package/docs/components/tooltip.md +523 -0
  371. package/docs/controllers.md +744 -0
  372. package/docs/elements.md +855 -0
  373. package/docs/events.md +807 -0
  374. package/docs/migration-v2-to-v3.md +569 -0
  375. package/docs/observe.md +588 -0
  376. package/docs/placards.md +401 -0
  377. package/docs/request-response.md +852 -0
  378. package/docs/routing.md +1186 -0
  379. package/package.json +11 -11
  380. package/dist/components/snice-cell-C9N6yGxQ.js +0 -4
  381. package/dist/components/snice-cell-C9N6yGxQ.js.map +0 -1
  382. package/dist/types/types/index.d.ts +0 -23
  383. /package/dist/{types/controller.d.ts → controller.d.ts} +0 -0
  384. /package/dist/{types/global.d.ts → global.d.ts} +0 -0
  385. /package/dist/{types/observe.d.ts → observe.d.ts} +0 -0
  386. /package/dist/{types/request-response.d.ts → request-response.d.ts} +0 -0
  387. /package/dist/{types/router.d.ts → router.d.ts} +0 -0
  388. /package/dist/{types/testing.d.ts → testing.d.ts} +0 -0
  389. /package/dist/{types/transitions.d.ts → transitions.d.ts} +0 -0
  390. /package/dist/types/{types/adopted-options.d.ts → adopted-options.d.ts} +0 -0
  391. /package/dist/types/{types/app-context.d.ts → app-context.d.ts} +0 -0
  392. /package/dist/types/{types/dispatch-options.d.ts → dispatch-options.d.ts} +0 -0
  393. /package/dist/types/{types/guard.d.ts → guard.d.ts} +0 -0
  394. /package/dist/types/{types/i-controller.d.ts → i-controller.d.ts} +0 -0
  395. /package/dist/types/{types/moved-options.d.ts → moved-options.d.ts} +0 -0
  396. /package/dist/types/{types/observe-options.d.ts → observe-options.d.ts} +0 -0
  397. /package/dist/types/{types/page-options.d.ts → page-options.d.ts} +0 -0
  398. /package/dist/types/{types/part-options.d.ts → part-options.d.ts} +0 -0
  399. /package/dist/types/{types/property-converter.d.ts → property-converter.d.ts} +0 -0
  400. /package/dist/types/{types/property-options.d.ts → property-options.d.ts} +0 -0
  401. /package/dist/types/{types/query-options.d.ts → query-options.d.ts} +0 -0
  402. /package/dist/types/{types/request-options.d.ts → request-options.d.ts} +0 -0
  403. /package/dist/types/{types/respond-options.d.ts → respond-options.d.ts} +0 -0
  404. /package/dist/types/{types/route-params.d.ts → route-params.d.ts} +0 -0
  405. /package/dist/types/{types/router-instance.d.ts → router-instance.d.ts} +0 -0
  406. /package/dist/types/{types/router-options.d.ts → router-options.d.ts} +0 -0
  407. /package/dist/types/{types/simple-array.d.ts → simple-array.d.ts} +0 -0
  408. /package/dist/types/{types/snice-element.d.ts → snice-element.d.ts} +0 -0
  409. /package/dist/types/{types/snice-global.d.ts → snice-global.d.ts} +0 -0
  410. /package/dist/types/{types/transition.d.ts → transition.d.ts} +0 -0
  411. /package/dist/{types/utils.d.ts → utils.d.ts} +0 -0
package/package.json CHANGED
@@ -1,28 +1,28 @@
1
1
  {
2
2
  "name": "snice",
3
- "version": "2.5.4",
3
+ "version": "3.2.0",
4
4
  "type": "module",
5
- "description": "Imperative TypeScript framework for building vanilla web components with decorators, routing, and controllers. No virtual DOM, no build complexity.",
5
+ "description": "Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.",
6
6
  "main": "dist/index.cjs",
7
7
  "module": "dist/index.esm.js",
8
8
  "browser": "dist/index.iife.js",
9
- "types": "dist/types/index.d.ts",
9
+ "types": "dist/index.d.ts",
10
10
  "exports": {
11
11
  ".": {
12
12
  "import": "./dist/index.esm.js",
13
13
  "require": "./dist/index.cjs",
14
14
  "browser": "./dist/index.iife.js",
15
- "types": "./dist/types/index.d.ts"
15
+ "types": "./dist/index.d.ts"
16
16
  },
17
17
  "./symbols": {
18
18
  "import": "./dist/symbols.esm.js",
19
19
  "require": "./dist/symbols.cjs",
20
- "types": "./dist/types/symbols.d.ts"
20
+ "types": "./dist/symbols.d.ts"
21
21
  },
22
22
  "./transitions": {
23
23
  "import": "./dist/transitions.esm.js",
24
24
  "require": "./dist/transitions.cjs",
25
- "types": "./dist/types/transitions.d.ts"
25
+ "types": "./dist/transitions.d.ts"
26
26
  },
27
27
  "./components/*": {
28
28
  "import": "./dist/components/*.js",
@@ -33,12 +33,10 @@
33
33
  "snice": "./bin/snice.js"
34
34
  },
35
35
  "files": [
36
- "dist/*.js",
37
- "dist/*.map",
38
- "dist/types",
39
- "dist/components",
36
+ "dist",
40
37
  "bin",
41
- "README.md"
38
+ "README.md",
39
+ "docs"
42
40
  ],
43
41
  "keywords": [
44
42
  "web components",
@@ -95,6 +93,7 @@
95
93
  "release:dry": "semantic-release --dry-run --no-ci"
96
94
  },
97
95
  "devDependencies": {
96
+ "@playwright/test": "^1.56.1",
98
97
  "@rollup/plugin-node-resolve": "^16.0.1",
99
98
  "@rollup/plugin-terser": "^0.4.4",
100
99
  "@rollup/plugin-typescript": "^12.1.4",
@@ -107,6 +106,7 @@
107
106
  "@swc/core": "^1.13.5",
108
107
  "@types/node": "^20.0.0",
109
108
  "@vitest/ui": "^1.0.0",
109
+ "clean-css": "^5.3.3",
110
110
  "happy-dom": "^12.0.0",
111
111
  "rollup": "^4.50.2",
112
112
  "semantic-release": "^24.2.7",
@@ -1,4 +0,0 @@
1
- var css = "/* Cell Base */\n:host {\n display: flex;\n align-items: center;\n min-height: 2.5rem; /* 40px */\n height: 2.5rem; /* 40px */\n min-width: 6.25rem; /* 100px */\n flex: 1;\n font-size: 0.875rem; /* 14px */\n line-height: 1.25rem; /* 20px */\n}\n\n.cell-content {\n width: 100%;\n min-width: 6.25rem; /* 100px */\n min-height: 1.25rem; /* 20px */\n word-wrap: break-word;\n}\n\n/* Text Alignment */\n:host([align=\"left\"]) {\n text-align: left;\n}\n\n:host([align=\"center\"]) {\n text-align: center;\n}\n\n:host([align=\"right\"]) {\n text-align: right;\n}\n\n/* Type Specific Styles */\n:host([type=\"number\"]),\n:host([type=\"currency\"]),\n:host([type=\"percent\"]),\n:host([type=\"accounting\"]),\n:host([type=\"scientific\"]),\n:host([type=\"fraction\"]) {\n font-variant-numeric: tabular-nums;\n text-align: right;\n}\n\n:host([type=\"date\"]) {\n font-variant-numeric: tabular-nums;\n}\n\n:host([type=\"boolean\"]) {\n text-align: center;\n font-size: 1rem; /* 16px */\n}\n\n:host([type=\"rating\"]) {\n text-align: center;\n}\n\n:host([type=\"progress\"]) {\n /* Remove padding */\n}\n\n:host([type=\"sparkline\"]) {\n text-align: center;\n /* Remove padding */\n}\n\n/* Text Content Specific */\n.cell-content--text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.cell-content--text[data-multiline=\"true\"] {\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: break-word;\n}\n\n/* Number Content Specific */\n.cell-content--number {\n font-feature-settings: 'tnum';\n}\n\n/* Date Content Specific */\n.cell-content--date {\n font-feature-settings: 'tnum';\n}\n\n/* Boolean Content Styling */\n:host([type=\"boolean\"]) .cell-content {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Rating Content Styling */\n:host([type=\"rating\"]) .cell-content {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 0.125rem; /* 2px */\n}\n\n/* Progress Content Styling */\n.cell-content--progress {\n width: 100%;\n min-width: 4rem; /* 64px */\n}\n\n/* Sparkline Content Styling */\n.cell-content--sparkline {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: 3rem; /* 48px */\n}\n\n/* Conditional Formatting Support */\n:host(.positive) {\n color: var(--snice-color-success);\n}\n\n:host(.negative) {\n color: var(--snice-color-danger);\n}\n\n:host(.warning) {\n color: var(--snice-color-warning);\n background-color: rgb(var(--snice-color-yellow-100));\n}\n\n:host(.danger) {\n color: var(--snice-color-danger);\n background-color: rgb(var(--snice-color-red-100));\n}\n\n:host(.success) {\n color: var(--snice-color-success);\n background-color: rgb(var(--snice-color-green-100));\n}\n\n:host(.info) {\n color: var(--snice-color-primary);\n background-color: rgb(var(--snice-color-blue-100));\n}\n\n/* Date-specific styling */\n:host(.date--today) {\n font-weight: var(--snice-font-weight-semibold);\n color: var(--snice-color-primary);\n}\n\n:host(.date--past) {\n color: var(--snice-color-text-secondary);\n}\n\n:host(.date--future) {\n color: var(--snice-color-success);\n}\n\n/* Number-specific styling */\n:host(.number--negative.number--negative-red) {\n color: var(--snice-color-danger);\n}\n\n:host(.number--positive.number--highlighted) {\n color: var(--snice-color-success);\n font-weight: var(--snice-font-weight-semibold);\n}\n\n:host(.number--zero) {\n color: var(--snice-color-text-secondary);\n}\n\n/* Truncation Support */\n:host([truncate]) .cell-content {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* Wrap Support */\n:host([wrap]) .cell-content {\n white-space: pre-wrap;\n word-wrap: break-word;\n overflow-wrap: break-word;\n}\n\n/* Empty State */\n:host([value=\"\"]) .cell-content,\n:host(:not([value])) .cell-content {\n color: #6c757d;\n font-style: italic;\n}\n\n/* Loading State */\n:host(.loading) {\n position: relative;\n overflow: hidden;\n}\n\n:host(.loading) .cell-content {\n opacity: 0.6;\n}\n\n:host(.loading)::after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);\n animation: cell-shimmer 1.5s infinite;\n}\n\n@keyframes cell-shimmer {\n 0% {\n transform: translateX(-100%);\n }\n 100% {\n transform: translateX(100%);\n }\n}\n\n/* Focus States */\n:host(:focus-within) {\n outline: 2px solid #007bff;\n outline-offset: -2px;\n}\n\n/* Interactive Elements */\n.cell-content button,\n.cell-content input,\n.cell-content select {\n font-size: inherit;\n line-height: inherit;\n}\n\n.cell-content a {\n color: #007bff;\n text-decoration: none;\n}\n\n.cell-content a:hover {\n text-decoration: underline;\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n :host {\n font-size: 0.75rem; /* 12px */\n line-height: 1rem; /* 16px */\n }\n \n :host([type=\"boolean\"]) {\n font-size: 0.875rem; /* 14px */\n }\n}\n\n/* Accessibility */\n@media (prefers-reduced-motion: reduce) {\n :host(.loading)::after {\n animation: none;\n }\n}\n\n/* High Contrast Mode */\n@media (prefers-contrast: high) {\n :host(.positive) {\n background-color: #d4edda;\n }\n \n :host(.negative) {\n background-color: #f8d7da;\n }\n \n .cell-content a {\n text-decoration: underline;\n }\n}\n\n/* Print Styles */\n@media print {\n :host {\n font-size: 0.75rem; /* 12px */\n }\n \n :host(.loading)::after {\n display: none;\n }\n \n .cell-content a {\n text-decoration: underline;\n }\n}";
2
-
3
- export { css as c };
4
- //# sourceMappingURL=snice-cell-C9N6yGxQ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"snice-cell-C9N6yGxQ.js","sources":["../../components/table/snice-cell.css?inline"],"sourcesContent":["export default \"/* Cell Base */\\n:host {\\n display: flex;\\n align-items: center;\\n min-height: 2.5rem; /* 40px */\\n height: 2.5rem; /* 40px */\\n min-width: 6.25rem; /* 100px */\\n flex: 1;\\n font-size: 0.875rem; /* 14px */\\n line-height: 1.25rem; /* 20px */\\n}\\n\\n.cell-content {\\n width: 100%;\\n min-width: 6.25rem; /* 100px */\\n min-height: 1.25rem; /* 20px */\\n word-wrap: break-word;\\n}\\n\\n/* Text Alignment */\\n:host([align=\\\"left\\\"]) {\\n text-align: left;\\n}\\n\\n:host([align=\\\"center\\\"]) {\\n text-align: center;\\n}\\n\\n:host([align=\\\"right\\\"]) {\\n text-align: right;\\n}\\n\\n/* Type Specific Styles */\\n:host([type=\\\"number\\\"]),\\n:host([type=\\\"currency\\\"]),\\n:host([type=\\\"percent\\\"]),\\n:host([type=\\\"accounting\\\"]),\\n:host([type=\\\"scientific\\\"]),\\n:host([type=\\\"fraction\\\"]) {\\n font-variant-numeric: tabular-nums;\\n text-align: right;\\n}\\n\\n:host([type=\\\"date\\\"]) {\\n font-variant-numeric: tabular-nums;\\n}\\n\\n:host([type=\\\"boolean\\\"]) {\\n text-align: center;\\n font-size: 1rem; /* 16px */\\n}\\n\\n:host([type=\\\"rating\\\"]) {\\n text-align: center;\\n}\\n\\n:host([type=\\\"progress\\\"]) {\\n /* Remove padding */\\n}\\n\\n:host([type=\\\"sparkline\\\"]) {\\n text-align: center;\\n /* Remove padding */\\n}\\n\\n/* Text Content Specific */\\n.cell-content--text {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n\\n.cell-content--text[data-multiline=\\\"true\\\"] {\\n white-space: pre-wrap;\\n word-wrap: break-word;\\n overflow-wrap: break-word;\\n}\\n\\n/* Number Content Specific */\\n.cell-content--number {\\n font-feature-settings: 'tnum';\\n}\\n\\n/* Date Content Specific */\\n.cell-content--date {\\n font-feature-settings: 'tnum';\\n}\\n\\n/* Boolean Content Styling */\\n:host([type=\\\"boolean\\\"]) .cell-content {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n/* Rating Content Styling */\\n:host([type=\\\"rating\\\"]) .cell-content {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n gap: 0.125rem; /* 2px */\\n}\\n\\n/* Progress Content Styling */\\n.cell-content--progress {\\n width: 100%;\\n min-width: 4rem; /* 64px */\\n}\\n\\n/* Sparkline Content Styling */\\n.cell-content--sparkline {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 3rem; /* 48px */\\n}\\n\\n/* Conditional Formatting Support */\\n:host(.positive) {\\n color: var(--snice-color-success);\\n}\\n\\n:host(.negative) {\\n color: var(--snice-color-danger);\\n}\\n\\n:host(.warning) {\\n color: var(--snice-color-warning);\\n background-color: rgb(var(--snice-color-yellow-100));\\n}\\n\\n:host(.danger) {\\n color: var(--snice-color-danger);\\n background-color: rgb(var(--snice-color-red-100));\\n}\\n\\n:host(.success) {\\n color: var(--snice-color-success);\\n background-color: rgb(var(--snice-color-green-100));\\n}\\n\\n:host(.info) {\\n color: var(--snice-color-primary);\\n background-color: rgb(var(--snice-color-blue-100));\\n}\\n\\n/* Date-specific styling */\\n:host(.date--today) {\\n font-weight: var(--snice-font-weight-semibold);\\n color: var(--snice-color-primary);\\n}\\n\\n:host(.date--past) {\\n color: var(--snice-color-text-secondary);\\n}\\n\\n:host(.date--future) {\\n color: var(--snice-color-success);\\n}\\n\\n/* Number-specific styling */\\n:host(.number--negative.number--negative-red) {\\n color: var(--snice-color-danger);\\n}\\n\\n:host(.number--positive.number--highlighted) {\\n color: var(--snice-color-success);\\n font-weight: var(--snice-font-weight-semibold);\\n}\\n\\n:host(.number--zero) {\\n color: var(--snice-color-text-secondary);\\n}\\n\\n/* Truncation Support */\\n:host([truncate]) .cell-content {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n\\n/* Wrap Support */\\n:host([wrap]) .cell-content {\\n white-space: pre-wrap;\\n word-wrap: break-word;\\n overflow-wrap: break-word;\\n}\\n\\n/* Empty State */\\n:host([value=\\\"\\\"]) .cell-content,\\n:host(:not([value])) .cell-content {\\n color: #6c757d;\\n font-style: italic;\\n}\\n\\n/* Loading State */\\n:host(.loading) {\\n position: relative;\\n overflow: hidden;\\n}\\n\\n:host(.loading) .cell-content {\\n opacity: 0.6;\\n}\\n\\n:host(.loading)::after {\\n content: '';\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);\\n animation: cell-shimmer 1.5s infinite;\\n}\\n\\n@keyframes cell-shimmer {\\n 0% {\\n transform: translateX(-100%);\\n }\\n 100% {\\n transform: translateX(100%);\\n }\\n}\\n\\n/* Focus States */\\n:host(:focus-within) {\\n outline: 2px solid #007bff;\\n outline-offset: -2px;\\n}\\n\\n/* Interactive Elements */\\n.cell-content button,\\n.cell-content input,\\n.cell-content select {\\n font-size: inherit;\\n line-height: inherit;\\n}\\n\\n.cell-content a {\\n color: #007bff;\\n text-decoration: none;\\n}\\n\\n.cell-content a:hover {\\n text-decoration: underline;\\n}\\n\\n/* Responsive Design */\\n@media (max-width: 768px) {\\n :host {\\n font-size: 0.75rem; /* 12px */\\n line-height: 1rem; /* 16px */\\n }\\n \\n :host([type=\\\"boolean\\\"]) {\\n font-size: 0.875rem; /* 14px */\\n }\\n}\\n\\n/* Accessibility */\\n@media (prefers-reduced-motion: reduce) {\\n :host(.loading)::after {\\n animation: none;\\n }\\n}\\n\\n/* High Contrast Mode */\\n@media (prefers-contrast: high) {\\n :host(.positive) {\\n background-color: #d4edda;\\n }\\n \\n :host(.negative) {\\n background-color: #f8d7da;\\n }\\n \\n .cell-content a {\\n text-decoration: underline;\\n }\\n}\\n\\n/* Print Styles */\\n@media print {\\n :host {\\n font-size: 0.75rem; /* 12px */\\n }\\n \\n :host(.loading)::after {\\n display: none;\\n }\\n \\n .cell-content a {\\n text-decoration: underline;\\n }\\n}\";"],"names":[],"mappings":"AAAA,UAAe,yhLAAyhL;;;;"}
@@ -1,23 +0,0 @@
1
- export * from './query-options';
2
- export * from './property-options';
3
- export * from './property-converter';
4
- export * from './snice-element';
5
- export * from './part-options';
6
- export * from './moved-options';
7
- export * from './adopted-options';
8
- export * from './simple-array';
9
- export * from './router-options';
10
- export * from './page-options';
11
- export * from './router-instance';
12
- export * from './on-options';
13
- export * from './dispatch-options';
14
- export * from './i-controller';
15
- export * from './transition';
16
- export * from './observe-options';
17
- export * from './request-options';
18
- export * from './respond-options';
19
- export * from './snice-global';
20
- export * from './placard';
21
- export * from './guard';
22
- export * from './route-params';
23
- export * from './app-context';
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes