@winkintel/bootstrap-svelte 0.0.1
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/LICENSE.md +202 -0
- package/README.md +221 -0
- package/dist/Accordion/accordion-body.svelte +8 -0
- package/dist/Accordion/accordion-body.svelte.d.ts +4 -0
- package/dist/Accordion/accordion-button.svelte +25 -0
- package/dist/Accordion/accordion-button.svelte.d.ts +4 -0
- package/dist/Accordion/accordion-collapse.svelte +18 -0
- package/dist/Accordion/accordion-collapse.svelte.d.ts +4 -0
- package/dist/Accordion/accordion-header.svelte +8 -0
- package/dist/Accordion/accordion-header.svelte.d.ts +4 -0
- package/dist/Accordion/accordion-item.svelte +33 -0
- package/dist/Accordion/accordion-item.svelte.d.ts +4 -0
- package/dist/Accordion/accordion.svelte +65 -0
- package/dist/Accordion/accordion.svelte.d.ts +51 -0
- package/dist/Accordion/accordion.svelte.js +139 -0
- package/dist/Accordion/composition.d.ts +7 -0
- package/dist/Accordion/composition.js +6 -0
- package/dist/Accordion/index.d.ts +1 -0
- package/dist/Accordion/index.js +1 -0
- package/dist/Accordion/types.d.ts +15 -0
- package/dist/Accordion/types.js +1 -0
- package/dist/Alert/alert.svelte +73 -0
- package/dist/Alert/alert.svelte.d.ts +46 -0
- package/dist/Alert/index.d.ts +2 -0
- package/dist/Alert/index.js +2 -0
- package/dist/Alert/types.d.ts +11 -0
- package/dist/Alert/types.js +1 -0
- package/dist/Badge/badge.svelte +42 -0
- package/dist/Badge/badge.svelte.d.ts +36 -0
- package/dist/Badge/index.d.ts +2 -0
- package/dist/Badge/index.js +2 -0
- package/dist/Badge/types.d.ts +28 -0
- package/dist/Badge/types.js +24 -0
- package/dist/Breadcrumb/breadcrumb-item.svelte +66 -0
- package/dist/Breadcrumb/breadcrumb-item.svelte.d.ts +30 -0
- package/dist/Breadcrumb/breadcrumb.svelte +57 -0
- package/dist/Breadcrumb/breadcrumb.svelte.d.ts +34 -0
- package/dist/Breadcrumb/breadcrumb.svelte.js +41 -0
- package/dist/Breadcrumb/composition.d.ts +3 -0
- package/dist/Breadcrumb/composition.js +2 -0
- package/dist/Breadcrumb/index.d.ts +1 -0
- package/dist/Breadcrumb/index.js +1 -0
- package/dist/Breadcrumb/types.d.ts +9 -0
- package/dist/Breadcrumb/types.js +1 -0
- package/dist/BreakpointListener/breakpoint-listener.svelte +54 -0
- package/dist/BreakpointListener/breakpoint-listener.svelte.d.ts +4 -0
- package/dist/BreakpointListener/index.d.ts +2 -0
- package/dist/BreakpointListener/index.js +2 -0
- package/dist/BreakpointListener/types.d.ts +30 -0
- package/dist/BreakpointListener/types.js +20 -0
- package/dist/Button/button.svelte +87 -0
- package/dist/Button/button.svelte.d.ts +59 -0
- package/dist/Button/index.d.ts +2 -0
- package/dist/Button/index.js +2 -0
- package/dist/Button/types.d.ts +26 -0
- package/dist/Button/types.js +1 -0
- package/dist/ButtonGroup/button-check.svelte +70 -0
- package/dist/ButtonGroup/button-check.svelte.d.ts +35 -0
- package/dist/ButtonGroup/button-group.svelte +51 -0
- package/dist/ButtonGroup/button-group.svelte.d.ts +43 -0
- package/dist/ButtonGroup/button-toolbar.svelte +36 -0
- package/dist/ButtonGroup/button-toolbar.svelte.d.ts +28 -0
- package/dist/ButtonGroup/index.d.ts +4 -0
- package/dist/ButtonGroup/index.js +4 -0
- package/dist/ButtonGroup/types.d.ts +21 -0
- package/dist/ButtonGroup/types.js +1 -0
- package/dist/Card/card-body.svelte +10 -0
- package/dist/Card/card-body.svelte.d.ts +3 -0
- package/dist/Card/card-footer.svelte +10 -0
- package/dist/Card/card-footer.svelte.d.ts +3 -0
- package/dist/Card/card-group.svelte +10 -0
- package/dist/Card/card-group.svelte.d.ts +3 -0
- package/dist/Card/card-header.svelte +10 -0
- package/dist/Card/card-header.svelte.d.ts +3 -0
- package/dist/Card/card-img-overlay.svelte +10 -0
- package/dist/Card/card-img-overlay.svelte.d.ts +3 -0
- package/dist/Card/card-img.svelte +12 -0
- package/dist/Card/card-img.svelte.d.ts +4 -0
- package/dist/Card/card-link.svelte +10 -0
- package/dist/Card/card-link.svelte.d.ts +4 -0
- package/dist/Card/card-subtitle.svelte +11 -0
- package/dist/Card/card-subtitle.svelte.d.ts +4 -0
- package/dist/Card/card-text.svelte +10 -0
- package/dist/Card/card-text.svelte.d.ts +3 -0
- package/dist/Card/card-title.svelte +11 -0
- package/dist/Card/card-title.svelte.d.ts +4 -0
- package/dist/Card/card.svelte +45 -0
- package/dist/Card/card.svelte.d.ts +38 -0
- package/dist/Card/composition.d.ts +12 -0
- package/dist/Card/composition.js +11 -0
- package/dist/Card/index.d.ts +1 -0
- package/dist/Card/index.js +1 -0
- package/dist/Card/types.d.ts +22 -0
- package/dist/Card/types.js +1 -0
- package/dist/Carousel/carousel-caption.svelte +30 -0
- package/dist/Carousel/carousel-caption.svelte.d.ts +22 -0
- package/dist/Carousel/carousel-control-next.svelte +35 -0
- package/dist/Carousel/carousel-control-next.svelte.d.ts +21 -0
- package/dist/Carousel/carousel-control-prev.svelte +35 -0
- package/dist/Carousel/carousel-control-prev.svelte.d.ts +21 -0
- package/dist/Carousel/carousel-indicator-button.svelte +41 -0
- package/dist/Carousel/carousel-indicator-button.svelte.d.ts +21 -0
- package/dist/Carousel/carousel-indicators.svelte +33 -0
- package/dist/Carousel/carousel-indicators.svelte.d.ts +25 -0
- package/dist/Carousel/carousel-inner.svelte +30 -0
- package/dist/Carousel/carousel-inner.svelte.d.ts +22 -0
- package/dist/Carousel/carousel-item.svelte +138 -0
- package/dist/Carousel/carousel-item.svelte.d.ts +28 -0
- package/dist/Carousel/carousel.svelte +140 -0
- package/dist/Carousel/carousel.svelte.d.ts +46 -0
- package/dist/Carousel/carousel.svelte.js +551 -0
- package/dist/Carousel/composition.d.ts +9 -0
- package/dist/Carousel/composition.js +8 -0
- package/dist/Carousel/index.d.ts +1 -0
- package/dist/Carousel/index.js +1 -0
- package/dist/Carousel/types.d.ts +74 -0
- package/dist/Carousel/types.js +1 -0
- package/dist/CloseButton/close-button.svelte +32 -0
- package/dist/CloseButton/close-button.svelte.d.ts +29 -0
- package/dist/CloseButton/index.d.ts +2 -0
- package/dist/CloseButton/index.js +2 -0
- package/dist/CloseButton/types.d.ts +6 -0
- package/dist/CloseButton/types.js +1 -0
- package/dist/Col/col.svelte +133 -0
- package/dist/Col/col.svelte.d.ts +60 -0
- package/dist/Col/index.d.ts +2 -0
- package/dist/Col/index.js +2 -0
- package/dist/Col/types.d.ts +30 -0
- package/dist/Col/types.js +1 -0
- package/dist/Collapse/collapse-aria-attachment.svelte.d.ts +3 -0
- package/dist/Collapse/collapse-aria-attachment.svelte.js +32 -0
- package/dist/Collapse/collapse.svelte +63 -0
- package/dist/Collapse/collapse.svelte.d.ts +45 -0
- package/dist/Collapse/index.d.ts +3 -0
- package/dist/Collapse/index.js +3 -0
- package/dist/Collapse/transition.d.ts +5 -0
- package/dist/Collapse/transition.js +75 -0
- package/dist/Collapse/types.d.ts +18 -0
- package/dist/Collapse/types.js +1 -0
- package/dist/Container/container.svelte +46 -0
- package/dist/Container/container.svelte.d.ts +36 -0
- package/dist/Container/index.d.ts +2 -0
- package/dist/Container/index.js +2 -0
- package/dist/Container/types.d.ts +8 -0
- package/dist/Container/types.js +1 -0
- package/dist/Dropdown/composition.d.ts +8 -0
- package/dist/Dropdown/composition.js +7 -0
- package/dist/Dropdown/dropdown-divider.svelte +23 -0
- package/dist/Dropdown/dropdown-divider.svelte.d.ts +18 -0
- package/dist/Dropdown/dropdown-header.svelte +27 -0
- package/dist/Dropdown/dropdown-header.svelte.d.ts +19 -0
- package/dist/Dropdown/dropdown-item-text.svelte +26 -0
- package/dist/Dropdown/dropdown-item-text.svelte.d.ts +18 -0
- package/dist/Dropdown/dropdown-item.svelte +86 -0
- package/dist/Dropdown/dropdown-item.svelte.d.ts +24 -0
- package/dist/Dropdown/dropdown-menu.svelte +82 -0
- package/dist/Dropdown/dropdown-menu.svelte.d.ts +27 -0
- package/dist/Dropdown/dropdown-toggle.svelte +67 -0
- package/dist/Dropdown/dropdown-toggle.svelte.d.ts +24 -0
- package/dist/Dropdown/dropdown.svelte +106 -0
- package/dist/Dropdown/dropdown.svelte.d.ts +34 -0
- package/dist/Dropdown/dropdown.svelte.js +435 -0
- package/dist/Dropdown/index.d.ts +1 -0
- package/dist/Dropdown/index.js +1 -0
- package/dist/Dropdown/types.d.ts +47 -0
- package/dist/Dropdown/types.js +1 -0
- package/dist/Form/composition.d.ts +34 -0
- package/dist/Form/composition.js +33 -0
- package/dist/Form/form-check-input.svelte +92 -0
- package/dist/Form/form-check-input.svelte.d.ts +48 -0
- package/dist/Form/form-check-label.svelte +26 -0
- package/dist/Form/form-check-label.svelte.d.ts +21 -0
- package/dist/Form/form-check.svelte +55 -0
- package/dist/Form/form-check.svelte.d.ts +50 -0
- package/dist/Form/form-color-input.svelte +54 -0
- package/dist/Form/form-color-input.svelte.d.ts +30 -0
- package/dist/Form/form-date-input.svelte +64 -0
- package/dist/Form/form-date-input.svelte.d.ts +46 -0
- package/dist/Form/form-datetime-local-input.svelte +60 -0
- package/dist/Form/form-datetime-local-input.svelte.d.ts +45 -0
- package/dist/Form/form-email-input.svelte +64 -0
- package/dist/Form/form-email-input.svelte.d.ts +46 -0
- package/dist/Form/form-feedback.svelte +36 -0
- package/dist/Form/form-feedback.svelte.d.ts +26 -0
- package/dist/Form/form-file-input.svelte +43 -0
- package/dist/Form/form-file-input.svelte.d.ts +30 -0
- package/dist/Form/form-floating.svelte +44 -0
- package/dist/Form/form-floating.svelte.d.ts +38 -0
- package/dist/Form/form-helper-text.svelte +35 -0
- package/dist/Form/form-helper-text.svelte.d.ts +29 -0
- package/dist/Form/form-hidden-input.svelte +18 -0
- package/dist/Form/form-hidden-input.svelte.d.ts +16 -0
- package/dist/Form/form-image-input.svelte +30 -0
- package/dist/Form/form-image-input.svelte.d.ts +26 -0
- package/dist/Form/form-input-group-text.svelte +47 -0
- package/dist/Form/form-input-group-text.svelte.d.ts +42 -0
- package/dist/Form/form-input-group.svelte +52 -0
- package/dist/Form/form-input-group.svelte.d.ts +43 -0
- package/dist/Form/form-input-label.svelte +33 -0
- package/dist/Form/form-input-label.svelte.d.ts +28 -0
- package/dist/Form/form-month-input.svelte +63 -0
- package/dist/Form/form-month-input.svelte.d.ts +48 -0
- package/dist/Form/form-number-input.svelte +62 -0
- package/dist/Form/form-number-input.svelte.d.ts +47 -0
- package/dist/Form/form-password-input.svelte +60 -0
- package/dist/Form/form-password-input.svelte.d.ts +41 -0
- package/dist/Form/form-radio-input.svelte +47 -0
- package/dist/Form/form-radio-input.svelte.d.ts +41 -0
- package/dist/Form/form-radio-label.svelte +41 -0
- package/dist/Form/form-radio-label.svelte.d.ts +35 -0
- package/dist/Form/form-range-input.svelte +43 -0
- package/dist/Form/form-range-input.svelte.d.ts +39 -0
- package/dist/Form/form-search-input.svelte +63 -0
- package/dist/Form/form-search-input.svelte.d.ts +45 -0
- package/dist/Form/form-select.svelte +85 -0
- package/dist/Form/form-select.svelte.d.ts +59 -0
- package/dist/Form/form-switch-input.svelte +54 -0
- package/dist/Form/form-switch-input.svelte.d.ts +41 -0
- package/dist/Form/form-switch-label.svelte +25 -0
- package/dist/Form/form-switch-label.svelte.d.ts +19 -0
- package/dist/Form/form-telephone-input.svelte +129 -0
- package/dist/Form/form-telephone-input.svelte.d.ts +55 -0
- package/dist/Form/form-text-area.svelte +57 -0
- package/dist/Form/form-text-area.svelte.d.ts +38 -0
- package/dist/Form/form-text-input.svelte +55 -0
- package/dist/Form/form-text-input.svelte.d.ts +37 -0
- package/dist/Form/form-time-input.svelte +62 -0
- package/dist/Form/form-time-input.svelte.d.ts +47 -0
- package/dist/Form/form-url-input.svelte +60 -0
- package/dist/Form/form-url-input.svelte.d.ts +45 -0
- package/dist/Form/form-week-Input.svelte +62 -0
- package/dist/Form/form-week-Input.svelte.d.ts +47 -0
- package/dist/Form/form.svelte +37 -0
- package/dist/Form/form.svelte.d.ts +23 -0
- package/dist/Form/index.d.ts +1 -0
- package/dist/Form/index.js +1 -0
- package/dist/Form/types.d.ts +168 -0
- package/dist/Form/types.js +1 -0
- package/dist/ListGroup/composition.d.ts +4 -0
- package/dist/ListGroup/composition.js +3 -0
- package/dist/ListGroup/index.d.ts +1 -0
- package/dist/ListGroup/index.js +1 -0
- package/dist/ListGroup/list-group-item-action.svelte +50 -0
- package/dist/ListGroup/list-group-item-action.svelte.d.ts +23 -0
- package/dist/ListGroup/list-group-item.svelte +58 -0
- package/dist/ListGroup/list-group-item.svelte.d.ts +51 -0
- package/dist/ListGroup/list-group.svelte +83 -0
- package/dist/ListGroup/list-group.svelte.d.ts +68 -0
- package/dist/ListGroup/types.d.ts +20 -0
- package/dist/ListGroup/types.js +1 -0
- package/dist/Modal/composition.d.ts +8 -0
- package/dist/Modal/composition.js +7 -0
- package/dist/Modal/index.d.ts +1 -0
- package/dist/Modal/index.js +1 -0
- package/dist/Modal/modal-body.svelte +27 -0
- package/dist/Modal/modal-body.svelte.d.ts +19 -0
- package/dist/Modal/modal-content.svelte +35 -0
- package/dist/Modal/modal-content.svelte.d.ts +27 -0
- package/dist/Modal/modal-dialog.svelte +65 -0
- package/dist/Modal/modal-dialog.svelte.d.ts +52 -0
- package/dist/Modal/modal-footer.svelte +28 -0
- package/dist/Modal/modal-footer.svelte.d.ts +20 -0
- package/dist/Modal/modal-header.svelte +50 -0
- package/dist/Modal/modal-header.svelte.d.ts +29 -0
- package/dist/Modal/modal-title.svelte +45 -0
- package/dist/Modal/modal-title.svelte.d.ts +26 -0
- package/dist/Modal/modal.svelte +233 -0
- package/dist/Modal/modal.svelte.d.ts +52 -0
- package/dist/Modal/modal.svelte.js +86 -0
- package/dist/Modal/types.d.ts +31 -0
- package/dist/Modal/types.js +1 -0
- package/dist/Nav/composition.d.ts +4 -0
- package/dist/Nav/composition.js +3 -0
- package/dist/Nav/index.d.ts +1 -0
- package/dist/Nav/index.js +1 -0
- package/dist/Nav/nav-item.svelte +25 -0
- package/dist/Nav/nav-item.svelte.d.ts +18 -0
- package/dist/Nav/nav-link.svelte +77 -0
- package/dist/Nav/nav-link.svelte.d.ts +22 -0
- package/dist/Nav/nav.svelte +93 -0
- package/dist/Nav/nav.svelte.d.ts +56 -0
- package/dist/Nav/types.d.ts +26 -0
- package/dist/Nav/types.js +1 -0
- package/dist/Navbar/composition.d.ts +8 -0
- package/dist/Navbar/composition.js +7 -0
- package/dist/Navbar/index.d.ts +1 -0
- package/dist/Navbar/index.js +1 -0
- package/dist/Navbar/navbar-brand.svelte +55 -0
- package/dist/Navbar/navbar-brand.svelte.d.ts +48 -0
- package/dist/Navbar/navbar-collapse.svelte +76 -0
- package/dist/Navbar/navbar-collapse.svelte.d.ts +55 -0
- package/dist/Navbar/navbar-nav.svelte +66 -0
- package/dist/Navbar/navbar-nav.svelte.d.ts +53 -0
- package/dist/Navbar/navbar-text.svelte +36 -0
- package/dist/Navbar/navbar-text.svelte.d.ts +28 -0
- package/dist/Navbar/navbar-toggler-icon.svelte +34 -0
- package/dist/Navbar/navbar-toggler-icon.svelte.d.ts +28 -0
- package/dist/Navbar/navbar-toggler.svelte +75 -0
- package/dist/Navbar/navbar-toggler.svelte.d.ts +48 -0
- package/dist/Navbar/navbar.svelte +116 -0
- package/dist/Navbar/navbar.svelte.d.ts +88 -0
- package/dist/Navbar/types.d.ts +23 -0
- package/dist/Navbar/types.js +1 -0
- package/dist/Offcanvas/composition.d.ts +5 -0
- package/dist/Offcanvas/composition.js +4 -0
- package/dist/Offcanvas/index.d.ts +1 -0
- package/dist/Offcanvas/index.js +1 -0
- package/dist/Offcanvas/offcanvas-body.svelte +25 -0
- package/dist/Offcanvas/offcanvas-body.svelte.d.ts +19 -0
- package/dist/Offcanvas/offcanvas-header.svelte +39 -0
- package/dist/Offcanvas/offcanvas-header.svelte.d.ts +20 -0
- package/dist/Offcanvas/offcanvas-title.svelte +31 -0
- package/dist/Offcanvas/offcanvas-title.svelte.d.ts +25 -0
- package/dist/Offcanvas/offcanvas.svelte +220 -0
- package/dist/Offcanvas/offcanvas.svelte.d.ts +61 -0
- package/dist/Offcanvas/types.d.ts +25 -0
- package/dist/Offcanvas/types.js +1 -0
- package/dist/Pagination/composition.d.ts +4 -0
- package/dist/Pagination/composition.js +3 -0
- package/dist/Pagination/index.d.ts +1 -0
- package/dist/Pagination/index.js +1 -0
- package/dist/Pagination/pagination-item.svelte +81 -0
- package/dist/Pagination/pagination-item.svelte.d.ts +35 -0
- package/dist/Pagination/pagination-link.svelte +45 -0
- package/dist/Pagination/pagination-link.svelte.d.ts +25 -0
- package/dist/Pagination/pagination.svelte +60 -0
- package/dist/Pagination/pagination.svelte.d.ts +37 -0
- package/dist/Pagination/pagination.svelte.js +117 -0
- package/dist/Pagination/types.d.ts +19 -0
- package/dist/Pagination/types.js +1 -0
- package/dist/Placeholder/composition.d.ts +3 -0
- package/dist/Placeholder/composition.js +2 -0
- package/dist/Placeholder/index.d.ts +1 -0
- package/dist/Placeholder/index.js +1 -0
- package/dist/Placeholder/placeholder-item.svelte +53 -0
- package/dist/Placeholder/placeholder-item.svelte.d.ts +48 -0
- package/dist/Placeholder/placeholder.svelte +37 -0
- package/dist/Placeholder/placeholder.svelte.d.ts +32 -0
- package/dist/Placeholder/types.d.ts +12 -0
- package/dist/Placeholder/types.js +1 -0
- package/dist/Popover/composition.d.ts +4 -0
- package/dist/Popover/composition.js +3 -0
- package/dist/Popover/index.d.ts +1 -0
- package/dist/Popover/index.js +1 -0
- package/dist/Popover/popover-body.svelte +10 -0
- package/dist/Popover/popover-body.svelte.d.ts +3 -0
- package/dist/Popover/popover-header.svelte +11 -0
- package/dist/Popover/popover-header.svelte.d.ts +4 -0
- package/dist/Popover/popover.svelte +74 -0
- package/dist/Popover/popover.svelte.d.ts +53 -0
- package/dist/Popover/types.d.ts +20 -0
- package/dist/Popover/types.js +1 -0
- package/dist/Portal/index.d.ts +2 -0
- package/dist/Portal/index.js +2 -0
- package/dist/Portal/portal-host.svelte +5 -0
- package/dist/Portal/portal-host.svelte.d.ts +7 -0
- package/dist/Portal/portal.svelte +69 -0
- package/dist/Portal/portal.svelte.d.ts +32 -0
- package/dist/Portal/types.d.ts +6 -0
- package/dist/Portal/types.js +1 -0
- package/dist/Progress/index.d.ts +3 -0
- package/dist/Progress/index.js +3 -0
- package/dist/Progress/progress-bar.svelte +101 -0
- package/dist/Progress/progress-bar.svelte.d.ts +39 -0
- package/dist/Progress/progress-stacked.svelte +34 -0
- package/dist/Progress/progress-stacked.svelte.d.ts +24 -0
- package/dist/Progress/progress.svelte.d.ts +31 -0
- package/dist/Progress/progress.svelte.js +52 -0
- package/dist/Progress/types.d.ts +40 -0
- package/dist/Progress/types.js +1 -0
- package/dist/Row/index.d.ts +2 -0
- package/dist/Row/index.js +2 -0
- package/dist/Row/row.svelte +75 -0
- package/dist/Row/row.svelte.d.ts +46 -0
- package/dist/Row/types.d.ts +12 -0
- package/dist/Row/types.js +1 -0
- package/dist/Scrollspy/index.d.ts +2 -0
- package/dist/Scrollspy/index.js +2 -0
- package/dist/Scrollspy/scrollspy-attachment.svelte.d.ts +10 -0
- package/dist/Scrollspy/scrollspy-attachment.svelte.js +122 -0
- package/dist/Scrollspy/types.d.ts +9 -0
- package/dist/Scrollspy/types.js +1 -0
- package/dist/Spinner/index.d.ts +2 -0
- package/dist/Spinner/index.js +2 -0
- package/dist/Spinner/spinner.svelte +77 -0
- package/dist/Spinner/spinner.svelte.d.ts +70 -0
- package/dist/Spinner/types.d.ts +9 -0
- package/dist/Spinner/types.js +1 -0
- package/dist/Tab/composition.d.ts +5 -0
- package/dist/Tab/composition.js +4 -0
- package/dist/Tab/index.d.ts +1 -0
- package/dist/Tab/index.js +1 -0
- package/dist/Tab/tab-content.svelte +29 -0
- package/dist/Tab/tab-content.svelte.d.ts +23 -0
- package/dist/Tab/tab-nav-link.svelte +69 -0
- package/dist/Tab/tab-nav-link.svelte.d.ts +22 -0
- package/dist/Tab/tab-pane.svelte +72 -0
- package/dist/Tab/tab-pane.svelte.d.ts +26 -0
- package/dist/Tab/tab.svelte +63 -0
- package/dist/Tab/tab.svelte.d.ts +50 -0
- package/dist/Tab/types.d.ts +18 -0
- package/dist/Tab/types.js +1 -0
- package/dist/Table/composition.d.ts +9 -0
- package/dist/Table/composition.js +8 -0
- package/dist/Table/index.d.ts +1 -0
- package/dist/Table/index.js +1 -0
- package/dist/Table/table-body.svelte +30 -0
- package/dist/Table/table-body.svelte.d.ts +23 -0
- package/dist/Table/table-caption.svelte +20 -0
- package/dist/Table/table-caption.svelte.d.ts +15 -0
- package/dist/Table/table-data.svelte +30 -0
- package/dist/Table/table-data.svelte.d.ts +19 -0
- package/dist/Table/table-foot.svelte +31 -0
- package/dist/Table/table-foot.svelte.d.ts +24 -0
- package/dist/Table/table-head.svelte +31 -0
- package/dist/Table/table-head.svelte.d.ts +24 -0
- package/dist/Table/table-header.svelte +38 -0
- package/dist/Table/table-header.svelte.d.ts +17 -0
- package/dist/Table/table-row.svelte +34 -0
- package/dist/Table/table-row.svelte.d.ts +23 -0
- package/dist/Table/table.svelte +154 -0
- package/dist/Table/table.svelte.d.ts +98 -0
- package/dist/Table/table.svelte.js +92 -0
- package/dist/Table/types.d.ts +43 -0
- package/dist/Table/types.js +1 -0
- package/dist/Toast/composition.d.ts +5 -0
- package/dist/Toast/composition.js +4 -0
- package/dist/Toast/index.d.ts +1 -0
- package/dist/Toast/index.js +1 -0
- package/dist/Toast/toast-body.svelte +26 -0
- package/dist/Toast/toast-body.svelte.d.ts +18 -0
- package/dist/Toast/toast-container.svelte +44 -0
- package/dist/Toast/toast-container.svelte.d.ts +36 -0
- package/dist/Toast/toast-header.svelte +56 -0
- package/dist/Toast/toast-header.svelte.d.ts +36 -0
- package/dist/Toast/toast.svelte +112 -0
- package/dist/Toast/toast.svelte.d.ts +54 -0
- package/dist/Toast/toast.svelte.js +83 -0
- package/dist/Toast/types.d.ts +53 -0
- package/dist/Toast/types.js +19 -0
- package/dist/Tooltip/composition.d.ts +3 -0
- package/dist/Tooltip/composition.js +2 -0
- package/dist/Tooltip/index.d.ts +1 -0
- package/dist/Tooltip/index.js +1 -0
- package/dist/Tooltip/tooltip-inner.svelte +10 -0
- package/dist/Tooltip/tooltip-inner.svelte.d.ts +4 -0
- package/dist/Tooltip/tooltip.svelte +213 -0
- package/dist/Tooltip/tooltip.svelte.d.ts +54 -0
- package/dist/Tooltip/types.d.ts +43 -0
- package/dist/Tooltip/types.js +1 -0
- package/dist/common/context.d.ts +47 -0
- package/dist/common/context.js +70 -0
- package/dist/common/css.d.ts +71 -0
- package/dist/common/css.js +133 -0
- package/dist/common/dom.d.ts +51 -0
- package/dist/common/dom.js +98 -0
- package/dist/common/index.d.ts +6 -0
- package/dist/common/index.js +5 -0
- package/dist/common/nav-tab.svelte.d.ts +88 -0
- package/dist/common/nav-tab.svelte.js +188 -0
- package/dist/common/navbar-offcanvas.svelte.d.ts +101 -0
- package/dist/common/navbar-offcanvas.svelte.js +228 -0
- package/dist/common/noop.d.ts +4 -0
- package/dist/common/noop.js +4 -0
- package/dist/common/scrollbar.d.ts +20 -0
- package/dist/common/scrollbar.js +53 -0
- package/dist/common/types.d.ts +143 -0
- package/dist/common/types.js +40 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.js +33 -0
- package/package.json +105 -0
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
@component
|
|
3
|
+
## Offcanvas
|
|
4
|
+
Build hidden sidebars into your project for navigation, shopping carts, and more with the Bootstrap Offcanvas component.
|
|
5
|
+
|
|
6
|
+
@example
|
|
7
|
+
```svelte
|
|
8
|
+
<Offcanvas placement="start" isVisible={true}>
|
|
9
|
+
<Offcanvas.Header>
|
|
10
|
+
<Offcanvas.Title>Offcanvas Title</Offcanvas.Title>
|
|
11
|
+
</Offcanvas.Header>
|
|
12
|
+
<Offcanvas.Body>
|
|
13
|
+
Content for the offcanvas goes here. You can place just about any Bootstrap component or custom elements here.
|
|
14
|
+
</Offcanvas.Body>
|
|
15
|
+
</Offcanvas>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
#### Placement options
|
|
19
|
+
```svelte
|
|
20
|
+
<Offcanvas placement="start">...</Offcanvas>
|
|
21
|
+
<Offcanvas placement="end">...</Offcanvas>
|
|
22
|
+
<Offcanvas placement="top">...</Offcanvas>
|
|
23
|
+
<Offcanvas placement="bottom">...</Offcanvas>
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
#### Body scrolling
|
|
27
|
+
```svelte
|
|
28
|
+
<Offcanvas bodyScrolling={true}>...</Offcanvas>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
#### Static backdrop
|
|
32
|
+
```svelte
|
|
33
|
+
<Offcanvas isStatic={true}>...</Offcanvas>
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
#### Responsive offcanvas
|
|
37
|
+
```svelte
|
|
38
|
+
<Offcanvas breakpoint="lg">...</Offcanvas>
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Props
|
|
42
|
+
- `children` (slot): Content to display inside the offcanvas.
|
|
43
|
+
- `class` (string): Optional. Additional CSS classes.
|
|
44
|
+
- `dir` (string): Optional. Text direction ('ltr' or 'rtl').
|
|
45
|
+
- `elementRef` (HTMLElement): Optional. Reference to the offcanvas DOM element.
|
|
46
|
+
- `id` (string): Optional. ID for the offcanvas element.
|
|
47
|
+
- `isBodyScrollable` (boolean): Optional. Enables body scrolling when offcanvas is open.
|
|
48
|
+
- `isKeyboardDismissible` (boolean): Optional. Enables dismissing the offcanvas on Escape key press.
|
|
49
|
+
- `isShown` (boolean): Optional. Controls whether the offcanvas is visible.
|
|
50
|
+
- `placement` (string): Optional. Position of the offcanvas ('start', 'end', 'top', 'bottom').
|
|
51
|
+
- `showOnBreakpoint` (string): Optional. Show the offcanvas on a specific breakpoint ('sm', 'md', 'lg', 'xl', 'xxl').
|
|
52
|
+
- `useBackdrop` (boolean): Optional. Controls whether to show a backdrop when the offcanvas is open.
|
|
53
|
+
- `onHide` (function): Optional. Callback function when the offcanvas is hidden.
|
|
54
|
+
- `onHidePrevented` (function): Optional. Callback function when the offcanvas hide is prevented.
|
|
55
|
+
- `onHidden` (function): Optional. Callback function when the offcanvas is completely hidden.
|
|
56
|
+
- `onShow` (function): Optional. Callback function when the offcanvas is shown.
|
|
57
|
+
- `onShown` (function): Optional. Callback function when the offcanvas is completely shown.
|
|
58
|
+
-->
|
|
59
|
+
<script lang="ts">import { noop, uniqueClsx } from '../common/index.js';
|
|
60
|
+
import { initOffcanvasRootState, OffcanvasRootState } from '../common/navbar-offcanvas.svelte.js';
|
|
61
|
+
import { disableBodyScrolling, resetBodyScrolling } from '../common/scrollbar.js';
|
|
62
|
+
import { onMount, tick } from 'svelte';
|
|
63
|
+
import { fade, fly } from 'svelte/transition';
|
|
64
|
+
// Generate a unique ID for the offcanvas element, in case one is not provided...
|
|
65
|
+
const uid = $props.id();
|
|
66
|
+
let { children, class: classValues, dir = 'ltr', elementRef = $bindable(null), id = `offcanvas-${uid}`, isBodyScrollable = false, isKeyboardDismissible = true, isShown = false, placement = 'start', showOnBreakpoint, useBackdrop = true, onHide = noop, onHidePrevented = noop, onHidden = noop, onShow = noop, onShown = noop, ...restOfProps } = $props();
|
|
67
|
+
// Initialize the root state of the offcanvas component...
|
|
68
|
+
let bodyElement = $state(null);
|
|
69
|
+
const unset = Symbol('unset');
|
|
70
|
+
let previousIsShown = unset;
|
|
71
|
+
let previousShowOnBreakpoint = unset;
|
|
72
|
+
let previousUseBackdrop = unset;
|
|
73
|
+
const rootState = initOffcanvasRootState({
|
|
74
|
+
get id() {
|
|
75
|
+
return id;
|
|
76
|
+
},
|
|
77
|
+
get isShown() {
|
|
78
|
+
return isShown;
|
|
79
|
+
},
|
|
80
|
+
get showOnBreakpoint() {
|
|
81
|
+
return showOnBreakpoint;
|
|
82
|
+
},
|
|
83
|
+
get useBackdrop() {
|
|
84
|
+
return useBackdrop;
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
// Set up the derived state for the offcanvas component...
|
|
88
|
+
let flyX = $derived.by(() => {
|
|
89
|
+
if (placement === 'start' && dir === 'ltr')
|
|
90
|
+
return '-100%';
|
|
91
|
+
if (placement === 'end' && dir === 'ltr')
|
|
92
|
+
return '100%';
|
|
93
|
+
if (placement === 'start' && dir === 'rtl')
|
|
94
|
+
return '100%';
|
|
95
|
+
if (placement === 'end' && dir === 'rtl')
|
|
96
|
+
return '-100%';
|
|
97
|
+
return undefined;
|
|
98
|
+
});
|
|
99
|
+
let flyY = $derived.by(() => {
|
|
100
|
+
if (placement === 'top')
|
|
101
|
+
return '-100%';
|
|
102
|
+
if (placement === 'bottom')
|
|
103
|
+
return '100%';
|
|
104
|
+
return undefined;
|
|
105
|
+
});
|
|
106
|
+
let hasShownOnBreakpoint = $derived(!!showOnBreakpoint); // !! to convert to boolean
|
|
107
|
+
let hasPlacement = $derived(!!placement); // !! to convert to boolean
|
|
108
|
+
// Derived classes for the offcanvas component...
|
|
109
|
+
let backDropClasses = $derived(uniqueClsx('offcanvas-backdrop', 'fade', { show: rootState.isShown }));
|
|
110
|
+
let classes = $derived(uniqueClsx({
|
|
111
|
+
offcanvas: !hasShownOnBreakpoint,
|
|
112
|
+
[`offcanvas-${showOnBreakpoint}`]: hasShownOnBreakpoint,
|
|
113
|
+
[`offcanvas-${placement}`]: hasPlacement,
|
|
114
|
+
show: rootState.isShown
|
|
115
|
+
}, classValues));
|
|
116
|
+
// Listen changes to the isShown prop and update the root state accordingly...
|
|
117
|
+
$effect(() => {
|
|
118
|
+
if (previousIsShown !== unset && previousIsShown !== isShown) {
|
|
119
|
+
if (isShown !== rootState.isShown) {
|
|
120
|
+
// Because the transition is asynchronous, we need to wait for the next tick before toggling the state...
|
|
121
|
+
tick().then(() => {
|
|
122
|
+
rootState.toggleIsShown();
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
previousIsShown = isShown;
|
|
127
|
+
});
|
|
128
|
+
// Listen changes to the useBackdrop prop and update the root state accordingly...
|
|
129
|
+
$effect(() => {
|
|
130
|
+
if (previousUseBackdrop !== unset && previousUseBackdrop !== useBackdrop) {
|
|
131
|
+
if (useBackdrop !== rootState.useBackdrop) {
|
|
132
|
+
rootState.useBackdrop = useBackdrop;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
previousUseBackdrop = useBackdrop;
|
|
136
|
+
});
|
|
137
|
+
// Listen changes to the showOnBreakpoint prop and update the root state accordingly...
|
|
138
|
+
$effect(() => {
|
|
139
|
+
if (previousShowOnBreakpoint !== unset && previousShowOnBreakpoint !== showOnBreakpoint) {
|
|
140
|
+
if (showOnBreakpoint !== rootState.showOnBreakpoint) {
|
|
141
|
+
rootState.showOnBreakpoint = showOnBreakpoint;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
previousShowOnBreakpoint = showOnBreakpoint;
|
|
145
|
+
});
|
|
146
|
+
// Get the body element when the component is mounted...
|
|
147
|
+
onMount(() => {
|
|
148
|
+
if (typeof window !== 'undefined') {
|
|
149
|
+
bodyElement = document.querySelector('body');
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
// Listen to the transition events to properly manage the body scrollbar...
|
|
153
|
+
const handleOnShow = (event) => {
|
|
154
|
+
if (bodyElement && !isBodyScrollable && !rootState.isMediaQueryMatched) {
|
|
155
|
+
disableBodyScrolling(bodyElement);
|
|
156
|
+
}
|
|
157
|
+
onShow(event);
|
|
158
|
+
};
|
|
159
|
+
// Listen to the transition events to properly manage the body scrollbar...
|
|
160
|
+
const handleOnHidden = (event) => {
|
|
161
|
+
if (bodyElement && !isBodyScrollable && !rootState.isMediaQueryMatched) {
|
|
162
|
+
resetBodyScrolling(bodyElement);
|
|
163
|
+
}
|
|
164
|
+
onHidden(event);
|
|
165
|
+
};
|
|
166
|
+
// Dismiss the offcanvas when the backdrop is clicked...
|
|
167
|
+
const handleBackdropMouseDown = (event) => {
|
|
168
|
+
const target = event.target;
|
|
169
|
+
const nearestOffcanvas = target.closest('.offcanvas');
|
|
170
|
+
if (nearestOffcanvas && nearestOffcanvas.id === id) {
|
|
171
|
+
event.stopPropagation();
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
if (rootState.isShown && useBackdrop === 'static') {
|
|
175
|
+
event.stopPropagation();
|
|
176
|
+
onHidePrevented(event);
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
if (rootState.isShown && useBackdrop !== 'static') {
|
|
180
|
+
event.stopPropagation();
|
|
181
|
+
rootState.toggleIsShown();
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
// Dismiss the offcanvas on Escape key press
|
|
185
|
+
const handleKeydown = (event) => {
|
|
186
|
+
const keyboardEvent = event;
|
|
187
|
+
if (rootState.isShown && !isKeyboardDismissible && useBackdrop === 'static') {
|
|
188
|
+
onHidePrevented(event);
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
if (rootState.isShown && isKeyboardDismissible && keyboardEvent.key === 'Escape') {
|
|
192
|
+
rootState.toggleIsShown();
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
</script>
|
|
196
|
+
|
|
197
|
+
<svelte:window on:keydown={handleKeydown} />
|
|
198
|
+
<svelte:body on:mousedown={handleBackdropMouseDown} />
|
|
199
|
+
|
|
200
|
+
{#if rootState.isShown}
|
|
201
|
+
<div
|
|
202
|
+
aria-modal={rootState.isShown}
|
|
203
|
+
bind:this={elementRef}
|
|
204
|
+
class={classes}
|
|
205
|
+
{id}
|
|
206
|
+
onintrostart={handleOnShow}
|
|
207
|
+
onintroend={onShown}
|
|
208
|
+
onoutrostart={onHide}
|
|
209
|
+
onoutroend={handleOnHidden}
|
|
210
|
+
role={rootState.isShown ? 'dialog' : undefined}
|
|
211
|
+
tabindex="-1"
|
|
212
|
+
transition:fly={{ duration: rootState.transitionDuration, x: flyX, y: flyY, opacity: 1 }}
|
|
213
|
+
{...restOfProps}>
|
|
214
|
+
{@render children?.()}
|
|
215
|
+
</div>
|
|
216
|
+
{/if}
|
|
217
|
+
|
|
218
|
+
{#if rootState.isBackdropShown}
|
|
219
|
+
<div class={backDropClasses} onmousedown={handleBackdropMouseDown} role="presentation" transition:fade={{ duration: 150 }}></div>
|
|
220
|
+
{/if}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { Offcanvas } from './index.js';
|
|
2
|
+
/**
|
|
3
|
+
* ## Offcanvas
|
|
4
|
+
* Build hidden sidebars into your project for navigation, shopping carts, and more with the Bootstrap Offcanvas component.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```svelte
|
|
8
|
+
* <Offcanvas placement="start" isVisible={true}>
|
|
9
|
+
* <Offcanvas.Header>
|
|
10
|
+
* <Offcanvas.Title>Offcanvas Title</Offcanvas.Title>
|
|
11
|
+
* </Offcanvas.Header>
|
|
12
|
+
* <Offcanvas.Body>
|
|
13
|
+
* Content for the offcanvas goes here. You can place just about any Bootstrap component or custom elements here.
|
|
14
|
+
* </Offcanvas.Body>
|
|
15
|
+
* </Offcanvas>
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* #### Placement options
|
|
19
|
+
* ```svelte
|
|
20
|
+
* <Offcanvas placement="start">...</Offcanvas>
|
|
21
|
+
* <Offcanvas placement="end">...</Offcanvas>
|
|
22
|
+
* <Offcanvas placement="top">...</Offcanvas>
|
|
23
|
+
* <Offcanvas placement="bottom">...</Offcanvas>
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* #### Body scrolling
|
|
27
|
+
* ```svelte
|
|
28
|
+
* <Offcanvas bodyScrolling={true}>...</Offcanvas>
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* #### Static backdrop
|
|
32
|
+
* ```svelte
|
|
33
|
+
* <Offcanvas isStatic={true}>...</Offcanvas>
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* #### Responsive offcanvas
|
|
37
|
+
* ```svelte
|
|
38
|
+
* <Offcanvas breakpoint="lg">...</Offcanvas>
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* ### Props
|
|
42
|
+
* - `children` (slot): Content to display inside the offcanvas.
|
|
43
|
+
* - `class` (string): Optional. Additional CSS classes.
|
|
44
|
+
* - `dir` (string): Optional. Text direction ('ltr' or 'rtl').
|
|
45
|
+
* - `elementRef` (HTMLElement): Optional. Reference to the offcanvas DOM element.
|
|
46
|
+
* - `id` (string): Optional. ID for the offcanvas element.
|
|
47
|
+
* - `isBodyScrollable` (boolean): Optional. Enables body scrolling when offcanvas is open.
|
|
48
|
+
* - `isKeyboardDismissible` (boolean): Optional. Enables dismissing the offcanvas on Escape key press.
|
|
49
|
+
* - `isShown` (boolean): Optional. Controls whether the offcanvas is visible.
|
|
50
|
+
* - `placement` (string): Optional. Position of the offcanvas ('start', 'end', 'top', 'bottom').
|
|
51
|
+
* - `showOnBreakpoint` (string): Optional. Show the offcanvas on a specific breakpoint ('sm', 'md', 'lg', 'xl', 'xxl').
|
|
52
|
+
* - `useBackdrop` (boolean): Optional. Controls whether to show a backdrop when the offcanvas is open.
|
|
53
|
+
* - `onHide` (function): Optional. Callback function when the offcanvas is hidden.
|
|
54
|
+
* - `onHidePrevented` (function): Optional. Callback function when the offcanvas hide is prevented.
|
|
55
|
+
* - `onHidden` (function): Optional. Callback function when the offcanvas is completely hidden.
|
|
56
|
+
* - `onShow` (function): Optional. Callback function when the offcanvas is shown.
|
|
57
|
+
* - `onShown` (function): Optional. Callback function when the offcanvas is completely shown.
|
|
58
|
+
*/
|
|
59
|
+
declare const Offcanvas: import("svelte").Component<Offcanvas.RootProps, {}, "elementRef">;
|
|
60
|
+
type Offcanvas = ReturnType<typeof Offcanvas>;
|
|
61
|
+
export default Offcanvas;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { BaseBreakpoint, DivElement, HeadingElement, HeadingLevels, TextDirection } from '../common/types.js';
|
|
2
|
+
export type OffcanvasBackdrop = 'static' | boolean;
|
|
3
|
+
export type OffcanvasBreakpoint = BaseBreakpoint;
|
|
4
|
+
export type OffcanvasPlacement = 'start' | 'end' | 'top' | 'bottom';
|
|
5
|
+
export type OffcanvasRootProps = DivElement & {
|
|
6
|
+
dir?: TextDirection;
|
|
7
|
+
isBodyScrollable?: boolean;
|
|
8
|
+
isKeyboardDismissible?: boolean;
|
|
9
|
+
isShown?: boolean;
|
|
10
|
+
onHide?: EventListener;
|
|
11
|
+
onHidePrevented?: EventListener;
|
|
12
|
+
onHidden?: EventListener;
|
|
13
|
+
onShow?: EventListener;
|
|
14
|
+
onShown?: EventListener;
|
|
15
|
+
placement?: OffcanvasPlacement;
|
|
16
|
+
showOnBreakpoint?: OffcanvasBreakpoint;
|
|
17
|
+
useBackdrop?: OffcanvasBackdrop;
|
|
18
|
+
};
|
|
19
|
+
export type OffcanvasHeaderProps = DivElement & {
|
|
20
|
+
isDismissible?: boolean;
|
|
21
|
+
};
|
|
22
|
+
export type OffcanvasTitleProps = HeadingElement & {
|
|
23
|
+
level?: HeadingLevels;
|
|
24
|
+
};
|
|
25
|
+
export type OffcanvasBodyProps = DivElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default as Item } from './pagination-item.svelte';
|
|
2
|
+
export { default as Link } from './pagination-link.svelte';
|
|
3
|
+
export { default as Root } from './pagination.svelte';
|
|
4
|
+
export type { PaginationItemProps as ItemProps, PaginationLinkProps as LinkProps, PaginationRootProps as RootProps } from './types.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * as Pagination from './composition.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * as Pagination from './composition.js';
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
@component
|
|
3
|
+
## Pagination.Item
|
|
4
|
+
Pagination item component to wrap Pagination.Link components.
|
|
5
|
+
|
|
6
|
+
@example
|
|
7
|
+
```svelte
|
|
8
|
+
<Pagination.Item>
|
|
9
|
+
<Pagination.Link href="#!">1</Pagination.Link>
|
|
10
|
+
</Pagination.Item>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
@example
|
|
14
|
+
```svelte
|
|
15
|
+
<Pagination.Item isActive={true}>
|
|
16
|
+
<Pagination.Link href="#!">2</Pagination.Link>
|
|
17
|
+
</Pagination.Item>
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
@example
|
|
21
|
+
```svelte
|
|
22
|
+
<Pagination.Item isDisabled={true}>
|
|
23
|
+
<Pagination.Link href="#!">Next</Pagination.Link>
|
|
24
|
+
</Pagination.Item>
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Props
|
|
28
|
+
- `class` (string): Optional. Additional CSS classes.
|
|
29
|
+
- `elementRef` (HTMLElement): Optional. Reference to the item DOM element.
|
|
30
|
+
- `isActive` (boolean): Optional. Whether the pagination item is active. Defaults to false.
|
|
31
|
+
- `isDisabled` (boolean): Optional. Whether the pagination item is disabled. Defaults to false.
|
|
32
|
+
-->
|
|
33
|
+
<script lang="ts">import { uniqueClsx } from '../common/css.js';
|
|
34
|
+
import { initPaginationItemState, PaginationItemState } from './pagination.svelte.js';
|
|
35
|
+
// Generate a unique ID for the collapse element, in case one is not provided...
|
|
36
|
+
const uid = $props.id();
|
|
37
|
+
let { children, class: classValues, elementRef = $bindable(null), id = `page-item-${uid}`, isActive = false, isDisabled = false, ...restOfProps } = $props();
|
|
38
|
+
const itemState = initPaginationItemState({
|
|
39
|
+
get id() {
|
|
40
|
+
return id;
|
|
41
|
+
},
|
|
42
|
+
get isActive() {
|
|
43
|
+
return isActive;
|
|
44
|
+
},
|
|
45
|
+
get isDisabled() {
|
|
46
|
+
return isDisabled;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
let classes = $derived(uniqueClsx('page-item', {
|
|
50
|
+
active: itemState.isActive,
|
|
51
|
+
disabled: itemState.isDisabled
|
|
52
|
+
}, classValues));
|
|
53
|
+
$effect(() => {
|
|
54
|
+
// Update the state when the isActive prop changes...
|
|
55
|
+
if (id && itemState.isActive !== isActive) {
|
|
56
|
+
const isItemActive = itemState.root.isPaginationItemActive(id);
|
|
57
|
+
if (isActive && !isItemActive) {
|
|
58
|
+
itemState.root.setPaginationItemActive(id);
|
|
59
|
+
}
|
|
60
|
+
else if (!isActive && isItemActive) {
|
|
61
|
+
itemState.root.setPaginationItemActive('');
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
$effect(() => {
|
|
66
|
+
// Update the state when the isDisabled prop changes...
|
|
67
|
+
if (id && itemState.isDisabled !== isDisabled) {
|
|
68
|
+
const isItemDisabled = itemState.root.isPaginationItemDisabled(id);
|
|
69
|
+
if (isDisabled && !isItemDisabled) {
|
|
70
|
+
itemState.root.setPaginationItemDisabled(id);
|
|
71
|
+
}
|
|
72
|
+
else if (!isDisabled && isItemDisabled) {
|
|
73
|
+
itemState.root.setPaginationItemDisabled('');
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
</script>
|
|
78
|
+
|
|
79
|
+
<li aria-current={isActive ? 'page' : undefined} bind:this={elementRef} class={classes} {id} {...restOfProps}>
|
|
80
|
+
{@render children?.()}
|
|
81
|
+
</li>
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { Pagination } from './index.js';
|
|
2
|
+
/**
|
|
3
|
+
* ## Pagination.Item
|
|
4
|
+
* Pagination item component to wrap Pagination.Link components.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```svelte
|
|
8
|
+
* <Pagination.Item>
|
|
9
|
+
* <Pagination.Link href="#!">1</Pagination.Link>
|
|
10
|
+
* </Pagination.Item>
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```svelte
|
|
15
|
+
* <Pagination.Item isActive={true}>
|
|
16
|
+
* <Pagination.Link href="#!">2</Pagination.Link>
|
|
17
|
+
* </Pagination.Item>
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```svelte
|
|
22
|
+
* <Pagination.Item isDisabled={true}>
|
|
23
|
+
* <Pagination.Link href="#!">Next</Pagination.Link>
|
|
24
|
+
* </Pagination.Item>
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* ### Props
|
|
28
|
+
* - `class` (string): Optional. Additional CSS classes.
|
|
29
|
+
* - `elementRef` (HTMLElement): Optional. Reference to the item DOM element.
|
|
30
|
+
* - `isActive` (boolean): Optional. Whether the pagination item is active. Defaults to false.
|
|
31
|
+
* - `isDisabled` (boolean): Optional. Whether the pagination item is disabled. Defaults to false.
|
|
32
|
+
*/
|
|
33
|
+
declare const PaginationItem: import("svelte").Component<Pagination.ItemProps, {}, "elementRef">;
|
|
34
|
+
type PaginationItem = ReturnType<typeof PaginationItem>;
|
|
35
|
+
export default PaginationItem;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
@component
|
|
3
|
+
## Pagination.Link
|
|
4
|
+
Pagination link component that is typically used inside a Pagination.Item.
|
|
5
|
+
|
|
6
|
+
@example
|
|
7
|
+
```svelte
|
|
8
|
+
<Pagination.Link href="#!">1</Pagination.Link>
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
@example
|
|
12
|
+
```svelte
|
|
13
|
+
<Pagination.Link href="#!" ariaLabel="Go to previous page">Previous</Pagination.Link>
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
### Props
|
|
17
|
+
- `ariaLabel` (string): Optional. ARIA label for the link.
|
|
18
|
+
- `class` (string): Optional. Additional CSS classes.
|
|
19
|
+
- `elementRef` (HTMLElement): Optional. Reference to the link DOM element.
|
|
20
|
+
- `href` (string): Optional. The URL to link to. Defaults to "#".
|
|
21
|
+
- `isDisabled` (boolean): Optional. Whether the link is disabled (pagination item should also be set to disabled). Defaults to false.
|
|
22
|
+
-->
|
|
23
|
+
<script lang="ts">import { uniqueClsx } from '../common/css.js';
|
|
24
|
+
import { noop } from '../common/noop.js';
|
|
25
|
+
import { initPaginationLinkState, PaginationLinkState } from './pagination.svelte.js';
|
|
26
|
+
// Generate a unique ID for the collapse element, in case one is not provided...
|
|
27
|
+
const uid = $props.id();
|
|
28
|
+
let { 'aria-label': ariaLabel, children, class: classValues, elementRef = $bindable(null), href = '#!', id = `page-link-${uid}`, onclick = noop, ...restOfProps } = $props();
|
|
29
|
+
const linkState = initPaginationLinkState({
|
|
30
|
+
get id() {
|
|
31
|
+
return id;
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
let classes = $derived(uniqueClsx('page-link', classValues));
|
|
35
|
+
let isDisabled = $derived(linkState.item.isDisabled);
|
|
36
|
+
let tabIndex = $derived(isDisabled ? -1 : 0);
|
|
37
|
+
const handleClick = (event) => {
|
|
38
|
+
linkState.onclick();
|
|
39
|
+
onclick(event);
|
|
40
|
+
};
|
|
41
|
+
</script>
|
|
42
|
+
|
|
43
|
+
<a aria-label={ariaLabel} bind:this={elementRef} class={classes} {href} {id} onclick={handleClick} tabindex={tabIndex} {...restOfProps}>
|
|
44
|
+
{@render children?.()}
|
|
45
|
+
</a>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Pagination } from './index.js';
|
|
2
|
+
/**
|
|
3
|
+
* ## Pagination.Link
|
|
4
|
+
* Pagination link component that is typically used inside a Pagination.Item.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```svelte
|
|
8
|
+
* <Pagination.Link href="#!">1</Pagination.Link>
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```svelte
|
|
13
|
+
* <Pagination.Link href="#!" ariaLabel="Go to previous page">Previous</Pagination.Link>
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* ### Props
|
|
17
|
+
* - `ariaLabel` (string): Optional. ARIA label for the link.
|
|
18
|
+
* - `class` (string): Optional. Additional CSS classes.
|
|
19
|
+
* - `elementRef` (HTMLElement): Optional. Reference to the link DOM element.
|
|
20
|
+
* - `href` (string): Optional. The URL to link to. Defaults to "#".
|
|
21
|
+
* - `isDisabled` (boolean): Optional. Whether the link is disabled (pagination item should also be set to disabled). Defaults to false.
|
|
22
|
+
*/
|
|
23
|
+
declare const PaginationLink: import("svelte").Component<Pagination.LinkProps, {}, "elementRef">;
|
|
24
|
+
type PaginationLink = ReturnType<typeof PaginationLink>;
|
|
25
|
+
export default PaginationLink;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
@component
|
|
3
|
+
## Pagination.Root
|
|
4
|
+
Root pagination component that contains pagination items and links.
|
|
5
|
+
|
|
6
|
+
@example
|
|
7
|
+
```svelte
|
|
8
|
+
<Pagination.Root>
|
|
9
|
+
<Pagination.Item>
|
|
10
|
+
<Pagination.Link href="#!">Previous</Pagination.Link>
|
|
11
|
+
</Pagination.Item>
|
|
12
|
+
<Pagination.Item>
|
|
13
|
+
<Pagination.Link href="#!">1</Pagination.Link>
|
|
14
|
+
</Pagination.Item>
|
|
15
|
+
<Pagination.Item isActive={true}>
|
|
16
|
+
<Pagination.Link href="#!">2</Pagination.Link>
|
|
17
|
+
</Pagination.Item>
|
|
18
|
+
<Pagination.Item>
|
|
19
|
+
<Pagination.Link href="#!">3</Pagination.Link>
|
|
20
|
+
</Pagination.Item>
|
|
21
|
+
<Pagination.Item>
|
|
22
|
+
<Pagination.Link href="#!">Next</Pagination.Link>
|
|
23
|
+
</Pagination.Item>
|
|
24
|
+
</Pagination.Root>
|
|
25
|
+
```
|
|
26
|
+
### Props
|
|
27
|
+
- `alignment` (string): Optional. Horizontal alignment, one of: 'start', 'center', 'end'.
|
|
28
|
+
- `ariaLabel` (string): Optional. ARIA label for the pagination navigation. Defaults to "pagination".
|
|
29
|
+
- `class` (string): Optional. Additional CSS classes.
|
|
30
|
+
- `disabled` (boolean): Optional. Whether the pagination is disabled. Defaults to false.
|
|
31
|
+
- `elementRef` (HTMLElement): Optional. Reference to the DOM element.
|
|
32
|
+
- `id` (string): Optional. Unique ID for the pagination element.
|
|
33
|
+
- `size` (string): Optional. Size of pagination component, one of: 'sm', 'lg'.
|
|
34
|
+
-->
|
|
35
|
+
<script lang="ts">import { uniqueClsx } from '../common/css.js';
|
|
36
|
+
import { initPaginationRootState, PaginationRootState } from './pagination.svelte.js';
|
|
37
|
+
// Generate a unique ID for the component, in case one is not provided...
|
|
38
|
+
const uid = $props.id();
|
|
39
|
+
let { alignment, 'aria-label': ariaLabel = 'Pagination navigation', children, class: classValues, elementRef = $bindable(null), id = `pagination-${uid}`, isStateful = true, size, ...restOfProps } = $props();
|
|
40
|
+
const _rootState = initPaginationRootState({
|
|
41
|
+
get id() {
|
|
42
|
+
return id;
|
|
43
|
+
},
|
|
44
|
+
get isStateful() {
|
|
45
|
+
return isStateful;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
let classes = $derived(uniqueClsx('pagination', {
|
|
49
|
+
'justify-content-center': alignment === 'center',
|
|
50
|
+
'justify-content-end': alignment === 'end',
|
|
51
|
+
'pagination-sm': size === 'sm',
|
|
52
|
+
'pagination-lg': size === 'lg'
|
|
53
|
+
}, classValues));
|
|
54
|
+
</script>
|
|
55
|
+
|
|
56
|
+
<nav aria-label={ariaLabel}>
|
|
57
|
+
<ul bind:this={elementRef} class={classes} {id} {...restOfProps}>
|
|
58
|
+
{@render children?.()}
|
|
59
|
+
</ul>
|
|
60
|
+
</nav>
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { Pagination } from './index.js';
|
|
2
|
+
/**
|
|
3
|
+
* ## Pagination.Root
|
|
4
|
+
* Root pagination component that contains pagination items and links.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```svelte
|
|
8
|
+
* <Pagination.Root>
|
|
9
|
+
* <Pagination.Item>
|
|
10
|
+
* <Pagination.Link href="#!">Previous</Pagination.Link>
|
|
11
|
+
* </Pagination.Item>
|
|
12
|
+
* <Pagination.Item>
|
|
13
|
+
* <Pagination.Link href="#!">1</Pagination.Link>
|
|
14
|
+
* </Pagination.Item>
|
|
15
|
+
* <Pagination.Item isActive={true}>
|
|
16
|
+
* <Pagination.Link href="#!">2</Pagination.Link>
|
|
17
|
+
* </Pagination.Item>
|
|
18
|
+
* <Pagination.Item>
|
|
19
|
+
* <Pagination.Link href="#!">3</Pagination.Link>
|
|
20
|
+
* </Pagination.Item>
|
|
21
|
+
* <Pagination.Item>
|
|
22
|
+
* <Pagination.Link href="#!">Next</Pagination.Link>
|
|
23
|
+
* </Pagination.Item>
|
|
24
|
+
* </Pagination.Root>
|
|
25
|
+
* ```
|
|
26
|
+
* ### Props
|
|
27
|
+
* - `alignment` (string): Optional. Horizontal alignment, one of: 'start', 'center', 'end'.
|
|
28
|
+
* - `ariaLabel` (string): Optional. ARIA label for the pagination navigation. Defaults to "pagination".
|
|
29
|
+
* - `class` (string): Optional. Additional CSS classes.
|
|
30
|
+
* - `disabled` (boolean): Optional. Whether the pagination is disabled. Defaults to false.
|
|
31
|
+
* - `elementRef` (HTMLElement): Optional. Reference to the DOM element.
|
|
32
|
+
* - `id` (string): Optional. Unique ID for the pagination element.
|
|
33
|
+
* - `size` (string): Optional. Size of pagination component, one of: 'sm', 'lg'.
|
|
34
|
+
*/
|
|
35
|
+
declare const Pagination: import("svelte").Component<Pagination.RootProps, {}, "elementRef">;
|
|
36
|
+
type Pagination = ReturnType<typeof Pagination>;
|
|
37
|
+
export default Pagination;
|