snice 3.10.5 → 4.0.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 (151) hide show
  1. package/bin/templates/CLAUDE.md +7 -7
  2. package/dist/components/audio-recorder/snice-audio-recorder.js +6 -6
  3. package/dist/components/audio-recorder/snice-audio-recorder.js.map +1 -1
  4. package/dist/components/banner/snice-banner.js +3 -3
  5. package/dist/components/banner/snice-banner.js.map +1 -1
  6. package/dist/components/button/snice-button.js +1 -1
  7. package/dist/components/calendar/snice-calendar.js +2 -2
  8. package/dist/components/calendar/snice-calendar.js.map +1 -1
  9. package/dist/components/camera/snice-camera.d.ts +2 -0
  10. package/dist/components/camera/snice-camera.js +26 -7
  11. package/dist/components/camera/snice-camera.js.map +1 -1
  12. package/dist/components/carousel/snice-carousel.js +1 -1
  13. package/dist/components/carousel/snice-carousel.js.map +1 -1
  14. package/dist/components/checkbox/snice-checkbox.js +3 -3
  15. package/dist/components/checkbox/snice-checkbox.js.map +1 -1
  16. package/dist/components/color-picker/snice-color-picker.js +4 -4
  17. package/dist/components/color-picker/snice-color-picker.js.map +1 -1
  18. package/dist/components/command-palette/snice-command-palette.js +5 -5
  19. package/dist/components/command-palette/snice-command-palette.js.map +1 -1
  20. package/dist/components/date-picker/snice-date-picker.js +8 -8
  21. package/dist/components/date-picker/snice-date-picker.js.map +1 -1
  22. package/dist/components/draw/snice-draw.js +5 -5
  23. package/dist/components/draw/snice-draw.js.map +1 -1
  24. package/dist/components/drawer/snice-drawer.js +2 -2
  25. package/dist/components/drawer/snice-drawer.js.map +1 -1
  26. package/dist/components/empty-state/snice-empty-state.js +1 -1
  27. package/dist/components/empty-state/snice-empty-state.js.map +1 -1
  28. package/dist/components/file-gallery/snice-file-gallery.d.ts +1 -1
  29. package/dist/components/file-gallery/snice-file-gallery.js +20 -20
  30. package/dist/components/file-gallery/snice-file-gallery.js.map +1 -1
  31. package/dist/components/file-gallery/snice-file-gallery.types.d.ts +0 -1
  32. package/dist/components/file-upload/snice-file-upload.js +2 -2
  33. package/dist/components/file-upload/snice-file-upload.js.map +1 -1
  34. package/dist/components/input/snice-input.js +5 -5
  35. package/dist/components/input/snice-input.js.map +1 -1
  36. package/dist/components/kanban/snice-kanban.js +2 -2
  37. package/dist/components/kanban/snice-kanban.js.map +1 -1
  38. package/dist/components/location/snice-location.js +1 -1
  39. package/dist/components/location/snice-location.js.map +1 -1
  40. package/dist/components/login/snice-login.js +4 -4
  41. package/dist/components/login/snice-login.js.map +1 -1
  42. package/dist/components/menu/snice-menu-item.js +1 -1
  43. package/dist/components/menu/snice-menu-item.js.map +1 -1
  44. package/dist/components/menu/snice-menu.js +3 -3
  45. package/dist/components/menu/snice-menu.js.map +1 -1
  46. package/dist/components/modal/snice-modal.js +2 -2
  47. package/dist/components/modal/snice-modal.js.map +1 -1
  48. package/dist/components/music-player/snice-music-player.js +10 -10
  49. package/dist/components/music-player/snice-music-player.js.map +1 -1
  50. package/dist/components/pagination/snice-pagination.js +1 -1
  51. package/dist/components/pagination/snice-pagination.js.map +1 -1
  52. package/dist/components/qr-reader/snice-qr-reader.js +3 -3
  53. package/dist/components/qr-reader/snice-qr-reader.js.map +1 -1
  54. package/dist/components/radio/snice-radio.js +1 -1
  55. package/dist/components/radio/snice-radio.js.map +1 -1
  56. package/dist/components/select/snice-select.js +3 -3
  57. package/dist/components/select/snice-select.js.map +1 -1
  58. package/dist/components/slider/snice-slider.js +2 -2
  59. package/dist/components/slider/snice-slider.js.map +1 -1
  60. package/dist/components/split-pane/snice-split-pane.js +1 -1
  61. package/dist/components/split-pane/snice-split-pane.js.map +1 -1
  62. package/dist/components/switch/snice-switch.js +1 -1
  63. package/dist/components/switch/snice-switch.js.map +1 -1
  64. package/dist/components/table/snice-cell-actions.js +1 -1
  65. package/dist/components/table/snice-cell-actions.js.map +1 -1
  66. package/dist/components/table/snice-column.js +1 -1
  67. package/dist/components/table/snice-column.js.map +1 -1
  68. package/dist/components/table/snice-header.js +3 -3
  69. package/dist/components/table/snice-header.js.map +1 -1
  70. package/dist/components/table/snice-row.js +3 -3
  71. package/dist/components/table/snice-row.js.map +1 -1
  72. package/dist/components/table/snice-table.js +3 -3
  73. package/dist/components/table/snice-table.js.map +1 -1
  74. package/dist/components/tabs/snice-tab.js +2 -2
  75. package/dist/components/tabs/snice-tab.js.map +1 -1
  76. package/dist/components/tabs/snice-tabs.js +2 -2
  77. package/dist/components/tabs/snice-tabs.js.map +1 -1
  78. package/dist/components/terminal/snice-terminal.js +3 -3
  79. package/dist/components/terminal/snice-terminal.js.map +1 -1
  80. package/dist/components/textarea/snice-textarea.js +4 -4
  81. package/dist/components/textarea/snice-textarea.js.map +1 -1
  82. package/dist/components/theme/theme.css +3 -0
  83. package/dist/components/timer/snice-timer.js +4 -4
  84. package/dist/components/timer/snice-timer.js.map +1 -1
  85. package/dist/components/tree/snice-tree-item.js +1 -1
  86. package/dist/components/tree/snice-tree-item.js.map +1 -1
  87. package/dist/components/tree/snice-tree.js +5 -5
  88. package/dist/components/tree/snice-tree.js.map +1 -1
  89. package/dist/index.cjs +7 -3
  90. package/dist/index.cjs.map +1 -1
  91. package/dist/index.esm.js +7 -3
  92. package/dist/index.esm.js.map +1 -1
  93. package/dist/index.iife.js +7 -3
  94. package/dist/index.iife.js.map +1 -1
  95. package/dist/symbols.cjs +1 -1
  96. package/dist/symbols.esm.js +1 -1
  97. package/dist/transitions.cjs +1 -1
  98. package/dist/transitions.esm.js +1 -1
  99. package/docs/ai/components/audio-recorder.md +6 -6
  100. package/docs/ai/components/calendar.md +2 -2
  101. package/docs/ai/components/camera.md +13 -6
  102. package/docs/ai/components/carousel.md +1 -1
  103. package/docs/ai/components/color-picker.md +1 -1
  104. package/docs/ai/components/command-palette.md +6 -6
  105. package/docs/ai/components/draw.md +5 -5
  106. package/docs/ai/components/drawer.md +2 -2
  107. package/docs/ai/components/empty-state.md +1 -1
  108. package/docs/ai/components/file-gallery.md +7 -6
  109. package/docs/ai/components/file-upload.md +2 -2
  110. package/docs/ai/components/kanban.md +3 -3
  111. package/docs/ai/components/menu.md +3 -3
  112. package/docs/ai/components/modal.md +2 -2
  113. package/docs/ai/components/music-player.md +9 -9
  114. package/docs/ai/components/pagination.md +2 -2
  115. package/docs/ai/components/qr-reader.md +4 -4
  116. package/docs/ai/components/select.md +4 -4
  117. package/docs/ai/components/slider.md +1 -1
  118. package/docs/ai/components/split-pane.md +1 -1
  119. package/docs/ai/components/switch.md +2 -2
  120. package/docs/ai/components/tabs.md +4 -4
  121. package/docs/ai/components/terminal.md +1 -1
  122. package/docs/ai/components/timer.md +4 -4
  123. package/docs/ai/components/tree.md +7 -7
  124. package/docs/components/audio-recorder.md +7 -7
  125. package/docs/components/banner.md +4 -4
  126. package/docs/components/calendar.md +11 -11
  127. package/docs/components/camera.md +33 -10
  128. package/docs/components/carousel.md +1 -1
  129. package/docs/components/color-picker.md +1 -1
  130. package/docs/components/command-palette.md +6 -6
  131. package/docs/components/draw.md +6 -6
  132. package/docs/components/drawer.md +6 -6
  133. package/docs/components/empty-state.md +1 -1
  134. package/docs/components/file-gallery.md +24 -23
  135. package/docs/components/file-upload.md +7 -7
  136. package/docs/components/kanban.md +7 -7
  137. package/docs/components/menu.md +11 -11
  138. package/docs/components/modal.md +7 -7
  139. package/docs/components/music-player.md +16 -16
  140. package/docs/components/pagination.md +5 -5
  141. package/docs/components/qr-reader.md +12 -12
  142. package/docs/components/select.md +9 -9
  143. package/docs/components/slider.md +6 -6
  144. package/docs/components/split-pane.md +2 -2
  145. package/docs/components/switch.md +4 -4
  146. package/docs/components/tabs.md +10 -10
  147. package/docs/components/terminal.md +6 -6
  148. package/docs/components/textarea.md +7 -7
  149. package/docs/components/timer.md +8 -8
  150. package/docs/components/tree.md +9 -9
  151. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v3.10.4
