kemet-ui 2.0.0 → 2.0.2
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/custom-elements.json +305 -305
- package/dist/components/kemet-alert/docs/stories.js.map +1 -1
- package/dist/components/kemet-avatar/docs/stories.d.ts +1 -0
- package/dist/components/kemet-avatar/docs/stories.js +5 -4
- package/dist/components/kemet-avatar/docs/stories.js.map +1 -1
- package/dist/components/kemet-card/docs/stories.js.map +1 -0
- package/dist/components/kemet-carousel/docs/stories.js.map +1 -0
- package/dist/components/kemet-carousel/kemet-carousel.d.ts +13 -0
- package/dist/components/kemet-carousel/kemet-carousel.js +2 -0
- package/dist/components/kemet-carousel/kemet-carousel.js.map +1 -1
- package/dist/components/kemet-checkbox/docs/stories.js.map +1 -0
- package/dist/components/kemet-combo/docs/stories.js.map +1 -0
- package/dist/components/kemet-count/docs/stories.js.map +1 -0
- package/dist/components/kemet-draggable/docs/stories.js.map +1 -0
- package/dist/components/kemet-draggable/kemet-draggable.d.ts +7 -0
- package/dist/components/kemet-draggable/kemet-draggable.js.map +1 -1
- package/dist/components/kemet-drawer/docs/stories.js.map +1 -0
- package/dist/components/kemet-fab/docs/stories.js.map +1 -0
- package/dist/components/kemet-field/docs/stories.js.map +1 -0
- package/dist/components/kemet-flipcard/docs/stories.js.map +1 -0
- package/dist/components/kemet-icon/docs/stories.js.map +1 -0
- package/dist/components/kemet-input/docs/stories.js.map +1 -0
- package/dist/components/kemet-modal/docs/stories.js.map +1 -0
- package/dist/components/kemet-password/docs/stories.js.map +1 -0
- package/dist/components/kemet-popper/docs/stories.js.map +1 -0
- package/dist/components/kemet-radio/docs/stories.js.map +1 -0
- package/dist/components/kemet-rotator/docs/stories.js.map +1 -0
- package/dist/components/kemet-scroll-link/docs/stories.js.map +1 -0
- package/dist/components/kemet-scroll-nav/docs/stories.js.map +1 -0
- package/dist/components/kemet-scroll-nav/styles.js +1 -0
- package/dist/components/kemet-scroll-nav/styles.js.map +1 -1
- package/dist/components/kemet-scroll-snap/docs/stories.js.map +1 -0
- package/dist/components/kemet-select/docs/stories.js.map +1 -0
- package/dist/components/kemet-sortable/docs/stories.js.map +1 -0
- package/dist/components/kemet-svgs/docs/stories.js.map +1 -0
- package/dist/components/kemet-tabs/docs/stories.js.map +1 -0
- package/dist/components/kemet-tabs/kemet-tab-panel.js.map +1 -1
- package/dist/components/kemet-tabs/kemet-tabs.d.ts +1 -5
- package/dist/components/kemet-tabs/kemet-tabs.js +8 -27
- package/dist/components/kemet-tabs/kemet-tabs.js.map +1 -1
- package/dist/components/kemet-tabs/styles.js +14 -0
- package/dist/components/kemet-tabs/styles.js.map +1 -1
- package/dist/components/kemet-tabs/types.d.ts +1 -3
- package/dist/components/kemet-tabs/types.js.map +1 -1
- package/dist/components/kemet-textarea/docs/stories.js.map +1 -0
- package/dist/components/kemet-toggle/docs/stories.js.map +1 -0
- package/dist/components/kemet-tooltip/docs/stories.js.map +1 -0
- package/dist/components/kemet-tracker/docs/stories.js.map +1 -0
- package/dist/components/kemet-upload/docs/stories.js.map +1 -0
- package/dist/kemet-components.bundle.js +7 -7
- package/dist/kemet-components.bundle.js.map +1 -1
- package/dist/kemet-components.cjs +1802 -1804
- package/dist/kemet-components.js +1802 -1804
- package/dist/styles/components/_config.scss +4 -0
- package/dist/styles/components/accordion.scss +9 -0
- package/dist/styles/components/drawer.scss +11 -0
- package/dist/styles/components/modal.scss +8 -0
- package/dist/styles/components/scrollsnap.scss +11 -0
- package/dist/styles/core/attributes.scss +38 -0
- package/dist/styles/core/layout.scss +169 -0
- package/dist/styles/kemet.base.css +1 -0
- package/dist/styles/kemet.base.scss +28 -0
- package/dist/styles/kemet.components.scss +4 -0
- package/dist/styles/kemet.core.css +155 -154
- package/dist/styles/kemet.core.css.map +1 -1
- package/dist/styles/kemet.core.scss +2 -0
- package/dist/styles/shared/_config.scss +358 -0
- package/dist/styles/shared/_helpers.scss +458 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/.storybook/decorators.d.ts +0 -2
- package/dist/.storybook/decorators.js +0 -28
- package/dist/.storybook/decorators.js.map +0 -1
- package/dist/components/kemet-alert/stories.d.ts +0 -9
- package/dist/components/kemet-alert/stories.js +0 -77
- package/dist/components/kemet-alert/stories.js.map +0 -1
- package/dist/components/kemet-avatar/stories.d.ts +0 -10
- package/dist/components/kemet-avatar/stories.js +0 -85
- package/dist/components/kemet-avatar/stories.js.map +0 -1
- package/dist/src/components/kemet-accordion/kemet-accordion-panel.d.ts +0 -51
- package/dist/src/components/kemet-accordion/kemet-accordion-panel.js +0 -136
- package/dist/src/components/kemet-accordion/kemet-accordion-panel.js.map +0 -1
- package/dist/src/components/kemet-accordion/kemet-accordion.d.ts +0 -37
- package/dist/src/components/kemet-accordion/kemet-accordion.js +0 -129
- package/dist/src/components/kemet-accordion/kemet-accordion.js.map +0 -1
- package/dist/src/components/kemet-accordion/stories.d.ts +0 -10
- package/dist/src/components/kemet-accordion/stories.js +0 -44
- package/dist/src/components/kemet-accordion/stories.js.map +0 -1
- package/dist/src/components/kemet-accordion/styles.d.ts +0 -2
- package/dist/src/components/kemet-accordion/styles.js +0 -42
- package/dist/src/components/kemet-accordion/styles.js.map +0 -1
- package/dist/src/components/kemet-accordion/types.d.ts +0 -9
- package/dist/src/components/kemet-accordion/types.js +0 -2
- package/dist/src/components/kemet-accordion/types.js.map +0 -1
- package/dist/src/components/kemet-alert/docs/stories.d.ts +0 -9
- package/dist/src/components/kemet-alert/docs/stories.js +0 -77
- package/dist/src/components/kemet-alert/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-alert/kemet-alert.d.ts +0 -52
- package/dist/src/components/kemet-alert/kemet-alert.js +0 -108
- package/dist/src/components/kemet-alert/kemet-alert.js.map +0 -1
- package/dist/src/components/kemet-alert/styles.d.ts +0 -1
- package/dist/src/components/kemet-alert/styles.js +0 -104
- package/dist/src/components/kemet-alert/styles.js.map +0 -1
- package/dist/src/components/kemet-alert/types.d.ts +0 -10
- package/dist/src/components/kemet-alert/types.js +0 -2
- package/dist/src/components/kemet-alert/types.js.map +0 -1
- package/dist/src/components/kemet-avatar/docs/stories.d.ts +0 -11
- package/dist/src/components/kemet-avatar/docs/stories.js +0 -86
- package/dist/src/components/kemet-avatar/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-avatar/kemet-avatar.d.ts +0 -43
- package/dist/src/components/kemet-avatar/kemet-avatar.js +0 -78
- package/dist/src/components/kemet-avatar/kemet-avatar.js.map +0 -1
- package/dist/src/components/kemet-avatar/kemet-avatars.d.ts +0 -20
- package/dist/src/components/kemet-avatar/kemet-avatars.js +0 -25
- package/dist/src/components/kemet-avatar/kemet-avatars.js.map +0 -1
- package/dist/src/components/kemet-avatar/styles.d.ts +0 -2
- package/dist/src/components/kemet-avatar/styles.js +0 -58
- package/dist/src/components/kemet-avatar/styles.js.map +0 -1
- package/dist/src/components/kemet-avatar/types.d.ts +0 -8
- package/dist/src/components/kemet-avatar/types.js +0 -2
- package/dist/src/components/kemet-avatar/types.js.map +0 -1
- package/dist/src/components/kemet-badge/docs/stories.d.ts +0 -9
- package/dist/src/components/kemet-badge/docs/stories.js +0 -40
- package/dist/src/components/kemet-badge/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-badge/kemet-badge.d.ts +0 -30
- package/dist/src/components/kemet-badge/kemet-badge.js +0 -55
- package/dist/src/components/kemet-badge/kemet-badge.js.map +0 -1
- package/dist/src/components/kemet-badge/styles.d.ts +0 -1
- package/dist/src/components/kemet-badge/styles.js +0 -40
- package/dist/src/components/kemet-badge/styles.js.map +0 -1
- package/dist/src/components/kemet-badge/types.d.ts +0 -6
- package/dist/src/components/kemet-badge/types.js +0 -2
- package/dist/src/components/kemet-badge/types.js.map +0 -1
- package/dist/src/components/kemet-button/docs/stories.d.ts +0 -9
- package/dist/src/components/kemet-button/docs/stories.js +0 -51
- package/dist/src/components/kemet-button/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-button/kemet-button.d.ts +0 -89
- package/dist/src/components/kemet-button/kemet-button.js +0 -153
- package/dist/src/components/kemet-button/kemet-button.js.map +0 -1
- package/dist/src/components/kemet-button/styles.d.ts +0 -1
- package/dist/src/components/kemet-button/styles.js +0 -73
- package/dist/src/components/kemet-button/styles.js.map +0 -1
- package/dist/src/components/kemet-button/types.d.ts +0 -10
- package/dist/src/components/kemet-button/types.js +0 -2
- package/dist/src/components/kemet-button/types.js.map +0 -1
- package/dist/src/components/kemet-card/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-card/kemet-card.d.ts +0 -47
- package/dist/src/components/kemet-card/kemet-card.js +0 -65
- package/dist/src/components/kemet-card/kemet-card.js.map +0 -1
- package/dist/src/components/kemet-card/styles.d.ts +0 -1
- package/dist/src/components/kemet-card/styles.js +0 -63
- package/dist/src/components/kemet-card/styles.js.map +0 -1
- package/dist/src/components/kemet-card/types.d.ts +0 -3
- package/dist/src/components/kemet-card/types.js +0 -2
- package/dist/src/components/kemet-card/types.js.map +0 -1
- package/dist/src/components/kemet-carousel/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel-current.d.ts +0 -26
- package/dist/src/components/kemet-carousel/kemet-carousel-current.js +0 -44
- package/dist/src/components/kemet-carousel/kemet-carousel-current.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel-first.d.ts +0 -25
- package/dist/src/components/kemet-carousel/kemet-carousel-first.js +0 -50
- package/dist/src/components/kemet-carousel/kemet-carousel-first.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel-last.d.ts +0 -25
- package/dist/src/components/kemet-carousel/kemet-carousel-last.js +0 -50
- package/dist/src/components/kemet-carousel/kemet-carousel-last.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel-link.d.ts +0 -31
- package/dist/src/components/kemet-carousel/kemet-carousel-link.js +0 -64
- package/dist/src/components/kemet-carousel/kemet-carousel-link.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel-next.d.ts +0 -25
- package/dist/src/components/kemet-carousel/kemet-carousel-next.js +0 -50
- package/dist/src/components/kemet-carousel/kemet-carousel-next.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel-prev.d.ts +0 -25
- package/dist/src/components/kemet-carousel/kemet-carousel-prev.js +0 -50
- package/dist/src/components/kemet-carousel/kemet-carousel-prev.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel-slide.d.ts +0 -29
- package/dist/src/components/kemet-carousel/kemet-carousel-slide.js +0 -53
- package/dist/src/components/kemet-carousel/kemet-carousel-slide.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel-total.d.ts +0 -26
- package/dist/src/components/kemet-carousel/kemet-carousel-total.js +0 -44
- package/dist/src/components/kemet-carousel/kemet-carousel-total.js.map +0 -1
- package/dist/src/components/kemet-carousel/kemet-carousel.d.ts +0 -114
- package/dist/src/components/kemet-carousel/kemet-carousel.js +0 -410
- package/dist/src/components/kemet-carousel/kemet-carousel.js.map +0 -1
- package/dist/src/components/kemet-carousel/styles.d.ts +0 -1
- package/dist/src/components/kemet-carousel/styles.js +0 -66
- package/dist/src/components/kemet-carousel/styles.js.map +0 -1
- package/dist/src/components/kemet-carousel/types.d.ts +0 -21
- package/dist/src/components/kemet-carousel/types.js +0 -2
- package/dist/src/components/kemet-carousel/types.js.map +0 -1
- package/dist/src/components/kemet-checkbox/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-checkbox/kemet-checkbox.d.ts +0 -71
- package/dist/src/components/kemet-checkbox/kemet-checkbox.js +0 -192
- package/dist/src/components/kemet-checkbox/kemet-checkbox.js.map +0 -1
- package/dist/src/components/kemet-checkbox/styles.d.ts +0 -1
- package/dist/src/components/kemet-checkbox/styles.js +0 -83
- package/dist/src/components/kemet-checkbox/styles.js.map +0 -1
- package/dist/src/components/kemet-checkbox/types.d.ts +0 -15
- package/dist/src/components/kemet-checkbox/types.js +0 -2
- package/dist/src/components/kemet-checkbox/types.js.map +0 -1
- package/dist/src/components/kemet-combo/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-combo/kemet-combo.d.ts +0 -50
- package/dist/src/components/kemet-combo/kemet-combo.js +0 -162
- package/dist/src/components/kemet-combo/kemet-combo.js.map +0 -1
- package/dist/src/components/kemet-combo/styles.d.ts +0 -1
- package/dist/src/components/kemet-combo/styles.js +0 -44
- package/dist/src/components/kemet-combo/styles.js.map +0 -1
- package/dist/src/components/kemet-combo/types.d.ts +0 -5
- package/dist/src/components/kemet-combo/types.js +0 -2
- package/dist/src/components/kemet-combo/types.js.map +0 -1
- package/dist/src/components/kemet-count/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-count/kemet-count.d.ts +0 -39
- package/dist/src/components/kemet-count/kemet-count.js +0 -98
- package/dist/src/components/kemet-count/kemet-count.js.map +0 -1
- package/dist/src/components/kemet-draggable/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-draggable/kemet-draggable.d.ts +0 -49
- package/dist/src/components/kemet-draggable/kemet-draggable.js +0 -137
- package/dist/src/components/kemet-draggable/kemet-draggable.js.map +0 -1
- package/dist/src/components/kemet-draggable/types.d.ts +0 -6
- package/dist/src/components/kemet-draggable/types.js +0 -2
- package/dist/src/components/kemet-draggable/types.js.map +0 -1
- package/dist/src/components/kemet-drawer/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-drawer/kemet-drawer.d.ts +0 -48
- package/dist/src/components/kemet-drawer/kemet-drawer.js +0 -95
- package/dist/src/components/kemet-drawer/kemet-drawer.js.map +0 -1
- package/dist/src/components/kemet-drawer/styles.d.ts +0 -2
- package/dist/src/components/kemet-drawer/styles.js +0 -314
- package/dist/src/components/kemet-drawer/styles.js.map +0 -1
- package/dist/src/components/kemet-drawer/types.d.ts +0 -8
- package/dist/src/components/kemet-drawer/types.js +0 -2
- package/dist/src/components/kemet-drawer/types.js.map +0 -1
- package/dist/src/components/kemet-fab/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-fab/kemet-fab.d.ts +0 -49
- package/dist/src/components/kemet-fab/kemet-fab.js +0 -107
- package/dist/src/components/kemet-fab/kemet-fab.js.map +0 -1
- package/dist/src/components/kemet-fab/styles.d.ts +0 -1
- package/dist/src/components/kemet-fab/styles.js +0 -95
- package/dist/src/components/kemet-fab/styles.js.map +0 -1
- package/dist/src/components/kemet-fab/types.d.ts +0 -8
- package/dist/src/components/kemet-fab/types.js +0 -2
- package/dist/src/components/kemet-fab/types.js.map +0 -1
- package/dist/src/components/kemet-field/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-field/kemet-field.d.ts +0 -61
- package/dist/src/components/kemet-field/kemet-field.js +0 -144
- package/dist/src/components/kemet-field/kemet-field.js.map +0 -1
- package/dist/src/components/kemet-field/styles.d.ts +0 -1
- package/dist/src/components/kemet-field/styles.js +0 -61
- package/dist/src/components/kemet-field/styles.js.map +0 -1
- package/dist/src/components/kemet-field/types.d.ts +0 -13
- package/dist/src/components/kemet-field/types.js +0 -2
- package/dist/src/components/kemet-field/types.js.map +0 -1
- package/dist/src/components/kemet-flipcard/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-flipcard/kemet-flipcard-trigger.d.ts +0 -21
- package/dist/src/components/kemet-flipcard/kemet-flipcard-trigger.js +0 -42
- package/dist/src/components/kemet-flipcard/kemet-flipcard-trigger.js.map +0 -1
- package/dist/src/components/kemet-flipcard/kemet-flipcard.d.ts +0 -52
- package/dist/src/components/kemet-flipcard/kemet-flipcard.js +0 -131
- package/dist/src/components/kemet-flipcard/kemet-flipcard.js.map +0 -1
- package/dist/src/components/kemet-flipcard/styles.d.ts +0 -1
- package/dist/src/components/kemet-flipcard/styles.js +0 -85
- package/dist/src/components/kemet-flipcard/styles.js.map +0 -1
- package/dist/src/components/kemet-flipcard/types.d.ts +0 -7
- package/dist/src/components/kemet-flipcard/types.js +0 -2
- package/dist/src/components/kemet-flipcard/types.js.map +0 -1
- package/dist/src/components/kemet-icon/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-icon/kemet-icon.d.ts +0 -28
- package/dist/src/components/kemet-icon/kemet-icon.js +0 -114
- package/dist/src/components/kemet-icon/kemet-icon.js.map +0 -1
- package/dist/src/components/kemet-icon/styles.d.ts +0 -1
- package/dist/src/components/kemet-icon/styles.js +0 -9
- package/dist/src/components/kemet-icon/styles.js.map +0 -1
- package/dist/src/components/kemet-icon/types.d.ts +0 -5
- package/dist/src/components/kemet-icon/types.js +0 -2
- package/dist/src/components/kemet-icon/types.js.map +0 -1
- package/dist/src/components/kemet-input/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-input/kemet-input.d.ts +0 -193
- package/dist/src/components/kemet-input/kemet-input.js +0 -417
- package/dist/src/components/kemet-input/kemet-input.js.map +0 -1
- package/dist/src/components/kemet-input/styles.d.ts +0 -1
- package/dist/src/components/kemet-input/styles.js +0 -115
- package/dist/src/components/kemet-input/styles.js.map +0 -1
- package/dist/src/components/kemet-input/types.d.ts +0 -35
- package/dist/src/components/kemet-input/types.js +0 -2
- package/dist/src/components/kemet-input/types.js.map +0 -1
- package/dist/src/components/kemet-modal/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-modal/kemet-modal-close.d.ts +0 -21
- package/dist/src/components/kemet-modal/kemet-modal-close.js +0 -40
- package/dist/src/components/kemet-modal/kemet-modal-close.js.map +0 -1
- package/dist/src/components/kemet-modal/kemet-modal.d.ts +0 -49
- package/dist/src/components/kemet-modal/kemet-modal.js +0 -131
- package/dist/src/components/kemet-modal/kemet-modal.js.map +0 -1
- package/dist/src/components/kemet-modal/styles.d.ts +0 -2
- package/dist/src/components/kemet-modal/styles.js +0 -267
- package/dist/src/components/kemet-modal/styles.js.map +0 -1
- package/dist/src/components/kemet-modal/types.d.ts +0 -8
- package/dist/src/components/kemet-modal/types.js +0 -2
- package/dist/src/components/kemet-modal/types.js.map +0 -1
- package/dist/src/components/kemet-password/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-password/kemet-password.d.ts +0 -77
- package/dist/src/components/kemet-password/kemet-password.js +0 -184
- package/dist/src/components/kemet-password/kemet-password.js.map +0 -1
- package/dist/src/components/kemet-password/styles.d.ts +0 -1
- package/dist/src/components/kemet-password/styles.js +0 -80
- package/dist/src/components/kemet-password/styles.js.map +0 -1
- package/dist/src/components/kemet-password/types.d.ts +0 -10
- package/dist/src/components/kemet-password/types.js +0 -2
- package/dist/src/components/kemet-password/types.js.map +0 -1
- package/dist/src/components/kemet-popper/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-popper/kemet-popper-close.d.ts +0 -22
- package/dist/src/components/kemet-popper/kemet-popper-close.js +0 -49
- package/dist/src/components/kemet-popper/kemet-popper-close.js.map +0 -1
- package/dist/src/components/kemet-popper/kemet-popper.d.ts +0 -63
- package/dist/src/components/kemet-popper/kemet-popper.js +0 -182
- package/dist/src/components/kemet-popper/kemet-popper.js.map +0 -1
- package/dist/src/components/kemet-popper/styles.d.ts +0 -1
- package/dist/src/components/kemet-popper/styles.effects.d.ts +0 -8
- package/dist/src/components/kemet-popper/styles.effects.js +0 -306
- package/dist/src/components/kemet-popper/styles.effects.js.map +0 -1
- package/dist/src/components/kemet-popper/styles.js +0 -28
- package/dist/src/components/kemet-popper/styles.js.map +0 -1
- package/dist/src/components/kemet-popper/types.d.ts +0 -3
- package/dist/src/components/kemet-popper/types.js +0 -2
- package/dist/src/components/kemet-popper/types.js.map +0 -1
- package/dist/src/components/kemet-radio/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-radio/kemet-radio.d.ts +0 -56
- package/dist/src/components/kemet-radio/kemet-radio.js +0 -129
- package/dist/src/components/kemet-radio/kemet-radio.js.map +0 -1
- package/dist/src/components/kemet-radio/kemet-radios.d.ts +0 -49
- package/dist/src/components/kemet-radio/kemet-radios.js +0 -143
- package/dist/src/components/kemet-radio/kemet-radios.js.map +0 -1
- package/dist/src/components/kemet-radio/styles.d.ts +0 -2
- package/dist/src/components/kemet-radio/styles.js +0 -102
- package/dist/src/components/kemet-radio/styles.js.map +0 -1
- package/dist/src/components/kemet-radio/types.d.ts +0 -20
- package/dist/src/components/kemet-radio/types.js +0 -2
- package/dist/src/components/kemet-radio/types.js.map +0 -1
- package/dist/src/components/kemet-rotator/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-rotator/kemet-rotator.d.ts +0 -40
- package/dist/src/components/kemet-rotator/kemet-rotator.js +0 -122
- package/dist/src/components/kemet-rotator/kemet-rotator.js.map +0 -1
- package/dist/src/components/kemet-rotator/styles.d.ts +0 -1
- package/dist/src/components/kemet-rotator/styles.js +0 -72
- package/dist/src/components/kemet-rotator/styles.js.map +0 -1
- package/dist/src/components/kemet-rotator/types.d.ts +0 -9
- package/dist/src/components/kemet-rotator/types.js +0 -2
- package/dist/src/components/kemet-rotator/types.js.map +0 -1
- package/dist/src/components/kemet-scroll-link/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-scroll-link/kemet-scroll-link.d.ts +0 -31
- package/dist/src/components/kemet-scroll-link/kemet-scroll-link.js +0 -82
- package/dist/src/components/kemet-scroll-link/kemet-scroll-link.js.map +0 -1
- package/dist/src/components/kemet-scroll-link/types.d.ts +0 -6
- package/dist/src/components/kemet-scroll-link/types.js +0 -2
- package/dist/src/components/kemet-scroll-link/types.js.map +0 -1
- package/dist/src/components/kemet-scroll-nav/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-scroll-nav/kemet-scroll-nav.d.ts +0 -34
- package/dist/src/components/kemet-scroll-nav/kemet-scroll-nav.js +0 -70
- package/dist/src/components/kemet-scroll-nav/kemet-scroll-nav.js.map +0 -1
- package/dist/src/components/kemet-scroll-nav/styles.d.ts +0 -1
- package/dist/src/components/kemet-scroll-nav/styles.js +0 -27
- package/dist/src/components/kemet-scroll-nav/styles.js.map +0 -1
- package/dist/src/components/kemet-scroll-nav/types.d.ts +0 -6
- package/dist/src/components/kemet-scroll-nav/types.js +0 -2
- package/dist/src/components/kemet-scroll-nav/types.js.map +0 -1
- package/dist/src/components/kemet-scroll-snap/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-paginator.d.ts +0 -44
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js +0 -120
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-paginator.js.map +0 -1
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-slide.d.ts +0 -30
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-slide.js +0 -53
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap-slide.js.map +0 -1
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap.d.ts +0 -46
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap.js +0 -122
- package/dist/src/components/kemet-scroll-snap/kemet-scroll-snap.js.map +0 -1
- package/dist/src/components/kemet-scroll-snap/styles.d.ts +0 -2
- package/dist/src/components/kemet-scroll-snap/styles.js +0 -74
- package/dist/src/components/kemet-scroll-snap/styles.js.map +0 -1
- package/dist/src/components/kemet-scroll-snap/types.d.ts +0 -20
- package/dist/src/components/kemet-scroll-snap/types.js +0 -2
- package/dist/src/components/kemet-scroll-snap/types.js.map +0 -1
- package/dist/src/components/kemet-select/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-select/kemet-option.d.ts +0 -29
- package/dist/src/components/kemet-select/kemet-option.js +0 -45
- package/dist/src/components/kemet-select/kemet-option.js.map +0 -1
- package/dist/src/components/kemet-select/kemet-select.d.ts +0 -110
- package/dist/src/components/kemet-select/kemet-select.js +0 -239
- package/dist/src/components/kemet-select/kemet-select.js.map +0 -1
- package/dist/src/components/kemet-select/styles.d.ts +0 -1
- package/dist/src/components/kemet-select/styles.js +0 -73
- package/dist/src/components/kemet-select/styles.js.map +0 -1
- package/dist/src/components/kemet-select/types.d.ts +0 -20
- package/dist/src/components/kemet-select/types.js +0 -2
- package/dist/src/components/kemet-select/types.js.map +0 -1
- package/dist/src/components/kemet-sortable/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-sortable/kemet-sortable-item.d.ts +0 -21
- package/dist/src/components/kemet-sortable/kemet-sortable-item.js +0 -30
- package/dist/src/components/kemet-sortable/kemet-sortable-item.js.map +0 -1
- package/dist/src/components/kemet-sortable/kemet-sortable.d.ts +0 -25
- package/dist/src/components/kemet-sortable/kemet-sortable.js +0 -77
- package/dist/src/components/kemet-sortable/kemet-sortable.js.map +0 -1
- package/dist/src/components/kemet-sortable/styles.d.ts +0 -2
- package/dist/src/components/kemet-sortable/styles.js +0 -22
- package/dist/src/components/kemet-sortable/styles.js.map +0 -1
- package/dist/src/components/kemet-sortable/types.d.ts +0 -3
- package/dist/src/components/kemet-sortable/types.js +0 -2
- package/dist/src/components/kemet-sortable/types.js.map +0 -1
- package/dist/src/components/kemet-svgs/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-svgs/kemet-svg.d.ts +0 -38
- package/dist/src/components/kemet-svgs/kemet-svg.js +0 -97
- package/dist/src/components/kemet-svgs/kemet-svg.js.map +0 -1
- package/dist/src/components/kemet-svgs/kemet-svgs.d.ts +0 -27
- package/dist/src/components/kemet-svgs/kemet-svgs.js +0 -51
- package/dist/src/components/kemet-svgs/kemet-svgs.js.map +0 -1
- package/dist/src/components/kemet-svgs/types.d.ts +0 -10
- package/dist/src/components/kemet-svgs/types.js +0 -2
- package/dist/src/components/kemet-svgs/types.js.map +0 -1
- package/dist/src/components/kemet-tabs/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-tabs/kemet-tab-panel.d.ts +0 -27
- package/dist/src/components/kemet-tabs/kemet-tab-panel.js +0 -52
- package/dist/src/components/kemet-tabs/kemet-tab-panel.js.map +0 -1
- package/dist/src/components/kemet-tabs/kemet-tab.d.ts +0 -37
- package/dist/src/components/kemet-tabs/kemet-tab.js +0 -79
- package/dist/src/components/kemet-tabs/kemet-tab.js.map +0 -1
- package/dist/src/components/kemet-tabs/kemet-tabs.d.ts +0 -91
- package/dist/src/components/kemet-tabs/kemet-tabs.js +0 -523
- package/dist/src/components/kemet-tabs/kemet-tabs.js.map +0 -1
- package/dist/src/components/kemet-tabs/styles.d.ts +0 -3
- package/dist/src/components/kemet-tabs/styles.js +0 -268
- package/dist/src/components/kemet-tabs/styles.js.map +0 -1
- package/dist/src/components/kemet-tabs/types.d.ts +0 -27
- package/dist/src/components/kemet-tabs/types.js +0 -2
- package/dist/src/components/kemet-tabs/types.js.map +0 -1
- package/dist/src/components/kemet-textarea/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-textarea/kemet-textarea.d.ts +0 -123
- package/dist/src/components/kemet-textarea/kemet-textarea.js +0 -293
- package/dist/src/components/kemet-textarea/kemet-textarea.js.map +0 -1
- package/dist/src/components/kemet-textarea/styles.d.ts +0 -1
- package/dist/src/components/kemet-textarea/styles.js +0 -69
- package/dist/src/components/kemet-textarea/styles.js.map +0 -1
- package/dist/src/components/kemet-textarea/types.d.ts +0 -20
- package/dist/src/components/kemet-textarea/types.js +0 -2
- package/dist/src/components/kemet-textarea/types.js.map +0 -1
- package/dist/src/components/kemet-toggle/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-toggle/kemet-toggle.d.ts +0 -60
- package/dist/src/components/kemet-toggle/kemet-toggle.js +0 -130
- package/dist/src/components/kemet-toggle/kemet-toggle.js.map +0 -1
- package/dist/src/components/kemet-toggle/styles.d.ts +0 -1
- package/dist/src/components/kemet-toggle/styles.js +0 -84
- package/dist/src/components/kemet-toggle/styles.js.map +0 -1
- package/dist/src/components/kemet-toggle/types.d.ts +0 -10
- package/dist/src/components/kemet-toggle/types.js +0 -2
- package/dist/src/components/kemet-toggle/types.js.map +0 -1
- package/dist/src/components/kemet-tooltip/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-tooltip/kemet-tooltip.d.ts +0 -33
- package/dist/src/components/kemet-tooltip/kemet-tooltip.js +0 -68
- package/dist/src/components/kemet-tooltip/kemet-tooltip.js.map +0 -1
- package/dist/src/components/kemet-tooltip/styles.d.ts +0 -1
- package/dist/src/components/kemet-tooltip/styles.js +0 -61
- package/dist/src/components/kemet-tooltip/styles.js.map +0 -1
- package/dist/src/components/kemet-tooltip/types.d.ts +0 -3
- package/dist/src/components/kemet-tooltip/types.js +0 -2
- package/dist/src/components/kemet-tooltip/types.js.map +0 -1
- package/dist/src/components/kemet-tracker/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-tracker/kemet-tracker-step.d.ts +0 -63
- package/dist/src/components/kemet-tracker/kemet-tracker-step.js +0 -127
- package/dist/src/components/kemet-tracker/kemet-tracker-step.js.map +0 -1
- package/dist/src/components/kemet-tracker/kemet-tracker.d.ts +0 -26
- package/dist/src/components/kemet-tracker/kemet-tracker.js +0 -70
- package/dist/src/components/kemet-tracker/kemet-tracker.js.map +0 -1
- package/dist/src/components/kemet-tracker/styles.d.ts +0 -1
- package/dist/src/components/kemet-tracker/styles.js +0 -111
- package/dist/src/components/kemet-tracker/styles.js.map +0 -1
- package/dist/src/components/kemet-tracker/types.d.ts +0 -13
- package/dist/src/components/kemet-tracker/types.js +0 -2
- package/dist/src/components/kemet-tracker/types.js.map +0 -1
- package/dist/src/components/kemet-upload/docs/stories.js.map +0 -1
- package/dist/src/components/kemet-upload/kemet-upload-file.d.ts +0 -46
- package/dist/src/components/kemet-upload/kemet-upload-file.js +0 -110
- package/dist/src/components/kemet-upload/kemet-upload-file.js.map +0 -1
- package/dist/src/components/kemet-upload/kemet-upload.d.ts +0 -58
- package/dist/src/components/kemet-upload/kemet-upload.js +0 -154
- package/dist/src/components/kemet-upload/kemet-upload.js.map +0 -1
- package/dist/src/components/kemet-upload/styles.d.ts +0 -3
- package/dist/src/components/kemet-upload/styles.js +0 -169
- package/dist/src/components/kemet-upload/styles.js.map +0 -1
- package/dist/src/components/kemet-upload/types.d.ts +0 -21
- package/dist/src/components/kemet-upload/types.js +0 -2
- package/dist/src/components/kemet-upload/types.js.map +0 -1
- package/dist/src/stories/styles/borders/borders.stories.d.ts +0 -5
- package/dist/src/stories/styles/borders/borders.stories.js +0 -46
- package/dist/src/stories/styles/borders/borders.stories.js.map +0 -1
- package/dist/src/stories/styles/borders/stories.d.ts +0 -5
- package/dist/src/stories/styles/borders/stories.js +0 -46
- package/dist/src/stories/styles/borders/stories.js.map +0 -1
- package/dist/src/stories/styles/borders.stories.d.ts +0 -5
- package/dist/src/stories/styles/borders.stories.js +0 -46
- package/dist/src/stories/styles/borders.stories.js.map +0 -1
- package/dist/src/stories/styles/elevation/elevation.stories.d.ts +0 -1
- package/dist/src/stories/styles/elevation/elevation.stories.js +0 -15
- package/dist/src/stories/styles/elevation/elevation.stories.js.map +0 -1
- package/dist/src/stories/styles/elevation/stories.d.ts +0 -5
- package/dist/src/stories/styles/elevation/stories.js +0 -21
- package/dist/src/stories/styles/elevation/stories.js.map +0 -1
- package/dist/src/stories/styles/flexcolumn/stories.d.ts +0 -6
- package/dist/src/stories/styles/flexcolumn/stories.js +0 -44
- package/dist/src/stories/styles/flexcolumn/stories.js.map +0 -1
- package/dist/src/stories/styles/flexgrid/stories.d.ts +0 -6
- package/dist/src/stories/styles/flexgrid/stories.js +0 -44
- package/dist/src/stories/styles/flexgrid/stories.js.map +0 -1
- package/dist/src/stories/styles/flexlist/stories.d.ts +0 -7
- package/dist/src/stories/styles/flexlist/stories.js +0 -45
- package/dist/src/stories/styles/flexlist/stories.js.map +0 -1
- package/dist/src/stories/styles/flexrow/stories.d.ts +0 -10
- package/dist/src/stories/styles/flexrow/stories.js +0 -77
- package/dist/src/stories/styles/flexrow/stories.js.map +0 -1
- package/dist/src/stories/styles/spacing/stories.d.ts +0 -6
- package/dist/src/stories/styles/spacing/stories.js +0 -49
- package/dist/src/stories/styles/spacing/stories.js.map +0 -1
- package/dist/src/stories/styles/typealignment/stories.d.ts +0 -5
- package/dist/src/stories/styles/typealignment/stories.js +0 -14
- package/dist/src/stories/styles/typealignment/stories.js.map +0 -1
- package/dist/src/stories/styles/typography/stories.d.ts +0 -6
- package/dist/src/stories/styles/typography/stories.js +0 -41
- package/dist/src/stories/styles/typography/stories.js.map +0 -1
- package/dist/src/stories/styles/visibility/stories.d.ts +0 -6
- package/dist/src/stories/styles/visibility/stories.js +0 -60
- package/dist/src/stories/styles/visibility/stories.js.map +0 -1
- package/dist/src/stories/templates/bootstrap/stories.d.ts +0 -6
- package/dist/src/stories/templates/bootstrap/stories.js +0 -159
- package/dist/src/stories/templates/bootstrap/stories.js.map +0 -1
- package/dist/src/stories/templates/foundation/stories.d.ts +0 -8
- package/dist/src/stories/templates/foundation/stories.js +0 -911
- package/dist/src/stories/templates/foundation/stories.js.map +0 -1
- package/dist/src/utilities/controllers/forms.d.ts +0 -11
- package/dist/src/utilities/controllers/forms.js +0 -102
- package/dist/src/utilities/controllers/forms.js.map +0 -1
- package/dist/src/utilities/misc/constants.d.ts +0 -5
- package/dist/src/utilities/misc/constants.js +0 -6
- package/dist/src/utilities/misc/constants.js.map +0 -1
- package/dist/src/utilities/misc/events.d.ts +0 -1
- package/dist/src/utilities/misc/events.js +0 -4
- package/dist/src/utilities/misc/events.js.map +0 -1
- package/dist/utilities/misc/decorators.d.ts +0 -1
- package/dist/utilities/misc/decorators.js +0 -5
- package/dist/utilities/misc/decorators.js.map +0 -1
- /package/dist/{src/components → components}/kemet-card/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-card/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-carousel/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-carousel/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-checkbox/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-checkbox/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-combo/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-combo/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-count/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-count/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-draggable/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-draggable/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-drawer/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-drawer/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-fab/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-fab/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-field/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-field/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-flipcard/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-flipcard/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-icon/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-icon/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-input/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-input/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-modal/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-modal/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-password/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-password/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-popper/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-popper/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-radio/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-radio/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-rotator/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-rotator/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-scroll-link/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-scroll-link/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-scroll-nav/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-scroll-nav/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-scroll-snap/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-scroll-snap/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-select/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-select/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-sortable/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-sortable/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-svgs/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-svgs/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-tabs/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-tabs/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-textarea/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-textarea/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-toggle/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-toggle/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-tooltip/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-tooltip/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-tracker/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-tracker/docs/stories.js +0 -0
- /package/dist/{src/components → components}/kemet-upload/docs/stories.d.ts +0 -0
- /package/dist/{src/components → components}/kemet-upload/docs/stories.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1,31 +0,0 @@
|
|
|
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
|
-
}
|
|
@@ -1,82 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1 +0,0 @@
|
|
|
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"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../../src/components/kemet-scroll-nav/docs/stories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAG3B,OAAO,qBAAqB,CAAC;AAE7B,OAAO,6BAA6B,CAAC;AACrC,OAAO,4BAA4B,CAAC;AACpC,OAAO,kCAAkC,CAAC;AAE1C,MAAM,IAAI,GAAS;IACjB,KAAK,EAAE,yBAAyB;IAChC,SAAS,EAAE,kBAAkB;CAC9B,CAAC;AACF,eAAe,IAAI,CAAC;AAIpB,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoEhC,CAAC;AAEF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2EhC,CAAC;AAGF,MAAM,CAAC,MAAM,MAAM,GAAU;IAC3B,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAU;IAC3B,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE;CAC/B,CAAC","sourcesContent":["import { html } from 'lit';\nimport type { Meta, StoryObj } from '@storybook/web-components';\n\nimport '../kemet-scroll-nav';\n\nimport '../../kemet-tabs/kemet-tabs';\nimport '../../kemet-tabs/kemet-tab';\nimport '../../kemet-tabs/kemet-tab-panel';\n\nconst meta: Meta = {\n title: 'Components / Scroll Nav',\n component: 'kemet-scroll-nav',\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst TemplateResize = () => html`\n <style>\n article {\n color: #fafafa;\n padding: 2rem;\n line-height: 1.5;\n background-color: var(--kemet-color-primary);\n padding-top: 400px; /* should be the height of kemet-scroll-nav */\n }\n\n kemet-scroll-nav {\n display: grid;\n gap: 1rem;\n grid-template-columns: 1fr auto;\n align-items: flex-end;\n }\n\n kemet-scroll-nav a {\n text-decoration: none;\n color: var(--kemet-color-primary);\n }\n\n kemet-scroll-nav .links {\n display: flex;\n gap: 1rem;\n list-style: none;\n padding: 0;\n }\n\n #docs-root .kemet-scroll-nav-demo {\n display: none;\n }\n </style>\n <section class=\"kemet-scroll-nav-demo resize\">\n <kemet-scroll-nav effect=\"resize\" offset=\"-250\">\n <div class=\"logo\">\n <img src=\"https://kemet.dev/assets/images/storybook.png\" alt=\"Kemet UI\" />\n </div>\n <ul class=\"links\">\n <li><a href=\"#\" title=\"Link 1\">Link 1</a></li>\n <li><a href=\"#\" title=\"Link 2\">Link 2</a></li>\n <li><a href=\"#\" title=\"Link 3\">Link 3</a></li>\n </ul>\n </kemet-scroll-nav>\n\n <article>\n <h2>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>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>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 </article>\n </section>\n`;\n\nconst TemplateSticky = () => html`\n <style>\n header,\n article {\n color: #fafafa;\n padding: 2rem;\n line-height: 1.5;\n background-color: var(--kemet-color-primary);\n }\n\n kemet-scroll-nav {\n display: grid;\n gap: 1rem;\n grid-template-columns: 1fr auto;\n align-items: flex-end;\n }\n\n kemet-scroll-nav a {\n text-decoration: none;\n color: var(--kemet-color-primary);\n }\n\n kemet-scroll-nav .links {\n display: flex;\n gap: 1rem;\n list-style: none;\n padding: 0;\n }\n\n #docs-root .kemet-scroll-nav-demo {\n display: none;\n }\n </style>\n <section class=\"kemet-scroll-nav-demo sticky\">\n <header>\n <h1 kemet-type-size=\"plus-6\">Kemet Scroll Nav</h1>\n <aside>\n <p>Scroll down to see this nav stick to the top! This is the default behavior.</p>\n </aside>\n </header>\n\n <kemet-scroll-nav>\n <div class=\"logo\">\n <img src=\"https://kemet.dev/assets/images/storybook.png\" alt=\"Kemet UI\" />\n </div>\n <ul class=\"links\">\n <li><a href=\"#\" title=\"Link 1\">Link 1</a></li>\n <li><a href=\"#\" title=\"Link 2\">Link 2</a></li>\n <li><a href=\"#\" title=\"Link 3\">Link 3</a></li>\n </ul>\n </kemet-scroll-nav>\n\n <article>\n <h2>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>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>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 </article>\n </section>\n`;\n\n\nexport const Resize: Story = {\n render: () => TemplateResize(),\n};\n\nexport const Sticky: Story = {\n render: () => TemplateSticky(),\n};\n"]}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
2
|
-
import { TypeEffect } from './types';
|
|
3
|
-
/**
|
|
4
|
-
* @since 1.0.0
|
|
5
|
-
* @status stable
|
|
6
|
-
*
|
|
7
|
-
* @tagname kemet-scroll-nav
|
|
8
|
-
* @summary An element that transforms at a scroll point.
|
|
9
|
-
*
|
|
10
|
-
* @prop {string} effect - Determines where the transform point is activated. Values include: (sticky | resize)
|
|
11
|
-
* @prop {boolean} transform - Whether or not the nav has shifted into a new state.
|
|
12
|
-
* @prop {number} offset - Allows for an arbitrary adjustment of the transform point in pixels. Works with negative values.
|
|
13
|
-
*
|
|
14
|
-
* @cssproperty --kemet-scroll-nav-padding - The padding of the nav. Default: 1rem 2rem.
|
|
15
|
-
* @cssproperty --kemet-scroll-nav-background - The background color of the nav. Default: #fafafa.
|
|
16
|
-
* @cssproperty --kemet-scroll-nav-transition - The transition speed of the transformation. Default: 300ms.
|
|
17
|
-
* @cssproperty --kemet-scroll-nav-resize-height - The height of the pre-transformed nav. Default: 400px.
|
|
18
|
-
* @cssproperty --kemet-scroll-nav-resize-height-transformed - The height of the transformed nav. Default: 100px.
|
|
19
|
-
*
|
|
20
|
-
*/
|
|
21
|
-
export default class KemetScrollNav extends LitElement {
|
|
22
|
-
static styles: import("lit").CSSResult[];
|
|
23
|
-
effect: TypeEffect;
|
|
24
|
-
transform: boolean;
|
|
25
|
-
offset: number;
|
|
26
|
-
render(): import("lit-html").TemplateResult<1>;
|
|
27
|
-
firstUpdated(): void;
|
|
28
|
-
handleScroll(stickPoint: any, elementHeight: any): void;
|
|
29
|
-
}
|
|
30
|
-
declare global {
|
|
31
|
-
interface HTMLElementTagNameMap {
|
|
32
|
-
'kemet-scroll-nav': KemetScrollNav;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { LitElement, html } from 'lit';
|
|
3
|
-
import { customElement, property } from 'lit/decorators.js';
|
|
4
|
-
import { stylesScrollNav } from './styles';
|
|
5
|
-
/**
|
|
6
|
-
* @since 1.0.0
|
|
7
|
-
* @status stable
|
|
8
|
-
*
|
|
9
|
-
* @tagname kemet-scroll-nav
|
|
10
|
-
* @summary An element that transforms at a scroll point.
|
|
11
|
-
*
|
|
12
|
-
* @prop {string} effect - Determines where the transform point is activated. Values include: (sticky | resize)
|
|
13
|
-
* @prop {boolean} transform - Whether or not the nav has shifted into a new state.
|
|
14
|
-
* @prop {number} offset - Allows for an arbitrary adjustment of the transform point in pixels. Works with negative values.
|
|
15
|
-
*
|
|
16
|
-
* @cssproperty --kemet-scroll-nav-padding - The padding of the nav. Default: 1rem 2rem.
|
|
17
|
-
* @cssproperty --kemet-scroll-nav-background - The background color of the nav. Default: #fafafa.
|
|
18
|
-
* @cssproperty --kemet-scroll-nav-transition - The transition speed of the transformation. Default: 300ms.
|
|
19
|
-
* @cssproperty --kemet-scroll-nav-resize-height - The height of the pre-transformed nav. Default: 400px.
|
|
20
|
-
* @cssproperty --kemet-scroll-nav-resize-height-transformed - The height of the transformed nav. Default: 100px.
|
|
21
|
-
*
|
|
22
|
-
*/
|
|
23
|
-
let KemetScrollNav = class KemetScrollNav extends LitElement {
|
|
24
|
-
constructor() {
|
|
25
|
-
super(...arguments);
|
|
26
|
-
this.effect = 'sticky';
|
|
27
|
-
this.transform = false;
|
|
28
|
-
this.offset = 0;
|
|
29
|
-
}
|
|
30
|
-
render() {
|
|
31
|
-
return html `
|
|
32
|
-
<slot></slot>
|
|
33
|
-
`;
|
|
34
|
-
}
|
|
35
|
-
firstUpdated() {
|
|
36
|
-
const stickPoint = this.offsetTop;
|
|
37
|
-
const elementHeight = this.offsetHeight;
|
|
38
|
-
window.addEventListener('scroll', () => {
|
|
39
|
-
// we pass stickPoint and elementHeight as recorded constants
|
|
40
|
-
// so that it does not update for each call to handleScroll
|
|
41
|
-
this.handleScroll(stickPoint, elementHeight);
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
handleScroll(stickPoint, elementHeight) {
|
|
45
|
-
const transformPoint = (this.effect === 'sticky')
|
|
46
|
-
? stickPoint + this.offset
|
|
47
|
-
: elementHeight + this.offset;
|
|
48
|
-
if (window.pageYOffset >= transformPoint) {
|
|
49
|
-
this.transform = true;
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
this.transform = false;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
KemetScrollNav.styles = [stylesScrollNav];
|
|
57
|
-
__decorate([
|
|
58
|
-
property({ type: String, reflect: true })
|
|
59
|
-
], KemetScrollNav.prototype, "effect", void 0);
|
|
60
|
-
__decorate([
|
|
61
|
-
property({ type: Boolean, reflect: true })
|
|
62
|
-
], KemetScrollNav.prototype, "transform", void 0);
|
|
63
|
-
__decorate([
|
|
64
|
-
property({ type: Number })
|
|
65
|
-
], KemetScrollNav.prototype, "offset", void 0);
|
|
66
|
-
KemetScrollNav = __decorate([
|
|
67
|
-
customElement('kemet-scroll-nav')
|
|
68
|
-
], KemetScrollNav);
|
|
69
|
-
export default KemetScrollNav;
|
|
70
|
-
//# sourceMappingURL=kemet-scroll-nav.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kemet-scroll-nav.js","sourceRoot":"","sources":["../../../../src/components/kemet-scroll-nav/kemet-scroll-nav.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3C;;;;;;;;;;;;;;;;;GAiBG;AAGH,IAAqB,cAAc,GAAnC,MAAqB,cAAe,SAAQ,UAAU;IAAtD;;QAIE,WAAM,GAAe,QAAQ,CAAC;QAG9B,cAAS,GAAY,KAAK,CAAC;QAG3B,WAAM,GAAW,CAAC,CAAC;IA+BrB,CAAC;IA5BC,MAAM;QACJ,OAAO,IAAI,CAAA;;KAEV,CAAC;IACJ,CAAC;IAED,YAAY;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;QAClC,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;QAExC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE;YACrC,6DAA6D;YAC7D,2DAA2D;YAC3D,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,UAAU,EAAE,aAAa;QACpC,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC;YAC/C,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM;YAC1B,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhC,IAAI,MAAM,CAAC,WAAW,IAAI,cAAc,EAAE;YACxC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACvB;aAAM;YACL,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;SACxB;IACH,CAAC;CACF,CAAA;AAxCQ,qBAAM,GAAG,CAAC,eAAe,CAAC,CAAC;AAGlC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;8CACZ;AAG9B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDAChB;AAG3B;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;8CACR;AAVA,cAAc;IADlC,aAAa,CAAC,kBAAkB,CAAC;GACb,cAAc,CAyClC;eAzCoB,cAAc","sourcesContent":["import { LitElement, html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { stylesScrollNav } from './styles';\nimport { TypeEffect } from './types';\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-scroll-nav\n * @summary An element that transforms at a scroll point.\n *\n * @prop {string} effect - Determines where the transform point is activated. Values include: (sticky | resize)\n * @prop {boolean} transform - Whether or not the nav has shifted into a new state.\n * @prop {number} offset - Allows for an arbitrary adjustment of the transform point in pixels. Works with negative values.\n *\n * @cssproperty --kemet-scroll-nav-padding - The padding of the nav. Default: 1rem 2rem.\n * @cssproperty --kemet-scroll-nav-background - The background color of the nav. Default: #fafafa.\n * @cssproperty --kemet-scroll-nav-transition - The transition speed of the transformation. Default: 300ms.\n * @cssproperty --kemet-scroll-nav-resize-height - The height of the pre-transformed nav. Default: 400px.\n * @cssproperty --kemet-scroll-nav-resize-height-transformed - The height of the transformed nav. Default: 100px.\n *\n */\n\n@customElement('kemet-scroll-nav')\nexport default class KemetScrollNav extends LitElement {\n static styles = [stylesScrollNav];\n\n @property({ type: String, reflect: true })\n effect: TypeEffect = 'sticky';\n\n @property({ type: Boolean, reflect: true })\n transform: boolean = false;\n\n @property({ type: Number })\n offset: number = 0;\n\n\n render() {\n return html`\n <slot></slot>\n `;\n }\n\n firstUpdated() {\n const stickPoint = this.offsetTop;\n const elementHeight = this.offsetHeight;\n\n window.addEventListener('scroll', () => {\n // we pass stickPoint and elementHeight as recorded constants\n // so that it does not update for each call to handleScroll\n this.handleScroll(stickPoint, elementHeight);\n });\n }\n\n handleScroll(stickPoint, elementHeight) {\n const transformPoint = (this.effect === 'sticky')\n ? stickPoint + this.offset\n : elementHeight + this.offset;\n\n if (window.pageYOffset >= transformPoint) {\n this.transform = true;\n } else {\n this.transform = false;\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-scroll-nav': KemetScrollNav\n }\n}\n\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const stylesScrollNav: import("lit").CSSResult;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { css } from 'lit';
|
|
2
|
-
export const stylesScrollNav = css `
|
|
3
|
-
:host {
|
|
4
|
-
display: block;
|
|
5
|
-
box-sizing: border-box;
|
|
6
|
-
padding: var(--kemet-scroll-nav-padding, 1rem 2rem);
|
|
7
|
-
background-color: var(--kemet-scroll-nav-background, #fafafa);
|
|
8
|
-
transition: all var(--kemet-scroll-nav-transition, 300ms) ease;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
:host([transform]),
|
|
12
|
-
:host([effect="resize"]) {
|
|
13
|
-
position: fixed;
|
|
14
|
-
top: 0;
|
|
15
|
-
left: 0;
|
|
16
|
-
width: 100%;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
:host([effect="resize"]) {
|
|
20
|
-
height: var(--kemet-scroll-nav-resize-height, 400px);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
:host([transform][effect="resize"]) {
|
|
24
|
-
height: var(--kemet-scroll-nav-resize-height-transformed, 100px);
|
|
25
|
-
}
|
|
26
|
-
`;
|
|
27
|
-
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/kemet-scroll-nav/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;CAwBjC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const stylesScrollNav = css`\n :host {\n display: block;\n box-sizing: border-box;\n padding: var(--kemet-scroll-nav-padding, 1rem 2rem);\n background-color: var(--kemet-scroll-nav-background, #fafafa);\n transition: all var(--kemet-scroll-nav-transition, 300ms) ease;\n }\n\n :host([transform]),\n :host([effect=\"resize\"]) {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n }\n\n :host([effect=\"resize\"]) {\n height: var(--kemet-scroll-nav-resize-height, 400px);\n }\n\n :host([transform][effect=\"resize\"]) {\n height: var(--kemet-scroll-nav-resize-height-transformed, 100px);\n }\n`;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/kemet-scroll-nav/types.ts"],"names":[],"mappings":"","sourcesContent":["export type TypeEffect = 'sticky' | 'resize';\n\nexport interface KemetScrollNavInterface extends HTMLElement {\n effect?: TypeEffect,\n transform?: boolean,\n offset?: number\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../../../src/components/kemet-scroll-snap/docs/stories.ts"],"names":[],"mappings":"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","sourcesContent":["import { html } from 'lit';\nimport type { Meta, StoryObj } from '@storybook/web-components';\n\nimport '../kemet-scroll-snap';\nimport '../kemet-scroll-snap-slide';\nimport '../kemet-scroll-snap-paginator';\n\nimport '../../kemet-tabs/kemet-tabs';\nimport '../../kemet-tabs/kemet-tab';\nimport '../../kemet-tabs/kemet-tab-panel';\n\nconst meta: Meta = {\n title: 'Components / Scroll Snap',\n component: 'kemet-scroll-snap',\n};\nexport default meta;\n\ntype Story = StoryObj;\n\nconst Template = ({\n showPagination = true,\n numberOfSlides = 5,\n gap = '1.5rem',\n axis = 'horizontal',\n pagination = 'bottom',\n paginationIcon = 'circle-fill',\n paginationSize = 16,\n paginationUseNumbers = false,\n paginationUseLabels = false,\n paginationCenter = true,\n paginationGap = '0.5rem',\n slideWidth = '44vw',\n horizontalMaxWidth = '90%',\n}) => {\n const makeSlides = (numberOfSlides) => {\n const slides = [];\n\n // eslint-disable-next-line no-plusplus\n for (let i = 0; i < numberOfSlides; i++) {\n slides.push(html`\n <kemet-scroll-snap-slide label=\"Heading ${i + 1}\" kemet-margin-top=\"tiny:normal\">\n <h3 kemet-type-size=\"plus-6\">Heading ${i + 1}</h3>\n <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>\n <img src=\"https://via.placeholder.com/1920x1080\" alt=\"A placeholder\" />\n </kemet-scroll-snap-slide>\n `);\n }\n\n return slides;\n };\n\n const makePagination = (display, icon, size, useNumbers, useLabels, center) => {\n if (display) {\n return html`\n <kemet-scroll-snap-paginator\n slot=\"pagination\"\n icon=\"${icon}\"\n size=\"${size}\"\n ?use-number-pages=${useNumbers}\n ?use-label-pages=${useLabels}\n ?center=${center}>\n </kemet-scroll-snap-paginator>\n `;\n }\n\n return null;\n };\n\n return html`\n <style>\n img {\n max-width: 100%;\n }\n\n kemet-scroll-snap {\n --kemet-scroll-snap-gap: ${gap};\n --kemet-scroll-snap-horizontal-max-width: ${horizontalMaxWidth};\n }\n\n kemet-scroll-snap-slide {\n --kemet-scroll-snap-slide-width: ${slideWidth};\n }\n\n kemet-scroll-snap-paginator {\n --kemet-scroll-snap-paginator-gap: ${paginationGap};\n }\n </style>\n <kemet-scroll-snap axis=\"${axis}\" pagination=\"${pagination}\">\n <div slot=\"slides\">\n ${makeSlides(numberOfSlides)}\n </div>\n ${makePagination(showPagination, paginationIcon, paginationSize, paginationUseNumbers, paginationUseLabels, paginationCenter)}\n </kemet-scroll-snap>\n `;\n}\n\nexport const Standard: Story = {\n render: args => Template(args),\n args: {\n showPagination: true,\n numberOfSlides: 5,\n gap: '1.5rem',\n axis: 'horizontal',\n pagination: 'bottom',\n paginationIcon: 'circle-fill',\n paginationSize: 16,\n paginationUseNumbers: false,\n paginationUseLabels: false,\n paginationCenter: true,\n paginationGap: '0.5rem',\n slideWidth: '44vw',\n horizontalMaxWidth: '90%',\n },\n argTypes: {\n showPagination: {\n control: { type: 'boolean' },\n },\n numberOfSlides: {\n control: { type: 'number' },\n },\n gap: {\n control: { type: 'text' },\n },\n axis: {\n control: { type: 'select' },\n options: ['horizontal', 'vertical'],\n },\n pagination: {\n control: { type: 'select' },\n options: ['top', 'right', 'bottom', 'left'],\n },\n paginationIcon: {\n control: { type: 'text' },\n },\n paginationSize: {\n control: { type: 'number' },\n },\n paginationUseNumbers: {\n control: { type: 'boolean' },\n },\n paginationUseLabels: {\n control: { type: 'boolean' },\n },\n paginationCenter: {\n control: { type: 'boolean' },\n },\n paginationGap: {\n control: { type: 'text' },\n },\n slideWidth: {\n control: { type: 'text' },\n },\n horizontalMaxWidth: {\n control: { type: 'text' },\n },\n }\n};\n"]}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
2
|
-
/**
|
|
3
|
-
* @since 1.0.0
|
|
4
|
-
* @status stable
|
|
5
|
-
*
|
|
6
|
-
* @tagname kemet-scroll-snap-paginator
|
|
7
|
-
* @summary The scroll snap's pagination.
|
|
8
|
-
*
|
|
9
|
-
* @prop {array} slides - Information about each slide.
|
|
10
|
-
* @prop {string} icon - A string representing which icon to use for pagination. Supports icons used in kemet-icon.
|
|
11
|
-
* @prop {number} size - The size in pixels of the icons.
|
|
12
|
-
* @prop {boolean} center - Determines whether to center the pagination items.
|
|
13
|
-
* @prop {boolean} hideFocusedLinks - Will hide inactive pagination items if set to true.
|
|
14
|
-
* @prop {boolean} useNumberPages - If set to true, the pages in the pagination iterator will appear as a set of numbers.
|
|
15
|
-
* @prop {boolean} useLabelPages - If set to true, the pages in the pagination iterator will appear as the label set on the slide.
|
|
16
|
-
*
|
|
17
|
-
* @cssproperty --kemet-scroll-snap-paginator-padding - The padding on the container. Default: 1rem 0.
|
|
18
|
-
* @cssproperty --kemet-scroll-snap-paginator-gap - The space between pagination items. Default: 0.5rem.
|
|
19
|
-
* @cssproperty --kemet-scroll-snap-paginator-link-color - The color of a linkable pagination item. Default: var(--kemet-color-primary).
|
|
20
|
-
*
|
|
21
|
-
* @event kemet-scroll-snap-focus - Fires when a set of slides are focused on.
|
|
22
|
-
*
|
|
23
|
-
*/
|
|
24
|
-
export default class KemetScrollSnapPaginator extends LitElement {
|
|
25
|
-
static styles: import("lit").CSSResult[];
|
|
26
|
-
slides: any[];
|
|
27
|
-
icon: string;
|
|
28
|
-
size: number;
|
|
29
|
-
center: boolean;
|
|
30
|
-
hideFocusedLinks: boolean;
|
|
31
|
-
useNumberPages: boolean;
|
|
32
|
-
useLabelPages: boolean;
|
|
33
|
-
updated(): void;
|
|
34
|
-
render(): import("lit-html").TemplateResult<1>;
|
|
35
|
-
makePagination(): import("lit-html").TemplateResult<1>[];
|
|
36
|
-
pageDisplay(slide: any, visibleIndex: any): any;
|
|
37
|
-
slideLink(index: any): void;
|
|
38
|
-
handleKeyboardInput(event: any, id: any): void;
|
|
39
|
-
}
|
|
40
|
-
declare global {
|
|
41
|
-
interface HTMLElementTagNameMap {
|
|
42
|
-
'kemet-scroll-snap-paginator': KemetScrollSnapPaginator;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { html, LitElement } from 'lit';
|
|
3
|
-
import { customElement, property } from 'lit/decorators.js';
|
|
4
|
-
import { emitEvent } from '../../utilities/misc/events';
|
|
5
|
-
import { stylesScrollSnapPaginator } from './styles';
|
|
6
|
-
/**
|
|
7
|
-
* @since 1.0.0
|
|
8
|
-
* @status stable
|
|
9
|
-
*
|
|
10
|
-
* @tagname kemet-scroll-snap-paginator
|
|
11
|
-
* @summary The scroll snap's pagination.
|
|
12
|
-
*
|
|
13
|
-
* @prop {array} slides - Information about each slide.
|
|
14
|
-
* @prop {string} icon - A string representing which icon to use for pagination. Supports icons used in kemet-icon.
|
|
15
|
-
* @prop {number} size - The size in pixels of the icons.
|
|
16
|
-
* @prop {boolean} center - Determines whether to center the pagination items.
|
|
17
|
-
* @prop {boolean} hideFocusedLinks - Will hide inactive pagination items if set to true.
|
|
18
|
-
* @prop {boolean} useNumberPages - If set to true, the pages in the pagination iterator will appear as a set of numbers.
|
|
19
|
-
* @prop {boolean} useLabelPages - If set to true, the pages in the pagination iterator will appear as the label set on the slide.
|
|
20
|
-
*
|
|
21
|
-
* @cssproperty --kemet-scroll-snap-paginator-padding - The padding on the container. Default: 1rem 0.
|
|
22
|
-
* @cssproperty --kemet-scroll-snap-paginator-gap - The space between pagination items. Default: 0.5rem.
|
|
23
|
-
* @cssproperty --kemet-scroll-snap-paginator-link-color - The color of a linkable pagination item. Default: var(--kemet-color-primary).
|
|
24
|
-
*
|
|
25
|
-
* @event kemet-scroll-snap-focus - Fires when a set of slides are focused on.
|
|
26
|
-
*
|
|
27
|
-
*/
|
|
28
|
-
let KemetScrollSnapPaginator = class KemetScrollSnapPaginator extends LitElement {
|
|
29
|
-
constructor() {
|
|
30
|
-
super(...arguments);
|
|
31
|
-
this.slides = [];
|
|
32
|
-
this.icon = 'circle-fill';
|
|
33
|
-
this.size = 16;
|
|
34
|
-
this.hideFocusedLinks = false;
|
|
35
|
-
this.useNumberPages = false;
|
|
36
|
-
this.useLabelPages = false;
|
|
37
|
-
}
|
|
38
|
-
updated() {
|
|
39
|
-
const scrollSnapElement = this.closest('kemet-scroll-snap');
|
|
40
|
-
if (scrollSnapElement) {
|
|
41
|
-
scrollSnapElement.addEventListener('kemet-scroll-snap-make-slides', (event) => {
|
|
42
|
-
this.slides = event.detail;
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
render() {
|
|
47
|
-
return html `
|
|
48
|
-
<nav part="nav">${this.makePagination()}</nav>
|
|
49
|
-
`;
|
|
50
|
-
}
|
|
51
|
-
makePagination() {
|
|
52
|
-
let counter = 0;
|
|
53
|
-
if (this.slides) {
|
|
54
|
-
return this.slides.map((slide) => {
|
|
55
|
-
counter = counter += 1;
|
|
56
|
-
if (slide.focused) {
|
|
57
|
-
return html `
|
|
58
|
-
<span part="span">${this.pageDisplay(slide, counter)}</span>
|
|
59
|
-
`;
|
|
60
|
-
}
|
|
61
|
-
return html `
|
|
62
|
-
<span
|
|
63
|
-
class="link"
|
|
64
|
-
tabindex="0"
|
|
65
|
-
role="button"
|
|
66
|
-
@keyup="${event => this.handleKeyboardInput(event, slide.id)}"
|
|
67
|
-
@click=${() => this.slideLink(slide.id)}
|
|
68
|
-
aria-label="${slide.label}">
|
|
69
|
-
${this.pageDisplay(slide, counter)}
|
|
70
|
-
</span>
|
|
71
|
-
`;
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
return null;
|
|
75
|
-
}
|
|
76
|
-
pageDisplay(slide, visibleIndex) {
|
|
77
|
-
if (this.useNumberPages) {
|
|
78
|
-
return visibleIndex;
|
|
79
|
-
}
|
|
80
|
-
if (this.useLabelPages) {
|
|
81
|
-
return slide.label;
|
|
82
|
-
}
|
|
83
|
-
return html `<kemet-icon icon=${this.icon} size=${this.size}></kemet-icon>`;
|
|
84
|
-
}
|
|
85
|
-
slideLink(index) {
|
|
86
|
-
emitEvent(this, 'kemet-scroll-snap-focus', index);
|
|
87
|
-
}
|
|
88
|
-
handleKeyboardInput(event, id) {
|
|
89
|
-
if (event.code === 'Enter' || event.code === 'Space') {
|
|
90
|
-
this.slideLink(id);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
KemetScrollSnapPaginator.styles = [stylesScrollSnapPaginator];
|
|
95
|
-
__decorate([
|
|
96
|
-
property({ type: Array })
|
|
97
|
-
], KemetScrollSnapPaginator.prototype, "slides", void 0);
|
|
98
|
-
__decorate([
|
|
99
|
-
property({ type: String })
|
|
100
|
-
], KemetScrollSnapPaginator.prototype, "icon", void 0);
|
|
101
|
-
__decorate([
|
|
102
|
-
property({ type: Number })
|
|
103
|
-
], KemetScrollSnapPaginator.prototype, "size", void 0);
|
|
104
|
-
__decorate([
|
|
105
|
-
property({ type: Boolean, reflect: true })
|
|
106
|
-
], KemetScrollSnapPaginator.prototype, "center", void 0);
|
|
107
|
-
__decorate([
|
|
108
|
-
property({ type: Boolean, attribute: 'hide-focused-links' })
|
|
109
|
-
], KemetScrollSnapPaginator.prototype, "hideFocusedLinks", void 0);
|
|
110
|
-
__decorate([
|
|
111
|
-
property({ type: Boolean, reflect: true, attribute: 'use-number-pages' })
|
|
112
|
-
], KemetScrollSnapPaginator.prototype, "useNumberPages", void 0);
|
|
113
|
-
__decorate([
|
|
114
|
-
property({ type: Boolean, reflect: true, attribute: 'use-label-pages' })
|
|
115
|
-
], KemetScrollSnapPaginator.prototype, "useLabelPages", void 0);
|
|
116
|
-
KemetScrollSnapPaginator = __decorate([
|
|
117
|
-
customElement('kemet-scroll-snap-paginator')
|
|
118
|
-
], KemetScrollSnapPaginator);
|
|
119
|
-
export default KemetScrollSnapPaginator;
|
|
120
|
-
//# sourceMappingURL=kemet-scroll-snap-paginator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kemet-scroll-snap-paginator.js","sourceRoot":"","sources":["../../../../src/components/kemet-scroll-snap/kemet-scroll-snap-paginator.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { emitEvent } from '../../utilities/misc/events';\nimport { stylesScrollSnapPaginator } from './styles';\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-scroll-snap-paginator\n * @summary The scroll snap's pagination.\n *\n * @prop {array} slides - Information about each slide.\n * @prop {string} icon - A string representing which icon to use for pagination. Supports icons used in kemet-icon.\n * @prop {number} size - The size in pixels of the icons.\n * @prop {boolean} center - Determines whether to center the pagination items.\n * @prop {boolean} hideFocusedLinks - Will hide inactive pagination items if set to true.\n * @prop {boolean} useNumberPages - If set to true, the pages in the pagination iterator will appear as a set of numbers.\n * @prop {boolean} useLabelPages - If set to true, the pages in the pagination iterator will appear as the label set on the slide.\n *\n * @cssproperty --kemet-scroll-snap-paginator-padding - The padding on the container. Default: 1rem 0.\n * @cssproperty --kemet-scroll-snap-paginator-gap - The space between pagination items. Default: 0.5rem.\n * @cssproperty --kemet-scroll-snap-paginator-link-color - The color of a linkable pagination item. Default: var(--kemet-color-primary).\n *\n * @event kemet-scroll-snap-focus - Fires when a set of slides are focused on.\n *\n */\n\n@customElement('kemet-scroll-snap-paginator')\nexport default class KemetScrollSnapPaginator extends LitElement {\n static styles = [stylesScrollSnapPaginator];\n\n @property({ type: Array })\n slides: any[] = [];\n\n @property({ type: String })\n icon: string = 'circle-fill';\n\n @property({ type: Number })\n size: number = 16;\n\n @property({ type: Boolean, reflect: true })\n center: boolean;\n\n @property({ type: Boolean, attribute: 'hide-focused-links' })\n hideFocusedLinks: boolean = false;\n\n @property({ type: Boolean, reflect: true, attribute: 'use-number-pages' })\n useNumberPages: boolean = false;\n\n @property({ type: Boolean, reflect: true, attribute: 'use-label-pages' })\n useLabelPages: boolean = false;\n\n\n updated() {\n const scrollSnapElement = this.closest('kemet-scroll-snap');\n\n if (scrollSnapElement) {\n scrollSnapElement.addEventListener('kemet-scroll-snap-make-slides', (event: CustomEvent) => {\n this.slides = event.detail;\n });\n }\n }\n\n render() {\n return html`\n <nav part=\"nav\">${this.makePagination()}</nav>\n `;\n }\n\n makePagination() {\n let counter = 0;\n\n if (this.slides) {\n return this.slides.map((slide) => {\n counter = counter += 1;\n\n if (slide.focused) {\n return html`\n <span part=\"span\">${this.pageDisplay(slide, counter)}</span>\n `;\n }\n\n return html`\n <span\n class=\"link\"\n tabindex=\"0\"\n role=\"button\"\n @keyup=\"${event => this.handleKeyboardInput(event, slide.id)}\"\n @click=${() => this.slideLink(slide.id)}\n aria-label=\"${slide.label}\">\n ${this.pageDisplay(slide, counter)}\n </span>\n `;\n });\n }\n\n return null;\n }\n\n pageDisplay(slide, visibleIndex) {\n if (this.useNumberPages) {\n return visibleIndex;\n }\n\n if (this.useLabelPages) {\n return slide.label;\n }\n\n return html`<kemet-icon icon=${this.icon} size=${this.size}></kemet-icon>`;\n }\n\n slideLink(index) {\n emitEvent(this, 'kemet-scroll-snap-focus', index);\n }\n\n handleKeyboardInput(event, id) {\n if (event.code === 'Enter' || event.code === 'Space') {\n this.slideLink(id);\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kemet-scroll-snap-paginator': KemetScrollSnapPaginator\n }\n}\n"]}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
2
|
-
/**
|
|
3
|
-
* @since 1.0.0
|
|
4
|
-
* @status stable
|
|
5
|
-
*
|
|
6
|
-
* @tagname kemet-scroll-snap-slide
|
|
7
|
-
* @summary A slide in a scroll snap component.
|
|
8
|
-
*
|
|
9
|
-
* @prop {boolean} focused - Is true when the slide is fully visible in it's container.
|
|
10
|
-
* @prop {number} index - Identifies the slide.
|
|
11
|
-
* @prop {string} label - Labels the slide.
|
|
12
|
-
*
|
|
13
|
-
* @cssproperty --kemet-scroll-snap-slide-width - The width of the slide. Default: 100%.
|
|
14
|
-
* @cssproperty --kemet-scroll-snap-slide-align - The slide alignment. Default: center.
|
|
15
|
-
*
|
|
16
|
-
*/
|
|
17
|
-
export default class KemetScrollSnapSlide extends LitElement {
|
|
18
|
-
static styles: import("lit").CSSResult[];
|
|
19
|
-
focused: boolean;
|
|
20
|
-
index: number;
|
|
21
|
-
label: string;
|
|
22
|
-
updated(): void;
|
|
23
|
-
render(): import("lit-html").TemplateResult<1>;
|
|
24
|
-
addTabIndex(): void;
|
|
25
|
-
}
|
|
26
|
-
declare global {
|
|
27
|
-
interface HTMLElementTagNameMap {
|
|
28
|
-
'kemet-scroll-snap-slide': KemetScrollSnapSlide;
|
|
29
|
-
}
|
|
30
|
-
}
|