kemet-ui 1.4.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/custom-elements.json +2940 -2397
- package/dist/.storybook/decorators.d.ts +2 -0
- package/dist/.storybook/decorators.js +28 -0
- package/dist/.storybook/decorators.js.map +1 -0
- package/dist/components/kemet-accordion/kemet-accordion-panel.d.ts +51 -0
- package/dist/components/kemet-accordion/kemet-accordion-panel.js +94 -134
- package/dist/components/kemet-accordion/kemet-accordion-panel.js.map +1 -0
- package/dist/components/kemet-accordion/kemet-accordion.d.ts +37 -0
- package/dist/components/kemet-accordion/kemet-accordion.js +113 -129
- package/dist/components/kemet-accordion/kemet-accordion.js.map +1 -0
- package/dist/components/kemet-accordion/stories.d.ts +10 -0
- package/dist/components/kemet-accordion/stories.js +44 -0
- package/dist/components/kemet-accordion/stories.js.map +1 -0
- package/dist/components/kemet-accordion/styles.d.ts +2 -0
- package/dist/components/kemet-accordion/styles.js +42 -0
- package/dist/components/kemet-accordion/styles.js.map +1 -0
- package/dist/components/kemet-accordion/types.d.ts +9 -0
- package/dist/components/kemet-accordion/types.js +2 -0
- package/dist/components/kemet-accordion/types.js.map +1 -0
- package/dist/components/kemet-alert/docs/stories.d.ts +9 -0
- package/dist/components/kemet-alert/docs/stories.js +77 -0
- package/dist/components/kemet-alert/docs/stories.js.map +1 -0
- package/dist/components/kemet-alert/kemet-alert.d.ts +52 -0
- package/dist/components/kemet-alert/kemet-alert.js +67 -65
- package/dist/components/kemet-alert/kemet-alert.js.map +1 -0
- package/dist/components/kemet-alert/stories.d.ts +9 -0
- package/dist/components/kemet-alert/stories.js +77 -0
- package/dist/components/kemet-alert/stories.js.map +1 -0
- package/dist/components/kemet-alert/styles.d.ts +1 -0
- package/dist/components/kemet-alert/styles.js +4 -4
- package/dist/components/kemet-alert/styles.js.map +1 -0
- package/dist/components/kemet-alert/types.d.ts +10 -0
- package/dist/components/kemet-alert/types.js +2 -0
- package/dist/components/kemet-alert/types.js.map +1 -0
- package/dist/components/kemet-avatar/docs/stories.d.ts +10 -0
- package/dist/components/kemet-avatar/docs/stories.js +85 -0
- package/dist/components/kemet-avatar/docs/stories.js.map +1 -0
- package/dist/components/kemet-avatar/kemet-avatar.d.ts +43 -0
- package/dist/components/kemet-avatar/kemet-avatar.js +48 -88
- package/dist/components/kemet-avatar/kemet-avatar.js.map +1 -0
- package/dist/components/kemet-avatar/kemet-avatars.d.ts +20 -0
- package/dist/components/kemet-avatar/kemet-avatars.js +15 -31
- package/dist/components/kemet-avatar/kemet-avatars.js.map +1 -0
- package/dist/components/kemet-avatar/stories.d.ts +10 -0
- package/dist/components/kemet-avatar/stories.js +85 -0
- package/dist/components/kemet-avatar/stories.js.map +1 -0
- package/dist/components/kemet-avatar/styles.d.ts +2 -0
- package/dist/components/kemet-avatar/styles.js +58 -0
- package/dist/components/kemet-avatar/styles.js.map +1 -0
- package/dist/components/kemet-avatar/types.d.ts +8 -0
- package/dist/components/kemet-avatar/types.js +2 -0
- package/dist/components/kemet-avatar/types.js.map +1 -0
- package/dist/components/kemet-badge/docs/stories.d.ts +9 -0
- package/dist/components/kemet-badge/docs/stories.js +40 -0
- package/dist/components/kemet-badge/docs/stories.js.map +1 -0
- package/dist/components/kemet-badge/kemet-badge.d.ts +30 -0
- package/dist/components/kemet-badge/kemet-badge.js +38 -89
- package/dist/components/kemet-badge/kemet-badge.js.map +1 -0
- package/dist/components/kemet-badge/styles.d.ts +1 -0
- package/dist/components/kemet-badge/styles.js +40 -0
- package/dist/components/kemet-badge/styles.js.map +1 -0
- package/dist/components/kemet-badge/types.d.ts +6 -0
- package/dist/components/kemet-badge/types.js +2 -0
- package/dist/components/kemet-badge/types.js.map +1 -0
- package/dist/components/kemet-button/docs/stories.d.ts +9 -0
- package/dist/components/kemet-button/docs/stories.js +51 -0
- package/dist/components/kemet-button/docs/stories.js.map +1 -0
- package/dist/components/kemet-button/kemet-button.d.ts +89 -0
- package/dist/components/kemet-button/kemet-button.js +101 -195
- package/dist/components/kemet-button/kemet-button.js.map +1 -0
- package/dist/components/kemet-button/styles.d.ts +1 -0
- package/dist/components/kemet-button/styles.js +73 -0
- package/dist/components/kemet-button/styles.js.map +1 -0
- package/dist/components/kemet-button/types.d.ts +10 -0
- package/dist/components/kemet-button/types.js +2 -0
- package/dist/components/kemet-button/types.js.map +1 -0
- package/dist/components/kemet-card/kemet-card.d.ts +47 -0
- package/dist/components/kemet-card/kemet-card.js +17 -21
- package/dist/components/kemet-card/kemet-card.js.map +1 -0
- package/dist/components/kemet-card/styles.d.ts +1 -0
- package/dist/components/kemet-card/styles.js +2 -2
- package/dist/components/kemet-card/styles.js.map +1 -0
- package/dist/components/kemet-card/types.d.ts +3 -0
- package/dist/components/kemet-card/types.js +2 -0
- package/dist/components/kemet-card/types.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel-current.d.ts +26 -0
- package/dist/components/kemet-carousel/kemet-carousel-current.js +32 -34
- package/dist/components/kemet-carousel/kemet-carousel-current.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel-first.d.ts +25 -0
- package/dist/components/kemet-carousel/kemet-carousel-first.js +30 -35
- package/dist/components/kemet-carousel/kemet-carousel-first.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel-last.d.ts +25 -0
- package/dist/components/kemet-carousel/kemet-carousel-last.js +30 -35
- package/dist/components/kemet-carousel/kemet-carousel-last.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel-link.d.ts +31 -0
- package/dist/components/kemet-carousel/kemet-carousel-link.js +40 -41
- package/dist/components/kemet-carousel/kemet-carousel-link.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel-next.d.ts +25 -0
- package/dist/components/kemet-carousel/kemet-carousel-next.js +30 -35
- package/dist/components/kemet-carousel/kemet-carousel-next.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel-prev.d.ts +25 -0
- package/dist/components/kemet-carousel/kemet-carousel-prev.js +30 -35
- package/dist/components/kemet-carousel/kemet-carousel-prev.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel-slide.d.ts +29 -0
- package/dist/components/kemet-carousel/kemet-carousel-slide.js +38 -39
- package/dist/components/kemet-carousel/kemet-carousel-slide.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel-total.d.ts +26 -0
- package/dist/components/kemet-carousel/kemet-carousel-total.js +32 -34
- package/dist/components/kemet-carousel/kemet-carousel-total.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel.d.ts +101 -0
- package/dist/components/kemet-carousel/kemet-carousel.js +326 -340
- package/dist/components/kemet-carousel/kemet-carousel.js.map +1 -0
- package/dist/components/kemet-carousel/styles.d.ts +1 -0
- package/dist/components/kemet-carousel/styles.js +2 -2
- package/dist/components/kemet-carousel/styles.js.map +1 -0
- package/dist/components/kemet-carousel/types.d.ts +21 -0
- package/dist/components/kemet-carousel/types.js +2 -0
- package/dist/components/kemet-carousel/types.js.map +1 -0
- package/dist/components/kemet-checkbox/kemet-checkbox.d.ts +71 -0
- package/dist/components/kemet-checkbox/kemet-checkbox.js +118 -217
- package/dist/components/kemet-checkbox/kemet-checkbox.js.map +1 -0
- package/dist/components/kemet-checkbox/styles.d.ts +1 -0
- package/dist/components/kemet-checkbox/styles.js +83 -0
- package/dist/components/kemet-checkbox/styles.js.map +1 -0
- package/dist/components/kemet-checkbox/types.d.ts +15 -0
- package/dist/components/kemet-checkbox/types.js +2 -0
- package/dist/components/kemet-checkbox/types.js.map +1 -0
- package/dist/components/kemet-combo/kemet-combo.d.ts +50 -0
- package/dist/components/kemet-combo/kemet-combo.js +111 -175
- package/dist/components/kemet-combo/kemet-combo.js.map +1 -0
- package/dist/components/kemet-combo/styles.d.ts +1 -0
- package/dist/components/kemet-combo/styles.js +44 -0
- package/dist/components/kemet-combo/styles.js.map +1 -0
- package/dist/components/kemet-combo/types.d.ts +5 -0
- package/dist/components/kemet-combo/types.js +2 -0
- package/dist/components/kemet-combo/types.js.map +1 -0
- package/dist/components/kemet-count/kemet-count.d.ts +39 -0
- package/dist/components/kemet-count/kemet-count.js +79 -82
- package/dist/components/kemet-count/kemet-count.js.map +1 -0
- package/dist/components/kemet-draggable/kemet-draggable.d.ts +42 -0
- package/dist/components/kemet-draggable/kemet-draggable.js +111 -114
- package/dist/components/kemet-draggable/kemet-draggable.js.map +1 -0
- package/dist/components/kemet-draggable/types.d.ts +6 -0
- package/dist/components/kemet-draggable/types.js +2 -0
- package/dist/components/kemet-draggable/types.js.map +1 -0
- package/dist/components/kemet-drawer/kemet-drawer.d.ts +48 -0
- package/dist/components/kemet-drawer/kemet-drawer.js +50 -65
- package/dist/components/kemet-drawer/kemet-drawer.js.map +1 -0
- package/dist/components/kemet-drawer/styles.d.ts +2 -0
- package/dist/components/kemet-drawer/styles.js +3 -5
- package/dist/components/kemet-drawer/styles.js.map +1 -0
- package/dist/components/kemet-drawer/types.d.ts +8 -0
- package/dist/components/kemet-drawer/types.js +2 -0
- package/dist/components/kemet-drawer/types.js.map +1 -0
- package/dist/components/kemet-fab/kemet-fab.d.ts +49 -0
- package/dist/components/kemet-fab/kemet-fab.js +64 -67
- package/dist/components/kemet-fab/kemet-fab.js.map +1 -0
- package/dist/components/kemet-fab/styles.d.ts +1 -0
- package/dist/components/kemet-fab/styles.js +5 -5
- package/dist/components/kemet-fab/styles.js.map +1 -0
- package/dist/components/kemet-fab/types.d.ts +8 -0
- package/dist/components/kemet-fab/types.js +2 -0
- package/dist/components/kemet-fab/types.js.map +1 -0
- package/dist/components/kemet-field/kemet-field.d.ts +61 -0
- package/dist/components/kemet-field/kemet-field.js +102 -182
- package/dist/components/kemet-field/kemet-field.js.map +1 -0
- package/dist/components/kemet-field/styles.d.ts +1 -0
- package/dist/components/kemet-field/styles.js +61 -0
- package/dist/components/kemet-field/styles.js.map +1 -0
- package/dist/components/kemet-field/types.d.ts +13 -0
- package/dist/components/kemet-field/types.js +2 -0
- package/dist/components/kemet-field/types.js.map +1 -0
- package/dist/components/kemet-flipcard/kemet-flipcard-trigger.d.ts +21 -0
- package/dist/components/kemet-flipcard/kemet-flipcard-trigger.js +29 -39
- package/dist/components/kemet-flipcard/kemet-flipcard-trigger.js.map +1 -0
- package/dist/components/kemet-flipcard/kemet-flipcard.d.ts +52 -0
- package/dist/components/kemet-flipcard/kemet-flipcard.js +97 -173
- package/dist/components/kemet-flipcard/kemet-flipcard.js.map +1 -0
- package/dist/components/kemet-flipcard/styles.d.ts +1 -0
- package/dist/components/kemet-flipcard/styles.js +85 -0
- package/dist/components/kemet-flipcard/styles.js.map +1 -0
- package/dist/components/kemet-flipcard/types.d.ts +7 -0
- package/dist/components/kemet-flipcard/types.js +2 -0
- package/dist/components/kemet-flipcard/types.js.map +1 -0
- package/dist/components/kemet-icon/kemet-icon.d.ts +28 -0
- package/dist/components/kemet-icon/kemet-icon.js +86 -101
- package/dist/components/kemet-icon/kemet-icon.js.map +1 -0
- package/dist/components/kemet-icon/styles.d.ts +1 -0
- package/dist/components/kemet-icon/styles.js +9 -0
- package/dist/components/kemet-icon/styles.js.map +1 -0
- package/dist/components/kemet-icon/types.d.ts +5 -0
- package/dist/components/kemet-icon/types.js +2 -0
- package/dist/components/kemet-icon/types.js.map +1 -0
- package/dist/components/kemet-input/kemet-input.d.ts +193 -0
- package/dist/components/kemet-input/kemet-input.js +296 -447
- package/dist/components/kemet-input/kemet-input.js.map +1 -0
- package/dist/components/kemet-input/styles.d.ts +1 -0
- package/dist/components/kemet-input/styles.js +115 -0
- package/dist/components/kemet-input/styles.js.map +1 -0
- package/dist/components/kemet-input/types.d.ts +35 -0
- package/dist/components/kemet-input/types.js +2 -0
- package/dist/components/kemet-input/types.js.map +1 -0
- package/dist/components/kemet-modal/kemet-modal-close.d.ts +21 -0
- package/dist/components/kemet-modal/kemet-modal-close.js +27 -30
- package/dist/components/kemet-modal/kemet-modal-close.js.map +1 -0
- package/dist/components/kemet-modal/kemet-modal.d.ts +49 -0
- package/dist/components/kemet-modal/kemet-modal.js +101 -115
- package/dist/components/kemet-modal/kemet-modal.js.map +1 -0
- package/dist/components/kemet-modal/styles.d.ts +2 -0
- package/dist/components/kemet-modal/styles.js +4 -4
- package/dist/components/kemet-modal/styles.js.map +1 -0
- package/dist/components/kemet-modal/types.d.ts +8 -0
- package/dist/components/kemet-modal/types.js +2 -0
- package/dist/components/kemet-modal/types.js.map +1 -0
- package/dist/components/kemet-password/kemet-password.d.ts +77 -0
- package/dist/components/kemet-password/kemet-password.js +142 -144
- package/dist/components/kemet-password/kemet-password.js.map +1 -0
- package/dist/components/kemet-password/styles.d.ts +1 -0
- package/dist/components/kemet-password/styles.js +5 -5
- package/dist/components/kemet-password/styles.js.map +1 -0
- package/dist/components/kemet-password/types.d.ts +10 -0
- package/dist/components/kemet-password/types.js +2 -0
- package/dist/components/kemet-password/types.js.map +1 -0
- package/dist/components/kemet-popper/kemet-popper-close.d.ts +22 -0
- package/dist/components/kemet-popper/kemet-popper-close.js +49 -0
- package/dist/components/kemet-popper/kemet-popper-close.js.map +1 -0
- package/dist/components/kemet-popper/kemet-popper.d.ts +63 -0
- package/dist/components/kemet-popper/kemet-popper.js +182 -0
- package/dist/components/kemet-popper/kemet-popper.js.map +1 -0
- package/dist/components/kemet-popper/styles.d.ts +1 -0
- package/dist/components/kemet-popper/styles.effects.d.ts +8 -0
- package/dist/components/{kemet-popover → kemet-popper}/styles.effects.js +9 -16
- package/dist/components/kemet-popper/styles.effects.js.map +1 -0
- package/dist/components/kemet-popper/styles.js +28 -0
- package/dist/components/kemet-popper/styles.js.map +1 -0
- package/dist/components/kemet-popper/types.d.ts +3 -0
- package/dist/components/kemet-popper/types.js +2 -0
- package/dist/components/kemet-popper/types.js.map +1 -0
- package/dist/components/kemet-radio/kemet-radio.d.ts +56 -0
- package/dist/components/kemet-radio/kemet-radio.js +76 -153
- package/dist/components/kemet-radio/kemet-radio.js.map +1 -0
- package/dist/components/kemet-radio/kemet-radios.d.ts +49 -0
- package/dist/components/kemet-radio/kemet-radios.js +112 -178
- package/dist/components/kemet-radio/kemet-radios.js.map +1 -0
- package/dist/components/kemet-radio/styles.d.ts +2 -0
- package/dist/components/kemet-radio/styles.js +102 -0
- package/dist/components/kemet-radio/styles.js.map +1 -0
- package/dist/components/kemet-radio/types.d.ts +20 -0
- package/dist/components/kemet-radio/types.js +2 -0
- package/dist/components/kemet-radio/types.js.map +1 -0
- package/dist/components/kemet-rotator/kemet-rotator.d.ts +40 -0
- package/dist/components/kemet-rotator/kemet-rotator.js +91 -180
- package/dist/components/kemet-rotator/kemet-rotator.js.map +1 -0
- package/dist/components/kemet-rotator/styles.d.ts +1 -0
- package/dist/components/kemet-rotator/styles.js +72 -0
- package/dist/components/kemet-rotator/styles.js.map +1 -0
- package/dist/components/kemet-rotator/types.d.ts +9 -0
- package/dist/components/kemet-rotator/types.js +2 -0
- package/dist/components/kemet-rotator/types.js.map +1 -0
- package/dist/components/kemet-scroll-link/kemet-scroll-link.d.ts +31 -0
- package/dist/components/kemet-scroll-link/kemet-scroll-link.js +62 -79
- package/dist/components/kemet-scroll-link/kemet-scroll-link.js.map +1 -0
- package/dist/components/kemet-scroll-link/types.d.ts +6 -0
- package/dist/components/kemet-scroll-link/types.js +2 -0
- package/dist/components/kemet-scroll-link/types.js.map +1 -0
- package/dist/components/kemet-scroll-nav/kemet-scroll-nav.d.ts +34 -0
- package/dist/components/kemet-scroll-nav/kemet-scroll-nav.js +49 -86
- package/dist/components/kemet-scroll-nav/kemet-scroll-nav.js.map +1 -0
- package/dist/components/kemet-scroll-nav/styles.d.ts +1 -0
- package/dist/components/kemet-scroll-nav/styles.js +26 -0
- package/dist/components/kemet-scroll-nav/styles.js.map +1 -0
- package/dist/components/kemet-scroll-nav/types.d.ts +6 -0
- package/dist/components/kemet-scroll-nav/types.js +2 -0
- package/dist/components/kemet-scroll-nav/types.js.map +1 -0
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.d.ts +44 -0
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js +79 -124
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js.map +1 -0
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap-slide.d.ts +30 -0
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap-slide.js +36 -47
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap-slide.js.map +1 -0
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap.d.ts +46 -0
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap.js +93 -164
- package/dist/components/kemet-scroll-snap/kemet-scroll-snap.js.map +1 -0
- package/dist/components/kemet-scroll-snap/styles.d.ts +2 -0
- package/dist/components/kemet-scroll-snap/styles.js +74 -0
- package/dist/components/kemet-scroll-snap/styles.js.map +1 -0
- package/dist/components/kemet-scroll-snap/types.d.ts +20 -0
- package/dist/components/kemet-scroll-snap/types.js +2 -0
- package/dist/components/kemet-scroll-snap/types.js.map +1 -0
- package/dist/components/kemet-select/kemet-option.d.ts +29 -0
- package/dist/components/kemet-select/kemet-option.js +28 -33
- package/dist/components/kemet-select/kemet-option.js.map +1 -0
- package/dist/components/kemet-select/kemet-select.d.ts +110 -0
- package/dist/components/kemet-select/kemet-select.js +179 -265
- package/dist/components/kemet-select/kemet-select.js.map +1 -0
- package/dist/components/kemet-select/styles.d.ts +1 -0
- package/dist/components/kemet-select/styles.js +73 -0
- package/dist/components/kemet-select/styles.js.map +1 -0
- package/dist/components/kemet-select/types.d.ts +20 -0
- package/dist/components/kemet-select/types.js +2 -0
- package/dist/components/kemet-select/types.js.map +1 -0
- package/dist/components/kemet-sortable/kemet-sortable-item.d.ts +21 -0
- package/dist/components/kemet-sortable/kemet-sortable-item.js +21 -39
- package/dist/components/kemet-sortable/kemet-sortable-item.js.map +1 -0
- package/dist/components/kemet-sortable/kemet-sortable.d.ts +25 -0
- package/dist/components/kemet-sortable/kemet-sortable.js +61 -79
- package/dist/components/kemet-sortable/kemet-sortable.js.map +1 -0
- package/dist/components/kemet-sortable/styles.d.ts +2 -0
- package/dist/components/kemet-sortable/styles.js +22 -0
- package/dist/components/kemet-sortable/styles.js.map +1 -0
- package/dist/components/kemet-sortable/types.d.ts +3 -0
- package/dist/components/kemet-sortable/types.js +2 -0
- package/dist/components/kemet-sortable/types.js.map +1 -0
- package/dist/components/kemet-svgs/kemet-svg.d.ts +38 -0
- package/dist/components/kemet-svgs/kemet-svg.js +76 -90
- package/dist/components/kemet-svgs/kemet-svg.js.map +1 -0
- package/dist/components/kemet-svgs/kemet-svgs.d.ts +27 -0
- package/dist/components/kemet-svgs/kemet-svgs.js +39 -48
- package/dist/components/kemet-svgs/kemet-svgs.js.map +1 -0
- package/dist/components/kemet-svgs/types.d.ts +10 -0
- package/dist/components/kemet-svgs/types.js +2 -0
- package/dist/components/kemet-svgs/types.js.map +1 -0
- package/dist/components/kemet-tabs/kemet-tab-panel.d.ts +27 -0
- package/dist/components/kemet-tabs/kemet-tab-panel.js +36 -76
- package/dist/components/kemet-tabs/kemet-tab-panel.js.map +1 -0
- package/dist/components/kemet-tabs/kemet-tab.d.ts +37 -0
- package/dist/components/kemet-tabs/kemet-tab.js +57 -92
- package/dist/components/kemet-tabs/kemet-tab.js.map +1 -0
- package/dist/components/kemet-tabs/kemet-tabs.d.ts +95 -0
- package/dist/components/kemet-tabs/kemet-tabs.js +456 -472
- package/dist/components/kemet-tabs/kemet-tabs.js.map +1 -0
- package/dist/components/kemet-tabs/styles.d.ts +3 -0
- package/dist/components/kemet-tabs/styles.js +57 -3
- package/dist/components/kemet-tabs/styles.js.map +1 -0
- package/dist/components/kemet-tabs/types.d.ts +29 -0
- package/dist/components/kemet-tabs/types.js +2 -0
- package/dist/components/kemet-tabs/types.js.map +1 -0
- package/dist/components/kemet-textarea/kemet-textarea.d.ts +123 -0
- package/dist/components/kemet-textarea/kemet-textarea.js +235 -308
- package/dist/components/kemet-textarea/kemet-textarea.js.map +1 -0
- package/dist/components/kemet-textarea/styles.d.ts +1 -0
- package/dist/components/kemet-textarea/styles.js +69 -0
- package/dist/components/kemet-textarea/styles.js.map +1 -0
- package/dist/components/kemet-textarea/types.d.ts +20 -0
- package/dist/components/kemet-textarea/types.js +2 -0
- package/dist/components/kemet-textarea/types.js.map +1 -0
- package/dist/components/kemet-toggle/kemet-toggle.d.ts +60 -0
- package/dist/components/kemet-toggle/kemet-toggle.js +73 -169
- package/dist/components/kemet-toggle/kemet-toggle.js.map +1 -0
- package/dist/components/kemet-toggle/styles.d.ts +1 -0
- package/dist/components/kemet-toggle/styles.js +84 -0
- package/dist/components/kemet-toggle/styles.js.map +1 -0
- package/dist/components/kemet-toggle/types.d.ts +10 -0
- package/dist/components/kemet-toggle/types.js +2 -0
- package/dist/components/kemet-toggle/types.js.map +1 -0
- package/dist/components/kemet-tooltip/kemet-tooltip.d.ts +33 -0
- package/dist/components/kemet-tooltip/kemet-tooltip.js +68 -0
- package/dist/components/kemet-tooltip/kemet-tooltip.js.map +1 -0
- package/dist/components/kemet-tooltip/styles.d.ts +1 -0
- package/dist/components/kemet-tooltip/styles.js +61 -0
- package/dist/components/kemet-tooltip/styles.js.map +1 -0
- package/dist/components/kemet-tooltip/types.d.ts +3 -0
- package/dist/components/kemet-tooltip/types.js +2 -0
- package/dist/components/kemet-tooltip/types.js.map +1 -0
- package/dist/components/kemet-tracker/kemet-tracker-step.d.ts +63 -0
- package/dist/components/kemet-tracker/kemet-tracker-step.js +75 -76
- package/dist/components/kemet-tracker/kemet-tracker-step.js.map +1 -0
- package/dist/components/kemet-tracker/kemet-tracker.d.ts +26 -0
- package/dist/components/kemet-tracker/kemet-tracker.js +59 -65
- package/dist/components/kemet-tracker/kemet-tracker.js.map +1 -0
- package/dist/components/kemet-tracker/styles.d.ts +1 -0
- package/dist/components/kemet-tracker/styles.js +2 -2
- package/dist/components/kemet-tracker/styles.js.map +1 -0
- package/dist/components/kemet-tracker/types.d.ts +13 -0
- package/dist/components/kemet-tracker/types.js +2 -0
- package/dist/components/kemet-tracker/types.js.map +1 -0
- package/dist/components/kemet-upload/kemet-upload-file.d.ts +46 -0
- package/dist/components/kemet-upload/kemet-upload-file.js +69 -117
- package/dist/components/kemet-upload/kemet-upload-file.js.map +1 -0
- package/dist/components/kemet-upload/kemet-upload.d.ts +58 -0
- package/dist/components/kemet-upload/kemet-upload.js +105 -169
- package/dist/components/kemet-upload/kemet-upload.js.map +1 -0
- package/dist/components/kemet-upload/styles.d.ts +3 -0
- package/dist/components/kemet-upload/styles.js +117 -1
- package/dist/components/kemet-upload/styles.js.map +1 -0
- package/dist/components/kemet-upload/types.d.ts +21 -0
- package/dist/components/kemet-upload/types.js +2 -0
- package/dist/components/kemet-upload/types.js.map +1 -0
- package/dist/kemet-components.bundle.js +88 -0
- package/dist/kemet-components.bundle.js.map +1 -0
- package/dist/kemet-components.cjs +8910 -7781
- package/dist/kemet-components.js +8717 -7582
- package/dist/src/components/kemet-accordion/kemet-accordion-panel.d.ts +51 -0
- package/dist/src/components/kemet-accordion/kemet-accordion-panel.js +136 -0
- package/dist/src/components/kemet-accordion/kemet-accordion-panel.js.map +1 -0
- package/dist/src/components/kemet-accordion/kemet-accordion.d.ts +37 -0
- package/dist/src/components/kemet-accordion/kemet-accordion.js +129 -0
- package/dist/src/components/kemet-accordion/kemet-accordion.js.map +1 -0
- package/dist/src/components/kemet-accordion/stories.d.ts +10 -0
- package/dist/src/components/kemet-accordion/stories.js +44 -0
- package/dist/src/components/kemet-accordion/stories.js.map +1 -0
- package/dist/src/components/kemet-accordion/styles.d.ts +2 -0
- package/dist/src/components/kemet-accordion/styles.js +42 -0
- package/dist/src/components/kemet-accordion/styles.js.map +1 -0
- package/dist/src/components/kemet-accordion/types.d.ts +9 -0
- package/dist/src/components/kemet-accordion/types.js +2 -0
- package/dist/src/components/kemet-accordion/types.js.map +1 -0
- package/dist/src/components/kemet-alert/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-alert/docs/stories.js +77 -0
- package/dist/src/components/kemet-alert/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-alert/kemet-alert.d.ts +52 -0
- package/dist/src/components/kemet-alert/kemet-alert.js +108 -0
- package/dist/src/components/kemet-alert/kemet-alert.js.map +1 -0
- package/dist/src/components/kemet-alert/styles.d.ts +1 -0
- package/dist/src/components/kemet-alert/styles.js +104 -0
- package/dist/src/components/kemet-alert/styles.js.map +1 -0
- package/dist/src/components/kemet-alert/types.d.ts +10 -0
- package/dist/src/components/kemet-alert/types.js +2 -0
- package/dist/src/components/kemet-alert/types.js.map +1 -0
- package/dist/src/components/kemet-avatar/docs/stories.d.ts +11 -0
- package/dist/src/components/kemet-avatar/docs/stories.js +86 -0
- package/dist/src/components/kemet-avatar/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-avatar/kemet-avatar.d.ts +43 -0
- package/dist/src/components/kemet-avatar/kemet-avatar.js +78 -0
- package/dist/src/components/kemet-avatar/kemet-avatar.js.map +1 -0
- package/dist/src/components/kemet-avatar/kemet-avatars.d.ts +20 -0
- package/dist/src/components/kemet-avatar/kemet-avatars.js +25 -0
- package/dist/src/components/kemet-avatar/kemet-avatars.js.map +1 -0
- package/dist/src/components/kemet-avatar/styles.d.ts +2 -0
- package/dist/src/components/kemet-avatar/styles.js +58 -0
- package/dist/src/components/kemet-avatar/styles.js.map +1 -0
- package/dist/src/components/kemet-avatar/types.d.ts +8 -0
- package/dist/src/components/kemet-avatar/types.js +2 -0
- package/dist/src/components/kemet-avatar/types.js.map +1 -0
- package/dist/src/components/kemet-badge/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-badge/docs/stories.js +40 -0
- package/dist/src/components/kemet-badge/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-badge/kemet-badge.d.ts +30 -0
- package/dist/src/components/kemet-badge/kemet-badge.js +55 -0
- package/dist/src/components/kemet-badge/kemet-badge.js.map +1 -0
- package/dist/src/components/kemet-badge/styles.d.ts +1 -0
- package/dist/src/components/kemet-badge/styles.js +40 -0
- package/dist/src/components/kemet-badge/styles.js.map +1 -0
- package/dist/src/components/kemet-badge/types.d.ts +6 -0
- package/dist/src/components/kemet-badge/types.js +2 -0
- package/dist/src/components/kemet-badge/types.js.map +1 -0
- package/dist/src/components/kemet-button/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-button/docs/stories.js +51 -0
- package/dist/src/components/kemet-button/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-button/kemet-button.d.ts +89 -0
- package/dist/src/components/kemet-button/kemet-button.js +153 -0
- package/dist/src/components/kemet-button/kemet-button.js.map +1 -0
- package/dist/src/components/kemet-button/styles.d.ts +1 -0
- package/dist/src/components/kemet-button/styles.js +73 -0
- package/dist/src/components/kemet-button/styles.js.map +1 -0
- package/dist/src/components/kemet-button/types.d.ts +10 -0
- package/dist/src/components/kemet-button/types.js +2 -0
- package/dist/src/components/kemet-button/types.js.map +1 -0
- package/dist/src/components/kemet-card/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-card/docs/stories.js +108 -0
- package/dist/src/components/kemet-card/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-card/kemet-card.d.ts +47 -0
- package/dist/src/components/kemet-card/kemet-card.js +65 -0
- package/dist/src/components/kemet-card/kemet-card.js.map +1 -0
- package/dist/src/components/kemet-card/styles.d.ts +1 -0
- package/dist/src/components/kemet-card/styles.js +63 -0
- package/dist/src/components/kemet-card/styles.js.map +1 -0
- package/dist/src/components/kemet-card/types.d.ts +3 -0
- package/dist/src/components/kemet-card/types.js +2 -0
- package/dist/src/components/kemet-card/types.js.map +1 -0
- package/dist/src/components/kemet-carousel/docs/stories.d.ts +17 -0
- package/dist/src/components/kemet-carousel/docs/stories.js +168 -0
- package/dist/src/components/kemet-carousel/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-current.d.ts +26 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-current.js +44 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-current.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-first.d.ts +25 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-first.js +50 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-first.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-last.d.ts +25 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-last.js +50 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-last.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-link.d.ts +31 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-link.js +64 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-link.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-next.d.ts +25 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-next.js +50 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-next.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-prev.d.ts +25 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-prev.js +50 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-prev.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-slide.d.ts +29 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-slide.js +53 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-slide.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-total.d.ts +26 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-total.js +44 -0
- package/dist/src/components/kemet-carousel/kemet-carousel-total.js.map +1 -0
- package/dist/src/components/kemet-carousel/kemet-carousel.d.ts +114 -0
- package/dist/src/components/kemet-carousel/kemet-carousel.js +410 -0
- package/dist/src/components/kemet-carousel/kemet-carousel.js.map +1 -0
- package/dist/src/components/kemet-carousel/styles.d.ts +1 -0
- package/dist/src/components/kemet-carousel/styles.js +66 -0
- package/dist/src/components/kemet-carousel/styles.js.map +1 -0
- package/dist/src/components/kemet-carousel/types.d.ts +21 -0
- package/dist/src/components/kemet-carousel/types.js +2 -0
- package/dist/src/components/kemet-carousel/types.js.map +1 -0
- package/dist/src/components/kemet-checkbox/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-checkbox/docs/stories.js +45 -0
- package/dist/src/components/kemet-checkbox/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-checkbox/kemet-checkbox.d.ts +71 -0
- package/dist/src/components/kemet-checkbox/kemet-checkbox.js +192 -0
- package/dist/src/components/kemet-checkbox/kemet-checkbox.js.map +1 -0
- package/dist/src/components/kemet-checkbox/styles.d.ts +1 -0
- package/dist/src/components/kemet-checkbox/styles.js +83 -0
- package/dist/src/components/kemet-checkbox/styles.js.map +1 -0
- package/dist/src/components/kemet-checkbox/types.d.ts +15 -0
- package/dist/src/components/kemet-checkbox/types.js +2 -0
- package/dist/src/components/kemet-checkbox/types.js.map +1 -0
- package/dist/src/components/kemet-combo/docs/stories.d.ts +11 -0
- package/dist/src/components/kemet-combo/docs/stories.js +30 -0
- package/dist/src/components/kemet-combo/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-combo/kemet-combo.d.ts +50 -0
- package/dist/src/components/kemet-combo/kemet-combo.js +162 -0
- package/dist/src/components/kemet-combo/kemet-combo.js.map +1 -0
- package/dist/src/components/kemet-combo/styles.d.ts +1 -0
- package/dist/src/components/kemet-combo/styles.js +44 -0
- package/dist/src/components/kemet-combo/styles.js.map +1 -0
- package/dist/src/components/kemet-combo/types.d.ts +5 -0
- package/dist/src/components/kemet-combo/types.js +2 -0
- package/dist/src/components/kemet-combo/types.js.map +1 -0
- package/dist/src/components/kemet-count/docs/stories.d.ts +11 -0
- package/dist/src/components/kemet-count/docs/stories.js +51 -0
- package/dist/src/components/kemet-count/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-count/kemet-count.d.ts +39 -0
- package/dist/src/components/kemet-count/kemet-count.js +98 -0
- package/dist/src/components/kemet-count/kemet-count.js.map +1 -0
- package/dist/src/components/kemet-draggable/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-draggable/docs/stories.js +32 -0
- package/dist/src/components/kemet-draggable/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-draggable/kemet-draggable.d.ts +49 -0
- package/dist/src/components/kemet-draggable/kemet-draggable.js +137 -0
- package/dist/src/components/kemet-draggable/kemet-draggable.js.map +1 -0
- package/dist/src/components/kemet-draggable/types.d.ts +6 -0
- package/dist/src/components/kemet-draggable/types.js +2 -0
- package/dist/src/components/kemet-draggable/types.js.map +1 -0
- package/dist/src/components/kemet-drawer/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-drawer/docs/stories.js +91 -0
- package/dist/src/components/kemet-drawer/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-drawer/kemet-drawer.d.ts +48 -0
- package/dist/src/components/kemet-drawer/kemet-drawer.js +95 -0
- package/dist/src/components/kemet-drawer/kemet-drawer.js.map +1 -0
- package/dist/src/components/kemet-drawer/styles.d.ts +2 -0
- package/dist/src/components/kemet-drawer/styles.js +314 -0
- package/dist/src/components/kemet-drawer/styles.js.map +1 -0
- package/dist/src/components/kemet-drawer/types.d.ts +8 -0
- package/dist/src/components/kemet-drawer/types.js +2 -0
- package/dist/src/components/kemet-drawer/types.js.map +1 -0
- package/dist/src/components/kemet-fab/docs/stories.d.ts +11 -0
- package/dist/src/components/kemet-fab/docs/stories.js +87 -0
- package/dist/src/components/kemet-fab/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-fab/kemet-fab.d.ts +49 -0
- package/dist/src/components/kemet-fab/kemet-fab.js +107 -0
- package/dist/src/components/kemet-fab/kemet-fab.js.map +1 -0
- package/dist/src/components/kemet-fab/styles.d.ts +1 -0
- package/dist/src/components/kemet-fab/styles.js +95 -0
- package/dist/src/components/kemet-fab/styles.js.map +1 -0
- package/dist/src/components/kemet-fab/types.d.ts +8 -0
- package/dist/src/components/kemet-fab/types.js +2 -0
- package/dist/src/components/kemet-fab/types.js.map +1 -0
- package/dist/src/components/kemet-field/docs/stories.d.ts +15 -0
- package/dist/src/components/kemet-field/docs/stories.js +105 -0
- package/dist/src/components/kemet-field/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-field/kemet-field.d.ts +61 -0
- package/dist/src/components/kemet-field/kemet-field.js +144 -0
- package/dist/src/components/kemet-field/kemet-field.js.map +1 -0
- package/dist/src/components/kemet-field/styles.d.ts +1 -0
- package/dist/src/components/kemet-field/styles.js +61 -0
- package/dist/src/components/kemet-field/styles.js.map +1 -0
- package/dist/src/components/kemet-field/types.d.ts +13 -0
- package/dist/src/components/kemet-field/types.js +2 -0
- package/dist/src/components/kemet-field/types.js.map +1 -0
- package/dist/src/components/kemet-flipcard/docs/stories.d.ts +11 -0
- package/dist/src/components/kemet-flipcard/docs/stories.js +109 -0
- package/dist/src/components/kemet-flipcard/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-flipcard/kemet-flipcard-trigger.d.ts +21 -0
- package/dist/src/components/kemet-flipcard/kemet-flipcard-trigger.js +42 -0
- package/dist/src/components/kemet-flipcard/kemet-flipcard-trigger.js.map +1 -0
- package/dist/src/components/kemet-flipcard/kemet-flipcard.d.ts +52 -0
- package/dist/src/components/kemet-flipcard/kemet-flipcard.js +131 -0
- package/dist/src/components/kemet-flipcard/kemet-flipcard.js.map +1 -0
- package/dist/src/components/kemet-flipcard/styles.d.ts +1 -0
- package/dist/src/components/kemet-flipcard/styles.js +85 -0
- package/dist/src/components/kemet-flipcard/styles.js.map +1 -0
- package/dist/src/components/kemet-flipcard/types.d.ts +7 -0
- package/dist/src/components/kemet-flipcard/types.js +2 -0
- package/dist/src/components/kemet-flipcard/types.js.map +1 -0
- package/dist/src/components/kemet-icon/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-icon/docs/stories.js +34 -0
- package/dist/src/components/kemet-icon/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-icon/kemet-icon.d.ts +28 -0
- package/dist/src/components/kemet-icon/kemet-icon.js +114 -0
- package/dist/src/components/kemet-icon/kemet-icon.js.map +1 -0
- package/dist/src/components/kemet-icon/styles.d.ts +1 -0
- package/dist/src/components/kemet-icon/styles.js +9 -0
- package/dist/src/components/kemet-icon/styles.js.map +1 -0
- package/dist/src/components/kemet-icon/types.d.ts +5 -0
- package/dist/src/components/kemet-icon/types.js +2 -0
- package/dist/src/components/kemet-icon/types.js.map +1 -0
- package/dist/src/components/kemet-input/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-input/docs/stories.js +142 -0
- package/dist/src/components/kemet-input/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-input/kemet-input.d.ts +193 -0
- package/dist/src/components/kemet-input/kemet-input.js +417 -0
- package/dist/src/components/kemet-input/kemet-input.js.map +1 -0
- package/dist/src/components/kemet-input/styles.d.ts +1 -0
- package/dist/src/components/kemet-input/styles.js +115 -0
- package/dist/src/components/kemet-input/styles.js.map +1 -0
- package/dist/src/components/kemet-input/types.d.ts +35 -0
- package/dist/src/components/kemet-input/types.js +2 -0
- package/dist/src/components/kemet-input/types.js.map +1 -0
- package/dist/src/components/kemet-modal/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-modal/docs/stories.js +101 -0
- package/dist/src/components/kemet-modal/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-modal/kemet-modal-close.d.ts +21 -0
- package/dist/src/components/kemet-modal/kemet-modal-close.js +40 -0
- package/dist/src/components/kemet-modal/kemet-modal-close.js.map +1 -0
- package/dist/src/components/kemet-modal/kemet-modal.d.ts +49 -0
- package/dist/src/components/kemet-modal/kemet-modal.js +131 -0
- package/dist/src/components/kemet-modal/kemet-modal.js.map +1 -0
- package/dist/src/components/kemet-modal/styles.d.ts +2 -0
- package/dist/src/components/kemet-modal/styles.js +267 -0
- package/dist/src/components/kemet-modal/styles.js.map +1 -0
- package/dist/src/components/kemet-modal/types.d.ts +8 -0
- package/dist/src/components/kemet-modal/types.js +2 -0
- package/dist/src/components/kemet-modal/types.js.map +1 -0
- package/dist/src/components/kemet-password/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-password/docs/stories.js +37 -0
- package/dist/src/components/kemet-password/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-password/kemet-password.d.ts +77 -0
- package/dist/src/components/kemet-password/kemet-password.js +184 -0
- package/dist/src/components/kemet-password/kemet-password.js.map +1 -0
- package/dist/src/components/kemet-password/styles.d.ts +1 -0
- package/dist/src/components/kemet-password/styles.js +80 -0
- package/dist/src/components/kemet-password/styles.js.map +1 -0
- package/dist/src/components/kemet-password/types.d.ts +10 -0
- package/dist/src/components/kemet-password/types.js +2 -0
- package/dist/src/components/kemet-password/types.js.map +1 -0
- package/dist/src/components/kemet-popper/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-popper/docs/stories.js +72 -0
- package/dist/src/components/kemet-popper/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-popper/kemet-popper-close.d.ts +22 -0
- package/dist/src/components/kemet-popper/kemet-popper-close.js +49 -0
- package/dist/src/components/kemet-popper/kemet-popper-close.js.map +1 -0
- package/dist/src/components/kemet-popper/kemet-popper.d.ts +63 -0
- package/dist/src/components/kemet-popper/kemet-popper.js +182 -0
- package/dist/src/components/kemet-popper/kemet-popper.js.map +1 -0
- package/dist/src/components/kemet-popper/styles.d.ts +1 -0
- package/dist/src/components/kemet-popper/styles.effects.d.ts +8 -0
- package/dist/src/components/kemet-popper/styles.effects.js +306 -0
- package/dist/src/components/kemet-popper/styles.effects.js.map +1 -0
- package/dist/src/components/kemet-popper/styles.js +28 -0
- package/dist/src/components/kemet-popper/styles.js.map +1 -0
- package/dist/src/components/kemet-popper/types.d.ts +3 -0
- package/dist/src/components/kemet-popper/types.js +2 -0
- package/dist/src/components/kemet-popper/types.js.map +1 -0
- package/dist/src/components/kemet-radio/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-radio/docs/stories.js +40 -0
- package/dist/src/components/kemet-radio/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-radio/kemet-radio.d.ts +56 -0
- package/dist/src/components/kemet-radio/kemet-radio.js +129 -0
- package/dist/src/components/kemet-radio/kemet-radio.js.map +1 -0
- package/dist/src/components/kemet-radio/kemet-radios.d.ts +49 -0
- package/dist/src/components/kemet-radio/kemet-radios.js +143 -0
- package/dist/src/components/kemet-radio/kemet-radios.js.map +1 -0
- package/dist/src/components/kemet-radio/styles.d.ts +2 -0
- package/dist/src/components/kemet-radio/styles.js +102 -0
- package/dist/src/components/kemet-radio/styles.js.map +1 -0
- package/dist/src/components/kemet-radio/types.d.ts +20 -0
- package/dist/src/components/kemet-radio/types.js +2 -0
- package/dist/src/components/kemet-radio/types.js.map +1 -0
- package/dist/src/components/kemet-rotator/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-rotator/docs/stories.js +46 -0
- package/dist/src/components/kemet-rotator/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-rotator/kemet-rotator.d.ts +40 -0
- package/dist/src/components/kemet-rotator/kemet-rotator.js +122 -0
- package/dist/src/components/kemet-rotator/kemet-rotator.js.map +1 -0
- package/dist/src/components/kemet-rotator/styles.d.ts +1 -0
- package/dist/src/components/kemet-rotator/styles.js +72 -0
- package/dist/src/components/kemet-rotator/styles.js.map +1 -0
- package/dist/src/components/kemet-rotator/types.d.ts +9 -0
- package/dist/src/components/kemet-rotator/types.js +2 -0
- package/dist/src/components/kemet-rotator/types.js.map +1 -0
- package/dist/src/components/kemet-scroll-link/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-scroll-link/docs/stories.js +97 -0
- package/dist/src/components/kemet-scroll-link/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-scroll-link/kemet-scroll-link.d.ts +31 -0
- package/dist/src/components/kemet-scroll-link/kemet-scroll-link.js +82 -0
- package/dist/src/components/kemet-scroll-link/kemet-scroll-link.js.map +1 -0
- package/dist/src/components/kemet-scroll-link/types.d.ts +6 -0
- package/dist/src/components/kemet-scroll-link/types.js +2 -0
- package/dist/src/components/kemet-scroll-link/types.js.map +1 -0
- package/dist/src/components/kemet-scroll-nav/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-scroll-nav/docs/stories.js +162 -0
- package/dist/src/components/kemet-scroll-nav/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-scroll-nav/kemet-scroll-nav.d.ts +34 -0
- package/dist/src/components/kemet-scroll-nav/kemet-scroll-nav.js +70 -0
- package/dist/src/components/kemet-scroll-nav/kemet-scroll-nav.js.map +1 -0
- package/dist/src/components/kemet-scroll-nav/styles.d.ts +1 -0
- package/dist/src/components/kemet-scroll-nav/styles.js +27 -0
- package/dist/src/components/kemet-scroll-nav/styles.js.map +1 -0
- package/dist/src/components/kemet-scroll-nav/types.d.ts +6 -0
- package/dist/src/components/kemet-scroll-nav/types.js +2 -0
- package/dist/src/components/kemet-scroll-nav/types.js.map +1 -0
- package/dist/src/components/kemet-scroll-snap/docs/stories.d.ts +11 -0
- package/dist/src/components/kemet-scroll-snap/docs/stories.js +131 -0
- package/dist/src/components/kemet-scroll-snap/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-paginator.d.ts +44 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js +120 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js.map +1 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-slide.d.ts +30 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-slide.js +53 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-slide.js.map +1 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap.d.ts +46 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap.js +122 -0
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap.js.map +1 -0
- package/dist/src/components/kemet-scroll-snap/styles.d.ts +2 -0
- package/dist/src/components/kemet-scroll-snap/styles.js +74 -0
- package/dist/src/components/kemet-scroll-snap/styles.js.map +1 -0
- package/dist/src/components/kemet-scroll-snap/types.d.ts +20 -0
- package/dist/src/components/kemet-scroll-snap/types.js +2 -0
- package/dist/src/components/kemet-scroll-snap/types.js.map +1 -0
- package/dist/src/components/kemet-select/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-select/docs/stories.js +57 -0
- package/dist/src/components/kemet-select/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-select/kemet-option.d.ts +29 -0
- package/dist/src/components/kemet-select/kemet-option.js +45 -0
- package/dist/src/components/kemet-select/kemet-option.js.map +1 -0
- package/dist/src/components/kemet-select/kemet-select.d.ts +110 -0
- package/dist/src/components/kemet-select/kemet-select.js +239 -0
- package/dist/src/components/kemet-select/kemet-select.js.map +1 -0
- package/dist/src/components/kemet-select/styles.d.ts +1 -0
- package/dist/src/components/kemet-select/styles.js +73 -0
- package/dist/src/components/kemet-select/styles.js.map +1 -0
- package/dist/src/components/kemet-select/types.d.ts +20 -0
- package/dist/src/components/kemet-select/types.js +2 -0
- package/dist/src/components/kemet-select/types.js.map +1 -0
- package/dist/src/components/kemet-sortable/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-sortable/docs/stories.js +34 -0
- package/dist/src/components/kemet-sortable/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-sortable/kemet-sortable-item.d.ts +21 -0
- package/dist/src/components/kemet-sortable/kemet-sortable-item.js +30 -0
- package/dist/src/components/kemet-sortable/kemet-sortable-item.js.map +1 -0
- package/dist/src/components/kemet-sortable/kemet-sortable.d.ts +25 -0
- package/dist/src/components/kemet-sortable/kemet-sortable.js +77 -0
- package/dist/src/components/kemet-sortable/kemet-sortable.js.map +1 -0
- package/dist/src/components/kemet-sortable/styles.d.ts +2 -0
- package/dist/src/components/kemet-sortable/styles.js +22 -0
- package/dist/src/components/kemet-sortable/styles.js.map +1 -0
- package/dist/src/components/kemet-sortable/types.d.ts +3 -0
- package/dist/src/components/kemet-sortable/types.js +2 -0
- package/dist/src/components/kemet-sortable/types.js.map +1 -0
- package/dist/src/components/kemet-svgs/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-svgs/docs/stories.js +67 -0
- package/dist/src/components/kemet-svgs/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-svgs/kemet-svg.d.ts +38 -0
- package/dist/src/components/kemet-svgs/kemet-svg.js +97 -0
- package/dist/src/components/kemet-svgs/kemet-svg.js.map +1 -0
- package/dist/src/components/kemet-svgs/kemet-svgs.d.ts +27 -0
- package/dist/src/components/kemet-svgs/kemet-svgs.js +51 -0
- package/dist/src/components/kemet-svgs/kemet-svgs.js.map +1 -0
- package/dist/src/components/kemet-svgs/types.d.ts +10 -0
- package/dist/src/components/kemet-svgs/types.js +2 -0
- package/dist/src/components/kemet-svgs/types.js.map +1 -0
- package/dist/src/components/kemet-tabs/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-tabs/docs/stories.js +142 -0
- package/dist/src/components/kemet-tabs/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-tabs/kemet-tab-panel.d.ts +27 -0
- package/dist/src/components/kemet-tabs/kemet-tab-panel.js +52 -0
- package/dist/src/components/kemet-tabs/kemet-tab-panel.js.map +1 -0
- package/dist/src/components/kemet-tabs/kemet-tab.d.ts +37 -0
- package/dist/src/components/kemet-tabs/kemet-tab.js +79 -0
- package/dist/src/components/kemet-tabs/kemet-tab.js.map +1 -0
- package/dist/src/components/kemet-tabs/kemet-tabs.d.ts +91 -0
- package/dist/src/components/kemet-tabs/kemet-tabs.js +523 -0
- package/dist/src/components/kemet-tabs/kemet-tabs.js.map +1 -0
- package/dist/src/components/kemet-tabs/styles.d.ts +3 -0
- package/dist/src/components/kemet-tabs/styles.js +268 -0
- package/dist/src/components/kemet-tabs/styles.js.map +1 -0
- package/dist/src/components/kemet-tabs/types.d.ts +27 -0
- package/dist/src/components/kemet-tabs/types.js +2 -0
- package/dist/src/components/kemet-tabs/types.js.map +1 -0
- package/dist/src/components/kemet-textarea/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-textarea/docs/stories.js +88 -0
- package/dist/src/components/kemet-textarea/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-textarea/kemet-textarea.d.ts +123 -0
- package/dist/src/components/kemet-textarea/kemet-textarea.js +293 -0
- package/dist/src/components/kemet-textarea/kemet-textarea.js.map +1 -0
- package/dist/src/components/kemet-textarea/styles.d.ts +1 -0
- package/dist/src/components/kemet-textarea/styles.js +69 -0
- package/dist/src/components/kemet-textarea/styles.js.map +1 -0
- package/dist/src/components/kemet-textarea/types.d.ts +20 -0
- package/dist/src/components/kemet-textarea/types.js +2 -0
- package/dist/src/components/kemet-textarea/types.js.map +1 -0
- package/dist/src/components/kemet-toggle/docs/stories.d.ts +9 -0
- package/dist/src/components/kemet-toggle/docs/stories.js +58 -0
- package/dist/src/components/kemet-toggle/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-toggle/kemet-toggle.d.ts +60 -0
- package/dist/src/components/kemet-toggle/kemet-toggle.js +130 -0
- package/dist/src/components/kemet-toggle/kemet-toggle.js.map +1 -0
- package/dist/src/components/kemet-toggle/styles.d.ts +1 -0
- package/dist/src/components/kemet-toggle/styles.js +84 -0
- package/dist/src/components/kemet-toggle/styles.js.map +1 -0
- package/dist/src/components/kemet-toggle/types.d.ts +10 -0
- package/dist/src/components/kemet-toggle/types.js +2 -0
- package/dist/src/components/kemet-toggle/types.js.map +1 -0
- package/dist/src/components/kemet-tooltip/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-tooltip/docs/stories.js +72 -0
- package/dist/src/components/kemet-tooltip/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-tooltip/kemet-tooltip.d.ts +33 -0
- package/dist/src/components/kemet-tooltip/kemet-tooltip.js +68 -0
- package/dist/src/components/kemet-tooltip/kemet-tooltip.js.map +1 -0
- package/dist/src/components/kemet-tooltip/styles.d.ts +1 -0
- package/dist/src/components/kemet-tooltip/styles.js +61 -0
- package/dist/src/components/kemet-tooltip/styles.js.map +1 -0
- package/dist/src/components/kemet-tooltip/types.d.ts +3 -0
- package/dist/src/components/kemet-tooltip/types.js +2 -0
- package/dist/src/components/kemet-tooltip/types.js.map +1 -0
- package/dist/src/components/kemet-tracker/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-tracker/docs/stories.js +46 -0
- package/dist/src/components/kemet-tracker/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-tracker/kemet-tracker-step.d.ts +63 -0
- package/dist/src/components/kemet-tracker/kemet-tracker-step.js +127 -0
- package/dist/src/components/kemet-tracker/kemet-tracker-step.js.map +1 -0
- package/dist/src/components/kemet-tracker/kemet-tracker.d.ts +26 -0
- package/dist/src/components/kemet-tracker/kemet-tracker.js +70 -0
- package/dist/src/components/kemet-tracker/kemet-tracker.js.map +1 -0
- package/dist/src/components/kemet-tracker/styles.d.ts +1 -0
- package/dist/src/components/kemet-tracker/styles.js +111 -0
- package/dist/src/components/kemet-tracker/styles.js.map +1 -0
- package/dist/src/components/kemet-tracker/types.d.ts +13 -0
- package/dist/src/components/kemet-tracker/types.js +2 -0
- package/dist/src/components/kemet-tracker/types.js.map +1 -0
- package/dist/src/components/kemet-upload/docs/stories.d.ts +10 -0
- package/dist/src/components/kemet-upload/docs/stories.js +57 -0
- package/dist/src/components/kemet-upload/docs/stories.js.map +1 -0
- package/dist/src/components/kemet-upload/kemet-upload-file.d.ts +46 -0
- package/dist/src/components/kemet-upload/kemet-upload-file.js +110 -0
- package/dist/src/components/kemet-upload/kemet-upload-file.js.map +1 -0
- package/dist/src/components/kemet-upload/kemet-upload.d.ts +58 -0
- package/dist/src/components/kemet-upload/kemet-upload.js +154 -0
- package/dist/src/components/kemet-upload/kemet-upload.js.map +1 -0
- package/dist/src/components/kemet-upload/styles.d.ts +3 -0
- package/dist/src/components/kemet-upload/styles.js +169 -0
- package/dist/src/components/kemet-upload/styles.js.map +1 -0
- package/dist/src/components/kemet-upload/types.d.ts +21 -0
- package/dist/src/components/kemet-upload/types.js +2 -0
- package/dist/src/components/kemet-upload/types.js.map +1 -0
- package/dist/src/stories/styles/borders/borders.stories.d.ts +5 -0
- package/dist/src/stories/styles/borders/borders.stories.js +46 -0
- package/dist/src/stories/styles/borders/borders.stories.js.map +1 -0
- package/dist/src/stories/styles/borders/stories.d.ts +5 -0
- package/dist/src/stories/styles/borders/stories.js +46 -0
- package/dist/src/stories/styles/borders/stories.js.map +1 -0
- package/dist/src/stories/styles/borders.stories.d.ts +5 -0
- package/dist/src/stories/styles/borders.stories.js +46 -0
- package/dist/src/stories/styles/borders.stories.js.map +1 -0
- package/dist/src/stories/styles/elevation/elevation.stories.d.ts +1 -0
- package/dist/src/stories/styles/elevation/elevation.stories.js +15 -0
- package/dist/src/stories/styles/elevation/elevation.stories.js.map +1 -0
- package/dist/src/stories/styles/elevation/stories.d.ts +5 -0
- package/dist/src/stories/styles/elevation/stories.js +21 -0
- package/dist/src/stories/styles/elevation/stories.js.map +1 -0
- package/dist/src/stories/styles/flexcolumn/stories.d.ts +6 -0
- package/dist/src/stories/styles/flexcolumn/stories.js +44 -0
- package/dist/src/stories/styles/flexcolumn/stories.js.map +1 -0
- package/dist/src/stories/styles/flexgrid/stories.d.ts +6 -0
- package/dist/src/stories/styles/flexgrid/stories.js +44 -0
- package/dist/src/stories/styles/flexgrid/stories.js.map +1 -0
- package/dist/src/stories/styles/flexlist/stories.d.ts +7 -0
- package/dist/src/stories/styles/flexlist/stories.js +45 -0
- package/dist/src/stories/styles/flexlist/stories.js.map +1 -0
- package/dist/src/stories/styles/flexrow/stories.d.ts +10 -0
- package/dist/src/stories/styles/flexrow/stories.js +77 -0
- package/dist/src/stories/styles/flexrow/stories.js.map +1 -0
- package/dist/src/stories/styles/spacing/stories.d.ts +6 -0
- package/dist/src/stories/styles/spacing/stories.js +49 -0
- package/dist/src/stories/styles/spacing/stories.js.map +1 -0
- package/dist/src/stories/styles/typealignment/stories.d.ts +5 -0
- package/dist/src/stories/styles/typealignment/stories.js +14 -0
- package/dist/src/stories/styles/typealignment/stories.js.map +1 -0
- package/dist/src/stories/styles/typography/stories.d.ts +6 -0
- package/dist/src/stories/styles/typography/stories.js +41 -0
- package/dist/src/stories/styles/typography/stories.js.map +1 -0
- package/dist/src/stories/styles/visibility/stories.d.ts +6 -0
- package/dist/src/stories/styles/visibility/stories.js +60 -0
- package/dist/src/stories/styles/visibility/stories.js.map +1 -0
- package/dist/src/stories/templates/bootstrap/stories.d.ts +6 -0
- package/dist/src/stories/templates/bootstrap/stories.js +159 -0
- package/dist/src/stories/templates/bootstrap/stories.js.map +1 -0
- package/dist/src/stories/templates/foundation/stories.d.ts +8 -0
- package/dist/src/stories/templates/foundation/stories.js +911 -0
- package/dist/src/stories/templates/foundation/stories.js.map +1 -0
- package/dist/src/utilities/controllers/forms.d.ts +11 -0
- package/dist/src/utilities/controllers/forms.js +102 -0
- package/dist/src/utilities/controllers/forms.js.map +1 -0
- package/dist/src/utilities/misc/constants.d.ts +5 -0
- package/dist/src/utilities/misc/constants.js +6 -0
- package/dist/src/utilities/misc/constants.js.map +1 -0
- package/dist/src/utilities/misc/events.d.ts +1 -0
- package/dist/src/utilities/misc/events.js +4 -0
- package/dist/src/utilities/misc/events.js.map +1 -0
- package/dist/styles/kemet.base.css +106 -0
- package/dist/styles/kemet.base.css.map +1 -0
- package/dist/styles/kemet.core.css +37 -762
- package/dist/styles/kemet.core.css.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/utilities/controllers/forms.d.ts +11 -0
- package/dist/utilities/controllers/forms.js +93 -114
- package/dist/utilities/controllers/forms.js.map +1 -0
- package/dist/utilities/misc/constants.d.ts +5 -0
- package/dist/utilities/misc/constants.js +6 -0
- package/dist/utilities/misc/constants.js.map +1 -0
- package/dist/utilities/misc/decorators.d.ts +1 -0
- package/dist/utilities/misc/decorators.js +5 -0
- package/dist/utilities/misc/decorators.js.map +1 -0
- package/dist/utilities/misc/events.d.ts +1 -0
- package/dist/utilities/misc/events.js +2 -3
- package/dist/utilities/misc/events.js.map +1 -0
- package/package.json +69 -76
- package/dist/components/kemet-popover/kemet-popover-close.js +0 -57
- package/dist/components/kemet-popover/kemet-popover.js +0 -418
- package/dist/components/kemet-popover/styles.tooltip.js +0 -96
- package/dist/kemet-components.min.js +0 -3689
- package/dist/styles/components/_config.scss +0 -4
- package/dist/styles/components/accordion.scss +0 -9
- package/dist/styles/components/drawer.scss +0 -11
- package/dist/styles/components/modal.scss +0 -8
- package/dist/styles/components/scrollsnap.scss +0 -11
- package/dist/styles/core/_config.scss +0 -354
- package/dist/styles/core/_helpers.scss +0 -407
- package/dist/styles/core/attributes.scss +0 -38
- package/dist/styles/core/base.scss +0 -38
- package/dist/styles/core/layout.scss +0 -169
- package/dist/styles/kemet.components.scss +0 -4
- package/dist/styles/kemet.core.scss +0 -3
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { html } from 'lit';
|
|
2
|
+
import '../kemet-rotator';
|
|
3
|
+
import '../../kemet-tabs/kemet-tabs';
|
|
4
|
+
import '../../kemet-tabs/kemet-tab';
|
|
5
|
+
import '../../kemet-tabs/kemet-tab-panel';
|
|
6
|
+
const meta = {
|
|
7
|
+
title: 'Components / Rotator',
|
|
8
|
+
component: 'kemet-rotator',
|
|
9
|
+
};
|
|
10
|
+
export default meta;
|
|
11
|
+
const Template = ({ message1 = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.', message2 = 'Praesent ornare porta nulla.', message3 = 'Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa.', effect = 'fade', rotationSpeed = 3, }) => html `
|
|
12
|
+
<kemet-rotator
|
|
13
|
+
effect="${effect}"
|
|
14
|
+
.rotation-speed=${rotationSpeed}
|
|
15
|
+
.messages="${[message1, message2, message3]}">
|
|
16
|
+
</kemet-rotator>
|
|
17
|
+
`;
|
|
18
|
+
export const Standard = {
|
|
19
|
+
render: args => Template(args),
|
|
20
|
+
args: {
|
|
21
|
+
message1: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
|
|
22
|
+
message2: 'Praesent ornare porta nulla.',
|
|
23
|
+
message3: 'Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa.',
|
|
24
|
+
effect: 'fade',
|
|
25
|
+
rotationSpeed: 3,
|
|
26
|
+
},
|
|
27
|
+
argTypes: {
|
|
28
|
+
message1: {
|
|
29
|
+
control: { type: 'text' },
|
|
30
|
+
},
|
|
31
|
+
message2: {
|
|
32
|
+
control: { type: 'text' },
|
|
33
|
+
},
|
|
34
|
+
message3: {
|
|
35
|
+
control: { type: 'text' },
|
|
36
|
+
},
|
|
37
|
+
effect: {
|
|
38
|
+
control: { type: 'select' },
|
|
39
|
+
options: ['fade', 'flip'],
|
|
40
|
+
},
|
|
41
|
+
rotationSpeed: {
|
|
42
|
+
control: { type: 'number' },
|
|
43
|
+
},
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../../src/components/kemet-rotator/docs/stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAG3B,OAAO,kBAAkB,CAAC;AAE1B,OAAO,6BAA6B,CAAC;AACrC,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,sBAAsB;IAC7B,SAAS,EAAE,eAAe;CAC3B,CAAC;AACF,eAAe,IAAI,CAAC;AAIpB,MAAM,QAAQ,GAAG,CAAC,EAChB,QAAQ,GAAG,0DAA0D,EACrE,QAAQ,GAAG,8BAA8B,EACzC,QAAQ,GAAG,yEAAyE,EACpF,MAAM,GAAG,MAAM,EACf,aAAa,GAAG,CAAC,GAClB,EAAE,EAAE,CAAC,IAAI,CAAA;;cAEI,MAAM;sBACE,aAAa;iBAClB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;;CAE9C,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAU;IAC7B,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC9B,IAAI,EAAE;QACJ,QAAQ,EAAE,0DAA0D;QACpE,QAAQ,EAAE,8BAA8B;QACxC,QAAQ,EAAE,yEAAyE;QACnF,MAAM,EAAE,MAAM;QACd,aAAa,EAAE,CAAC;KACjB;IACD,QAAQ,EAAE;QACR,QAAQ,EAAE;YACR,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SAC1B;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SAC1B;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SAC1B;QACD,MAAM,EAAE;YACN,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC3B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;SAC1B;QACD,aAAa,EAAE;YACb,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC5B;KACF;CACF,CAAC","sourcesContent":["import { html } from 'lit';\nimport type { Meta, StoryObj } from '@storybook/web-components';\n\nimport '../kemet-rotator';\n\nimport '../../kemet-tabs/kemet-tabs';\nimport '../../kemet-tabs/kemet-tab';\nimport '../../kemet-tabs/kemet-tab-panel';\n\nconst meta: Meta = {\n title: 'Components / Rotator',\n component: 'kemet-rotator',\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst Template = ({\n message1 = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',\n message2 = 'Praesent ornare porta nulla.',\n message3 = 'Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa.',\n effect = 'fade',\n rotationSpeed = 3,\n}) => html`\n <kemet-rotator\n effect=\"${effect}\"\n .rotation-speed=${rotationSpeed}\n .messages=\"${[message1, message2, message3]}\">\n </kemet-rotator>\n`;\n\nexport const Standard: Story = {\n render: args => Template(args),\n args: {\n message1: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',\n message2: 'Praesent ornare porta nulla.',\n message3: 'Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa.',\n effect: 'fade',\n rotationSpeed: 3,\n },\n argTypes: {\n message1: {\n control: { type: 'text' },\n },\n message2: {\n control: { type: 'text' },\n },\n message3: {\n control: { type: 'text' },\n },\n effect: {\n control: { type: 'select' },\n options: ['fade', 'flip'],\n },\n rotationSpeed: {\n control: { type: 'number' },\n },\n }\n};\n"]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
import { TypeEffect } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* @since 1.0.0
|
|
5
|
+
* @status stable
|
|
6
|
+
*
|
|
7
|
+
* @tagname kemet-rotator
|
|
8
|
+
* @summary A component that rotates through an array of text.
|
|
9
|
+
*
|
|
10
|
+
* @prop {number} activeSlide - The index number for the current slide.
|
|
11
|
+
* @prop {string} width - The width of the rotator block.
|
|
12
|
+
* @prop {string} height - The height of the rotator block.
|
|
13
|
+
* @prop {array} messages - Text in the rotator. Supports HTML.
|
|
14
|
+
* @prop {string} effect - The transition effect type.
|
|
15
|
+
* @prop {number} rotationSpeed - How fast, in seconds, each slide lasts. Stop the rotator with 0.
|
|
16
|
+
*
|
|
17
|
+
* @cssproperty --kemet-rotator-transition-speed - How long, in css time units, the transition effect lasts. Default: 500ms.
|
|
18
|
+
*
|
|
19
|
+
*/
|
|
20
|
+
export default class KemetRotator extends LitElement {
|
|
21
|
+
static styles: import("lit").CSSResult[];
|
|
22
|
+
activeSlide: number;
|
|
23
|
+
width: string;
|
|
24
|
+
height: string;
|
|
25
|
+
messages: any[];
|
|
26
|
+
effect: TypeEffect;
|
|
27
|
+
rotationSpeed: number;
|
|
28
|
+
prevSlide: number | null;
|
|
29
|
+
firstUpdated(): void;
|
|
30
|
+
updated(changed: any): void;
|
|
31
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
32
|
+
makeMessages(): import("lit-html").TemplateResult<1>[];
|
|
33
|
+
setDimensions(): void;
|
|
34
|
+
nextSlide(): void;
|
|
35
|
+
}
|
|
36
|
+
declare global {
|
|
37
|
+
interface HTMLElementTagNameMap {
|
|
38
|
+
'kemet-rotator': KemetRotator;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { html, LitElement } from 'lit';
|
|
3
|
+
import { customElement, property, state } from 'lit/decorators.js';
|
|
4
|
+
import { unsafeHTML } from 'lit/directives/unsafe-html.js';
|
|
5
|
+
import { stylesRotator } from './styles';
|
|
6
|
+
/**
|
|
7
|
+
* @since 1.0.0
|
|
8
|
+
* @status stable
|
|
9
|
+
*
|
|
10
|
+
* @tagname kemet-rotator
|
|
11
|
+
* @summary A component that rotates through an array of text.
|
|
12
|
+
*
|
|
13
|
+
* @prop {number} activeSlide - The index number for the current slide.
|
|
14
|
+
* @prop {string} width - The width of the rotator block.
|
|
15
|
+
* @prop {string} height - The height of the rotator block.
|
|
16
|
+
* @prop {array} messages - Text in the rotator. Supports HTML.
|
|
17
|
+
* @prop {string} effect - The transition effect type.
|
|
18
|
+
* @prop {number} rotationSpeed - How fast, in seconds, each slide lasts. Stop the rotator with 0.
|
|
19
|
+
*
|
|
20
|
+
* @cssproperty --kemet-rotator-transition-speed - How long, in css time units, the transition effect lasts. Default: 500ms.
|
|
21
|
+
*
|
|
22
|
+
*/
|
|
23
|
+
let KemetRotator = class KemetRotator extends LitElement {
|
|
24
|
+
constructor() {
|
|
25
|
+
super(...arguments);
|
|
26
|
+
this.activeSlide = 0;
|
|
27
|
+
this.width = 'auto';
|
|
28
|
+
this.height = 'auto';
|
|
29
|
+
this.messages = [];
|
|
30
|
+
this.effect = 'fade';
|
|
31
|
+
this.rotationSpeed = 3;
|
|
32
|
+
}
|
|
33
|
+
firstUpdated() {
|
|
34
|
+
// standard properties
|
|
35
|
+
this.prevSlide = null;
|
|
36
|
+
window.addEventListener('resize', this.setDimensions.bind(this));
|
|
37
|
+
}
|
|
38
|
+
updated(changed) {
|
|
39
|
+
const widthHasChanged = !!changed.get('width');
|
|
40
|
+
const heightHasChanged = !!changed.get('height');
|
|
41
|
+
this.setDimensions();
|
|
42
|
+
// only trigger slide updates when width and height has not changed
|
|
43
|
+
if (!widthHasChanged && !heightHasChanged) {
|
|
44
|
+
setTimeout(() => {
|
|
45
|
+
if (this.rotationSpeed > 0) {
|
|
46
|
+
this.nextSlide();
|
|
47
|
+
}
|
|
48
|
+
}, this.rotationSpeed * 1000);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
render() {
|
|
52
|
+
const setWidth = this.effect === 'flip' ? `width:${this.width};` : '';
|
|
53
|
+
const setHeight = this.effect === 'flip' ? `height:${this.height};` : '';
|
|
54
|
+
return html `
|
|
55
|
+
<span class="rotator" style="${setWidth} ${setHeight}">
|
|
56
|
+
${this.makeMessages()}
|
|
57
|
+
</span>
|
|
58
|
+
`;
|
|
59
|
+
}
|
|
60
|
+
makeMessages() {
|
|
61
|
+
const messages = this.messages.map((message, index) => {
|
|
62
|
+
const setActiveClass = this.activeSlide === index ? 'rotator__slide--active' : '';
|
|
63
|
+
const setPrevClass = this.prevSlide === index ? 'rotator__slide--prev' : '';
|
|
64
|
+
return html `
|
|
65
|
+
<span class="rotator__slide ${setActiveClass} ${setPrevClass}">
|
|
66
|
+
${unsafeHTML(message)}
|
|
67
|
+
</span>
|
|
68
|
+
`;
|
|
69
|
+
});
|
|
70
|
+
return messages;
|
|
71
|
+
}
|
|
72
|
+
setDimensions() {
|
|
73
|
+
if (this.effect === 'flip') {
|
|
74
|
+
this.width = `${this.offsetWidth}px`;
|
|
75
|
+
const slides = this.shadowRoot.querySelectorAll('.rotator__slide');
|
|
76
|
+
let tallest = 0;
|
|
77
|
+
slides.forEach((slide) => {
|
|
78
|
+
if (slide.offsetHeight > tallest) {
|
|
79
|
+
tallest = slide.offsetHeight;
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
this.height = `${tallest}px`;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
nextSlide() {
|
|
86
|
+
if (this.activeSlide < this.messages.length - 1) {
|
|
87
|
+
this.activeSlide += 1;
|
|
88
|
+
this.prevSlide = this.activeSlide - 1;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
this.activeSlide = 0;
|
|
92
|
+
this.prevSlide = this.messages.length - 1;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
KemetRotator.styles = [stylesRotator];
|
|
97
|
+
__decorate([
|
|
98
|
+
property({ type: Number })
|
|
99
|
+
], KemetRotator.prototype, "activeSlide", void 0);
|
|
100
|
+
__decorate([
|
|
101
|
+
property({ type: String })
|
|
102
|
+
], KemetRotator.prototype, "width", void 0);
|
|
103
|
+
__decorate([
|
|
104
|
+
property({ type: String })
|
|
105
|
+
], KemetRotator.prototype, "height", void 0);
|
|
106
|
+
__decorate([
|
|
107
|
+
property({ type: Array })
|
|
108
|
+
], KemetRotator.prototype, "messages", void 0);
|
|
109
|
+
__decorate([
|
|
110
|
+
property({ type: String, reflect: true })
|
|
111
|
+
], KemetRotator.prototype, "effect", void 0);
|
|
112
|
+
__decorate([
|
|
113
|
+
property({ type: Number, attribute: 'rotation-speed' })
|
|
114
|
+
], KemetRotator.prototype, "rotationSpeed", void 0);
|
|
115
|
+
__decorate([
|
|
116
|
+
state()
|
|
117
|
+
], KemetRotator.prototype, "prevSlide", void 0);
|
|
118
|
+
KemetRotator = __decorate([
|
|
119
|
+
customElement('kemet-rotator')
|
|
120
|
+
], KemetRotator);
|
|
121
|
+
export default KemetRotator;
|
|
122
|
+
//# sourceMappingURL=kemet-rotator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kemet-rotator.js","sourceRoot":"","sources":["../../../../src/components/kemet-rotator/kemet-rotator.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC;;;;;;;;;;;;;;;;GAgBG;AAGH,IAAqB,YAAY,GAAjC,MAAqB,YAAa,SAAQ,UAAU;IAApD;;QAIE,gBAAW,GAAW,CAAC,CAAC;QAGxB,UAAK,GAAW,MAAM,CAAC;QAGvB,WAAM,GAAW,MAAM,CAAC;QAGxB,aAAQ,GAAU,EAAE,CAAC;QAGrB,WAAM,GAAe,MAAM,CAAC;QAG5B,kBAAa,GAAW,CAAC,CAAC;IAiF5B,CAAC;IA3EC,YAAY;QACV,sBAAsB;QACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,CAAC,OAAO;QACb,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,gBAAgB,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEjD,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,mEAAmE;QACnE,IAAI,CAAC,eAAe,IAAI,CAAC,gBAAgB,EAAE;YACzC,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE;oBAC1B,IAAI,CAAC,SAAS,EAAE,CAAC;iBAClB;YACH,CAAC,EAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;SAC/B;IACH,CAAC;IAED,MAAM;QACJ,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAEzE,OAAO,IAAI,CAAA;qCACsB,QAAQ,IAAI,SAAS;UAChD,IAAI,CAAC,YAAY,EAAE;;KAExB,CAAC;IACJ,CAAC;IAED,YAAY;QACV,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YACpD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;YAE5E,OAAO,IAAI,CAAA;sCACqB,cAAc,IAAI,YAAY;YACxD,UAAU,CAAC,OAAO,CAAC;;OAExB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,aAAa;QACX,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE;YAC1B,IAAI,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC;YAErC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;YACnE,IAAI,OAAO,GAAG,CAAC,CAAC;YAEhB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAkB,EAAE,EAAE;gBACpC,IAAI,KAAK,CAAC,YAAY,GAAG,OAAO,EAAE;oBAChC,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC;iBAC9B;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC;SAC9B;IACH,CAAC;IAED,SAAS;QACP,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/C,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;SACvC;aAAM;YACL,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;SAC3C;IACH,CAAC;CACF,CAAA;AAnGQ,mBAAM,GAAG,CAAC,aAAa,CAAC,CAAC;AAGhC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;iDACH;AAGxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;2CACJ;AAGvB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4CACH;AAGxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;8CACL;AAGrB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4CACd;AAG5B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;mDAC9B;AAG1B;IADC,KAAK,EAAE;+CACiB;AAtBN,YAAY;IADhC,aAAa,CAAC,eAAe,CAAC;GACV,YAAY,CAoGhC;eApGoB,YAAY","sourcesContent":["import { html, LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\nimport { stylesRotator } from './styles';\nimport { TypeEffect } from './types';\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-rotator\n * @summary A component that rotates through an array of text.\n *\n * @prop {number} activeSlide - The index number for the current slide.\n * @prop {string} width - The width of the rotator block.\n * @prop {string} height - The height of the rotator block.\n * @prop {array} messages - Text in the rotator. Supports HTML.\n * @prop {string} effect - The transition effect type.\n * @prop {number} rotationSpeed - How fast, in seconds, each slide lasts. Stop the rotator with 0.\n *\n * @cssproperty --kemet-rotator-transition-speed - How long, in css time units, the transition effect lasts. Default: 500ms.\n *\n */\n\n@customElement('kemet-rotator')\nexport default class KemetRotator extends LitElement {\n static styles = [stylesRotator];\n\n @property({ type: Number })\n activeSlide: number = 0;\n\n @property({ type: String })\n width: string = 'auto';\n\n @property({ type: String })\n height: string = 'auto';\n\n @property({ type: Array })\n messages: any[] = [];\n\n @property({ type: String, reflect: true })\n effect: TypeEffect = 'fade';\n\n @property({ type: Number, attribute: 'rotation-speed' })\n rotationSpeed: number = 3;\n\n @state()\n prevSlide: number | null;\n\n\n firstUpdated() {\n // standard properties\n this.prevSlide = null;\n\n window.addEventListener('resize', this.setDimensions.bind(this));\n }\n\n updated(changed) {\n const widthHasChanged = !!changed.get('width');\n const heightHasChanged = !!changed.get('height');\n\n this.setDimensions();\n\n // only trigger slide updates when width and height has not changed\n if (!widthHasChanged && !heightHasChanged) {\n setTimeout(() => {\n if (this.rotationSpeed > 0) {\n this.nextSlide();\n }\n }, this.rotationSpeed * 1000);\n }\n }\n\n render() {\n const setWidth = this.effect === 'flip' ? `width:${this.width};` : '';\n const setHeight = this.effect === 'flip' ? `height:${this.height};` : '';\n\n return html`\n <span class=\"rotator\" style=\"${setWidth} ${setHeight}\">\n ${this.makeMessages()}\n </span>\n `;\n }\n\n makeMessages() {\n const messages = this.messages.map((message, index) => {\n const setActiveClass = this.activeSlide === index ? 'rotator__slide--active' : '';\n const setPrevClass = this.prevSlide === index ? 'rotator__slide--prev' : '';\n\n return html`\n <span class=\"rotator__slide ${setActiveClass} ${setPrevClass}\">\n ${unsafeHTML(message)}\n </span>\n `;\n });\n\n return messages;\n }\n\n setDimensions() {\n if (this.effect === 'flip') {\n this.width = `${this.offsetWidth}px`;\n\n const slides = this.shadowRoot.querySelectorAll('.rotator__slide');\n let tallest = 0;\n\n slides.forEach((slide: HTMLElement) => {\n if (slide.offsetHeight > tallest) {\n tallest = slide.offsetHeight;\n }\n });\n\n this.height = `${tallest}px`;\n }\n }\n\n nextSlide() {\n if (this.activeSlide < this.messages.length - 1) {\n this.activeSlide += 1;\n this.prevSlide = this.activeSlide - 1;\n } else {\n this.activeSlide = 0;\n this.prevSlide = this.messages.length - 1;\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-rotator': KemetRotator\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const stylesRotator: import("lit").CSSResult;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
export const stylesRotator = css `
|
|
3
|
+
:host {
|
|
4
|
+
display: flex;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.rotator__slide {
|
|
8
|
+
pointer-events: none;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.rotator__slide--active {
|
|
12
|
+
pointer-events: auto;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/* fade effect */
|
|
16
|
+
:host([effect="fade"]) .rotator {
|
|
17
|
+
display: inline-flex;
|
|
18
|
+
flex-wrap: nowrap;
|
|
19
|
+
flex-direction: row;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
:host([effect="fade"]) .rotator__slide {
|
|
23
|
+
width: 100%;
|
|
24
|
+
flex: none;
|
|
25
|
+
opacity: 0;
|
|
26
|
+
box-sizing: border-box;
|
|
27
|
+
transition: all var(--kemet-rotator-transition-speed, 500ms) ease;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
:host([effect="fade"]) .rotator__slide:not(:first-child) {
|
|
31
|
+
margin-left: -100%; /* this is the bulk of the overlay trick */
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
:host([effect="fade"]) .rotator__slide--active {
|
|
35
|
+
opacity: 1;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/* flip effect */
|
|
39
|
+
:host([effect="flip"]) .rotator {
|
|
40
|
+
display: flex;
|
|
41
|
+
position: relative;
|
|
42
|
+
|
|
43
|
+
perspective: 500;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
:host([effect="flip"]) .rotator__slide {
|
|
47
|
+
display: block;
|
|
48
|
+
width: auto;
|
|
49
|
+
position: absolute;
|
|
50
|
+
top: -20px;
|
|
51
|
+
left: 0;
|
|
52
|
+
|
|
53
|
+
opacity: 0;
|
|
54
|
+
|
|
55
|
+
transform: rotateX(90deg);
|
|
56
|
+
transform-origin: 0% 0%;
|
|
57
|
+
transition: all var(--kemet-rotator-transition-speed, 500ms) ease;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
:host([effect="flip"]) .rotator__slide--active {
|
|
61
|
+
top: 0;
|
|
62
|
+
opacity: 1;
|
|
63
|
+
|
|
64
|
+
transform: rotateX(0deg);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
:host([effect="flip"]) .rotator__slide--prev {
|
|
68
|
+
top: 40px;;
|
|
69
|
+
transform: rotateX(-90deg);
|
|
70
|
+
}
|
|
71
|
+
`;
|
|
72
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/kemet-rotator/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqE/B,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const stylesRotator = css`\n :host {\n display: flex;\n }\n\n .rotator__slide {\n pointer-events: none;\n }\n\n .rotator__slide--active {\n pointer-events: auto;\n }\n\n /* fade effect */\n :host([effect=\"fade\"]) .rotator {\n display: inline-flex;\n flex-wrap: nowrap;\n flex-direction: row;\n }\n\n :host([effect=\"fade\"]) .rotator__slide {\n width: 100%;\n flex: none;\n opacity: 0;\n box-sizing: border-box;\n transition: all var(--kemet-rotator-transition-speed, 500ms) ease;\n }\n\n :host([effect=\"fade\"]) .rotator__slide:not(:first-child) {\n margin-left: -100%; /* this is the bulk of the overlay trick */\n }\n\n :host([effect=\"fade\"]) .rotator__slide--active {\n opacity: 1;\n }\n\n /* flip effect */\n :host([effect=\"flip\"]) .rotator {\n display: flex;\n position: relative;\n\n perspective: 500;\n }\n\n :host([effect=\"flip\"]) .rotator__slide {\n display: block;\n width: auto;\n position: absolute;\n top: -20px;\n left: 0;\n\n opacity: 0;\n\n transform: rotateX(90deg);\n transform-origin: 0% 0%;\n transition: all var(--kemet-rotator-transition-speed, 500ms) ease;\n }\n\n :host([effect=\"flip\"]) .rotator__slide--active {\n top: 0;\n opacity: 1;\n\n transform: rotateX(0deg);\n }\n\n :host([effect=\"flip\"]) .rotator__slide--prev {\n top: 40px;;\n transform: rotateX(-90deg);\n }\n`;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/kemet-rotator/types.ts"],"names":[],"mappings":"","sourcesContent":["export type TypeEffect = 'fade' | 'flip';\n\nexport interface KemetRotator extends HTMLElement {\n activeSlide?: number,\n width?: string,\n height?: string,\n messages?: any[],\n effect?: TypeEffect,\n rotationSpeed?: number,\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components';
|
|
2
|
+
import '../kemet-scroll-link';
|
|
3
|
+
import '../../kemet-tabs/kemet-tabs';
|
|
4
|
+
import '../../kemet-tabs/kemet-tab';
|
|
5
|
+
import '../../kemet-tabs/kemet-tab-panel';
|
|
6
|
+
declare const meta: Meta;
|
|
7
|
+
export default meta;
|
|
8
|
+
declare type Story = StoryObj;
|
|
9
|
+
export declare const Standard: Story;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { html } from 'lit';
|
|
2
|
+
import '../kemet-scroll-link';
|
|
3
|
+
import '../../kemet-tabs/kemet-tabs';
|
|
4
|
+
import '../../kemet-tabs/kemet-tab';
|
|
5
|
+
import '../../kemet-tabs/kemet-tab-panel';
|
|
6
|
+
const meta = {
|
|
7
|
+
title: 'Components / Scroll Link',
|
|
8
|
+
component: 'kemet-scroll-link',
|
|
9
|
+
};
|
|
10
|
+
export default meta;
|
|
11
|
+
const Template = () => {
|
|
12
|
+
const scrollLinks = document.querySelectorAll('nav > kemet-scroll-link');
|
|
13
|
+
const article = document.querySelector('article');
|
|
14
|
+
scrollLinks.forEach((link) => {
|
|
15
|
+
link.yOffset = -72;
|
|
16
|
+
link.target = article.querySelector(`#${link.dataset.target}`);
|
|
17
|
+
});
|
|
18
|
+
return html `
|
|
19
|
+
<style>
|
|
20
|
+
body {
|
|
21
|
+
--nav-height: 72px;
|
|
22
|
+
line-height: 1.5;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
nav {
|
|
26
|
+
position: fixed;
|
|
27
|
+
top: 0;
|
|
28
|
+
left: 0;
|
|
29
|
+
padding: 0 2rem;
|
|
30
|
+
display: flex;
|
|
31
|
+
gap: 2rem;
|
|
32
|
+
align-items: center;
|
|
33
|
+
width: 100%;
|
|
34
|
+
height: var(--nav-height);
|
|
35
|
+
border-bottom: 1px solid gray;
|
|
36
|
+
background-color: var(--kemet-color-white-to-black);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
article {
|
|
40
|
+
margin-top: var(--nav-height);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
kemet-scroll-link {
|
|
44
|
+
color: var(--kemet-color-background);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.docs-story nav {
|
|
48
|
+
display: none;
|
|
49
|
+
}
|
|
50
|
+
</style>
|
|
51
|
+
|
|
52
|
+
<nav>
|
|
53
|
+
<kemet-scroll-link data-target="heading-1">Heading 1</kemet-scroll-link>
|
|
54
|
+
<kemet-scroll-link data-target="heading-2">Heading 2</kemet-scroll-link>
|
|
55
|
+
<kemet-scroll-link data-target="heading-3">Heading 3</kemet-scroll-link>
|
|
56
|
+
<kemet-scroll-link data-target="heading-4">Heading 4</kemet-scroll-link>
|
|
57
|
+
</nav>
|
|
58
|
+
|
|
59
|
+
<article>
|
|
60
|
+
<h2 id="heading-1">Heading 1</h2>
|
|
61
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare porta nulla. Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa. Suspendisse consectetur lorem id odio fringilla pretium. Curabitur finibus nulla augue. Fusce vitae ornare lorem. Vivamus quis lacus ullamcorper, vehicula felis pretium, iaculis leo. Duis eget condimentum enim. Praesent vel est ut nisl pulvinar suscipit sit amet in sapien. Donec euismod odio ornare nisi luctus dignissim. Pellentesque vehicula, elit vitae maximus dapibus, erat nunc ultrices leo, nec pretium felis odio ut ex. Phasellus sapien felis, lobortis eu aliquam quis, semper quis neque. Aliquam vestibulum arcu ut nisl lacinia, in placerat dolor congue. Vivamus varius tincidunt odio, at pellentesque eros cursus nec. Donec viverra nec tellus vitae placerat. Cras id gravida mauris. Quisque sit amet imperdiet nisi.</p>
|
|
62
|
+
<p>Sed eros ligula, blandit et iaculis et, faucibus in libero. Nunc augue dui, laoreet at porta ut, ultrices ac est. Duis at viverra metus. Phasellus pulvinar ligula sed aliquet pretium. Vestibulum erat risus, elementum ac imperdiet sed, semper eu sapien. Proin lobortis mauris ut ante tempor mattis. Donec dapibus interdum risus, eget malesuada arcu. Nulla facilisi. Maecenas aliquet ullamcorper tortor quis dapibus. Nunc facilisis augue vitae dictum semper. Etiam vehicula nec tortor non lobortis. Morbi hendrerit in nibh nec maximus. Nam convallis erat metus. In fermentum efficitur condimentum.</p>
|
|
63
|
+
<p>Vestibulum accumsan vulputate consectetur. Quisque ut malesuada arcu. Mauris ligula odio, commodo nec eros ultricies, semper varius dui. Donec facilisis a odio nec imperdiet. Pellentesque molestie leo in mi maximus feugiat. Sed quis arcu a velit laoreet viverra. Etiam suscipit lacus lacus, a pretium justo tincidunt in. Fusce eget mi turpis.</p>
|
|
64
|
+
<p>Ut molestie augue in eros eleifend hendrerit. Donec et laoreet lorem, sed porta arcu. Duis pharetra rhoncus ipsum eu pellentesque. Praesent bibendum bibendum risus maximus convallis. Curabitur nec libero eu velit cursus aliquam. Integer dapibus in eros pretium dignissim. Sed tortor justo, semper in pellentesque in, aliquet pellentesque sapien. Aliquam sem quam, pellentesque a erat ac, aliquet sagittis turpis. Suspendisse dignissim ante ante. Proin ac urna porta, auctor odio convallis, mollis orci. Donec scelerisque mauris non varius dapibus. Proin sollicitudin placerat consectetur.</p>
|
|
65
|
+
<p>Etiam egestas vulputate sem a dictum. Curabitur mattis ex ut turpis vehicula, nec auctor eros facilisis. Duis nisl augue, varius feugiat sem et, iaculis gravida enim. Nam luctus purus et dapibus mattis. Curabitur hendrerit risus non velit aliquet hendrerit. Nullam faucibus, sapien vitae egestas congue, metus lacus rhoncus leo, non malesuada justo ipsum eu felis. Aenean venenatis metus non tincidunt sollicitudin.</p>
|
|
66
|
+
|
|
67
|
+
<h2 id="heading-2">Heading 2</h2>
|
|
68
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare porta nulla. Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa. Suspendisse consectetur lorem id odio fringilla pretium. Curabitur finibus nulla augue. Fusce vitae ornare lorem. Vivamus quis lacus ullamcorper, vehicula felis pretium, iaculis leo. Duis eget condimentum enim. Praesent vel est ut nisl pulvinar suscipit sit amet in sapien. Donec euismod odio ornare nisi luctus dignissim. Pellentesque vehicula, elit vitae maximus dapibus, erat nunc ultrices leo, nec pretium felis odio ut ex. Phasellus sapien felis, lobortis eu aliquam quis, semper quis neque. Aliquam vestibulum arcu ut nisl lacinia, in placerat dolor congue. Vivamus varius tincidunt odio, at pellentesque eros cursus nec. Donec viverra nec tellus vitae placerat. Cras id gravida mauris. Quisque sit amet imperdiet nisi.</p>
|
|
69
|
+
<p>Sed eros ligula, blandit et iaculis et, faucibus in libero. Nunc augue dui, laoreet at porta ut, ultrices ac est. Duis at viverra metus. Phasellus pulvinar ligula sed aliquet pretium. Vestibulum erat risus, elementum ac imperdiet sed, semper eu sapien. Proin lobortis mauris ut ante tempor mattis. Donec dapibus interdum risus, eget malesuada arcu. Nulla facilisi. Maecenas aliquet ullamcorper tortor quis dapibus. Nunc facilisis augue vitae dictum semper. Etiam vehicula nec tortor non lobortis. Morbi hendrerit in nibh nec maximus. Nam convallis erat metus. In fermentum efficitur condimentum.</p>
|
|
70
|
+
<p>Vestibulum accumsan vulputate consectetur. Quisque ut malesuada arcu. Mauris ligula odio, commodo nec eros ultricies, semper varius dui. Donec facilisis a odio nec imperdiet. Pellentesque molestie leo in mi maximus feugiat. Sed quis arcu a velit laoreet viverra. Etiam suscipit lacus lacus, a pretium justo tincidunt in. Fusce eget mi turpis.</p>
|
|
71
|
+
<p>Ut molestie augue in eros eleifend hendrerit. Donec et laoreet lorem, sed porta arcu. Duis pharetra rhoncus ipsum eu pellentesque. Praesent bibendum bibendum risus maximus convallis. Curabitur nec libero eu velit cursus aliquam. Integer dapibus in eros pretium dignissim. Sed tortor justo, semper in pellentesque in, aliquet pellentesque sapien. Aliquam sem quam, pellentesque a erat ac, aliquet sagittis turpis. Suspendisse dignissim ante ante. Proin ac urna porta, auctor odio convallis, mollis orci. Donec scelerisque mauris non varius dapibus. Proin sollicitudin placerat consectetur.</p>
|
|
72
|
+
<p>Etiam egestas vulputate sem a dictum. Curabitur mattis ex ut turpis vehicula, nec auctor eros facilisis. Duis nisl augue, varius feugiat sem et, iaculis gravida enim. Nam luctus purus et dapibus mattis. Curabitur hendrerit risus non velit aliquet hendrerit. Nullam faucibus, sapien vitae egestas congue, metus lacus rhoncus leo, non malesuada justo ipsum eu felis. Aenean venenatis metus non tincidunt sollicitudin.</p>
|
|
73
|
+
|
|
74
|
+
<h2 id="heading-3">Heading 3</h2>
|
|
75
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare porta nulla. Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa. Suspendisse consectetur lorem id odio fringilla pretium. Curabitur finibus nulla augue. Fusce vitae ornare lorem. Vivamus quis lacus ullamcorper, vehicula felis pretium, iaculis leo. Duis eget condimentum enim. Praesent vel est ut nisl pulvinar suscipit sit amet in sapien. Donec euismod odio ornare nisi luctus dignissim. Pellentesque vehicula, elit vitae maximus dapibus, erat nunc ultrices leo, nec pretium felis odio ut ex. Phasellus sapien felis, lobortis eu aliquam quis, semper quis neque. Aliquam vestibulum arcu ut nisl lacinia, in placerat dolor congue. Vivamus varius tincidunt odio, at pellentesque eros cursus nec. Donec viverra nec tellus vitae placerat. Cras id gravida mauris. Quisque sit amet imperdiet nisi.</p>
|
|
76
|
+
<p>Sed eros ligula, blandit et iaculis et, faucibus in libero. Nunc augue dui, laoreet at porta ut, ultrices ac est. Duis at viverra metus. Phasellus pulvinar ligula sed aliquet pretium. Vestibulum erat risus, elementum ac imperdiet sed, semper eu sapien. Proin lobortis mauris ut ante tempor mattis. Donec dapibus interdum risus, eget malesuada arcu. Nulla facilisi. Maecenas aliquet ullamcorper tortor quis dapibus. Nunc facilisis augue vitae dictum semper. Etiam vehicula nec tortor non lobortis. Morbi hendrerit in nibh nec maximus. Nam convallis erat metus. In fermentum efficitur condimentum.</p>
|
|
77
|
+
<p>Vestibulum accumsan vulputate consectetur. Quisque ut malesuada arcu. Mauris ligula odio, commodo nec eros ultricies, semper varius dui. Donec facilisis a odio nec imperdiet. Pellentesque molestie leo in mi maximus feugiat. Sed quis arcu a velit laoreet viverra. Etiam suscipit lacus lacus, a pretium justo tincidunt in. Fusce eget mi turpis.</p>
|
|
78
|
+
<p>Ut molestie augue in eros eleifend hendrerit. Donec et laoreet lorem, sed porta arcu. Duis pharetra rhoncus ipsum eu pellentesque. Praesent bibendum bibendum risus maximus convallis. Curabitur nec libero eu velit cursus aliquam. Integer dapibus in eros pretium dignissim. Sed tortor justo, semper in pellentesque in, aliquet pellentesque sapien. Aliquam sem quam, pellentesque a erat ac, aliquet sagittis turpis. Suspendisse dignissim ante ante. Proin ac urna porta, auctor odio convallis, mollis orci. Donec scelerisque mauris non varius dapibus. Proin sollicitudin placerat consectetur.</p>
|
|
79
|
+
<p>Etiam egestas vulputate sem a dictum. Curabitur mattis ex ut turpis vehicula, nec auctor eros facilisis. Duis nisl augue, varius feugiat sem et, iaculis gravida enim. Nam luctus purus et dapibus mattis. Curabitur hendrerit risus non velit aliquet hendrerit. Nullam faucibus, sapien vitae egestas congue, metus lacus rhoncus leo, non malesuada justo ipsum eu felis. Aenean venenatis metus non tincidunt sollicitudin.</p>
|
|
80
|
+
|
|
81
|
+
<h2 id="heading-4">Heading 4</h2>
|
|
82
|
+
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare porta nulla. Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa. Suspendisse consectetur lorem id odio fringilla pretium. Curabitur finibus nulla augue. Fusce vitae ornare lorem. Vivamus quis lacus ullamcorper, vehicula felis pretium, iaculis leo. Duis eget condimentum enim. Praesent vel est ut nisl pulvinar suscipit sit amet in sapien. Donec euismod odio ornare nisi luctus dignissim. Pellentesque vehicula, elit vitae maximus dapibus, erat nunc ultrices leo, nec pretium felis odio ut ex. Phasellus sapien felis, lobortis eu aliquam quis, semper quis neque. Aliquam vestibulum arcu ut nisl lacinia, in placerat dolor congue. Vivamus varius tincidunt odio, at pellentesque eros cursus nec. Donec viverra nec tellus vitae placerat. Cras id gravida mauris. Quisque sit amet imperdiet nisi.</p>
|
|
83
|
+
<p>Sed eros ligula, blandit et iaculis et, faucibus in libero. Nunc augue dui, laoreet at porta ut, ultrices ac est. Duis at viverra metus. Phasellus pulvinar ligula sed aliquet pretium. Vestibulum erat risus, elementum ac imperdiet sed, semper eu sapien. Proin lobortis mauris ut ante tempor mattis. Donec dapibus interdum risus, eget malesuada arcu. Nulla facilisi. Maecenas aliquet ullamcorper tortor quis dapibus. Nunc facilisis augue vitae dictum semper. Etiam vehicula nec tortor non lobortis. Morbi hendrerit in nibh nec maximus. Nam convallis erat metus. In fermentum efficitur condimentum.</p>
|
|
84
|
+
<p>Vestibulum accumsan vulputate consectetur. Quisque ut malesuada arcu. Mauris ligula odio, commodo nec eros ultricies, semper varius dui. Donec facilisis a odio nec imperdiet. Pellentesque molestie leo in mi maximus feugiat. Sed quis arcu a velit laoreet viverra. Etiam suscipit lacus lacus, a pretium justo tincidunt in. Fusce eget mi turpis.</p>
|
|
85
|
+
<p>Ut molestie augue in eros eleifend hendrerit. Donec et laoreet lorem, sed porta arcu. Duis pharetra rhoncus ipsum eu pellentesque. Praesent bibendum bibendum risus maximus convallis. Curabitur nec libero eu velit cursus aliquam. Integer dapibus in eros pretium dignissim. Sed tortor justo, semper in pellentesque in, aliquet pellentesque sapien. Aliquam sem quam, pellentesque a erat ac, aliquet sagittis turpis. Suspendisse dignissim ante ante. Proin ac urna porta, auctor odio convallis, mollis orci. Donec scelerisque mauris non varius dapibus. Proin sollicitudin placerat consectetur.</p>
|
|
86
|
+
<p>Etiam egestas vulputate sem a dictum. Curabitur mattis ex ut turpis vehicula, nec auctor eros facilisis. Duis nisl augue, varius feugiat sem et, iaculis gravida enim. Nam luctus purus et dapibus mattis. Curabitur hendrerit risus non velit aliquet hendrerit. Nullam faucibus, sapien vitae egestas congue, metus lacus rhoncus leo, non malesuada justo ipsum eu felis. Aenean venenatis metus non tincidunt sollicitudin.</p>
|
|
87
|
+
</article>
|
|
88
|
+
|
|
89
|
+
<kemet-scroll-link>
|
|
90
|
+
<kemet-button>Scroll to Top</kemet-button>
|
|
91
|
+
</kemet-scroll-link>
|
|
92
|
+
`;
|
|
93
|
+
};
|
|
94
|
+
export const Standard = {
|
|
95
|
+
render: () => Template(),
|
|
96
|
+
};
|
|
97
|
+
//# sourceMappingURL=stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../../src/components/kemet-scroll-link/docs/stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAI3B,OAAO,sBAAsB,CAAC;AAE9B,OAAO,6BAA6B,CAAC;AACrC,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAG1C,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,0BAA0B;IACjC,SAAS,EAAE,mBAAmB;CAC/B,CAAC;AACF,eAAe,IAAI,CAAC;AAIpB,MAAM,QAAQ,GAAG,GAAG,EAAE;IACpB,MAAM,WAAW,GAAG,QAAQ,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAElD,WAAW,CAAC,OAAO,CAAC,CAAC,IAA8B,EAAE,EAAE;QACrD,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0EV,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAU;IAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE;CACzB,CAAC","sourcesContent":["import { html } from 'lit';\nimport type { Meta, StoryObj } from '@storybook/web-components';\nimport { KemetScrollLinkInterface } from '../types';\n\nimport '../kemet-scroll-link';\n\nimport '../../kemet-tabs/kemet-tabs';\nimport '../../kemet-tabs/kemet-tab';\nimport '../../kemet-tabs/kemet-tab-panel';\n\n\nconst meta: Meta = {\n title: 'Components / Scroll Link',\n component: 'kemet-scroll-link',\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst Template = () => {\n const scrollLinks = document.querySelectorAll('nav > kemet-scroll-link');\n const article = document.querySelector('article');\n\n scrollLinks.forEach((link: KemetScrollLinkInterface) => {\n link.yOffset = -72;\n link.target = article.querySelector(`#${link.dataset.target}`);\n });\n\n return html`\n <style>\n body {\n --nav-height: 72px;\n line-height: 1.5;\n }\n\n nav {\n position: fixed;\n top: 0;\n left: 0;\n padding: 0 2rem;\n display: flex;\n gap: 2rem;\n align-items: center;\n width: 100%;\n height: var(--nav-height);\n border-bottom: 1px solid gray;\n background-color: var(--kemet-color-white-to-black);\n }\n\n article {\n margin-top: var(--nav-height);\n }\n\n kemet-scroll-link {\n color: var(--kemet-color-background);\n }\n\n .docs-story nav {\n display: none;\n }\n </style>\n\n <nav>\n <kemet-scroll-link data-target=\"heading-1\">Heading 1</kemet-scroll-link>\n <kemet-scroll-link data-target=\"heading-2\">Heading 2</kemet-scroll-link>\n <kemet-scroll-link data-target=\"heading-3\">Heading 3</kemet-scroll-link>\n <kemet-scroll-link data-target=\"heading-4\">Heading 4</kemet-scroll-link>\n </nav>\n\n <article>\n <h2 id=\"heading-1\">Heading 1</h2>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare porta nulla. Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa. Suspendisse consectetur lorem id odio fringilla pretium. Curabitur finibus nulla augue. Fusce vitae ornare lorem. Vivamus quis lacus ullamcorper, vehicula felis pretium, iaculis leo. Duis eget condimentum enim. Praesent vel est ut nisl pulvinar suscipit sit amet in sapien. Donec euismod odio ornare nisi luctus dignissim. Pellentesque vehicula, elit vitae maximus dapibus, erat nunc ultrices leo, nec pretium felis odio ut ex. Phasellus sapien felis, lobortis eu aliquam quis, semper quis neque. Aliquam vestibulum arcu ut nisl lacinia, in placerat dolor congue. Vivamus varius tincidunt odio, at pellentesque eros cursus nec. Donec viverra nec tellus vitae placerat. Cras id gravida mauris. Quisque sit amet imperdiet nisi.</p>\n <p>Sed eros ligula, blandit et iaculis et, faucibus in libero. Nunc augue dui, laoreet at porta ut, ultrices ac est. Duis at viverra metus. Phasellus pulvinar ligula sed aliquet pretium. Vestibulum erat risus, elementum ac imperdiet sed, semper eu sapien. Proin lobortis mauris ut ante tempor mattis. Donec dapibus interdum risus, eget malesuada arcu. Nulla facilisi. Maecenas aliquet ullamcorper tortor quis dapibus. Nunc facilisis augue vitae dictum semper. Etiam vehicula nec tortor non lobortis. Morbi hendrerit in nibh nec maximus. Nam convallis erat metus. In fermentum efficitur condimentum.</p>\n <p>Vestibulum accumsan vulputate consectetur. Quisque ut malesuada arcu. Mauris ligula odio, commodo nec eros ultricies, semper varius dui. Donec facilisis a odio nec imperdiet. Pellentesque molestie leo in mi maximus feugiat. Sed quis arcu a velit laoreet viverra. Etiam suscipit lacus lacus, a pretium justo tincidunt in. Fusce eget mi turpis.</p>\n <p>Ut molestie augue in eros eleifend hendrerit. Donec et laoreet lorem, sed porta arcu. Duis pharetra rhoncus ipsum eu pellentesque. Praesent bibendum bibendum risus maximus convallis. Curabitur nec libero eu velit cursus aliquam. Integer dapibus in eros pretium dignissim. Sed tortor justo, semper in pellentesque in, aliquet pellentesque sapien. Aliquam sem quam, pellentesque a erat ac, aliquet sagittis turpis. Suspendisse dignissim ante ante. Proin ac urna porta, auctor odio convallis, mollis orci. Donec scelerisque mauris non varius dapibus. Proin sollicitudin placerat consectetur.</p>\n <p>Etiam egestas vulputate sem a dictum. Curabitur mattis ex ut turpis vehicula, nec auctor eros facilisis. Duis nisl augue, varius feugiat sem et, iaculis gravida enim. Nam luctus purus et dapibus mattis. Curabitur hendrerit risus non velit aliquet hendrerit. Nullam faucibus, sapien vitae egestas congue, metus lacus rhoncus leo, non malesuada justo ipsum eu felis. Aenean venenatis metus non tincidunt sollicitudin.</p>\n\n <h2 id=\"heading-2\">Heading 2</h2>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare porta nulla. Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa. Suspendisse consectetur lorem id odio fringilla pretium. Curabitur finibus nulla augue. Fusce vitae ornare lorem. Vivamus quis lacus ullamcorper, vehicula felis pretium, iaculis leo. Duis eget condimentum enim. Praesent vel est ut nisl pulvinar suscipit sit amet in sapien. Donec euismod odio ornare nisi luctus dignissim. Pellentesque vehicula, elit vitae maximus dapibus, erat nunc ultrices leo, nec pretium felis odio ut ex. Phasellus sapien felis, lobortis eu aliquam quis, semper quis neque. Aliquam vestibulum arcu ut nisl lacinia, in placerat dolor congue. Vivamus varius tincidunt odio, at pellentesque eros cursus nec. Donec viverra nec tellus vitae placerat. Cras id gravida mauris. Quisque sit amet imperdiet nisi.</p>\n <p>Sed eros ligula, blandit et iaculis et, faucibus in libero. Nunc augue dui, laoreet at porta ut, ultrices ac est. Duis at viverra metus. Phasellus pulvinar ligula sed aliquet pretium. Vestibulum erat risus, elementum ac imperdiet sed, semper eu sapien. Proin lobortis mauris ut ante tempor mattis. Donec dapibus interdum risus, eget malesuada arcu. Nulla facilisi. Maecenas aliquet ullamcorper tortor quis dapibus. Nunc facilisis augue vitae dictum semper. Etiam vehicula nec tortor non lobortis. Morbi hendrerit in nibh nec maximus. Nam convallis erat metus. In fermentum efficitur condimentum.</p>\n <p>Vestibulum accumsan vulputate consectetur. Quisque ut malesuada arcu. Mauris ligula odio, commodo nec eros ultricies, semper varius dui. Donec facilisis a odio nec imperdiet. Pellentesque molestie leo in mi maximus feugiat. Sed quis arcu a velit laoreet viverra. Etiam suscipit lacus lacus, a pretium justo tincidunt in. Fusce eget mi turpis.</p>\n <p>Ut molestie augue in eros eleifend hendrerit. Donec et laoreet lorem, sed porta arcu. Duis pharetra rhoncus ipsum eu pellentesque. Praesent bibendum bibendum risus maximus convallis. Curabitur nec libero eu velit cursus aliquam. Integer dapibus in eros pretium dignissim. Sed tortor justo, semper in pellentesque in, aliquet pellentesque sapien. Aliquam sem quam, pellentesque a erat ac, aliquet sagittis turpis. Suspendisse dignissim ante ante. Proin ac urna porta, auctor odio convallis, mollis orci. Donec scelerisque mauris non varius dapibus. Proin sollicitudin placerat consectetur.</p>\n <p>Etiam egestas vulputate sem a dictum. Curabitur mattis ex ut turpis vehicula, nec auctor eros facilisis. Duis nisl augue, varius feugiat sem et, iaculis gravida enim. Nam luctus purus et dapibus mattis. Curabitur hendrerit risus non velit aliquet hendrerit. Nullam faucibus, sapien vitae egestas congue, metus lacus rhoncus leo, non malesuada justo ipsum eu felis. Aenean venenatis metus non tincidunt sollicitudin.</p>\n\n <h2 id=\"heading-3\">Heading 3</h2>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare porta nulla. Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa. Suspendisse consectetur lorem id odio fringilla pretium. Curabitur finibus nulla augue. Fusce vitae ornare lorem. Vivamus quis lacus ullamcorper, vehicula felis pretium, iaculis leo. Duis eget condimentum enim. Praesent vel est ut nisl pulvinar suscipit sit amet in sapien. Donec euismod odio ornare nisi luctus dignissim. Pellentesque vehicula, elit vitae maximus dapibus, erat nunc ultrices leo, nec pretium felis odio ut ex. Phasellus sapien felis, lobortis eu aliquam quis, semper quis neque. Aliquam vestibulum arcu ut nisl lacinia, in placerat dolor congue. Vivamus varius tincidunt odio, at pellentesque eros cursus nec. Donec viverra nec tellus vitae placerat. Cras id gravida mauris. Quisque sit amet imperdiet nisi.</p>\n <p>Sed eros ligula, blandit et iaculis et, faucibus in libero. Nunc augue dui, laoreet at porta ut, ultrices ac est. Duis at viverra metus. Phasellus pulvinar ligula sed aliquet pretium. Vestibulum erat risus, elementum ac imperdiet sed, semper eu sapien. Proin lobortis mauris ut ante tempor mattis. Donec dapibus interdum risus, eget malesuada arcu. Nulla facilisi. Maecenas aliquet ullamcorper tortor quis dapibus. Nunc facilisis augue vitae dictum semper. Etiam vehicula nec tortor non lobortis. Morbi hendrerit in nibh nec maximus. Nam convallis erat metus. In fermentum efficitur condimentum.</p>\n <p>Vestibulum accumsan vulputate consectetur. Quisque ut malesuada arcu. Mauris ligula odio, commodo nec eros ultricies, semper varius dui. Donec facilisis a odio nec imperdiet. Pellentesque molestie leo in mi maximus feugiat. Sed quis arcu a velit laoreet viverra. Etiam suscipit lacus lacus, a pretium justo tincidunt in. Fusce eget mi turpis.</p>\n <p>Ut molestie augue in eros eleifend hendrerit. Donec et laoreet lorem, sed porta arcu. Duis pharetra rhoncus ipsum eu pellentesque. Praesent bibendum bibendum risus maximus convallis. Curabitur nec libero eu velit cursus aliquam. Integer dapibus in eros pretium dignissim. Sed tortor justo, semper in pellentesque in, aliquet pellentesque sapien. Aliquam sem quam, pellentesque a erat ac, aliquet sagittis turpis. Suspendisse dignissim ante ante. Proin ac urna porta, auctor odio convallis, mollis orci. Donec scelerisque mauris non varius dapibus. Proin sollicitudin placerat consectetur.</p>\n <p>Etiam egestas vulputate sem a dictum. Curabitur mattis ex ut turpis vehicula, nec auctor eros facilisis. Duis nisl augue, varius feugiat sem et, iaculis gravida enim. Nam luctus purus et dapibus mattis. Curabitur hendrerit risus non velit aliquet hendrerit. Nullam faucibus, sapien vitae egestas congue, metus lacus rhoncus leo, non malesuada justo ipsum eu felis. Aenean venenatis metus non tincidunt sollicitudin.</p>\n\n <h2 id=\"heading-4\">Heading 4</h2>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare porta nulla. Nulla ipsum felis, aliquet nec nisl sit amet, suscipit facilisis massa. Suspendisse consectetur lorem id odio fringilla pretium. Curabitur finibus nulla augue. Fusce vitae ornare lorem. Vivamus quis lacus ullamcorper, vehicula felis pretium, iaculis leo. Duis eget condimentum enim. Praesent vel est ut nisl pulvinar suscipit sit amet in sapien. Donec euismod odio ornare nisi luctus dignissim. Pellentesque vehicula, elit vitae maximus dapibus, erat nunc ultrices leo, nec pretium felis odio ut ex. Phasellus sapien felis, lobortis eu aliquam quis, semper quis neque. Aliquam vestibulum arcu ut nisl lacinia, in placerat dolor congue. Vivamus varius tincidunt odio, at pellentesque eros cursus nec. Donec viverra nec tellus vitae placerat. Cras id gravida mauris. Quisque sit amet imperdiet nisi.</p>\n <p>Sed eros ligula, blandit et iaculis et, faucibus in libero. Nunc augue dui, laoreet at porta ut, ultrices ac est. Duis at viverra metus. Phasellus pulvinar ligula sed aliquet pretium. Vestibulum erat risus, elementum ac imperdiet sed, semper eu sapien. Proin lobortis mauris ut ante tempor mattis. Donec dapibus interdum risus, eget malesuada arcu. Nulla facilisi. Maecenas aliquet ullamcorper tortor quis dapibus. Nunc facilisis augue vitae dictum semper. Etiam vehicula nec tortor non lobortis. Morbi hendrerit in nibh nec maximus. Nam convallis erat metus. In fermentum efficitur condimentum.</p>\n <p>Vestibulum accumsan vulputate consectetur. Quisque ut malesuada arcu. Mauris ligula odio, commodo nec eros ultricies, semper varius dui. Donec facilisis a odio nec imperdiet. Pellentesque molestie leo in mi maximus feugiat. Sed quis arcu a velit laoreet viverra. Etiam suscipit lacus lacus, a pretium justo tincidunt in. Fusce eget mi turpis.</p>\n <p>Ut molestie augue in eros eleifend hendrerit. Donec et laoreet lorem, sed porta arcu. Duis pharetra rhoncus ipsum eu pellentesque. Praesent bibendum bibendum risus maximus convallis. Curabitur nec libero eu velit cursus aliquam. Integer dapibus in eros pretium dignissim. Sed tortor justo, semper in pellentesque in, aliquet pellentesque sapien. Aliquam sem quam, pellentesque a erat ac, aliquet sagittis turpis. Suspendisse dignissim ante ante. Proin ac urna porta, auctor odio convallis, mollis orci. Donec scelerisque mauris non varius dapibus. Proin sollicitudin placerat consectetur.</p>\n <p>Etiam egestas vulputate sem a dictum. Curabitur mattis ex ut turpis vehicula, nec auctor eros facilisis. Duis nisl augue, varius feugiat sem et, iaculis gravida enim. Nam luctus purus et dapibus mattis. Curabitur hendrerit risus non velit aliquet hendrerit. Nullam faucibus, sapien vitae egestas congue, metus lacus rhoncus leo, non malesuada justo ipsum eu felis. Aenean venenatis metus non tincidunt sollicitudin.</p>\n </article>\n\n <kemet-scroll-link>\n <kemet-button>Scroll to Top</kemet-button>\n </kemet-scroll-link>\n `;\n};\n\nexport const Standard: Story = {\n render: () => Template(),\n};\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
/**
|
|
3
|
+
* @since 1.0.0
|
|
4
|
+
* @status stable
|
|
5
|
+
*
|
|
6
|
+
* @tagname kemet-scroll-link
|
|
7
|
+
* @summary A component that adds a smooth scrolling link to an target..
|
|
8
|
+
*
|
|
9
|
+
* @prop {object} element - A DOM element that establishes the context of scrolling.
|
|
10
|
+
* @prop {object} target - A DOM element that represents the destination of the scroll link. If no target is specified it will default to the top of the page.
|
|
11
|
+
* @prop {number} xOffset - Allows the horizontal scrolling to stop short of the given value.
|
|
12
|
+
* @prop {number} yOffset - Allows the vertical scrolling to stop short of the given value.
|
|
13
|
+
*
|
|
14
|
+
*/
|
|
15
|
+
export default class KemetScrollLink extends LitElement {
|
|
16
|
+
static styles: import("lit").CSSResult[];
|
|
17
|
+
element: HTMLElement | Window;
|
|
18
|
+
target: HTMLElement;
|
|
19
|
+
xOffset: number;
|
|
20
|
+
yOffset: number;
|
|
21
|
+
isSmoothSupported: boolean;
|
|
22
|
+
firstUpdated(): void;
|
|
23
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
24
|
+
handleKeyup(event: any): void;
|
|
25
|
+
handleScroll(): void;
|
|
26
|
+
}
|
|
27
|
+
declare global {
|
|
28
|
+
interface HTMLElementTagNameMap {
|
|
29
|
+
'kemet-scroll-link': KemetScrollLink;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { html, css, LitElement } from 'lit';
|
|
3
|
+
import { customElement, property, state } from 'lit/decorators.js';
|
|
4
|
+
import { keyCodes } from '../../utilities/misc/constants';
|
|
5
|
+
/**
|
|
6
|
+
* @since 1.0.0
|
|
7
|
+
* @status stable
|
|
8
|
+
*
|
|
9
|
+
* @tagname kemet-scroll-link
|
|
10
|
+
* @summary A component that adds a smooth scrolling link to an target..
|
|
11
|
+
*
|
|
12
|
+
* @prop {object} element - A DOM element that establishes the context of scrolling.
|
|
13
|
+
* @prop {object} target - A DOM element that represents the destination of the scroll link. If no target is specified it will default to the top of the page.
|
|
14
|
+
* @prop {number} xOffset - Allows the horizontal scrolling to stop short of the given value.
|
|
15
|
+
* @prop {number} yOffset - Allows the vertical scrolling to stop short of the given value.
|
|
16
|
+
*
|
|
17
|
+
*/
|
|
18
|
+
let KemetScrollLink = class KemetScrollLink extends LitElement {
|
|
19
|
+
constructor() {
|
|
20
|
+
super(...arguments);
|
|
21
|
+
this.element = window;
|
|
22
|
+
this.target = document.querySelector('body');
|
|
23
|
+
this.xOffset = 0;
|
|
24
|
+
this.yOffset = 0;
|
|
25
|
+
}
|
|
26
|
+
firstUpdated() {
|
|
27
|
+
// standard properties
|
|
28
|
+
this.isSmoothSupported = 'scrollBehavior' in document.documentElement.style;
|
|
29
|
+
}
|
|
30
|
+
render() {
|
|
31
|
+
return html `
|
|
32
|
+
<div tabindex="0" @click=${() => this.handleScroll()} @keyup=${event => this.handleKeyup(event)}>
|
|
33
|
+
<slot></slot>
|
|
34
|
+
</div>
|
|
35
|
+
`;
|
|
36
|
+
}
|
|
37
|
+
handleKeyup(event) {
|
|
38
|
+
if (event.keyCode === keyCodes.ENTER || event.keyCode === keyCodes.SPACE) {
|
|
39
|
+
this.handleScroll();
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
handleScroll() {
|
|
43
|
+
const scrollTop = this.target.offsetTop + this.yOffset;
|
|
44
|
+
const scrollLeft = this.target.offsetLeft + this.xOffset;
|
|
45
|
+
if (this.isSmoothSupported) {
|
|
46
|
+
this.element.scrollTo({
|
|
47
|
+
top: scrollTop,
|
|
48
|
+
left: scrollLeft,
|
|
49
|
+
behavior: 'smooth',
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
this.element.scrollTo(scrollLeft, scrollTop);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
KemetScrollLink.styles = [css `
|
|
58
|
+
:host {
|
|
59
|
+
cursor: pointer;
|
|
60
|
+
display: inline-block;
|
|
61
|
+
}
|
|
62
|
+
`];
|
|
63
|
+
__decorate([
|
|
64
|
+
property({ type: Object })
|
|
65
|
+
], KemetScrollLink.prototype, "element", void 0);
|
|
66
|
+
__decorate([
|
|
67
|
+
property({ type: Object })
|
|
68
|
+
], KemetScrollLink.prototype, "target", void 0);
|
|
69
|
+
__decorate([
|
|
70
|
+
property({ type: Number, attribute: 'x-offset', reflect: true })
|
|
71
|
+
], KemetScrollLink.prototype, "xOffset", void 0);
|
|
72
|
+
__decorate([
|
|
73
|
+
property({ type: Number, attribute: 'y-offset', reflect: true })
|
|
74
|
+
], KemetScrollLink.prototype, "yOffset", void 0);
|
|
75
|
+
__decorate([
|
|
76
|
+
state()
|
|
77
|
+
], KemetScrollLink.prototype, "isSmoothSupported", void 0);
|
|
78
|
+
KemetScrollLink = __decorate([
|
|
79
|
+
customElement('kemet-scroll-link')
|
|
80
|
+
], KemetScrollLink);
|
|
81
|
+
export default KemetScrollLink;
|
|
82
|
+
//# sourceMappingURL=kemet-scroll-link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kemet-scroll-link.js","sourceRoot":"","sources":["../../../../src/components/kemet-scroll-link/kemet-scroll-link.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE1D;;;;;;;;;;;;GAYG;AAGH,IAAqB,eAAe,GAApC,MAAqB,eAAgB,SAAQ,UAAU;IAAvD;;QASE,YAAO,GAAyB,MAAM,CAAC;QAGvC,WAAM,GAAgB,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAGrD,YAAO,GAAW,CAAC,CAAC;QAGpB,YAAO,GAAW,CAAC,CAAC;IAsCtB,CAAC;IAjCC,YAAY;QACV,sBAAsB;QACtB,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,IAAI,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC;IAC9E,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAA;iCACkB,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;;;KAGhG,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,KAAK;QACf,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,KAAK,EAAE;YACxE,IAAI,CAAC,YAAY,EAAE,CAAC;SACrB;IACH,CAAC;IAED,YAAY;QACV,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;QACvD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;QAEzD,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACpB,GAAG,EAAE,SAAS;gBACd,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;SAC9C;IACH,CAAC;CACF,CAAA;AAvDQ,sBAAM,GAAI,CAAC,GAAG,CAAA;;;;;GAKpB,CAAC,CAAC;AAGH;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gDACY;AAGvC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;+CAC0B;AAGrD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAC7C;AAGpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAC7C;AAGpB;IADC,KAAK,EAAE;0DACmB;AArBR,eAAe;IADnC,aAAa,CAAC,mBAAmB,CAAC;GACd,eAAe,CAwDnC;eAxDoB,eAAe","sourcesContent":["import { html, css, LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { keyCodes } from '../../utilities/misc/constants';\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-scroll-link\n * @summary A component that adds a smooth scrolling link to an target..\n *\n * @prop {object} element - A DOM element that establishes the context of scrolling.\n * @prop {object} target - A DOM element that represents the destination of the scroll link. If no target is specified it will default to the top of the page.\n * @prop {number} xOffset - Allows the horizontal scrolling to stop short of the given value.\n * @prop {number} yOffset - Allows the vertical scrolling to stop short of the given value.\n *\n */\n\n@customElement('kemet-scroll-link')\nexport default class KemetScrollLink extends LitElement {\n static styles = [css`\n :host {\n cursor: pointer;\n display: inline-block;\n }\n `];\n\n @property({ type: Object })\n element: HTMLElement | Window = window;\n\n @property({ type: Object })\n target: HTMLElement = document.querySelector('body');\n\n @property({ type: Number, attribute: 'x-offset', reflect: true })\n xOffset: number = 0;\n\n @property({ type: Number, attribute: 'y-offset', reflect: true })\n yOffset: number = 0;\n\n @state()\n isSmoothSupported: boolean;\n\n firstUpdated() {\n // standard properties\n this.isSmoothSupported = 'scrollBehavior' in document.documentElement.style;\n }\n\n render() {\n return html`\n <div tabindex=\"0\" @click=${() => this.handleScroll()} @keyup=${event => this.handleKeyup(event)}>\n <slot></slot>\n </div>\n `;\n }\n\n handleKeyup(event) {\n if (event.keyCode === keyCodes.ENTER || event.keyCode === keyCodes.SPACE) {\n this.handleScroll();\n }\n }\n\n handleScroll() {\n const scrollTop = this.target.offsetTop + this.yOffset;\n const scrollLeft = this.target.offsetLeft + this.xOffset;\n\n if (this.isSmoothSupported) {\n this.element.scrollTo({\n top: scrollTop,\n left: scrollLeft,\n behavior: 'smooth',\n });\n } else {\n this.element.scrollTo(scrollLeft, scrollTop);\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-scroll-link': KemetScrollLink\n }\n}\n\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/kemet-scroll-link/types.ts"],"names":[],"mappings":"","sourcesContent":["export interface KemetScrollLinkInterface extends HTMLElement {\n element?: HTMLElement | Window,\n target?: HTMLElement,\n xOffset?: number,\n yOffset?: number,\n}\n"]}
|