2
+ * snice v3.11.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1332,8 +1332,10 @@ var Snice = (function (exports) {
1332
1332
  this.element = element;
1333
1333
  // Parse keyboard shortcuts:
1334
1334
  // Supports both dot notation (@keydown.enter) and colon notation (@keydown:Enter) to match @on decorator
1335
+ // Only parse colons for keyboard events, not custom events
1336
+ const isKeyboardEvent = ['keydown', 'keyup', 'keypress'].includes(eventName.split('.')[0].split(':')[0]);
1335
1337
  const dotIndex = eventName.indexOf('.');
1336
- const colonIndex = eventName.indexOf(':');
1338
+ const colonIndex = isKeyboardEvent ? eventName.indexOf(':') : -1;
1337
1339
  // Use whichever delimiter comes first (dot or colon)
1338
1340
  const delimiterIndex = dotIndex > 0 && colonIndex > 0
1339
1341
  ? Math.min(dotIndex, colonIndex)
@@ -1762,8 +1764,10 @@ var Snice = (function (exports) {
1762
1764
  const handlerOptions = handler.options || {};
1763
1765
  // Parse event name for key modifiers
1764
1766
  // Supports both dot notation (@keydown.enter) and colon notation (@keydown:Enter)
1767
+ // Only parse colons for keyboard events, not custom events
1768
+ const isKeyboardEvent = ['keydown', 'keyup', 'keypress'].includes(handler.eventName.split('.')[0].split(':')[0]);
1765
1769
  const dotIndex = handler.eventName.indexOf('.');
1766
- const colonIndex = handler.eventName.indexOf(':');
1770
+ const colonIndex = isKeyboardEvent ? handler.eventName.indexOf(':') : -1;
1767
1771
  const delimiterIndex = dotIndex > 0 && colonIndex > 0
1768
1772
  ? Math.min(dotIndex, colonIndex)
1769
1773
  : Math.max(dotIndex, colonIndex);