snice 4.9.0 → 4.10.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.
- package/adapters/react/app-tiles.d.ts +28 -0
- package/adapters/react/app-tiles.d.ts.map +1 -0
- package/adapters/react/app-tiles.js +24 -0
- package/adapters/react/app-tiles.js.map +1 -0
- package/adapters/react/app-tiles.tsx +36 -0
- package/adapters/react/book.d.ts +28 -0
- package/adapters/react/book.d.ts.map +1 -0
- package/adapters/react/book.js +24 -0
- package/adapters/react/book.js.map +1 -0
- package/adapters/react/book.tsx +36 -0
- package/adapters/react/comments.d.ts +29 -0
- package/adapters/react/comments.d.ts.map +1 -0
- package/adapters/react/comments.js +24 -0
- package/adapters/react/comments.js.map +1 -0
- package/adapters/react/comments.tsx +37 -0
- package/adapters/react/components.d.ts +52 -0
- package/adapters/react/components.d.ts.map +1 -1
- package/adapters/react/components.js +26 -0
- package/adapters/react/components.js.map +1 -1
- package/adapters/react/components.ts +52 -0
- package/adapters/react/countdown.d.ts +31 -0
- package/adapters/react/countdown.d.ts.map +1 -0
- package/adapters/react/countdown.js +24 -0
- package/adapters/react/countdown.js.map +1 -0
- package/adapters/react/countdown.tsx +39 -0
- package/adapters/react/cropper.d.ts +29 -0
- package/adapters/react/cropper.d.ts.map +1 -0
- package/adapters/react/cropper.js +24 -0
- package/adapters/react/cropper.js.map +1 -0
- package/adapters/react/cropper.tsx +37 -0
- package/adapters/react/diff.d.ts +31 -0
- package/adapters/react/diff.d.ts.map +1 -0
- package/adapters/react/diff.js +24 -0
- package/adapters/react/diff.js.map +1 -0
- package/adapters/react/diff.tsx +39 -0
- package/adapters/react/flip-card.d.ts +28 -0
- package/adapters/react/flip-card.d.ts.map +1 -0
- package/adapters/react/flip-card.js +24 -0
- package/adapters/react/flip-card.js.map +1 -0
- package/adapters/react/flip-card.tsx +36 -0
- package/adapters/react/flow.d.ts +32 -0
- package/adapters/react/flow.d.ts.map +1 -0
- package/adapters/react/flow.js +24 -0
- package/adapters/react/flow.js.map +1 -0
- package/adapters/react/flow.tsx +40 -0
- package/adapters/react/gantt.d.ts +27 -0
- package/adapters/react/gantt.d.ts.map +1 -0
- package/adapters/react/gantt.js +24 -0
- package/adapters/react/gantt.js.map +1 -0
- package/adapters/react/gantt.tsx +35 -0
- package/adapters/react/map.d.ts +30 -0
- package/adapters/react/map.d.ts.map +1 -0
- package/adapters/react/map.js +24 -0
- package/adapters/react/map.js.map +1 -0
- package/adapters/react/map.tsx +38 -0
- package/adapters/react/markdown.d.ts +26 -0
- package/adapters/react/markdown.d.ts.map +1 -0
- package/adapters/react/markdown.js +24 -0
- package/adapters/react/markdown.js.map +1 -0
- package/adapters/react/markdown.tsx +34 -0
- package/adapters/react/notification-center.d.ts +26 -0
- package/adapters/react/notification-center.d.ts.map +1 -0
- package/adapters/react/notification-center.js +24 -0
- package/adapters/react/notification-center.js.map +1 -0
- package/adapters/react/notification-center.tsx +34 -0
- package/adapters/react/org-chart.d.ts +28 -0
- package/adapters/react/org-chart.d.ts.map +1 -0
- package/adapters/react/org-chart.js +24 -0
- package/adapters/react/org-chart.js.map +1 -0
- package/adapters/react/org-chart.tsx +36 -0
- package/adapters/react/pdf-viewer.d.ts +28 -0
- package/adapters/react/pdf-viewer.d.ts.map +1 -0
- package/adapters/react/pdf-viewer.js +24 -0
- package/adapters/react/pdf-viewer.js.map +1 -0
- package/adapters/react/pdf-viewer.tsx +36 -0
- package/adapters/react/podcast-player.d.ts +40 -0
- package/adapters/react/podcast-player.d.ts.map +1 -0
- package/adapters/react/podcast-player.js +24 -0
- package/adapters/react/podcast-player.js.map +1 -0
- package/adapters/react/podcast-player.tsx +48 -0
- package/adapters/react/pricing-table.d.ts +27 -0
- package/adapters/react/pricing-table.d.ts.map +1 -0
- package/adapters/react/pricing-table.js +24 -0
- package/adapters/react/pricing-table.js.map +1 -0
- package/adapters/react/pricing-table.tsx +35 -0
- package/adapters/react/rating.d.ts +30 -0
- package/adapters/react/rating.d.ts.map +1 -0
- package/adapters/react/rating.js +24 -0
- package/adapters/react/rating.js.map +1 -0
- package/adapters/react/rating.tsx +38 -0
- package/adapters/react/recipe.d.ts +43 -0
- package/adapters/react/recipe.d.ts.map +1 -0
- package/adapters/react/recipe.js +24 -0
- package/adapters/react/recipe.js.map +1 -0
- package/adapters/react/recipe.tsx +51 -0
- package/adapters/react/sortable.d.ts +28 -0
- package/adapters/react/sortable.d.ts.map +1 -0
- package/adapters/react/sortable.js +24 -0
- package/adapters/react/sortable.js.map +1 -0
- package/adapters/react/sortable.tsx +36 -0
- package/adapters/react/spotlight.d.ts +27 -0
- package/adapters/react/spotlight.d.ts.map +1 -0
- package/adapters/react/spotlight.js +24 -0
- package/adapters/react/spotlight.js.map +1 -0
- package/adapters/react/spotlight.tsx +35 -0
- package/adapters/react/spreadsheet.d.ts +27 -0
- package/adapters/react/spreadsheet.d.ts.map +1 -0
- package/adapters/react/spreadsheet.js +24 -0
- package/adapters/react/spreadsheet.js.map +1 -0
- package/adapters/react/spreadsheet.tsx +35 -0
- package/adapters/react/tag-input.d.ts +33 -0
- package/adapters/react/tag-input.d.ts.map +1 -0
- package/adapters/react/tag-input.js +24 -0
- package/adapters/react/tag-input.js.map +1 -0
- package/adapters/react/tag-input.tsx +41 -0
- package/adapters/react/testimonial.d.ts +31 -0
- package/adapters/react/testimonial.d.ts.map +1 -0
- package/adapters/react/testimonial.js +24 -0
- package/adapters/react/testimonial.js.map +1 -0
- package/adapters/react/testimonial.tsx +39 -0
- package/adapters/react/video-player.d.ts +34 -0
- package/adapters/react/video-player.d.ts.map +1 -0
- package/adapters/react/video-player.js +24 -0
- package/adapters/react/video-player.js.map +1 -0
- package/adapters/react/video-player.tsx +42 -0
- package/adapters/react/waterfall.d.ts +29 -0
- package/adapters/react/waterfall.d.ts.map +1 -0
- package/adapters/react/waterfall.js +24 -0
- package/adapters/react/waterfall.js.map +1 -0
- package/adapters/react/waterfall.tsx +37 -0
- package/adapters/react/weather.d.ts +27 -0
- package/adapters/react/weather.d.ts.map +1 -0
- package/adapters/react/weather.js +24 -0
- package/adapters/react/weather.js.map +1 -0
- package/adapters/react/weather.tsx +35 -0
- package/dist/cdn/accordion/snice-accordion.js +1 -1
- package/dist/cdn/accordion/snice-accordion.min.js +1 -1
- package/dist/cdn/alert/snice-alert.js +1 -1
- package/dist/cdn/alert/snice-alert.min.js +1 -1
- package/dist/cdn/app-tiles/README.md +27 -0
- package/dist/cdn/app-tiles/snice-app-tiles.js +333 -0
- package/dist/cdn/app-tiles/snice-app-tiles.js.map +1 -0
- package/dist/cdn/app-tiles/snice-app-tiles.min.js +11 -0
- package/dist/cdn/app-tiles/snice-app-tiles.min.js.map +1 -0
- package/dist/cdn/audio-recorder/snice-audio-recorder.js +1 -1
- package/dist/cdn/audio-recorder/snice-audio-recorder.min.js +1 -1
- package/dist/cdn/avatar/snice-avatar.js +1 -1
- package/dist/cdn/avatar/snice-avatar.min.js +1 -1
- package/dist/cdn/badge/snice-badge.js +1 -1
- package/dist/cdn/badge/snice-badge.min.js +1 -1
- package/dist/cdn/banner/snice-banner.js +1 -1
- package/dist/cdn/banner/snice-banner.min.js +1 -1
- package/dist/cdn/book/README.md +27 -0
- package/dist/cdn/book/snice-book.js +353 -0
- package/dist/cdn/book/snice-book.js.map +1 -0
- package/dist/cdn/book/snice-book.min.js +13 -0
- package/dist/cdn/book/snice-book.min.js.map +1 -0
- package/dist/cdn/breadcrumbs/snice-breadcrumbs.js +1 -1
- package/dist/cdn/breadcrumbs/snice-breadcrumbs.min.js +1 -1
- package/dist/cdn/button/snice-button.js +1 -1
- package/dist/cdn/button/snice-button.min.js +1 -1
- package/dist/cdn/calendar/snice-calendar.js +1 -1
- package/dist/cdn/calendar/snice-calendar.min.js +1 -1
- package/dist/cdn/camera/snice-camera.js +1 -1
- package/dist/cdn/camera/snice-camera.min.js +1 -1
- package/dist/cdn/camera-annotate/snice-camera-annotate.js +1 -1
- package/dist/cdn/camera-annotate/snice-camera-annotate.min.js +1 -1
- package/dist/cdn/candlestick/snice-candlestick.js +1 -1
- package/dist/cdn/candlestick/snice-candlestick.min.js +1 -1
- package/dist/cdn/card/snice-card.js +1 -1
- package/dist/cdn/card/snice-card.min.js +1 -1
- package/dist/cdn/carousel/snice-carousel.js +1 -1
- package/dist/cdn/carousel/snice-carousel.min.js +1 -1
- package/dist/cdn/chart/snice-chart.js +1 -1
- package/dist/cdn/chart/snice-chart.min.js +1 -1
- package/dist/cdn/chat/snice-chat.js +1 -1
- package/dist/cdn/chat/snice-chat.min.js +1 -1
- package/dist/cdn/checkbox/snice-checkbox.js +1 -1
- package/dist/cdn/checkbox/snice-checkbox.min.js +1 -1
- package/dist/cdn/chip/snice-chip.js +1 -1
- package/dist/cdn/chip/snice-chip.min.js +1 -1
- package/dist/cdn/code-block/snice-code-block.js +1 -1
- package/dist/cdn/code-block/snice-code-block.min.js +1 -1
- package/dist/cdn/color-display/snice-color-display.js +1 -1
- package/dist/cdn/color-display/snice-color-display.min.js +1 -1
- package/dist/cdn/color-picker/snice-color-picker.js +1 -1
- package/dist/cdn/color-picker/snice-color-picker.min.js +1 -1
- package/dist/cdn/command-palette/snice-command-palette.js +1 -1
- package/dist/cdn/command-palette/snice-command-palette.min.js +1 -1
- package/dist/cdn/comments/README.md +27 -0
- package/dist/cdn/comments/snice-comments.js +544 -0
- package/dist/cdn/comments/snice-comments.js.map +1 -0
- package/dist/cdn/comments/snice-comments.min.js +100 -0
- package/dist/cdn/comments/snice-comments.min.js.map +1 -0
- package/dist/cdn/countdown/README.md +27 -0
- package/dist/cdn/countdown/snice-countdown.js +235 -0
- package/dist/cdn/countdown/snice-countdown.js.map +1 -0
- package/dist/cdn/countdown/snice-countdown.min.js +14 -0
- package/dist/cdn/countdown/snice-countdown.min.js.map +1 -0
- package/dist/cdn/cropper/README.md +27 -0
- package/dist/cdn/cropper/snice-cropper.js +352 -0
- package/dist/cdn/cropper/snice-cropper.js.map +1 -0
- package/dist/cdn/cropper/snice-cropper.min.js +25 -0
- package/dist/cdn/cropper/snice-cropper.min.js.map +1 -0
- package/dist/cdn/date-picker/snice-date-picker.js +1 -1
- package/dist/cdn/date-picker/snice-date-picker.min.js +1 -1
- package/dist/cdn/diff/README.md +27 -0
- package/dist/cdn/diff/snice-diff.js +441 -0
- package/dist/cdn/diff/snice-diff.js.map +1 -0
- package/dist/cdn/diff/snice-diff.min.js +54 -0
- package/dist/cdn/diff/snice-diff.min.js.map +1 -0
- package/dist/cdn/divider/snice-divider.js +1 -1
- package/dist/cdn/divider/snice-divider.min.js +1 -1
- package/dist/cdn/doc/snice-doc.js +1 -1
- package/dist/cdn/doc/snice-doc.min.js +1 -1
- package/dist/cdn/draw/snice-draw.js +1 -1
- package/dist/cdn/draw/snice-draw.min.js +1 -1
- package/dist/cdn/drawer/snice-drawer.js +1 -1
- package/dist/cdn/drawer/snice-drawer.min.js +1 -1
- package/dist/cdn/empty-state/snice-empty-state.js +1 -1
- package/dist/cdn/empty-state/snice-empty-state.min.js +1 -1
- package/dist/cdn/file-gallery/snice-file-gallery.js +1 -1
- package/dist/cdn/file-gallery/snice-file-gallery.min.js +1 -1
- package/dist/cdn/file-upload/snice-file-upload.js +1 -1
- package/dist/cdn/file-upload/snice-file-upload.min.js +1 -1
- package/dist/cdn/flip-card/README.md +27 -0
- package/dist/cdn/flip-card/snice-flip-card.js +183 -0
- package/dist/cdn/flip-card/snice-flip-card.js.map +1 -0
- package/dist/cdn/flip-card/snice-flip-card.min.js +22 -0
- package/dist/cdn/flip-card/snice-flip-card.min.js.map +1 -0
- package/dist/cdn/flow/README.md +27 -0
- package/dist/cdn/flow/snice-flow.js +822 -0
- package/dist/cdn/flow/snice-flow.js.map +1 -0
- package/dist/cdn/flow/snice-flow.min.js +17 -0
- package/dist/cdn/flow/snice-flow.min.js.map +1 -0
- package/dist/cdn/funnel/snice-funnel.js +1 -1
- package/dist/cdn/funnel/snice-funnel.min.js +1 -1
- package/dist/cdn/gantt/README.md +27 -0
- package/dist/cdn/gantt/snice-gantt.js +436 -0
- package/dist/cdn/gantt/snice-gantt.js.map +1 -0
- package/dist/cdn/gantt/snice-gantt.min.js +60 -0
- package/dist/cdn/gantt/snice-gantt.min.js.map +1 -0
- package/dist/cdn/gauge/snice-gauge.js +1 -1
- package/dist/cdn/gauge/snice-gauge.min.js +1 -1
- package/dist/cdn/heatmap/snice-heatmap.js +1 -1
- package/dist/cdn/heatmap/snice-heatmap.min.js +1 -1
- package/dist/cdn/image/snice-image.js +1 -1
- package/dist/cdn/image/snice-image.min.js +1 -1
- package/dist/cdn/input/snice-input.js +1 -1
- package/dist/cdn/input/snice-input.min.js +1 -1
- package/dist/cdn/kanban/snice-kanban.js +1 -1
- package/dist/cdn/kanban/snice-kanban.min.js +1 -1
- package/dist/cdn/kpi/snice-kpi.js +1 -1
- package/dist/cdn/kpi/snice-kpi.min.js +1 -1
- package/dist/cdn/layout/snice-layout.js +1 -1
- package/dist/cdn/layout/snice-layout.min.js +1 -1
- package/dist/cdn/link/snice-link.js +1 -1
- package/dist/cdn/link/snice-link.min.js +1 -1
- package/dist/cdn/link-preview/snice-link-preview.js +1 -1
- package/dist/cdn/link-preview/snice-link-preview.min.js +1 -1
- package/dist/cdn/list/snice-list.js +1 -1
- package/dist/cdn/list/snice-list.min.js +1 -1
- package/dist/cdn/location/snice-location.js +1 -1
- package/dist/cdn/location/snice-location.min.js +1 -1
- package/dist/cdn/login/snice-login.js +1 -1
- package/dist/cdn/login/snice-login.min.js +1 -1
- package/dist/cdn/map/README.md +27 -0
- package/dist/cdn/map/snice-map.js +415 -0
- package/dist/cdn/map/snice-map.js.map +1 -0
- package/dist/cdn/map/snice-map.min.js +52 -0
- package/dist/cdn/map/snice-map.min.js.map +1 -0
- package/dist/cdn/markdown/README.md +27 -0
- package/dist/cdn/markdown/snice-markdown.js +317 -0
- package/dist/cdn/markdown/snice-markdown.js.map +1 -0
- package/dist/cdn/markdown/snice-markdown.min.js +11 -0
- package/dist/cdn/markdown/snice-markdown.min.js.map +1 -0
- package/dist/cdn/masonry/snice-masonry.js +1 -1
- package/dist/cdn/masonry/snice-masonry.min.js +1 -1
- package/dist/cdn/menu/snice-menu.js +1 -1
- package/dist/cdn/menu/snice-menu.min.js +1 -1
- package/dist/cdn/modal/snice-modal.js +1 -1
- package/dist/cdn/modal/snice-modal.min.js +1 -1
- package/dist/cdn/music-player/snice-music-player.js +1 -1
- package/dist/cdn/music-player/snice-music-player.min.js +1 -1
- package/dist/cdn/nav/snice-nav.js +1 -1
- package/dist/cdn/nav/snice-nav.min.js +1 -1
- package/dist/cdn/network-graph/snice-network-graph.js +1 -1
- package/dist/cdn/network-graph/snice-network-graph.min.js +1 -1
- package/dist/cdn/notification-center/README.md +27 -0
- package/dist/cdn/notification-center/snice-notification-center.js +204 -0
- package/dist/cdn/notification-center/snice-notification-center.js.map +1 -0
- package/dist/cdn/notification-center/snice-notification-center.min.js +33 -0
- package/dist/cdn/notification-center/snice-notification-center.min.js.map +1 -0
- package/dist/cdn/org-chart/README.md +27 -0
- package/dist/cdn/org-chart/snice-org-chart.js +294 -0
- package/dist/cdn/org-chart/snice-org-chart.js.map +1 -0
- package/dist/cdn/org-chart/snice-org-chart.min.js +32 -0
- package/dist/cdn/org-chart/snice-org-chart.min.js.map +1 -0
- package/dist/cdn/pagination/snice-pagination.js +1 -1
- package/dist/cdn/pagination/snice-pagination.min.js +1 -1
- package/dist/cdn/paint/snice-paint.js +1 -1
- package/dist/cdn/paint/snice-paint.min.js +1 -1
- package/dist/cdn/pdf-viewer/README.md +27 -0
- package/dist/cdn/pdf-viewer/snice-pdf-viewer.js +594 -0
- package/dist/cdn/pdf-viewer/snice-pdf-viewer.js.map +1 -0
- package/dist/cdn/pdf-viewer/snice-pdf-viewer.min.js +88 -0
- package/dist/cdn/pdf-viewer/snice-pdf-viewer.min.js.map +1 -0
- package/dist/cdn/podcast-player/README.md +27 -0
- package/dist/cdn/podcast-player/snice-podcast-player.js +835 -0
- package/dist/cdn/podcast-player/snice-podcast-player.js.map +1 -0
- package/dist/cdn/podcast-player/snice-podcast-player.min.js +209 -0
- package/dist/cdn/podcast-player/snice-podcast-player.min.js.map +1 -0
- package/dist/cdn/pricing-table/README.md +27 -0
- package/dist/cdn/pricing-table/snice-pricing-table.js +491 -0
- package/dist/cdn/pricing-table/snice-pricing-table.js.map +1 -0
- package/dist/cdn/pricing-table/snice-pricing-table.min.js +141 -0
- package/dist/cdn/pricing-table/snice-pricing-table.min.js.map +1 -0
- package/dist/cdn/progress/snice-progress.js +1 -1
- package/dist/cdn/progress/snice-progress.min.js +1 -1
- package/dist/cdn/qr-code/snice-qr-code.js +1 -1
- package/dist/cdn/qr-code/snice-qr-code.min.js +1 -1
- package/dist/cdn/qr-reader/snice-qr-reader.js +1 -1
- package/dist/cdn/qr-reader/snice-qr-reader.min.js +1 -1
- package/dist/cdn/radio/snice-radio.js +1 -1
- package/dist/cdn/radio/snice-radio.min.js +1 -1
- package/dist/cdn/rating/README.md +27 -0
- package/dist/cdn/rating/snice-rating.js +210 -0
- package/dist/cdn/rating/snice-rating.js.map +1 -0
- package/dist/cdn/rating/snice-rating.min.js +25 -0
- package/dist/cdn/rating/snice-rating.min.js.map +1 -0
- package/dist/cdn/recipe/README.md +27 -0
- package/dist/cdn/recipe/snice-recipe.js +619 -0
- package/dist/cdn/recipe/snice-recipe.js.map +1 -0
- package/dist/cdn/recipe/snice-recipe.min.js +185 -0
- package/dist/cdn/recipe/snice-recipe.min.js.map +1 -0
- package/dist/cdn/runtime/snice-runtime.esm.js +3 -3
- package/dist/cdn/runtime/snice-runtime.esm.js.map +1 -1
- package/dist/cdn/runtime/snice-runtime.esm.min.js +3 -3
- package/dist/cdn/runtime/snice-runtime.esm.min.js.map +1 -1
- package/dist/cdn/runtime/snice-runtime.js +3 -3
- package/dist/cdn/runtime/snice-runtime.js.map +1 -1
- package/dist/cdn/runtime/snice-runtime.min.js +3 -3
- package/dist/cdn/runtime/snice-runtime.min.js.map +1 -1
- package/dist/cdn/sankey/snice-sankey.js +1 -1
- package/dist/cdn/sankey/snice-sankey.min.js +1 -1
- package/dist/cdn/select/snice-select.js +1 -1
- package/dist/cdn/select/snice-select.min.js +1 -1
- package/dist/cdn/skeleton/snice-skeleton.js +1 -1
- package/dist/cdn/skeleton/snice-skeleton.min.js +1 -1
- package/dist/cdn/slider/snice-slider.js +1 -1
- package/dist/cdn/slider/snice-slider.min.js +1 -1
- package/dist/cdn/sortable/README.md +27 -0
- package/dist/cdn/sortable/snice-sortable.js +254 -0
- package/dist/cdn/sortable/snice-sortable.js.map +1 -0
- package/dist/cdn/sortable/snice-sortable.min.js +12 -0
- package/dist/cdn/sortable/snice-sortable.min.js.map +1 -0
- package/dist/cdn/sparkline/snice-sparkline.js +1 -1
- package/dist/cdn/sparkline/snice-sparkline.min.js +1 -1
- package/dist/cdn/spinner/snice-spinner.js +1 -1
- package/dist/cdn/spinner/snice-spinner.min.js +1 -1
- package/dist/cdn/split-pane/snice-split-pane.js +1 -1
- package/dist/cdn/split-pane/snice-split-pane.min.js +1 -1
- package/dist/cdn/spotlight/README.md +27 -0
- package/dist/cdn/spotlight/snice-spotlight.js +397 -0
- package/dist/cdn/spotlight/snice-spotlight.js.map +1 -0
- package/dist/cdn/spotlight/snice-spotlight.min.js +8 -0
- package/dist/cdn/spotlight/snice-spotlight.min.js.map +1 -0
- package/dist/cdn/spreadsheet/README.md +27 -0
- package/dist/cdn/spreadsheet/snice-spreadsheet.js +1171 -0
- package/dist/cdn/spreadsheet/snice-spreadsheet.js.map +1 -0
- package/dist/cdn/spreadsheet/snice-spreadsheet.min.js +30 -0
- package/dist/cdn/spreadsheet/snice-spreadsheet.min.js.map +1 -0
- package/dist/cdn/stepper/snice-stepper.js +1 -1
- package/dist/cdn/stepper/snice-stepper.min.js +1 -1
- package/dist/cdn/switch/snice-switch.js +1 -1
- package/dist/cdn/switch/snice-switch.min.js +1 -1
- package/dist/cdn/table/snice-table.js +1 -1
- package/dist/cdn/table/snice-table.min.js +1 -1
- package/dist/cdn/tabs/snice-tabs.js +1 -1
- package/dist/cdn/tabs/snice-tabs.min.js +1 -1
- package/dist/cdn/tag-input/README.md +27 -0
- package/dist/cdn/tag-input/snice-tag-input.js +387 -0
- package/dist/cdn/tag-input/snice-tag-input.js.map +1 -0
- package/dist/cdn/tag-input/snice-tag-input.min.js +65 -0
- package/dist/cdn/tag-input/snice-tag-input.min.js.map +1 -0
- package/dist/cdn/terminal/snice-terminal.js +1 -1
- package/dist/cdn/terminal/snice-terminal.min.js +1 -1
- package/dist/cdn/testimonial/README.md +27 -0
- package/dist/cdn/testimonial/snice-testimonial.js +187 -0
- package/dist/cdn/testimonial/snice-testimonial.js.map +1 -0
- package/dist/cdn/testimonial/snice-testimonial.min.js +21 -0
- package/dist/cdn/testimonial/snice-testimonial.min.js.map +1 -0
- package/dist/cdn/textarea/snice-textarea.js +1 -1
- package/dist/cdn/textarea/snice-textarea.min.js +1 -1
- package/dist/cdn/time-range-picker/snice-time-range-picker.js +1 -1
- package/dist/cdn/time-range-picker/snice-time-range-picker.min.js +1 -1
- package/dist/cdn/timeline/snice-timeline.js +1 -1
- package/dist/cdn/timeline/snice-timeline.min.js +1 -1
- package/dist/cdn/timer/snice-timer.js +1 -1
- package/dist/cdn/timer/snice-timer.min.js +1 -1
- package/dist/cdn/toast/snice-toast.js +1 -1
- package/dist/cdn/toast/snice-toast.min.js +1 -1
- package/dist/cdn/tooltip/snice-tooltip.js +1 -1
- package/dist/cdn/tooltip/snice-tooltip.min.js +1 -1
- package/dist/cdn/tree/snice-tree.js +1 -1
- package/dist/cdn/tree/snice-tree.min.js +1 -1
- package/dist/cdn/treemap/snice-treemap.js +1 -1
- package/dist/cdn/treemap/snice-treemap.min.js +1 -1
- package/dist/cdn/video-player/README.md +27 -0
- package/dist/cdn/video-player/snice-video-player.js +721 -0
- package/dist/cdn/video-player/snice-video-player.js.map +1 -0
- package/dist/cdn/video-player/snice-video-player.min.js +153 -0
- package/dist/cdn/video-player/snice-video-player.min.js.map +1 -0
- package/dist/cdn/virtual-scroller/snice-virtual-scroller.js +1 -1
- package/dist/cdn/virtual-scroller/snice-virtual-scroller.min.js +1 -1
- package/dist/cdn/waterfall/README.md +27 -0
- package/dist/cdn/waterfall/snice-waterfall.js +292 -0
- package/dist/cdn/waterfall/snice-waterfall.js.map +1 -0
- package/dist/cdn/waterfall/snice-waterfall.min.js +12 -0
- package/dist/cdn/waterfall/snice-waterfall.min.js.map +1 -0
- package/dist/cdn/weather/README.md +27 -0
- package/dist/cdn/weather/snice-weather.js +194 -0
- package/dist/cdn/weather/snice-weather.js.map +1 -0
- package/dist/cdn/weather/snice-weather.min.js +42 -0
- package/dist/cdn/weather/snice-weather.min.js.map +1 -0
- package/dist/components/app-tiles/snice-app-tiles.d.ts +36 -0
- package/dist/components/app-tiles/snice-app-tiles.js +265 -0
- package/dist/components/app-tiles/snice-app-tiles.js.map +1 -0
- package/dist/components/app-tiles/snice-app-tiles.types.d.ts +22 -0
- package/dist/components/book/snice-book.d.ts +46 -0
- package/dist/components/book/snice-book.js +285 -0
- package/dist/components/book/snice-book.js.map +1 -0
- package/dist/components/book/snice-book.types.d.ts +21 -0
- package/dist/components/comments/snice-comments.d.ts +62 -0
- package/dist/components/comments/snice-comments.js +476 -0
- package/dist/components/comments/snice-comments.js.map +1 -0
- package/dist/components/comments/snice-comments.types.d.ts +64 -0
- package/dist/components/countdown/snice-countdown.d.ts +21 -0
- package/dist/components/countdown/snice-countdown.js +168 -0
- package/dist/components/countdown/snice-countdown.js.map +1 -0
- package/dist/components/countdown/snice-countdown.types.d.ts +18 -0
- package/dist/components/cropper/snice-cropper.d.ts +32 -0
- package/dist/components/cropper/snice-cropper.js +285 -0
- package/dist/components/cropper/snice-cropper.js.map +1 -0
- package/dist/components/cropper/snice-cropper.types.d.ts +26 -0
- package/dist/components/diff/snice-diff.d.ts +32 -0
- package/dist/components/diff/snice-diff.js +374 -0
- package/dist/components/diff/snice-diff.js.map +1 -0
- package/dist/components/diff/snice-diff.types.d.ts +26 -0
- package/dist/components/flip-card/snice-flip-card.d.ts +15 -0
- package/dist/components/flip-card/snice-flip-card.js +116 -0
- package/dist/components/flip-card/snice-flip-card.js.map +1 -0
- package/dist/components/flip-card/snice-flip-card.types.d.ts +16 -0
- package/dist/components/flow/snice-flow.d.ts +91 -0
- package/dist/components/flow/snice-flow.js +755 -0
- package/dist/components/flow/snice-flow.js.map +1 -0
- package/dist/components/flow/snice-flow.types.d.ts +64 -0
- package/dist/components/gantt/snice-gantt.d.ts +34 -0
- package/dist/components/gantt/snice-gantt.js +369 -0
- package/dist/components/gantt/snice-gantt.js.map +1 -0
- package/dist/components/gantt/snice-gantt.types.d.ts +37 -0
- package/dist/components/map/snice-map.d.ts +44 -0
- package/dist/components/map/snice-map.js +348 -0
- package/dist/components/map/snice-map.js.map +1 -0
- package/dist/components/map/snice-map.types.d.ts +41 -0
- package/dist/components/markdown/snice-markdown.d.ts +24 -0
- package/dist/components/markdown/snice-markdown.js +250 -0
- package/dist/components/markdown/snice-markdown.js.map +1 -0
- package/dist/components/markdown/snice-markdown.types.d.ts +16 -0
- package/dist/components/notification-center/snice-notification-center.d.ts +18 -0
- package/dist/components/notification-center/snice-notification-center.js +137 -0
- package/dist/components/notification-center/snice-notification-center.js.map +1 -0
- package/dist/components/notification-center/snice-notification-center.types.d.ts +24 -0
- package/dist/components/org-chart/snice-org-chart.d.ts +28 -0
- package/dist/components/org-chart/snice-org-chart.js +227 -0
- package/dist/components/org-chart/snice-org-chart.js.map +1 -0
- package/dist/components/org-chart/snice-org-chart.types.d.ts +28 -0
- package/dist/components/pdf-viewer/pdf.min.mjs +21 -0
- package/dist/components/pdf-viewer/pdf.worker.min.mjs +21 -0
- package/dist/components/pdf-viewer/snice-pdf-viewer.d.ts +59 -0
- package/dist/components/pdf-viewer/snice-pdf-viewer.js +527 -0
- package/dist/components/pdf-viewer/snice-pdf-viewer.js.map +1 -0
- package/dist/components/pdf-viewer/snice-pdf-viewer.types.d.ts +25 -0
- package/dist/components/podcast-player/snice-podcast-player.d.ts +72 -0
- package/dist/components/podcast-player/snice-podcast-player.js +768 -0
- package/dist/components/podcast-player/snice-podcast-player.js.map +1 -0
- package/dist/components/podcast-player/snice-podcast-player.types.d.ts +79 -0
- package/dist/components/pricing-table/snice-pricing-table.d.ts +51 -0
- package/dist/components/pricing-table/snice-pricing-table.js +422 -0
- package/dist/components/pricing-table/snice-pricing-table.js.map +1 -0
- package/dist/components/pricing-table/snice-pricing-table.types.d.ts +49 -0
- package/dist/components/rating/snice-rating.d.ts +15 -0
- package/dist/components/rating/snice-rating.js +143 -0
- package/dist/components/rating/snice-rating.js.map +1 -0
- package/dist/components/rating/snice-rating.types.d.ts +15 -0
- package/dist/components/recipe/snice-recipe.d.ts +53 -0
- package/dist/components/recipe/snice-recipe.js +552 -0
- package/dist/components/recipe/snice-recipe.js.map +1 -0
- package/dist/components/recipe/snice-recipe.types.d.ts +56 -0
- package/dist/components/sortable/snice-sortable.d.ts +24 -0
- package/dist/components/sortable/snice-sortable.js +187 -0
- package/dist/components/sortable/snice-sortable.js.map +1 -0
- package/dist/components/sortable/snice-sortable.types.d.ts +20 -0
- package/dist/components/spotlight/snice-spotlight.d.ts +42 -0
- package/dist/components/spotlight/snice-spotlight.js +330 -0
- package/dist/components/spotlight/snice-spotlight.js.map +1 -0
- package/dist/components/spotlight/snice-spotlight.types.d.ts +26 -0
- package/dist/components/spreadsheet/snice-spreadsheet.d.ts +102 -0
- package/dist/components/spreadsheet/snice-spreadsheet.js +1104 -0
- package/dist/components/spreadsheet/snice-spreadsheet.js.map +1 -0
- package/dist/components/spreadsheet/snice-spreadsheet.types.d.ts +54 -0
- package/dist/components/tag-input/snice-tag-input.d.ts +40 -0
- package/dist/components/tag-input/snice-tag-input.js +320 -0
- package/dist/components/tag-input/snice-tag-input.js.map +1 -0
- package/dist/components/tag-input/snice-tag-input.types.d.ts +29 -0
- package/dist/components/testimonial/snice-testimonial.d.ts +15 -0
- package/dist/components/testimonial/snice-testimonial.js +120 -0
- package/dist/components/testimonial/snice-testimonial.js.map +1 -0
- package/dist/components/testimonial/snice-testimonial.types.d.ts +10 -0
- package/dist/components/video-player/snice-video-player.d.ts +78 -0
- package/dist/components/video-player/snice-video-player.js +654 -0
- package/dist/components/video-player/snice-video-player.js.map +1 -0
- package/dist/components/video-player/snice-video-player.types.d.ts +47 -0
- package/dist/components/waterfall/snice-waterfall.d.ts +30 -0
- package/dist/components/waterfall/snice-waterfall.js +225 -0
- package/dist/components/waterfall/snice-waterfall.js.map +1 -0
- package/dist/components/waterfall/snice-waterfall.types.d.ts +23 -0
- package/dist/components/weather/snice-weather.d.ts +10 -0
- package/dist/components/weather/snice-weather.js +127 -0
- package/dist/components/weather/snice-weather.js.map +1 -0
- package/dist/components/weather/snice-weather.types.d.ts +22 -0
- package/dist/index.cjs +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.iife.js +1 -1
- package/dist/symbols.cjs +1 -1
- package/dist/symbols.esm.js +1 -1
- package/dist/transitions.cjs +1 -1
- package/dist/transitions.esm.js +1 -1
- package/docs/ai/DEVELOPMENT.md +1 -1
- package/docs/ai/api.md +6 -3
- package/docs/ai/components/accordion.md +0 -34
- package/docs/ai/components/app-tiles.md +77 -0
- package/docs/ai/components/audio-recorder.md +2 -0
- package/docs/ai/components/badge.md +7 -0
- package/docs/ai/components/book.md +78 -0
- package/docs/ai/components/button.md +5 -0
- package/docs/ai/components/chart.md +0 -24
- package/docs/ai/components/chat.md +7 -95
- package/docs/ai/components/code-block.md +3 -82
- package/docs/ai/components/color-display.md +3 -3
- package/docs/ai/components/color-picker.md +4 -4
- package/docs/ai/components/comments.md +75 -0
- package/docs/ai/components/countdown.md +54 -0
- package/docs/ai/components/cropper.md +57 -0
- package/docs/ai/components/date-picker.md +15 -9
- package/docs/ai/components/diff.md +66 -0
- package/docs/ai/components/divider.md +1 -1
- package/docs/ai/components/draw.md +5 -5
- package/docs/ai/components/drawer.md +5 -5
- package/docs/ai/components/empty-state.md +2 -2
- package/docs/ai/components/file-gallery.md +16 -87
- package/docs/ai/components/file-upload.md +6 -6
- package/docs/ai/components/flip-card.md +52 -0
- package/docs/ai/components/flow.md +104 -0
- package/docs/ai/components/funnel.md +3 -3
- package/docs/ai/components/gantt.md +63 -0
- package/docs/ai/components/gauge.md +1 -1
- package/docs/ai/components/heatmap.md +5 -5
- package/docs/ai/components/input.md +20 -18
- package/docs/ai/components/kanban.md +2 -2
- package/docs/ai/components/kpi.md +4 -53
- package/docs/ai/components/layout.md +10 -235
- package/docs/ai/components/link-preview.md +20 -29
- package/docs/ai/components/link.md +27 -47
- package/docs/ai/components/list.md +51 -31
- package/docs/ai/components/location.md +15 -27
- package/docs/ai/components/login.md +43 -94
- package/docs/ai/components/map.md +72 -0
- package/docs/ai/components/markdown.md +63 -0
- package/docs/ai/components/masonry.md +10 -6
- package/docs/ai/components/menu.md +40 -72
- package/docs/ai/components/modal.md +25 -42
- package/docs/ai/components/music-player.md +37 -89
- package/docs/ai/components/nav.md +25 -39
- package/docs/ai/components/network-graph.md +39 -43
- package/docs/ai/components/notification-center.md +79 -0
- package/docs/ai/components/org-chart.md +62 -0
- package/docs/ai/components/pagination.md +16 -18
- package/docs/ai/components/pdf-viewer.md +57 -0
- package/docs/ai/components/podcast-player.md +94 -0
- package/docs/ai/components/pricing-table.md +87 -0
- package/docs/ai/components/progress.md +23 -39
- package/docs/ai/components/qr-code.md +37 -84
- package/docs/ai/components/qr-reader.md +51 -61
- package/docs/ai/components/radio.md +27 -39
- package/docs/ai/components/rating.md +56 -0
- package/docs/ai/components/recipe.md +90 -0
- package/docs/ai/components/skeleton.md +0 -8
- package/docs/ai/components/slider.md +10 -50
- package/docs/ai/components/sortable.md +57 -0
- package/docs/ai/components/sparkline.md +26 -152
- package/docs/ai/components/spinner.md +0 -21
- package/docs/ai/components/split-pane.md +16 -38
- package/docs/ai/components/spotlight.md +61 -0
- package/docs/ai/components/spreadsheet.md +138 -0
- package/docs/ai/components/stepper.md +37 -183
- package/docs/ai/components/switch.md +28 -35
- package/docs/ai/components/table.md +43 -172
- package/docs/ai/components/tabs.md +31 -52
- package/docs/ai/components/tag-input.md +70 -0
- package/docs/ai/components/terminal.md +34 -116
- package/docs/ai/components/testimonial.md +56 -0
- package/docs/ai/components/textarea.md +11 -43
- package/docs/ai/components/theme.md +120 -0
- package/docs/ai/components/time-range-picker.md +17 -49
- package/docs/ai/components/timeline.md +7 -46
- package/docs/ai/components/timer.md +41 -37
- package/docs/ai/components/toast.md +19 -90
- package/docs/ai/components/tooltip.md +17 -104
- package/docs/ai/components/tree.md +38 -162
- package/docs/ai/components/treemap.md +23 -44
- package/docs/ai/components/video-player.md +91 -0
- package/docs/ai/components/virtual-scroller.md +23 -46
- package/docs/ai/components/waterfall.md +56 -0
- package/docs/ai/components/weather.md +78 -0
- package/docs/ai/decorators.md +25 -3
- package/docs/ai/patterns.md +17 -1
- package/docs/components/accordion.md +8 -6
- package/docs/components/alert.md +2 -0
- package/docs/components/app-tiles.md +162 -0
- package/docs/components/audio-recorder.md +6 -0
- package/docs/components/avatar.md +225 -0
- package/docs/components/badge.md +2 -0
- package/docs/components/banner.md +2 -0
- package/docs/components/book.md +184 -0
- package/docs/components/breadcrumbs.md +2 -0
- package/docs/components/button.md +15 -0
- package/docs/components/calendar.md +2 -0
- package/docs/components/camera-annotate.md +2 -0
- package/docs/components/camera.md +2 -0
- package/docs/components/candlestick.md +2 -0
- package/docs/components/card.md +2 -0
- package/docs/components/carousel.md +205 -36
- package/docs/components/chart.md +2 -0
- package/docs/components/chat.md +2 -0
- package/docs/components/checkbox.md +2 -0
- package/docs/components/chip.md +2 -0
- package/docs/components/code-block.md +2 -0
- package/docs/components/color-display.md +2 -0
- package/docs/components/color-picker.md +6 -4
- package/docs/components/command-palette.md +2 -0
- package/docs/components/comments.md +235 -0
- package/docs/components/countdown.md +121 -0
- package/docs/components/cropper.md +152 -0
- package/docs/components/date-picker.md +201 -0
- package/docs/components/diff.md +177 -0
- package/docs/components/divider.md +132 -0
- package/docs/components/doc.md +2 -0
- package/docs/components/draw.md +2 -0
- package/docs/components/drawer.md +2 -0
- package/docs/components/empty-state.md +2 -0
- package/docs/components/file-gallery.md +2 -0
- package/docs/components/file-upload.md +2 -0
- package/docs/components/flip-card.md +169 -0
- package/docs/components/flow.md +208 -0
- package/docs/components/funnel.md +2 -0
- package/docs/components/gantt.md +187 -0
- package/docs/components/gauge.md +2 -0
- package/docs/components/heatmap.md +2 -0
- package/docs/components/image.md +2 -0
- package/docs/components/input.md +242 -0
- package/docs/components/kanban.md +2 -0
- package/docs/components/kpi.md +2 -0
- package/docs/components/layout.md +84 -0
- package/docs/components/link-preview.md +66 -92
- package/docs/components/link.md +73 -157
- package/docs/components/list.md +140 -44
- package/docs/components/location.md +96 -283
- package/docs/components/login.md +131 -498
- package/docs/components/map.md +203 -0
- package/docs/components/markdown.md +220 -0
- package/docs/components/masonry.md +57 -102
- package/docs/components/menu.md +87 -494
- package/docs/components/modal.md +83 -436
- package/docs/components/music-player.md +116 -221
- package/docs/components/nav.md +107 -170
- package/docs/components/network-graph.md +83 -111
- package/docs/components/notification-center.md +256 -0
- package/docs/components/org-chart.md +275 -0
- package/docs/components/pagination.md +75 -218
- package/docs/components/paint.md +108 -73
- package/docs/components/pdf-viewer.md +204 -0
- package/docs/components/podcast-player.md +277 -0
- package/docs/components/pricing-table.md +249 -0
- package/docs/components/progress.md +169 -0
- package/docs/components/qr-code.md +95 -378
- package/docs/components/qr-reader.md +83 -258
- package/docs/components/radio.md +151 -0
- package/docs/components/rating.md +154 -0
- package/docs/components/recipe.md +323 -0
- package/docs/components/sankey.md +84 -107
- package/docs/components/select.md +114 -485
- package/docs/components/skeleton.md +96 -0
- package/docs/components/slider.md +92 -235
- package/docs/components/sortable.md +267 -0
- package/docs/components/sparkline.md +76 -222
- package/docs/components/spinner.md +37 -18
- package/docs/components/split-pane.md +62 -226
- package/docs/components/spotlight.md +240 -0
- package/docs/components/spreadsheet.md +405 -0
- package/docs/components/stepper.md +72 -306
- package/docs/components/switch.md +69 -293
- package/docs/components/table.md +250 -0
- package/docs/components/tabs.md +92 -471
- package/docs/components/tag-input.md +257 -0
- package/docs/components/terminal.md +87 -391
- package/docs/components/testimonial.md +185 -0
- package/docs/components/textarea.md +96 -181
- package/docs/components/theme.md +216 -0
- package/docs/components/time-range-picker.md +99 -151
- package/docs/components/timeline.md +67 -115
- package/docs/components/timer.md +44 -86
- package/docs/components/toast.md +93 -432
- package/docs/components/tooltip.md +75 -419
- package/docs/components/tree.md +110 -436
- package/docs/components/treemap.md +86 -129
- package/docs/components/video-player.md +336 -0
- package/docs/components/virtual-scroller.md +86 -226
- package/docs/components/waterfall.md +217 -0
- package/docs/components/weather.md +239 -0
- package/package.json +1 -1
- package/docs/ai/components/popover.md +0 -70
- package/docs/components/popover.md +0 -333
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
[//]: # (AI: For a low-token version of this doc, use docs/ai/components/comments.md instead)
|
|
2
|
+
|
|
3
|
+
# Comments Component
|
|
4
|
+
|
|
5
|
+
The comments component provides a threaded comment system with nested replies, like/unlike functionality, user avatars, relative timestamps, and current-user awareness for delete permissions.
|
|
6
|
+
|
|
7
|
+
## Table of Contents
|
|
8
|
+
- [Basic Usage](#basic-usage)
|
|
9
|
+
- [Properties](#properties)
|
|
10
|
+
- [Methods](#methods)
|
|
11
|
+
- [Events](#events)
|
|
12
|
+
- [CSS Custom Properties](#css-custom-properties)
|
|
13
|
+
- [CSS Parts](#css-parts)
|
|
14
|
+
- [Examples](#examples)
|
|
15
|
+
- [Accessibility](#accessibility)
|
|
16
|
+
|
|
17
|
+
## Basic Usage
|
|
18
|
+
|
|
19
|
+
```html
|
|
20
|
+
<snice-comments current-user="Alice"></snice-comments>
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
import 'snice/components/comments/snice-comments';
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Properties
|
|
28
|
+
|
|
29
|
+
| Property | Type | Default | Description |
|
|
30
|
+
|----------|------|---------|-------------|
|
|
31
|
+
| `comments` | `Comment[]` | `[]` | Array of comment objects (set via JavaScript) |
|
|
32
|
+
| `currentUser` (attr: `current-user`) | `string` | `''` | Name of the logged-in user. Enables delete on own comments. |
|
|
33
|
+
| `allowReplies` (attr: `allow-replies`) | `boolean` | `true` | Enable nested reply threads |
|
|
34
|
+
| `allowLikes` (attr: `allow-likes`) | `boolean` | `true` | Enable like/unlike functionality per comment |
|
|
35
|
+
| `maxDepth` (attr: `max-depth`) | `number` | `3` | Maximum nesting depth for replies |
|
|
36
|
+
|
|
37
|
+
### Comment Type
|
|
38
|
+
|
|
39
|
+
```typescript
|
|
40
|
+
interface Comment {
|
|
41
|
+
id: string;
|
|
42
|
+
author: string;
|
|
43
|
+
avatar?: string; // URL for avatar image
|
|
44
|
+
text: string;
|
|
45
|
+
timestamp: string; // ISO date string
|
|
46
|
+
replies?: Comment[];
|
|
47
|
+
likes?: number;
|
|
48
|
+
liked?: boolean;
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Methods
|
|
53
|
+
|
|
54
|
+
| Method | Arguments | Description |
|
|
55
|
+
|--------|-----------|-------------|
|
|
56
|
+
| `addComment()` | `text: string, parentId?: string` | Add a top-level comment or a reply (when `parentId` is provided) |
|
|
57
|
+
| `deleteComment()` | `id: string` | Remove a comment by its ID |
|
|
58
|
+
| `likeComment()` | `id: string` | Toggle the like state on a comment |
|
|
59
|
+
|
|
60
|
+
## Events
|
|
61
|
+
|
|
62
|
+
| Event | Detail | Description |
|
|
63
|
+
|-------|--------|-------------|
|
|
64
|
+
| `comment-add` | `{ id: string, text: string, author: string }` | Fired when a new top-level comment is submitted |
|
|
65
|
+
| `comment-reply` | `{ id: string, text: string, author: string, parentId: string }` | Fired when a reply is submitted to an existing comment |
|
|
66
|
+
| `comment-delete` | `{ id: string }` | Fired when a comment is deleted |
|
|
67
|
+
| `comment-like` | `{ id: string, likes: number, liked: boolean }` | Fired when a comment is liked or unliked |
|
|
68
|
+
|
|
69
|
+
## CSS Custom Properties
|
|
70
|
+
|
|
71
|
+
| Property | Description |
|
|
72
|
+
|----------|-------------|
|
|
73
|
+
| `--comments-bg` | Background color |
|
|
74
|
+
| `--comments-border` | Border color |
|
|
75
|
+
| `--comments-text` | Primary text color |
|
|
76
|
+
| `--comments-text-secondary` | Author name and secondary text color |
|
|
77
|
+
| `--comments-text-tertiary` | Timestamps and placeholder text color |
|
|
78
|
+
| `--comments-primary` | Submit button and active like color |
|
|
79
|
+
| `--comments-danger` | Delete action hover color |
|
|
80
|
+
| `--comments-bg-element` | Avatar background and hover state color |
|
|
81
|
+
|
|
82
|
+
## CSS Parts
|
|
83
|
+
|
|
84
|
+
| Part | Description |
|
|
85
|
+
|------|-------------|
|
|
86
|
+
| `base` | Root container element |
|
|
87
|
+
| `input-area` | The new comment input area |
|
|
88
|
+
| `list` | The comments list container |
|
|
89
|
+
|
|
90
|
+
## Examples
|
|
91
|
+
|
|
92
|
+
### Basic Comment Thread
|
|
93
|
+
|
|
94
|
+
Set comments via JavaScript to display a comment thread with the current user set.
|
|
95
|
+
|
|
96
|
+
```html
|
|
97
|
+
<snice-comments id="my-comments" current-user="Alice" allow-replies allow-likes></snice-comments>
|
|
98
|
+
|
|
99
|
+
<script type="module">
|
|
100
|
+
import 'snice/components/comments/snice-comments';
|
|
101
|
+
|
|
102
|
+
const el = document.getElementById('my-comments');
|
|
103
|
+
el.comments = [
|
|
104
|
+
{
|
|
105
|
+
id: '1',
|
|
106
|
+
author: 'Bob',
|
|
107
|
+
avatar: '/avatars/bob.jpg',
|
|
108
|
+
text: 'Great article! Really enjoyed the section on performance.',
|
|
109
|
+
timestamp: '2026-02-20T10:00:00Z',
|
|
110
|
+
likes: 5
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
id: '2',
|
|
114
|
+
author: 'Alice',
|
|
115
|
+
text: 'Thanks Bob! I spent a lot of time on that section.',
|
|
116
|
+
timestamp: '2026-02-20T11:30:00Z',
|
|
117
|
+
likes: 2
|
|
118
|
+
}
|
|
119
|
+
];
|
|
120
|
+
</script>
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Nested Replies
|
|
124
|
+
|
|
125
|
+
Use the `replies` array within a comment to create threaded conversations. Control the nesting depth with `max-depth`.
|
|
126
|
+
|
|
127
|
+
```html
|
|
128
|
+
<snice-comments id="nested-comments" current-user="Charlie" max-depth="3"></snice-comments>
|
|
129
|
+
|
|
130
|
+
<script type="module">
|
|
131
|
+
const el = document.getElementById('nested-comments');
|
|
132
|
+
el.comments = [
|
|
133
|
+
{
|
|
134
|
+
id: '1',
|
|
135
|
+
author: 'Alice',
|
|
136
|
+
text: 'Has anyone tried the new API?',
|
|
137
|
+
timestamp: '2026-02-19T09:00:00Z',
|
|
138
|
+
likes: 3,
|
|
139
|
+
replies: [
|
|
140
|
+
{
|
|
141
|
+
id: '2',
|
|
142
|
+
author: 'Bob',
|
|
143
|
+
text: 'Yes! The response times are much better.',
|
|
144
|
+
timestamp: '2026-02-19T10:15:00Z',
|
|
145
|
+
likes: 1,
|
|
146
|
+
replies: [
|
|
147
|
+
{
|
|
148
|
+
id: '3',
|
|
149
|
+
author: 'Charlie',
|
|
150
|
+
text: 'Agreed, the caching layer makes a big difference.',
|
|
151
|
+
timestamp: '2026-02-19T11:00:00Z'
|
|
152
|
+
}
|
|
153
|
+
]
|
|
154
|
+
}
|
|
155
|
+
]
|
|
156
|
+
}
|
|
157
|
+
];
|
|
158
|
+
</script>
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
### Read-Only Comments (No Replies or Likes)
|
|
162
|
+
|
|
163
|
+
Disable replies and likes for a read-only display of past comments.
|
|
164
|
+
|
|
165
|
+
```html
|
|
166
|
+
<snice-comments
|
|
167
|
+
id="readonly-comments"
|
|
168
|
+
current-user=""
|
|
169
|
+
allow-replies="false"
|
|
170
|
+
allow-likes="false">
|
|
171
|
+
</snice-comments>
|
|
172
|
+
|
|
173
|
+
<script type="module">
|
|
174
|
+
const el = document.getElementById('readonly-comments');
|
|
175
|
+
el.comments = [
|
|
176
|
+
{ id: '1', author: 'Admin', text: 'Version 2.0 has been released.', timestamp: '2026-01-15T08:00:00Z', likes: 12 },
|
|
177
|
+
{ id: '2', author: 'Support', text: 'Please update to the latest version.', timestamp: '2026-01-16T14:00:00Z', likes: 4 }
|
|
178
|
+
];
|
|
179
|
+
</script>
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### Listening to Events
|
|
183
|
+
|
|
184
|
+
Listen for comment actions to sync with a backend.
|
|
185
|
+
|
|
186
|
+
```html
|
|
187
|
+
<snice-comments id="event-comments" current-user="Alice"></snice-comments>
|
|
188
|
+
|
|
189
|
+
<script type="module">
|
|
190
|
+
const el = document.getElementById('event-comments');
|
|
191
|
+
el.comments = [];
|
|
192
|
+
|
|
193
|
+
el.addEventListener('comment-add', (e) => {
|
|
194
|
+
console.log('New comment:', e.detail.text, 'by', e.detail.author);
|
|
195
|
+
// POST to your API
|
|
196
|
+
});
|
|
197
|
+
|
|
198
|
+
el.addEventListener('comment-reply', (e) => {
|
|
199
|
+
console.log('Reply to', e.detail.parentId, ':', e.detail.text);
|
|
200
|
+
});
|
|
201
|
+
|
|
202
|
+
el.addEventListener('comment-like', (e) => {
|
|
203
|
+
console.log('Comment', e.detail.id, 'now has', e.detail.likes, 'likes');
|
|
204
|
+
});
|
|
205
|
+
|
|
206
|
+
el.addEventListener('comment-delete', (e) => {
|
|
207
|
+
console.log('Deleted comment:', e.detail.id);
|
|
208
|
+
});
|
|
209
|
+
</script>
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### Declarative Usage with Child Elements
|
|
213
|
+
|
|
214
|
+
Comments can also be defined declaratively using `<snice-comment>` child elements.
|
|
215
|
+
|
|
216
|
+
```html
|
|
217
|
+
<snice-comments current-user="John" allow-replies allow-likes>
|
|
218
|
+
<snice-comment author="Alice" avatar="alice.jpg" timestamp="2026-01-15T10:30:00Z" likes="3">
|
|
219
|
+
This is a great article!
|
|
220
|
+
<snice-comment author="Bob" timestamp="2026-01-15T11:00:00Z">
|
|
221
|
+
Thanks Alice!
|
|
222
|
+
</snice-comment>
|
|
223
|
+
</snice-comment>
|
|
224
|
+
<snice-comment author="Charlie" timestamp="2026-01-15T12:00:00Z">
|
|
225
|
+
Very informative.
|
|
226
|
+
</snice-comment>
|
|
227
|
+
</snice-comments>
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
## Accessibility
|
|
231
|
+
|
|
232
|
+
- **Keyboard support**: Tab through comments, reply buttons, and like buttons. Enter or Space to activate controls.
|
|
233
|
+
- **Timestamps**: Displayed as relative times (e.g., "2 hours ago") for quick scanning
|
|
234
|
+
- **Current user**: Delete controls only appear on the current user's own comments to prevent confusion
|
|
235
|
+
- **Screen readers**: Comment structure and author information are conveyed through semantic markup
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
[//]: # (AI: For a low-token version of this doc, use docs/ai/components/countdown.md instead)
|
|
2
|
+
|
|
3
|
+
# Countdown Component
|
|
4
|
+
|
|
5
|
+
The countdown component displays a countdown timer to a target date with live-updating segments for days, hours, minutes, and seconds. It supports three visual variants (simple, flip, circular) and configurable display formats.
|
|
6
|
+
|
|
7
|
+
## Table of Contents
|
|
8
|
+
- [Basic Usage](#basic-usage)
|
|
9
|
+
- [Properties](#properties)
|
|
10
|
+
- [Events](#events)
|
|
11
|
+
- [CSS Custom Properties](#css-custom-properties)
|
|
12
|
+
- [Examples](#examples)
|
|
13
|
+
- [Accessibility](#accessibility)
|
|
14
|
+
|
|
15
|
+
## Basic Usage
|
|
16
|
+
|
|
17
|
+
```html
|
|
18
|
+
<snice-countdown target="2026-12-31T00:00:00Z"></snice-countdown>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
```typescript
|
|
22
|
+
import 'snice/components/countdown/snice-countdown';
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Properties
|
|
26
|
+
|
|
27
|
+
| Property | Type | Default | Description |
|
|
28
|
+
|----------|------|---------|-------------|
|
|
29
|
+
| `target` | `string` | `''` | ISO date string for the target date/time to count down to |
|
|
30
|
+
| `format` | `'dhms' \| 'hms' \| 'ms'` | `'dhms'` | Display format: days+hours+minutes+seconds, hours+minutes+seconds, or minutes+seconds |
|
|
31
|
+
| `variant` | `'simple' \| 'flip' \| 'circular'` | `'simple'` | Visual style of the countdown display |
|
|
32
|
+
|
|
33
|
+
## Events
|
|
34
|
+
|
|
35
|
+
| Event | Detail | Description |
|
|
36
|
+
|-------|--------|-------------|
|
|
37
|
+
| `countdown-complete` | `void` | Fired when the countdown reaches zero |
|
|
38
|
+
| `countdown-tick` | `{ days: number, hours: number, minutes: number, seconds: number, total: number }` | Fired every second with the current remaining time values |
|
|
39
|
+
|
|
40
|
+
## CSS Custom Properties
|
|
41
|
+
|
|
42
|
+
The countdown component uses standard Snice design tokens:
|
|
43
|
+
|
|
44
|
+
| Property | Description |
|
|
45
|
+
|----------|-------------|
|
|
46
|
+
| `--snice-font-family` | Font family |
|
|
47
|
+
| `--snice-font-size-2xl` | Digit size |
|
|
48
|
+
| `--snice-font-size-xs` | Label size |
|
|
49
|
+
| `--snice-color-text` | Digit color |
|
|
50
|
+
| `--snice-color-text-secondary` | Label color |
|
|
51
|
+
| `--snice-color-text-tertiary` | Separator color |
|
|
52
|
+
| `--snice-color-background-element` | Flip variant card background |
|
|
53
|
+
| `--snice-color-border` | Flip variant border |
|
|
54
|
+
| `--snice-color-primary` | Circular variant ring color |
|
|
55
|
+
| `--snice-color-success` | Completed state color |
|
|
56
|
+
|
|
57
|
+
## Examples
|
|
58
|
+
|
|
59
|
+
### Simple Countdown
|
|
60
|
+
|
|
61
|
+
The default variant displays digits with labels underneath.
|
|
62
|
+
|
|
63
|
+
```html
|
|
64
|
+
<snice-countdown target="2026-12-31T00:00:00Z" format="dhms" variant="simple"></snice-countdown>
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### Flip Variant
|
|
68
|
+
|
|
69
|
+
Use `variant="flip"` for a card-flip animation style inspired by airport departure boards.
|
|
70
|
+
|
|
71
|
+
```html
|
|
72
|
+
<snice-countdown target="2027-01-01T00:00:00Z" variant="flip" format="dhms"></snice-countdown>
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Circular Variant
|
|
76
|
+
|
|
77
|
+
Use `variant="circular"` to display each segment inside a circular progress ring.
|
|
78
|
+
|
|
79
|
+
```html
|
|
80
|
+
<snice-countdown target="2026-06-15T18:00:00Z" variant="circular" format="hms"></snice-countdown>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### Short Format (Minutes and Seconds)
|
|
84
|
+
|
|
85
|
+
Use `format="ms"` for a short countdown that only shows minutes and seconds.
|
|
86
|
+
|
|
87
|
+
```html
|
|
88
|
+
<snice-countdown target="2026-02-22T12:30:00Z" format="ms" variant="simple"></snice-countdown>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Event Handling
|
|
92
|
+
|
|
93
|
+
Listen for completion and tick events to trigger actions.
|
|
94
|
+
|
|
95
|
+
```html
|
|
96
|
+
<snice-countdown id="sale-timer" target="2026-03-01T00:00:00Z" variant="flip"></snice-countdown>
|
|
97
|
+
|
|
98
|
+
<script type="module">
|
|
99
|
+
import 'snice/components/countdown/snice-countdown';
|
|
100
|
+
|
|
101
|
+
const countdown = document.getElementById('sale-timer');
|
|
102
|
+
|
|
103
|
+
countdown.addEventListener('countdown-complete', () => {
|
|
104
|
+
alert('The sale has ended!');
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
countdown.addEventListener('countdown-tick', (e) => {
|
|
108
|
+
if (e.detail.total <= 60) {
|
|
109
|
+
// Last minute — add urgency styling
|
|
110
|
+
countdown.style.color = 'red';
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
</script>
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Accessibility
|
|
117
|
+
|
|
118
|
+
- **Live updates**: The countdown updates every second with current values
|
|
119
|
+
- **Completion state**: A `.complete` CSS class is added to the host element when the countdown finishes, allowing for visual feedback
|
|
120
|
+
- **Labels**: Each time segment (days, hours, minutes, seconds) has a descriptive label below the digits
|
|
121
|
+
- **Screen readers**: Segment labels provide context for the displayed numbers
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
[//]: # (AI: For a low-token version of this doc, use docs/ai/components/cropper.md instead)
|
|
2
|
+
|
|
3
|
+
# Cropper Component
|
|
4
|
+
|
|
5
|
+
The cropper component provides an image cropping tool with a draggable and resizable crop area, rotation, zoom controls, optional aspect ratio locking, and a rule-of-thirds grid overlay. It outputs cropped images as Blob objects in PNG, JPEG, or WebP format.
|
|
6
|
+
|
|
7
|
+
## Table of Contents
|
|
8
|
+
- [Basic Usage](#basic-usage)
|
|
9
|
+
- [Properties](#properties)
|
|
10
|
+
- [Methods](#methods)
|
|
11
|
+
- [Events](#events)
|
|
12
|
+
- [CSS Custom Properties](#css-custom-properties)
|
|
13
|
+
- [Examples](#examples)
|
|
14
|
+
- [Accessibility](#accessibility)
|
|
15
|
+
|
|
16
|
+
## Basic Usage
|
|
17
|
+
|
|
18
|
+
```html
|
|
19
|
+
<snice-cropper src="/photo.jpg"></snice-cropper>
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
import 'snice/components/cropper/snice-cropper';
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Properties
|
|
27
|
+
|
|
28
|
+
| Property | Type | Default | Description |
|
|
29
|
+
|----------|------|---------|-------------|
|
|
30
|
+
| `src` | `string` | `''` | URL of the image to crop |
|
|
31
|
+
| `aspectRatio` (attr: `aspect-ratio`) | `number` | `0` | Lock the crop area to a specific aspect ratio. `0` means free-form. Use `1` for square, `1.777` for 16:9, etc. |
|
|
32
|
+
| `minWidth` (attr: `min-width`) | `number` | `20` | Minimum crop area width in pixels |
|
|
33
|
+
| `minHeight` (attr: `min-height`) | `number` | `20` | Minimum crop area height in pixels |
|
|
34
|
+
| `outputType` (attr: `output-type`) | `'png' \| 'jpeg' \| 'webp'` | `'png'` | Output image format |
|
|
35
|
+
|
|
36
|
+
## Methods
|
|
37
|
+
|
|
38
|
+
| Method | Arguments | Returns | Description |
|
|
39
|
+
|--------|-----------|---------|-------------|
|
|
40
|
+
| `crop()` | -- | `Promise<Blob \| null>` | Produce a cropped image Blob from the current crop area |
|
|
41
|
+
| `rotate()` | `degrees: number` | `void` | Rotate the image by the given degrees (cumulative) |
|
|
42
|
+
| `zoom()` | `level: number` | `void` | Set the zoom level (range: 0.1 to 10) |
|
|
43
|
+
| `reset()` | -- | `void` | Reset rotation, zoom, and crop area to their defaults |
|
|
44
|
+
|
|
45
|
+
## Events
|
|
46
|
+
|
|
47
|
+
| Event | Detail | Description |
|
|
48
|
+
|-------|--------|-------------|
|
|
49
|
+
| `crop-change` | `{ rect: { x: number, y: number, width: number, height: number } }` | Fired when the crop area is moved or resized |
|
|
50
|
+
| `crop-complete` | `{ blob: Blob \| null }` | Fired after `crop()` produces the output blob |
|
|
51
|
+
|
|
52
|
+
## CSS Custom Properties
|
|
53
|
+
|
|
54
|
+
| Property | Description |
|
|
55
|
+
|----------|-------------|
|
|
56
|
+
| `--snice-color-background-element` | Container background color |
|
|
57
|
+
| `--snice-color-border` | Container border color |
|
|
58
|
+
| `--snice-border-radius-lg` | Container border radius |
|
|
59
|
+
|
|
60
|
+
## Examples
|
|
61
|
+
|
|
62
|
+
### Basic Image Cropping
|
|
63
|
+
|
|
64
|
+
Load an image and let the user crop it freely.
|
|
65
|
+
|
|
66
|
+
```html
|
|
67
|
+
<snice-cropper id="my-cropper" src="/photos/landscape.jpg"></snice-cropper>
|
|
68
|
+
|
|
69
|
+
<button onclick="handleCrop()">Crop Image</button>
|
|
70
|
+
|
|
71
|
+
<script type="module">
|
|
72
|
+
import 'snice/components/cropper/snice-cropper';
|
|
73
|
+
|
|
74
|
+
async function handleCrop() {
|
|
75
|
+
const cropper = document.getElementById('my-cropper');
|
|
76
|
+
const blob = await cropper.crop();
|
|
77
|
+
if (blob) {
|
|
78
|
+
const url = URL.createObjectURL(blob);
|
|
79
|
+
window.open(url); // Preview the cropped image
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
window.handleCrop = handleCrop;
|
|
83
|
+
</script>
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Square Crop with Aspect Ratio Lock
|
|
87
|
+
|
|
88
|
+
Use `aspect-ratio="1"` to enforce a square crop area, useful for profile photos.
|
|
89
|
+
|
|
90
|
+
```html
|
|
91
|
+
<snice-cropper
|
|
92
|
+
src="/photos/portrait.jpg"
|
|
93
|
+
aspect-ratio="1"
|
|
94
|
+
output-type="jpeg">
|
|
95
|
+
</snice-cropper>
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### 16:9 Crop for Video Thumbnails
|
|
99
|
+
|
|
100
|
+
Lock to a widescreen aspect ratio for video thumbnails or banner images.
|
|
101
|
+
|
|
102
|
+
```html
|
|
103
|
+
<snice-cropper
|
|
104
|
+
src="/photos/wide-shot.jpg"
|
|
105
|
+
aspect-ratio="1.777"
|
|
106
|
+
output-type="webp"
|
|
107
|
+
min-width="160"
|
|
108
|
+
min-height="90">
|
|
109
|
+
</snice-cropper>
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Rotation and Zoom Controls
|
|
113
|
+
|
|
114
|
+
Use the `rotate()` and `zoom()` methods for image adjustment.
|
|
115
|
+
|
|
116
|
+
```html
|
|
117
|
+
<snice-cropper id="editor" src="/photos/vacation.jpg" aspect-ratio="0"></snice-cropper>
|
|
118
|
+
|
|
119
|
+
<div style="display: flex; gap: 0.5rem; margin-top: 1rem;">
|
|
120
|
+
<button onclick="document.getElementById('editor').rotate(-90)">Rotate Left</button>
|
|
121
|
+
<button onclick="document.getElementById('editor').rotate(90)">Rotate Right</button>
|
|
122
|
+
<button onclick="document.getElementById('editor').zoom(1.5)">Zoom In</button>
|
|
123
|
+
<button onclick="document.getElementById('editor').zoom(0.8)">Zoom Out</button>
|
|
124
|
+
<button onclick="document.getElementById('editor').reset()">Reset</button>
|
|
125
|
+
</div>
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Listening to Crop Changes
|
|
129
|
+
|
|
130
|
+
Track the crop area position and dimensions in real time.
|
|
131
|
+
|
|
132
|
+
```html
|
|
133
|
+
<snice-cropper id="tracked-cropper" src="/photos/product.jpg"></snice-cropper>
|
|
134
|
+
<p id="crop-info">Move the crop area...</p>
|
|
135
|
+
|
|
136
|
+
<script type="module">
|
|
137
|
+
const cropper = document.getElementById('tracked-cropper');
|
|
138
|
+
const info = document.getElementById('crop-info');
|
|
139
|
+
|
|
140
|
+
cropper.addEventListener('crop-change', (e) => {
|
|
141
|
+
const { x, y, width, height } = e.detail.rect;
|
|
142
|
+
info.textContent = `Position: (${x}, ${y}) Size: ${width} x ${height}`;
|
|
143
|
+
});
|
|
144
|
+
</script>
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## Accessibility
|
|
148
|
+
|
|
149
|
+
- **Drag interaction**: The crop area can be repositioned by dragging, and resized via 8 corner and edge handles
|
|
150
|
+
- **Rule-of-thirds grid**: An overlay grid helps with composition alignment
|
|
151
|
+
- **Visual feedback**: A dark mask outside the crop area clearly indicates the cropped region
|
|
152
|
+
- **Aspect ratio enforcement**: When `aspectRatio` is set, resize handles maintain the locked ratio automatically
|