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,203 @@
|
|
|
1
|
+
[//]: # (AI: For a low-token version of this doc, use docs/ai/components/map.md instead)
|
|
2
|
+
|
|
3
|
+
# Map Component
|
|
4
|
+
|
|
5
|
+
`<snice-map>`
|
|
6
|
+
|
|
7
|
+
An interactive slippy map component using OpenStreetMap tiles. Supports markers with popups, drag panning, scroll zoom, and programmatic control over the viewport.
|
|
8
|
+
|
|
9
|
+
## Table of Contents
|
|
10
|
+
- [Basic Usage](#basic-usage)
|
|
11
|
+
- [Properties](#properties)
|
|
12
|
+
- [Methods](#methods)
|
|
13
|
+
- [Events](#events)
|
|
14
|
+
- [Types](#types)
|
|
15
|
+
- [Examples](#examples)
|
|
16
|
+
- [Accessibility](#accessibility)
|
|
17
|
+
|
|
18
|
+
## Basic Usage
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
import 'snice/components/map/snice-map';
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
```html
|
|
25
|
+
<snice-map zoom="13"></snice-map>
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Importing
|
|
29
|
+
|
|
30
|
+
**ESM (bundler)**
|
|
31
|
+
```typescript
|
|
32
|
+
import 'snice/components/map/snice-map';
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**CDN**
|
|
36
|
+
```html
|
|
37
|
+
<script src="snice-runtime.min.js"></script>
|
|
38
|
+
<script src="snice-map.min.js"></script>
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Properties
|
|
42
|
+
|
|
43
|
+
| Property | Type | Default | Description |
|
|
44
|
+
|----------|------|---------|-------------|
|
|
45
|
+
| `center` | `MapCenter` | `{ lat: 51.505, lng: -0.09 }` | Map center coordinates (set via JavaScript) |
|
|
46
|
+
| `zoom` | `number` | `13` | Current zoom level |
|
|
47
|
+
| `minZoom` (attr: `min-zoom`) | `number` | `1` | Minimum allowed zoom level |
|
|
48
|
+
| `maxZoom` (attr: `max-zoom`) | `number` | `18` | Maximum allowed zoom level |
|
|
49
|
+
| `markers` | `MapMarker[]` | `[]` | Array of marker data (set via JavaScript) |
|
|
50
|
+
| `tileUrl` (attr: `tile-url`) | `string` | `'https://tile.openstreetmap.org/{z}/{x}/{y}.png'` | Tile server URL template with `{x}`, `{y}`, `{z}` placeholders |
|
|
51
|
+
|
|
52
|
+
## Methods
|
|
53
|
+
|
|
54
|
+
| Method | Arguments | Description |
|
|
55
|
+
|--------|-----------|-------------|
|
|
56
|
+
| `setCenter()` | `lat: number, lng: number` | Pan the map to the specified coordinates |
|
|
57
|
+
| `setZoom()` | `zoom: number` | Set the zoom level (clamped to min/max range) |
|
|
58
|
+
| `addMarker()` | `marker: MapMarker` | Add a single marker to the map |
|
|
59
|
+
| `removeMarker()` | `id: string` | Remove a marker by its ID |
|
|
60
|
+
| `fitBounds()` | `markers?: MapMarker[]` | Auto-zoom and center to fit all markers. Defaults to all current markers if none specified |
|
|
61
|
+
|
|
62
|
+
## Events
|
|
63
|
+
|
|
64
|
+
| Event | Detail | Description |
|
|
65
|
+
|-------|--------|-------------|
|
|
66
|
+
| `map-click` | `{ lat: number; lng: number }` | Fired when the map is clicked (not on a marker) |
|
|
67
|
+
| `marker-click` | `{ marker: MapMarker }` | Fired when a marker is clicked. Also toggles the marker's popup |
|
|
68
|
+
| `map-move` | `{ center: MapCenter; zoom: number }` | Fired after a drag pan operation completes |
|
|
69
|
+
| `map-zoom` | `{ zoom: number }` | Fired when the zoom level changes |
|
|
70
|
+
|
|
71
|
+
## Types
|
|
72
|
+
|
|
73
|
+
### MapCenter
|
|
74
|
+
|
|
75
|
+
```typescript
|
|
76
|
+
interface MapCenter {
|
|
77
|
+
lat: number;
|
|
78
|
+
lng: number;
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### MapMarker
|
|
83
|
+
|
|
84
|
+
```typescript
|
|
85
|
+
interface MapMarker {
|
|
86
|
+
id: string; // Unique identifier
|
|
87
|
+
lat: number; // Latitude
|
|
88
|
+
lng: number; // Longitude
|
|
89
|
+
label?: string; // Marker label text
|
|
90
|
+
icon?: string; // Custom icon URL
|
|
91
|
+
popup?: string; // Popup text shown on marker click
|
|
92
|
+
}
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
## Examples
|
|
96
|
+
|
|
97
|
+
### Setting the Map Center
|
|
98
|
+
|
|
99
|
+
Set the `center` property via JavaScript to position the map on a specific location.
|
|
100
|
+
|
|
101
|
+
```html
|
|
102
|
+
<snice-map id="my-map" zoom="10"></snice-map>
|
|
103
|
+
|
|
104
|
+
<script type="module">
|
|
105
|
+
import 'snice/components/map/snice-map';
|
|
106
|
+
|
|
107
|
+
const map = document.getElementById('my-map');
|
|
108
|
+
map.center = { lat: 40.7128, lng: -74.006 };
|
|
109
|
+
</script>
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Adding Markers
|
|
113
|
+
|
|
114
|
+
Use the `markers` property to display pins on the map with optional labels and popups.
|
|
115
|
+
|
|
116
|
+
```html
|
|
117
|
+
<snice-map id="city-map" zoom="5"></snice-map>
|
|
118
|
+
|
|
119
|
+
<script type="module">
|
|
120
|
+
import 'snice/components/map/snice-map';
|
|
121
|
+
|
|
122
|
+
const map = document.getElementById('city-map');
|
|
123
|
+
map.center = { lat: 39.8283, lng: -98.5795 };
|
|
124
|
+
map.markers = [
|
|
125
|
+
{ id: 'nyc', lat: 40.7128, lng: -74.006, label: 'New York', popup: 'The Big Apple' },
|
|
126
|
+
{ id: 'chi', lat: 41.8781, lng: -87.6298, label: 'Chicago', popup: 'The Windy City' },
|
|
127
|
+
{ id: 'la', lat: 34.0522, lng: -118.2437, label: 'Los Angeles', popup: 'City of Angels' }
|
|
128
|
+
];
|
|
129
|
+
</script>
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Fit to Markers
|
|
133
|
+
|
|
134
|
+
Use `fitBounds()` to automatically zoom and center the map so all markers are visible.
|
|
135
|
+
|
|
136
|
+
```html
|
|
137
|
+
<snice-map id="auto-fit-map"></snice-map>
|
|
138
|
+
|
|
139
|
+
<script type="module">
|
|
140
|
+
import 'snice/components/map/snice-map';
|
|
141
|
+
|
|
142
|
+
const map = document.getElementById('auto-fit-map');
|
|
143
|
+
map.markers = [
|
|
144
|
+
{ id: 'paris', lat: 48.8566, lng: 2.3522, popup: 'Paris' },
|
|
145
|
+
{ id: 'london', lat: 51.5074, lng: -0.1278, popup: 'London' },
|
|
146
|
+
{ id: 'berlin', lat: 52.52, lng: 13.405, popup: 'Berlin' }
|
|
147
|
+
];
|
|
148
|
+
map.fitBounds();
|
|
149
|
+
</script>
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Handling Map Events
|
|
153
|
+
|
|
154
|
+
Listen for click and marker events to build interactive map features.
|
|
155
|
+
|
|
156
|
+
```html
|
|
157
|
+
<snice-map id="interactive-map" zoom="12"></snice-map>
|
|
158
|
+
<div id="map-output"></div>
|
|
159
|
+
|
|
160
|
+
<script type="module">
|
|
161
|
+
import 'snice/components/map/snice-map';
|
|
162
|
+
|
|
163
|
+
const map = document.getElementById('interactive-map');
|
|
164
|
+
const output = document.getElementById('map-output');
|
|
165
|
+
map.center = { lat: 51.505, lng: -0.09 };
|
|
166
|
+
|
|
167
|
+
map.addEventListener('map-click', (e) => {
|
|
168
|
+
const { lat, lng } = e.detail;
|
|
169
|
+
output.textContent = `Clicked at: ${lat.toFixed(4)}, ${lng.toFixed(4)}`;
|
|
170
|
+
|
|
171
|
+
// Add a marker at the clicked location
|
|
172
|
+
map.addMarker({
|
|
173
|
+
id: `pin-${Date.now()}`,
|
|
174
|
+
lat,
|
|
175
|
+
lng,
|
|
176
|
+
popup: `Lat: ${lat.toFixed(4)}, Lng: ${lng.toFixed(4)}`
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
|
|
180
|
+
map.addEventListener('marker-click', (e) => {
|
|
181
|
+
output.textContent = `Marker: ${e.detail.marker.label || e.detail.marker.id}`;
|
|
182
|
+
});
|
|
183
|
+
</script>
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
### Custom Tile Server
|
|
187
|
+
|
|
188
|
+
Use the `tile-url` attribute to load tiles from a different provider.
|
|
189
|
+
|
|
190
|
+
```html
|
|
191
|
+
<snice-map
|
|
192
|
+
zoom="10"
|
|
193
|
+
tile-url="https://tiles.example.com/{z}/{x}/{y}.png"
|
|
194
|
+
></snice-map>
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
## Accessibility
|
|
198
|
+
|
|
199
|
+
- The map supports mouse drag to pan and scroll wheel to zoom
|
|
200
|
+
- Zoom in/out buttons are provided in the top-right corner for keyboard and pointer access
|
|
201
|
+
- Markers are interactive and toggle popup display on click
|
|
202
|
+
- OpenStreetMap attribution is included automatically
|
|
203
|
+
- For keyboard-only users, the zoom buttons provide an accessible alternative to scroll-wheel zoom
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
[//]: # (AI: For a low-token version of this doc, use docs/ai/components/markdown.md instead)
|
|
2
|
+
|
|
3
|
+
# Markdown Component
|
|
4
|
+
|
|
5
|
+
`<snice-markdown>`
|
|
6
|
+
|
|
7
|
+
A lightweight GFM-compatible markdown renderer that converts markdown text to styled HTML inside shadow DOM. Includes built-in sanitization to prevent XSS attacks.
|
|
8
|
+
|
|
9
|
+
## Table of Contents
|
|
10
|
+
- [Basic Usage](#basic-usage)
|
|
11
|
+
- [Properties](#properties)
|
|
12
|
+
- [Events](#events)
|
|
13
|
+
- [CSS Custom Properties](#css-custom-properties)
|
|
14
|
+
- [Supported Syntax](#supported-syntax)
|
|
15
|
+
- [Examples](#examples)
|
|
16
|
+
- [Accessibility](#accessibility)
|
|
17
|
+
|
|
18
|
+
## Basic Usage
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
import 'snice/components/markdown/snice-markdown';
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
```html
|
|
25
|
+
<snice-markdown content="# Hello World"></snice-markdown>
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Importing
|
|
29
|
+
|
|
30
|
+
**ESM (bundler)**
|
|
31
|
+
```typescript
|
|
32
|
+
import 'snice/components/markdown/snice-markdown';
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**CDN**
|
|
36
|
+
```html
|
|
37
|
+
<script src="snice-runtime.min.js"></script>
|
|
38
|
+
<script src="snice-markdown.min.js"></script>
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Properties
|
|
42
|
+
|
|
43
|
+
| Property | Type | Default | Description |
|
|
44
|
+
|----------|------|---------|-------------|
|
|
45
|
+
| `content` | `string` | `''` | The markdown source text to render |
|
|
46
|
+
| `sanitize` | `boolean` | `true` | Whether to sanitize the HTML output to prevent XSS |
|
|
47
|
+
| `theme` | `'default' \| 'github'` | `'default'` | Visual theme for the rendered output |
|
|
48
|
+
|
|
49
|
+
## Events
|
|
50
|
+
|
|
51
|
+
| Event | Detail | Description |
|
|
52
|
+
|-------|--------|-------------|
|
|
53
|
+
| `markdown-render` | `{ html: string }` | Fired after the markdown has been rendered to HTML |
|
|
54
|
+
| `link-click` | `{ href: string; text: string }` | Fired when a link in the rendered content is clicked. Default navigation is prevented |
|
|
55
|
+
|
|
56
|
+
## CSS Custom Properties
|
|
57
|
+
|
|
58
|
+
| Property | Description |
|
|
59
|
+
|----------|-------------|
|
|
60
|
+
| `--snice-font-family` | Font family for rendered text |
|
|
61
|
+
| `--snice-color-text` | Primary text color |
|
|
62
|
+
| `--snice-color-primary` | Link color |
|
|
63
|
+
| `--snice-color-border` | Border color for headings, tables, code blocks, and blockquotes |
|
|
64
|
+
| `--snice-color-text-secondary` | Color for strikethrough text and blockquote text |
|
|
65
|
+
| `--snice-color-text-tertiary` | Color for h6 headings |
|
|
66
|
+
| `--snice-color-background-element` | Background color for code blocks, blockquotes, and alternating table rows |
|
|
67
|
+
| `--snice-line-height-normal` | Line height for body text |
|
|
68
|
+
| `--snice-font-size-md` | Base font size |
|
|
69
|
+
| `--snice-spacing-*` | Various spacing tokens for margins and padding |
|
|
70
|
+
| `--snice-border-radius-md` | Border radius for inline code |
|
|
71
|
+
| `--snice-border-radius-lg` | Border radius for code blocks |
|
|
72
|
+
| `--snice-font-weight-semibold` | Font weight for headings and bold text |
|
|
73
|
+
|
|
74
|
+
## Supported Syntax
|
|
75
|
+
|
|
76
|
+
The component supports GitHub Flavored Markdown (GFM):
|
|
77
|
+
|
|
78
|
+
- **Headings** (h1 through h6)
|
|
79
|
+
- **Inline formatting**: bold, italic, strikethrough
|
|
80
|
+
- **Lists**: ordered, unordered, and task lists with checkboxes
|
|
81
|
+
- **Code**: inline code and fenced code blocks with language class
|
|
82
|
+
- **Blockquotes**
|
|
83
|
+
- **Tables** (GFM pipe-delimited)
|
|
84
|
+
- **Images** and **links** (including autolinks)
|
|
85
|
+
- **Horizontal rules**
|
|
86
|
+
|
|
87
|
+
## Examples
|
|
88
|
+
|
|
89
|
+
### Rendering Static Content
|
|
90
|
+
|
|
91
|
+
Use the `content` attribute to render a markdown string.
|
|
92
|
+
|
|
93
|
+
```html
|
|
94
|
+
<snice-markdown
|
|
95
|
+
content="# Welcome
|
|
96
|
+
|
|
97
|
+
This is **bold** and *italic* text.
|
|
98
|
+
|
|
99
|
+
- Item one
|
|
100
|
+
- Item two
|
|
101
|
+
- Item three"
|
|
102
|
+
></snice-markdown>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Dynamic Content Updates
|
|
106
|
+
|
|
107
|
+
Set the `content` property via JavaScript to update the rendered markdown dynamically.
|
|
108
|
+
|
|
109
|
+
```html
|
|
110
|
+
<snice-markdown id="preview"></snice-markdown>
|
|
111
|
+
<textarea id="editor" rows="10" cols="60">## Write Markdown Here
|
|
112
|
+
|
|
113
|
+
Type some **markdown** and see it render in real time.</textarea>
|
|
114
|
+
|
|
115
|
+
<script type="module">
|
|
116
|
+
import 'snice/components/markdown/snice-markdown';
|
|
117
|
+
|
|
118
|
+
const preview = document.getElementById('preview');
|
|
119
|
+
const editor = document.getElementById('editor');
|
|
120
|
+
|
|
121
|
+
// Set initial content
|
|
122
|
+
preview.content = editor.value;
|
|
123
|
+
|
|
124
|
+
// Update on input
|
|
125
|
+
editor.addEventListener('input', () => {
|
|
126
|
+
preview.content = editor.value;
|
|
127
|
+
});
|
|
128
|
+
</script>
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
### GitHub Theme
|
|
132
|
+
|
|
133
|
+
Use the `theme="github"` attribute for GitHub-style markdown rendering.
|
|
134
|
+
|
|
135
|
+
```html
|
|
136
|
+
<snice-markdown
|
|
137
|
+
theme="github"
|
|
138
|
+
content="# GitHub Style
|
|
139
|
+
|
|
140
|
+
> This blockquote uses GitHub-style rendering.
|
|
141
|
+
|
|
142
|
+
| Feature | Supported |
|
|
143
|
+
|---------|-----------|
|
|
144
|
+
| Tables | Yes |
|
|
145
|
+
| GFM | Yes |
|
|
146
|
+
|
|
147
|
+
```javascript
|
|
148
|
+
console.log('Syntax highlighting');
|
|
149
|
+
```"
|
|
150
|
+
></snice-markdown>
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### Intercepting Link Clicks
|
|
154
|
+
|
|
155
|
+
Listen for the `link-click` event to handle navigation within your application instead of following the default link behavior.
|
|
156
|
+
|
|
157
|
+
```html
|
|
158
|
+
<snice-markdown
|
|
159
|
+
id="docs"
|
|
160
|
+
content="Check out [the documentation](/docs) or visit [our website](https://example.com)."
|
|
161
|
+
></snice-markdown>
|
|
162
|
+
|
|
163
|
+
<script type="module">
|
|
164
|
+
import 'snice/components/markdown/snice-markdown';
|
|
165
|
+
|
|
166
|
+
const md = document.getElementById('docs');
|
|
167
|
+
|
|
168
|
+
md.addEventListener('link-click', (e) => {
|
|
169
|
+
const { href, text } = e.detail;
|
|
170
|
+
console.log(`Link clicked: "${text}" -> ${href}`);
|
|
171
|
+
|
|
172
|
+
// Handle internal navigation
|
|
173
|
+
if (href.startsWith('/')) {
|
|
174
|
+
window.history.pushState({}, '', href);
|
|
175
|
+
} else {
|
|
176
|
+
window.open(href, '_blank');
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
</script>
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### Code Blocks and Tables
|
|
183
|
+
|
|
184
|
+
Render markdown that includes fenced code blocks and GFM tables.
|
|
185
|
+
|
|
186
|
+
```html
|
|
187
|
+
<snice-markdown
|
|
188
|
+
content="## API Response
|
|
189
|
+
|
|
190
|
+
The endpoint returns the following JSON:
|
|
191
|
+
|
|
192
|
+
```json
|
|
193
|
+
{
|
|
194
|
+
"id": 1,
|
|
195
|
+
"name": "Example",
|
|
196
|
+
"active": true
|
|
197
|
+
}
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### Status Codes
|
|
201
|
+
|
|
202
|
+
| Code | Meaning |
|
|
203
|
+
|------|---------|
|
|
204
|
+
| 200 | Success |
|
|
205
|
+
| 404 | Not found |
|
|
206
|
+
| 500 | Server error |
|
|
207
|
+
|
|
208
|
+
- [x] GET endpoint
|
|
209
|
+
- [x] POST endpoint
|
|
210
|
+
- [ ] DELETE endpoint"
|
|
211
|
+
></snice-markdown>
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
## Accessibility
|
|
215
|
+
|
|
216
|
+
- Rendered HTML preserves semantic heading hierarchy (h1-h6) for screen readers
|
|
217
|
+
- Links within rendered content are fully keyboard accessible
|
|
218
|
+
- Task list checkboxes are rendered as visual indicators
|
|
219
|
+
- Tables include proper `<thead>` and `<tbody>` structure for assistive technology
|
|
220
|
+
- The `link-click` event allows developers to implement custom navigation while maintaining accessibility
|
|
@@ -1,34 +1,37 @@
|
|
|
1
|
-
#
|
|
1
|
+
[//]: # (AI: For a low-token version of this doc, use docs/ai/components/masonry.md instead)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
# Masonry
|
|
4
|
+
`<snice-masonry>`
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
- [Basic Usage](#basic-usage)
|
|
7
|
-
- [Properties](#properties)
|
|
8
|
-
- [Examples](#examples)
|
|
6
|
+
A Pinterest-style layout that arranges items in columns with variable heights using CSS columns.
|
|
9
7
|
|
|
10
8
|
## Basic Usage
|
|
11
9
|
|
|
10
|
+
```typescript
|
|
11
|
+
import 'snice/components/masonry/snice-masonry';
|
|
12
|
+
```
|
|
13
|
+
|
|
12
14
|
```html
|
|
13
15
|
<snice-masonry columns="3" gap="1rem">
|
|
14
|
-
<div
|
|
15
|
-
<div
|
|
16
|
-
<div
|
|
17
|
-
<div
|
|
16
|
+
<div>Card 1</div>
|
|
17
|
+
<div>Card 2</div>
|
|
18
|
+
<div>Card 3</div>
|
|
19
|
+
<div>Card 4</div>
|
|
18
20
|
</snice-masonry>
|
|
19
21
|
```
|
|
20
22
|
|
|
23
|
+
## Importing
|
|
24
|
+
|
|
25
|
+
**ESM (bundler)**
|
|
21
26
|
```typescript
|
|
22
27
|
import 'snice/components/masonry/snice-masonry';
|
|
23
28
|
```
|
|
24
29
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
| `gap` | `string` | `'1rem'` | Gap between items (any CSS length value) |
|
|
31
|
-
| `minColumnWidth` | `string` | `'250px'` | Minimum column width when `columns` is `0` |
|
|
30
|
+
**CDN**
|
|
31
|
+
```html
|
|
32
|
+
<script src="snice-runtime.min.js"></script>
|
|
33
|
+
<script src="snice-masonry.min.js"></script>
|
|
34
|
+
```
|
|
32
35
|
|
|
33
36
|
## Examples
|
|
34
37
|
|
|
@@ -36,41 +39,39 @@ import 'snice/components/masonry/snice-masonry';
|
|
|
36
39
|
|
|
37
40
|
```html
|
|
38
41
|
<snice-masonry columns="3" gap="1rem">
|
|
39
|
-
<div
|
|
40
|
-
<div
|
|
41
|
-
<div
|
|
42
|
-
<div
|
|
43
|
-
<div class="card" style="height: 220px;">Card 5</div>
|
|
44
|
-
<div class="card" style="height: 160px;">Card 6</div>
|
|
42
|
+
<div style="height:200px">Card 1</div>
|
|
43
|
+
<div style="height:150px">Card 2</div>
|
|
44
|
+
<div style="height:250px">Card 3</div>
|
|
45
|
+
<div style="height:180px">Card 4</div>
|
|
45
46
|
</snice-masonry>
|
|
46
47
|
```
|
|
47
48
|
|
|
48
49
|
### Auto-Responsive Columns
|
|
49
50
|
|
|
50
|
-
|
|
51
|
+
Set `columns` to `0` to auto-calculate column count based on `min-column-width`.
|
|
51
52
|
|
|
52
53
|
```html
|
|
53
54
|
<snice-masonry columns="0" min-column-width="300px" gap="1rem">
|
|
54
|
-
<div
|
|
55
|
-
<div
|
|
56
|
-
<div
|
|
57
|
-
<div
|
|
55
|
+
<div>Card 1</div>
|
|
56
|
+
<div>Card 2</div>
|
|
57
|
+
<div>Card 3</div>
|
|
58
|
+
<div>Card 4</div>
|
|
58
59
|
</snice-masonry>
|
|
59
60
|
```
|
|
60
61
|
|
|
61
|
-
###
|
|
62
|
+
### Gap Sizes
|
|
63
|
+
|
|
64
|
+
Use the `gap` attribute with any CSS length value.
|
|
62
65
|
|
|
63
66
|
```html
|
|
64
|
-
<!-- Tight spacing -->
|
|
65
67
|
<snice-masonry columns="4" gap="0.5rem">
|
|
66
|
-
<div
|
|
67
|
-
<div
|
|
68
|
+
<div>Tight spacing</div>
|
|
69
|
+
<div>Between cards</div>
|
|
68
70
|
</snice-masonry>
|
|
69
71
|
|
|
70
|
-
<!-- Wide spacing -->
|
|
71
72
|
<snice-masonry columns="2" gap="2rem">
|
|
72
|
-
<div
|
|
73
|
-
<div
|
|
73
|
+
<div>Wide spacing</div>
|
|
74
|
+
<div>Between cards</div>
|
|
74
75
|
</snice-masonry>
|
|
75
76
|
```
|
|
76
77
|
|
|
@@ -78,91 +79,45 @@ When `columns` is set to `0`, the layout automatically calculates column count b
|
|
|
78
79
|
|
|
79
80
|
```html
|
|
80
81
|
<snice-masonry columns="3" gap="0.75rem">
|
|
81
|
-
<img src="photo1.jpg" alt="
|
|
82
|
-
<img src="photo2.jpg" alt="
|
|
83
|
-
<img src="photo3.jpg" alt="
|
|
84
|
-
<img src="photo4.jpg" alt="
|
|
85
|
-
<img src="photo5.jpg" alt="Photo 5" style="width: 100%; border-radius: 8px;">
|
|
86
|
-
</snice-masonry>
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### Card Layout
|
|
90
|
-
|
|
91
|
-
```html
|
|
92
|
-
<style>
|
|
93
|
-
.masonry-card {
|
|
94
|
-
padding: 1rem;
|
|
95
|
-
background: white;
|
|
96
|
-
border: 1px solid #e5e7eb;
|
|
97
|
-
border-radius: 8px;
|
|
98
|
-
}
|
|
99
|
-
</style>
|
|
100
|
-
|
|
101
|
-
<snice-masonry columns="3" gap="1rem">
|
|
102
|
-
<div class="masonry-card">
|
|
103
|
-
<h3>Short Card</h3>
|
|
104
|
-
<p>Brief content.</p>
|
|
105
|
-
</div>
|
|
106
|
-
<div class="masonry-card">
|
|
107
|
-
<h3>Tall Card</h3>
|
|
108
|
-
<p>This card has more content to demonstrate variable heights in the masonry layout.</p>
|
|
109
|
-
<p>Additional paragraph for height.</p>
|
|
110
|
-
</div>
|
|
111
|
-
<div class="masonry-card">
|
|
112
|
-
<h3>Medium Card</h3>
|
|
113
|
-
<p>Some content here.</p>
|
|
114
|
-
</div>
|
|
115
|
-
<div class="masonry-card">
|
|
116
|
-
<h3>Another Card</h3>
|
|
117
|
-
<p>More content to fill the grid.</p>
|
|
118
|
-
</div>
|
|
82
|
+
<img src="photo1.jpg" alt="Landscape" style="width:100%;border-radius:8px">
|
|
83
|
+
<img src="photo2.jpg" alt="Portrait" style="width:100%;border-radius:8px">
|
|
84
|
+
<img src="photo3.jpg" alt="Abstract" style="width:100%;border-radius:8px">
|
|
85
|
+
<img src="photo4.jpg" alt="Nature" style="width:100%;border-radius:8px">
|
|
119
86
|
</snice-masonry>
|
|
120
87
|
```
|
|
121
88
|
|
|
122
89
|
### Dynamic Content
|
|
123
90
|
|
|
124
91
|
```html
|
|
125
|
-
<snice-masonry id="
|
|
126
|
-
</
|
|
127
|
-
|
|
128
|
-
<button onclick="addCard()">Add Card</button>
|
|
92
|
+
<snice-masonry id="grid" columns="3" gap="1rem"></snice-masonry>
|
|
93
|
+
<button id="addBtn">Add Card</button>
|
|
129
94
|
|
|
130
95
|
<script type="module">
|
|
131
|
-
|
|
96
|
+
import 'snice/components/masonry/snice-masonry';
|
|
97
|
+
|
|
98
|
+
const masonry = document.getElementById('grid');
|
|
132
99
|
let count = 0;
|
|
133
100
|
|
|
134
|
-
|
|
101
|
+
document.getElementById('addBtn').addEventListener('click', () => {
|
|
135
102
|
count++;
|
|
136
103
|
const card = document.createElement('div');
|
|
137
|
-
card.className = 'masonry-card';
|
|
138
104
|
card.style.height = `${100 + Math.random() * 200}px`;
|
|
139
105
|
card.textContent = `Card ${count}`;
|
|
140
106
|
masonry.appendChild(card);
|
|
141
|
-
};
|
|
107
|
+
});
|
|
142
108
|
</script>
|
|
143
109
|
```
|
|
144
110
|
|
|
145
|
-
##
|
|
111
|
+
## Slots
|
|
146
112
|
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
113
|
+
| Name | Description |
|
|
114
|
+
|------|-------------|
|
|
115
|
+
| (default) | Items to arrange in the masonry layout |
|
|
150
116
|
|
|
151
|
-
##
|
|
152
|
-
|
|
153
|
-
- Modern browsers (Chrome, Firefox, Safari, Edge)
|
|
154
|
-
- Requires Custom Elements v1 and Shadow DOM support
|
|
155
|
-
- CSS `column-count` and `column-gap` are widely supported
|
|
156
|
-
|
|
157
|
-
## Best Practices
|
|
158
|
-
|
|
159
|
-
1. **Use variable heights**: Masonry works best when items have different heights
|
|
160
|
-
2. **Set appropriate column count**: 3-4 columns work well for most layouts
|
|
161
|
-
3. **Use auto columns for responsive**: Set `columns="0"` with `min-column-width` for adaptive layouts
|
|
162
|
-
4. **Keep items lightweight**: Avoid heavy content that slows rendering
|
|
163
|
-
5. **Add border-radius and shadows**: Visual cards look great in masonry layouts
|
|
164
|
-
6. **Test with different content**: Ensure layout works with varying item sizes
|
|
165
|
-
|
|
166
|
-
## How It Works
|
|
117
|
+
## Properties
|
|
167
118
|
|
|
168
|
-
|
|
119
|
+
| Property | Type | Default | Description |
|
|
120
|
+
|----------|------|---------|-------------|
|
|
121
|
+
| `columns` | `number` | `3` | Number of columns (0 for auto based on `minColumnWidth`) |
|
|
122
|
+
| `gap` | `string` | `'1rem'` | Gap between items (any CSS length) |
|
|
123
|
+
| `minColumnWidth` (attr: `min-column-width`) | `string` | `'250px'` | Minimum column width when `columns` is 0 |
|