luxen-ui 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cdn/chunks/decorate.js +1 -1
- package/cdn/chunks/decorate.js.map +1 -1
- package/cdn/chunks/map.js +2 -0
- package/cdn/chunks/map.js.map +1 -0
- package/cdn/custom-elements.json +6707 -4242
- package/cdn/elements/avatar/avatar.d.ts +1 -1
- package/cdn/elements/avatar/avatar.d.ts.map +1 -1
- package/cdn/elements/avatar/avatar.js +3 -3
- package/cdn/elements/avatar/avatar.js.map +1 -1
- package/cdn/elements/avatar/index.d.ts +2 -2
- package/cdn/elements/avatar/index.d.ts.map +1 -1
- package/cdn/elements/avatar/index.js +1 -1
- package/cdn/elements/avatar/index.js.map +1 -1
- package/cdn/elements/badge/badge.d.ts +1 -1
- package/cdn/elements/badge/badge.d.ts.map +1 -1
- package/cdn/elements/badge/badge.js +1 -1
- package/cdn/elements/badge/badge.js.map +1 -1
- package/cdn/elements/badge/index.d.ts +2 -2
- package/cdn/elements/badge/index.d.ts.map +1 -1
- package/cdn/elements/badge/index.js +1 -1
- package/cdn/elements/badge/index.js.map +1 -1
- package/cdn/elements/carousel/carousel.d.ts +18 -11
- package/cdn/elements/carousel/carousel.d.ts.map +1 -1
- package/cdn/elements/carousel/carousel.js +21 -20
- package/cdn/elements/carousel/carousel.js.map +1 -1
- package/cdn/elements/carousel/index.d.ts +2 -2
- package/cdn/elements/carousel/index.d.ts.map +1 -1
- package/cdn/elements/carousel/index.js +1 -1
- package/cdn/elements/carousel/index.js.map +1 -1
- package/cdn/elements/carousel-item/carousel-item.d.ts +1 -1
- package/cdn/elements/carousel-item/carousel-item.d.ts.map +1 -1
- package/cdn/elements/carousel-item/carousel-item.js +1 -1
- package/cdn/elements/carousel-item/carousel-item.js.map +1 -1
- package/cdn/elements/carousel-item/index.d.ts +2 -2
- package/cdn/elements/carousel-item/index.d.ts.map +1 -1
- package/cdn/elements/carousel-item/index.js +1 -1
- package/cdn/elements/carousel-item/index.js.map +1 -1
- package/cdn/elements/dialog/dialog.d.ts +1 -1
- package/cdn/elements/dialog/dialog.d.ts.map +1 -1
- package/cdn/elements/dialog/dialog.js +2 -2
- package/cdn/elements/dialog/dialog.js.map +1 -1
- package/cdn/elements/dialog/dialog.styles.js.map +1 -1
- package/cdn/elements/dialog/index.d.ts +2 -2
- package/cdn/elements/dialog/index.d.ts.map +1 -1
- package/cdn/elements/dialog/index.js +1 -1
- package/cdn/elements/dialog/index.js.map +1 -1
- package/cdn/elements/divider/divider.d.ts +1 -1
- package/cdn/elements/divider/divider.d.ts.map +1 -1
- package/cdn/elements/divider/divider.js +1 -1
- package/cdn/elements/divider/divider.js.map +1 -1
- package/cdn/elements/divider/index.d.ts +2 -2
- package/cdn/elements/divider/index.d.ts.map +1 -1
- package/cdn/elements/divider/index.js +1 -1
- package/cdn/elements/divider/index.js.map +1 -1
- package/cdn/elements/drawer/drawer.d.ts +2 -2
- package/cdn/elements/drawer/drawer.d.ts.map +1 -1
- package/cdn/elements/drawer/drawer.js +1 -1
- package/cdn/elements/drawer/drawer.js.map +1 -1
- package/cdn/elements/drawer/index.d.ts +2 -2
- package/cdn/elements/drawer/index.d.ts.map +1 -1
- package/cdn/elements/drawer/index.js +1 -1
- package/cdn/elements/drawer/index.js.map +1 -1
- package/cdn/elements/dropdown/dropdown.d.ts +7 -4
- package/cdn/elements/dropdown/dropdown.d.ts.map +1 -1
- package/cdn/elements/dropdown/dropdown.js +7 -4
- package/cdn/elements/dropdown/dropdown.js.map +1 -1
- package/cdn/elements/dropdown/index.d.ts +2 -2
- package/cdn/elements/dropdown/index.d.ts.map +1 -1
- package/cdn/elements/dropdown/index.js +1 -1
- package/cdn/elements/dropdown/index.js.map +1 -1
- package/cdn/elements/dropdown-item/dropdown-item.d.ts +1 -1
- package/cdn/elements/dropdown-item/dropdown-item.d.ts.map +1 -1
- package/cdn/elements/dropdown-item/dropdown-item.js +2 -2
- package/cdn/elements/dropdown-item/dropdown-item.js.map +1 -1
- package/cdn/elements/dropdown-item/index.d.ts +2 -2
- package/cdn/elements/dropdown-item/index.d.ts.map +1 -1
- package/cdn/elements/dropdown-item/index.js +1 -1
- package/cdn/elements/dropdown-item/index.js.map +1 -1
- package/cdn/elements/icon/icon.d.ts +1 -1
- package/cdn/elements/icon/icon.d.ts.map +1 -1
- package/cdn/elements/icon/icon.js +2 -2
- package/cdn/elements/icon/icon.js.map +1 -1
- package/cdn/elements/icon/index.d.ts +2 -2
- package/cdn/elements/icon/index.d.ts.map +1 -1
- package/cdn/elements/icon/index.js +1 -1
- package/cdn/elements/icon/index.js.map +1 -1
- package/cdn/elements/input-otp/index.d.ts +2 -2
- package/cdn/elements/input-otp/index.d.ts.map +1 -1
- package/cdn/elements/input-otp/index.js +1 -1
- package/cdn/elements/input-otp/index.js.map +1 -1
- package/cdn/elements/input-otp/input-otp.d.ts +1 -1
- package/cdn/elements/input-otp/input-otp.d.ts.map +1 -1
- package/cdn/elements/input-otp/input-otp.js +1 -1
- package/cdn/elements/input-otp/input-otp.js.map +1 -1
- package/cdn/elements/input-stepper/index.d.ts +2 -2
- package/cdn/elements/input-stepper/index.d.ts.map +1 -1
- package/cdn/elements/input-stepper/index.js +1 -1
- package/cdn/elements/input-stepper/index.js.map +1 -1
- package/cdn/elements/input-stepper/input-stepper.d.ts +1 -1
- package/cdn/elements/input-stepper/input-stepper.d.ts.map +1 -1
- package/cdn/elements/input-stepper/input-stepper.js +1 -1
- package/cdn/elements/input-stepper/input-stepper.js.map +1 -1
- package/cdn/elements/popover/index.d.ts +2 -2
- package/cdn/elements/popover/index.d.ts.map +1 -1
- package/cdn/elements/popover/index.js +1 -1
- package/cdn/elements/popover/index.js.map +1 -1
- package/cdn/elements/popover/popover.d.ts +1 -1
- package/cdn/elements/popover/popover.d.ts.map +1 -1
- package/cdn/elements/popover/popover.js +2 -2
- package/cdn/elements/popover/popover.js.map +1 -1
- package/cdn/elements/rating/index.d.ts +2 -2
- package/cdn/elements/rating/index.d.ts.map +1 -1
- package/cdn/elements/rating/index.js +1 -1
- package/cdn/elements/rating/index.js.map +1 -1
- package/cdn/elements/rating/rating.d.ts +1 -1
- package/cdn/elements/rating/rating.d.ts.map +1 -1
- package/cdn/elements/rating/rating.js +2 -2
- package/cdn/elements/rating/rating.js.map +1 -1
- package/cdn/elements/skeleton/index.d.ts +2 -2
- package/cdn/elements/skeleton/index.d.ts.map +1 -1
- package/cdn/elements/skeleton/index.js +1 -1
- package/cdn/elements/skeleton/index.js.map +1 -1
- package/cdn/elements/skeleton/skeleton.d.ts +1 -1
- package/cdn/elements/skeleton/skeleton.d.ts.map +1 -1
- package/cdn/elements/skeleton/skeleton.js +1 -1
- package/cdn/elements/skeleton/skeleton.js.map +1 -1
- package/cdn/elements/spinner/index.d.ts +2 -2
- package/cdn/elements/spinner/index.d.ts.map +1 -1
- package/cdn/elements/spinner/index.js +1 -1
- package/cdn/elements/spinner/index.js.map +1 -1
- package/cdn/elements/spinner/spinner.d.ts +1 -1
- package/cdn/elements/spinner/spinner.d.ts.map +1 -1
- package/cdn/elements/spinner/spinner.js +1 -1
- package/cdn/elements/spinner/spinner.js.map +1 -1
- package/cdn/elements/sticky-bar/index.d.ts +8 -0
- package/cdn/elements/sticky-bar/index.d.ts.map +1 -0
- package/cdn/elements/sticky-bar/index.js +2 -0
- package/cdn/elements/sticky-bar/index.js.map +1 -0
- package/cdn/elements/sticky-bar/sticky-bar.d.ts +46 -0
- package/cdn/elements/sticky-bar/sticky-bar.d.ts.map +1 -0
- package/cdn/elements/sticky-bar/sticky-bar.js +2 -0
- package/cdn/elements/sticky-bar/sticky-bar.js.map +1 -0
- package/cdn/elements/stories/index.d.ts +8 -0
- package/cdn/elements/stories/index.d.ts.map +1 -0
- package/cdn/elements/stories/index.js +2 -0
- package/cdn/elements/stories/index.js.map +1 -0
- package/cdn/elements/stories/stories.d.ts +50 -0
- package/cdn/elements/stories/stories.d.ts.map +1 -0
- package/cdn/elements/stories/stories.js +2 -0
- package/cdn/elements/stories/stories.js.map +1 -0
- package/cdn/elements/stories-viewer/index.d.ts +8 -0
- package/cdn/elements/stories-viewer/index.d.ts.map +1 -0
- package/cdn/elements/stories-viewer/index.js +2 -0
- package/cdn/elements/stories-viewer/index.js.map +1 -0
- package/cdn/elements/stories-viewer/stories-viewer.d.ts +136 -0
- package/cdn/elements/stories-viewer/stories-viewer.d.ts.map +1 -0
- package/cdn/elements/stories-viewer/stories-viewer.js +160 -0
- package/cdn/elements/stories-viewer/stories-viewer.js.map +1 -0
- package/cdn/elements/story/index.d.ts +8 -0
- package/cdn/elements/story/index.d.ts.map +1 -0
- package/cdn/elements/story/index.js +2 -0
- package/cdn/elements/story/index.js.map +1 -0
- package/cdn/elements/story/story.d.ts +48 -0
- package/cdn/elements/story/story.d.ts.map +1 -0
- package/cdn/elements/story/story.js +35 -0
- package/cdn/elements/story/story.js.map +1 -0
- package/cdn/elements/tabs/index.d.ts +2 -2
- package/cdn/elements/tabs/index.d.ts.map +1 -1
- package/cdn/elements/tabs/index.js +1 -1
- package/cdn/elements/tabs/index.js.map +1 -1
- package/cdn/elements/tabs/tabs.d.ts +1 -1
- package/cdn/elements/tabs/tabs.d.ts.map +1 -1
- package/cdn/elements/tabs/tabs.js +1 -1
- package/cdn/elements/tabs/tabs.js.map +1 -1
- package/cdn/elements/toast/index.d.ts +3 -3
- package/cdn/elements/toast/index.d.ts.map +1 -1
- package/cdn/elements/toast/index.js +1 -1
- package/cdn/elements/toast/index.js.map +1 -1
- package/cdn/elements/toast/toast.d.ts +2 -2
- package/cdn/elements/toast/toast.d.ts.map +1 -1
- package/cdn/elements/toast/toast.js +1 -1
- package/cdn/elements/toast/toast.js.map +1 -1
- package/cdn/elements/tooltip/index.d.ts +2 -2
- package/cdn/elements/tooltip/index.d.ts.map +1 -1
- package/cdn/elements/tooltip/index.js +1 -1
- package/cdn/elements/tooltip/index.js.map +1 -1
- package/cdn/elements/tooltip/tooltip.d.ts +4 -4
- package/cdn/elements/tooltip/tooltip.d.ts.map +1 -1
- package/cdn/elements/tooltip/tooltip.js +2 -2
- package/cdn/elements/tooltip/tooltip.js.map +1 -1
- package/cdn/elements/tree/index.d.ts +2 -2
- package/cdn/elements/tree/index.d.ts.map +1 -1
- package/cdn/elements/tree/index.js +1 -1
- package/cdn/elements/tree/index.js.map +1 -1
- package/cdn/elements/tree/tree.d.ts +5 -5
- package/cdn/elements/tree/tree.d.ts.map +1 -1
- package/cdn/elements/tree/tree.js +2 -2
- package/cdn/elements/tree/tree.js.map +1 -1
- package/cdn/elements/tree-item/index.d.ts +2 -2
- package/cdn/elements/tree-item/index.d.ts.map +1 -1
- package/cdn/elements/tree-item/index.js +1 -1
- package/cdn/elements/tree-item/index.js.map +1 -1
- package/cdn/elements/tree-item/tree-item.d.ts +2 -2
- package/cdn/elements/tree-item/tree-item.d.ts.map +1 -1
- package/cdn/elements/tree-item/tree-item.js +2 -2
- package/cdn/elements/tree-item/tree-item.js.map +1 -1
- package/cdn/registry.d.ts +1 -1
- package/cdn/registry.d.ts.map +1 -1
- package/cdn/registry.js.map +1 -1
- package/cdn/shared/controllers/popover.js.map +1 -1
- package/cdn/shared/luxen-form-associated-element.js +1 -1
- package/cdn/shared/styles/host.styles.js.map +1 -1
- package/cdn/styles/elements/divider.css +7 -0
- package/cdn/styles/elements/select.css +3 -3
- package/cdn/styles/elements/stories.css +63 -0
- package/cdn/styles/elements/story.css +192 -0
- package/cdn/styles/index.css +3 -0
- package/dist/css/elements/divider.css +7 -0
- package/dist/css/elements/select.css +3 -3
- package/dist/css/elements/stories.css +63 -0
- package/dist/css/elements/story.css +192 -0
- package/dist/css/index.css +3 -0
- package/dist/custom-elements.json +6707 -4242
- package/dist/elements/avatar/avatar.css +13 -7
- package/dist/elements/avatar/avatar.d.ts +1 -1
- package/dist/elements/avatar/avatar.d.ts.map +1 -1
- package/dist/elements/avatar/avatar.js +11 -11
- package/dist/elements/avatar/index.d.ts +2 -2
- package/dist/elements/avatar/index.d.ts.map +1 -1
- package/dist/elements/avatar/index.js +2 -2
- package/dist/elements/badge/badge.d.ts +1 -1
- package/dist/elements/badge/badge.d.ts.map +1 -1
- package/dist/elements/badge/badge.js +5 -5
- package/dist/elements/badge/index.d.ts +2 -2
- package/dist/elements/badge/index.d.ts.map +1 -1
- package/dist/elements/badge/index.js +2 -2
- package/dist/elements/carousel/carousel.css +7 -0
- package/dist/elements/carousel/carousel.d.ts +18 -11
- package/dist/elements/carousel/carousel.d.ts.map +1 -1
- package/dist/elements/carousel/carousel.js +193 -167
- package/dist/elements/carousel/index.d.ts +2 -2
- package/dist/elements/carousel/index.d.ts.map +1 -1
- package/dist/elements/carousel/index.js +2 -2
- package/dist/elements/carousel-item/carousel-item.d.ts +1 -1
- package/dist/elements/carousel-item/carousel-item.d.ts.map +1 -1
- package/dist/elements/carousel-item/carousel-item.js +2 -2
- package/dist/elements/carousel-item/index.d.ts +2 -2
- package/dist/elements/carousel-item/index.d.ts.map +1 -1
- package/dist/elements/carousel-item/index.js +2 -2
- package/dist/elements/dialog/dialog.d.ts +1 -1
- package/dist/elements/dialog/dialog.d.ts.map +1 -1
- package/dist/elements/dialog/dialog.js +9 -9
- package/dist/elements/dialog/index.d.ts +2 -2
- package/dist/elements/dialog/index.d.ts.map +1 -1
- package/dist/elements/dialog/index.js +2 -2
- package/dist/elements/divider/divider.d.ts +1 -1
- package/dist/elements/divider/divider.d.ts.map +1 -1
- package/dist/elements/divider/divider.js +3 -3
- package/dist/elements/divider/index.d.ts +2 -2
- package/dist/elements/divider/index.d.ts.map +1 -1
- package/dist/elements/divider/index.js +2 -2
- package/dist/elements/drawer/drawer.d.ts +2 -2
- package/dist/elements/drawer/drawer.d.ts.map +1 -1
- package/dist/elements/drawer/drawer.js +4 -4
- package/dist/elements/drawer/index.d.ts +2 -2
- package/dist/elements/drawer/index.d.ts.map +1 -1
- package/dist/elements/drawer/index.js +2 -2
- package/dist/elements/dropdown/dropdown.css +14 -3
- package/dist/elements/dropdown/dropdown.d.ts +7 -4
- package/dist/elements/dropdown/dropdown.d.ts.map +1 -1
- package/dist/elements/dropdown/dropdown.js +41 -29
- package/dist/elements/dropdown/index.d.ts +2 -2
- package/dist/elements/dropdown/index.d.ts.map +1 -1
- package/dist/elements/dropdown/index.js +2 -2
- package/dist/elements/dropdown-item/dropdown-item.d.ts +1 -1
- package/dist/elements/dropdown-item/dropdown-item.d.ts.map +1 -1
- package/dist/elements/dropdown-item/dropdown-item.js +20 -20
- package/dist/elements/dropdown-item/index.d.ts +2 -2
- package/dist/elements/dropdown-item/index.d.ts.map +1 -1
- package/dist/elements/dropdown-item/index.js +2 -2
- package/dist/elements/icon/icon.d.ts +1 -1
- package/dist/elements/icon/icon.d.ts.map +1 -1
- package/dist/elements/icon/icon.js +4 -4
- package/dist/elements/icon/index.d.ts +2 -2
- package/dist/elements/icon/index.d.ts.map +1 -1
- package/dist/elements/icon/index.js +2 -2
- package/dist/elements/input-otp/index.d.ts +2 -2
- package/dist/elements/input-otp/index.d.ts.map +1 -1
- package/dist/elements/input-otp/index.js +2 -2
- package/dist/elements/input-otp/input-otp.d.ts +1 -1
- package/dist/elements/input-otp/input-otp.d.ts.map +1 -1
- package/dist/elements/input-otp/input-otp.js +2 -2
- package/dist/elements/input-stepper/index.d.ts +2 -2
- package/dist/elements/input-stepper/index.d.ts.map +1 -1
- package/dist/elements/input-stepper/index.js +2 -2
- package/dist/elements/input-stepper/input-stepper.d.ts +1 -1
- package/dist/elements/input-stepper/input-stepper.d.ts.map +1 -1
- package/dist/elements/input-stepper/input-stepper.js +8 -8
- package/dist/elements/popover/index.d.ts +2 -2
- package/dist/elements/popover/index.d.ts.map +1 -1
- package/dist/elements/popover/index.js +2 -2
- package/dist/elements/popover/popover.d.ts +1 -1
- package/dist/elements/popover/popover.d.ts.map +1 -1
- package/dist/elements/popover/popover.js +33 -33
- package/dist/elements/rating/index.d.ts +2 -2
- package/dist/elements/rating/index.d.ts.map +1 -1
- package/dist/elements/rating/index.js +2 -2
- package/dist/elements/rating/rating.d.ts +1 -1
- package/dist/elements/rating/rating.d.ts.map +1 -1
- package/dist/elements/rating/rating.js +48 -48
- package/dist/elements/skeleton/index.d.ts +2 -2
- package/dist/elements/skeleton/index.d.ts.map +1 -1
- package/dist/elements/skeleton/index.js +2 -2
- package/dist/elements/skeleton/skeleton.d.ts +1 -1
- package/dist/elements/skeleton/skeleton.d.ts.map +1 -1
- package/dist/elements/skeleton/skeleton.js +1 -1
- package/dist/elements/spinner/index.d.ts +2 -2
- package/dist/elements/spinner/index.d.ts.map +1 -1
- package/dist/elements/spinner/index.js +2 -2
- package/dist/elements/spinner/spinner.d.ts +1 -1
- package/dist/elements/spinner/spinner.d.ts.map +1 -1
- package/dist/elements/spinner/spinner.js +2 -2
- package/dist/elements/sticky-bar/index.d.ts +8 -0
- package/dist/elements/sticky-bar/index.d.ts.map +1 -0
- package/dist/elements/sticky-bar/index.js +4 -0
- package/dist/elements/sticky-bar/sticky-bar.css +56 -0
- package/dist/elements/sticky-bar/sticky-bar.d.ts +46 -0
- package/dist/elements/sticky-bar/sticky-bar.d.ts.map +1 -0
- package/dist/elements/sticky-bar/sticky-bar.js +146 -0
- package/dist/elements/stories/index.d.ts +8 -0
- package/dist/elements/stories/index.d.ts.map +1 -0
- package/dist/elements/stories/index.js +4 -0
- package/dist/elements/stories/stories.d.ts +50 -0
- package/dist/elements/stories/stories.d.ts.map +1 -0
- package/dist/elements/stories/stories.js +113 -0
- package/dist/elements/stories-viewer/index.d.ts +8 -0
- package/dist/elements/stories-viewer/index.d.ts.map +1 -0
- package/dist/elements/stories-viewer/index.js +4 -0
- package/dist/elements/stories-viewer/stories-viewer.css +337 -0
- package/dist/elements/stories-viewer/stories-viewer.d.ts +136 -0
- package/dist/elements/stories-viewer/stories-viewer.d.ts.map +1 -0
- package/dist/elements/stories-viewer/stories-viewer.js +719 -0
- package/dist/elements/story/index.d.ts +8 -0
- package/dist/elements/story/index.d.ts.map +1 -0
- package/dist/elements/story/index.js +4 -0
- package/dist/elements/story/story.d.ts +48 -0
- package/dist/elements/story/story.d.ts.map +1 -0
- package/dist/elements/story/story.js +161 -0
- package/dist/elements/tabs/index.d.ts +2 -2
- package/dist/elements/tabs/index.d.ts.map +1 -1
- package/dist/elements/tabs/index.js +2 -2
- package/dist/elements/tabs/tabs.d.ts +1 -1
- package/dist/elements/tabs/tabs.d.ts.map +1 -1
- package/dist/elements/tabs/tabs.js +5 -5
- package/dist/elements/toast/index.d.ts +3 -3
- package/dist/elements/toast/index.d.ts.map +1 -1
- package/dist/elements/toast/index.js +3 -3
- package/dist/elements/toast/toast.d.ts +2 -2
- package/dist/elements/toast/toast.d.ts.map +1 -1
- package/dist/elements/toast/toast.js +5 -5
- package/dist/elements/tooltip/index.d.ts +2 -2
- package/dist/elements/tooltip/index.d.ts.map +1 -1
- package/dist/elements/tooltip/index.js +2 -2
- package/dist/elements/tooltip/tooltip.css +15 -7
- package/dist/elements/tooltip/tooltip.d.ts +4 -4
- package/dist/elements/tooltip/tooltip.d.ts.map +1 -1
- package/dist/elements/tooltip/tooltip.js +32 -32
- package/dist/elements/tree/index.d.ts +2 -2
- package/dist/elements/tree/index.d.ts.map +1 -1
- package/dist/elements/tree/index.js +2 -2
- package/dist/elements/tree/tree.d.ts +5 -5
- package/dist/elements/tree/tree.d.ts.map +1 -1
- package/dist/elements/tree/tree.js +14 -16
- package/dist/elements/tree-item/index.d.ts +2 -2
- package/dist/elements/tree-item/index.d.ts.map +1 -1
- package/dist/elements/tree-item/index.js +2 -2
- package/dist/elements/tree-item/tree-item.d.ts +2 -2
- package/dist/elements/tree-item/tree-item.d.ts.map +1 -1
- package/dist/elements/tree-item/tree-item.js +28 -28
- package/dist/registry.d.ts +1 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/skills/luxen-ui/SKILL.md +1 -0
- package/dist/skills/luxen-ui/references/select.md +1 -1
- package/dist/skills/luxen-ui/references/sticky-bar.md +148 -0
- package/package.json +4 -4
|
@@ -15,11 +15,11 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
|
15
15
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
16
16
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
17
17
|
};
|
|
18
|
-
var
|
|
18
|
+
var _Carousel_autoplay_accessor_storage, _Carousel_autoplayOptions_accessor_storage, _Carousel_axis_accessor_storage, _Carousel_align_accessor_storage, _Carousel_breakpoints_accessor_storage, _Carousel_loop_accessor_storage, _Carousel_dragFree_accessor_storage, _Carousel_duration_accessor_storage, _Carousel_skipSnaps_accessor_storage, _Carousel_slidesToScroll_accessor_storage, _Carousel_startIndex_accessor_storage, _Carousel_containScroll_accessor_storage, _Carousel_single_accessor_storage, _Carousel_withDots_accessor_storage, _Carousel_withScrollbar_accessor_storage, _Carousel_withFullscreen_accessor_storage, _Carousel_dotAppearance_accessor_storage, _Carousel_maxVisibleDots_accessor_storage, _Carousel_scrollButtonsPosition_accessor_storage, _Carousel__selectedSnap_accessor_storage;
|
|
19
19
|
import EmblaCarousel from 'embla-carousel';
|
|
20
20
|
import Autoplay from 'embla-carousel-autoplay';
|
|
21
|
-
import { html, unsafeCSS } from 'lit';
|
|
22
|
-
import { property, query,
|
|
21
|
+
import { html, nothing, unsafeCSS } from 'lit';
|
|
22
|
+
import { property, query, state } from 'lit/decorators.js';
|
|
23
23
|
import { map } from 'lit/directives/map.js';
|
|
24
24
|
import { LuxenElement } from '../../shared/luxen-element';
|
|
25
25
|
import hostStyles from '../../shared/styles/host.styles';
|
|
@@ -53,129 +53,174 @@ const styles = unsafeCSS(rawStyles);
|
|
|
53
53
|
* @cssproperty --dot-color - Color of inactive dots.
|
|
54
54
|
* @cssproperty --dot-color-active - Color of active dot.
|
|
55
55
|
* @cssproperty --dot-margin - Margin around dots container.
|
|
56
|
+
* @cssproperty --dot-edge-scale - Scale factor applied to edge dots that signal more dots exist beyond the visible window (default `0.5`).
|
|
56
57
|
*/
|
|
57
|
-
export class
|
|
58
|
+
export class Carousel extends LuxenElement {
|
|
59
|
+
constructor() {
|
|
60
|
+
super(...arguments);
|
|
61
|
+
_Carousel_autoplay_accessor_storage.set(this, 0);
|
|
62
|
+
_Carousel_autoplayOptions_accessor_storage.set(this, void 0);
|
|
63
|
+
_Carousel_axis_accessor_storage.set(this, 'x');
|
|
64
|
+
_Carousel_align_accessor_storage.set(this, 'start');
|
|
65
|
+
_Carousel_breakpoints_accessor_storage.set(this, {});
|
|
66
|
+
_Carousel_loop_accessor_storage.set(this, false);
|
|
67
|
+
_Carousel_dragFree_accessor_storage.set(this, false);
|
|
68
|
+
_Carousel_duration_accessor_storage.set(this, 20);
|
|
69
|
+
_Carousel_skipSnaps_accessor_storage.set(this, false);
|
|
70
|
+
_Carousel_slidesToScroll_accessor_storage.set(this, 1);
|
|
71
|
+
_Carousel_startIndex_accessor_storage.set(this, 0);
|
|
72
|
+
_Carousel_containScroll_accessor_storage.set(this, 'trimSnaps');
|
|
73
|
+
_Carousel_single_accessor_storage.set(this, false);
|
|
74
|
+
_Carousel_withDots_accessor_storage.set(this, false);
|
|
75
|
+
_Carousel_withScrollbar_accessor_storage.set(this, false);
|
|
76
|
+
_Carousel_withFullscreen_accessor_storage.set(this, false);
|
|
77
|
+
_Carousel_dotAppearance_accessor_storage.set(this, 'bar');
|
|
78
|
+
_Carousel_maxVisibleDots_accessor_storage.set(this, 0);
|
|
79
|
+
_Carousel_scrollButtonsPosition_accessor_storage.set(this, 'inside');
|
|
80
|
+
_Carousel__selectedSnap_accessor_storage.set(this, 0);
|
|
81
|
+
this.onSlidesInView = () => {
|
|
82
|
+
this.emit('slides-in-view', {
|
|
83
|
+
detail: { indexes: this.embla.slidesInView() },
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
this.onInit = () => {
|
|
87
|
+
this.updateNavigation();
|
|
88
|
+
};
|
|
89
|
+
this.onReInit = () => {
|
|
90
|
+
this.updateNavigation();
|
|
91
|
+
this.requestUpdate();
|
|
92
|
+
};
|
|
93
|
+
this.onSelect = () => {
|
|
94
|
+
this.emit('select', {
|
|
95
|
+
detail: { index: this.embla.selectedScrollSnap() },
|
|
96
|
+
});
|
|
97
|
+
this.updateNavigation();
|
|
98
|
+
};
|
|
99
|
+
this.onResize = () => {
|
|
100
|
+
this.requestUpdate();
|
|
101
|
+
};
|
|
102
|
+
this.detachEventListeners = () => {
|
|
103
|
+
this.previousBtn.removeEventListener('click', this.previous);
|
|
104
|
+
this.nextBtn.removeEventListener('click', this.next);
|
|
105
|
+
};
|
|
106
|
+
this.handleSlotChange = (event) => {
|
|
107
|
+
const slot = event.target;
|
|
108
|
+
if (slot.assignedElements().length > 0) {
|
|
109
|
+
this.embla.reInit(this.options());
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
this.handleDotClick = (event) => {
|
|
113
|
+
const button = event.currentTarget;
|
|
114
|
+
this.goToSlide(Number(button.dataset.index));
|
|
115
|
+
};
|
|
116
|
+
this.next = () => {
|
|
117
|
+
this.embla.scrollNext();
|
|
118
|
+
};
|
|
119
|
+
this.previous = () => {
|
|
120
|
+
this.embla.scrollPrev();
|
|
121
|
+
};
|
|
122
|
+
}
|
|
58
123
|
/**
|
|
59
124
|
* Choose a delay between transitions in milliseconds (default: 4000).
|
|
60
125
|
*/
|
|
61
|
-
get autoplay() { return __classPrivateFieldGet(this,
|
|
62
|
-
set autoplay(value) { __classPrivateFieldSet(this,
|
|
126
|
+
get autoplay() { return __classPrivateFieldGet(this, _Carousel_autoplay_accessor_storage, "f"); }
|
|
127
|
+
set autoplay(value) { __classPrivateFieldSet(this, _Carousel_autoplay_accessor_storage, value, "f"); }
|
|
63
128
|
/**
|
|
64
129
|
* Configure autoplay options.
|
|
65
130
|
*
|
|
66
131
|
* @link https://www.embla-carousel.com/plugins/autoplay/#options
|
|
67
132
|
*/
|
|
68
|
-
get autoplayOptions() { return __classPrivateFieldGet(this,
|
|
69
|
-
set autoplayOptions(value) { __classPrivateFieldSet(this,
|
|
133
|
+
get autoplayOptions() { return __classPrivateFieldGet(this, _Carousel_autoplayOptions_accessor_storage, "f"); }
|
|
134
|
+
set autoplayOptions(value) { __classPrivateFieldSet(this, _Carousel_autoplayOptions_accessor_storage, value, "f"); }
|
|
70
135
|
/**
|
|
71
136
|
* Choose scroll axis between x and y.
|
|
72
137
|
*
|
|
73
138
|
* @link https://www.embla-carousel.com/api/options/#axis
|
|
74
139
|
*/
|
|
75
|
-
get axis() { return __classPrivateFieldGet(this,
|
|
76
|
-
set axis(value) { __classPrivateFieldSet(this,
|
|
140
|
+
get axis() { return __classPrivateFieldGet(this, _Carousel_axis_accessor_storage, "f"); }
|
|
141
|
+
set axis(value) { __classPrivateFieldSet(this, _Carousel_axis_accessor_storage, value, "f"); }
|
|
77
142
|
/**
|
|
78
143
|
* Align the slides relative to the carousel viewport.
|
|
79
144
|
*
|
|
80
145
|
* @link https://www.embla-carousel.com/api/options/#align
|
|
81
146
|
*/
|
|
82
|
-
get align() { return __classPrivateFieldGet(this,
|
|
83
|
-
set align(value) { __classPrivateFieldSet(this,
|
|
147
|
+
get align() { return __classPrivateFieldGet(this, _Carousel_align_accessor_storage, "f"); }
|
|
148
|
+
set align(value) { __classPrivateFieldSet(this, _Carousel_align_accessor_storage, value, "f"); }
|
|
84
149
|
/**
|
|
85
150
|
* Breakpoint overrides for options.
|
|
86
151
|
*/
|
|
87
|
-
get breakpoints() { return __classPrivateFieldGet(this,
|
|
88
|
-
set breakpoints(value) { __classPrivateFieldSet(this,
|
|
152
|
+
get breakpoints() { return __classPrivateFieldGet(this, _Carousel_breakpoints_accessor_storage, "f"); }
|
|
153
|
+
set breakpoints(value) { __classPrivateFieldSet(this, _Carousel_breakpoints_accessor_storage, value, "f"); }
|
|
89
154
|
/**
|
|
90
155
|
* Enables infinite looping.
|
|
91
156
|
*
|
|
92
157
|
* @link https://www.embla-carousel.com/api/options/#loop
|
|
93
158
|
*/
|
|
94
|
-
get loop() { return __classPrivateFieldGet(this,
|
|
95
|
-
set loop(value) { __classPrivateFieldSet(this,
|
|
159
|
+
get loop() { return __classPrivateFieldGet(this, _Carousel_loop_accessor_storage, "f"); }
|
|
160
|
+
set loop(value) { __classPrivateFieldSet(this, _Carousel_loop_accessor_storage, value, "f"); }
|
|
96
161
|
/**
|
|
97
162
|
* Enables momentum scrolling (drag free).
|
|
98
163
|
*
|
|
99
164
|
* @link https://www.embla-carousel.com/api/options/#dragfree
|
|
100
165
|
*/
|
|
101
|
-
get dragFree() { return __classPrivateFieldGet(this,
|
|
102
|
-
set dragFree(value) { __classPrivateFieldSet(this,
|
|
166
|
+
get dragFree() { return __classPrivateFieldGet(this, _Carousel_dragFree_accessor_storage, "f"); }
|
|
167
|
+
set dragFree(value) { __classPrivateFieldSet(this, _Carousel_dragFree_accessor_storage, value, "f"); }
|
|
103
168
|
/**
|
|
104
169
|
* Set scroll duration when triggered by API methods.
|
|
105
170
|
*
|
|
106
171
|
* @link https://www.embla-carousel.com/api/options/#duration
|
|
107
172
|
*/
|
|
108
|
-
get duration() { return __classPrivateFieldGet(this,
|
|
109
|
-
set duration(value) { __classPrivateFieldSet(this,
|
|
173
|
+
get duration() { return __classPrivateFieldGet(this, _Carousel_duration_accessor_storage, "f"); }
|
|
174
|
+
set duration(value) { __classPrivateFieldSet(this, _Carousel_duration_accessor_storage, value, "f"); }
|
|
110
175
|
/**
|
|
111
176
|
* Allow skipping scroll snaps on vigorous drag.
|
|
112
177
|
*
|
|
113
178
|
* @link https://www.embla-carousel.com/api/options/#skipsnaps
|
|
114
179
|
*/
|
|
115
|
-
get skipSnaps() { return __classPrivateFieldGet(this,
|
|
116
|
-
set skipSnaps(value) { __classPrivateFieldSet(this,
|
|
180
|
+
get skipSnaps() { return __classPrivateFieldGet(this, _Carousel_skipSnaps_accessor_storage, "f"); }
|
|
181
|
+
set skipSnaps(value) { __classPrivateFieldSet(this, _Carousel_skipSnaps_accessor_storage, value, "f"); }
|
|
117
182
|
/**
|
|
118
183
|
* Group slides together for navigation.
|
|
119
184
|
*
|
|
120
185
|
* @link https://www.embla-carousel.com/api/options/#slidestoscroll
|
|
121
186
|
*/
|
|
122
|
-
get slidesToScroll() { return __classPrivateFieldGet(this,
|
|
123
|
-
set slidesToScroll(value) { __classPrivateFieldSet(this,
|
|
187
|
+
get slidesToScroll() { return __classPrivateFieldGet(this, _Carousel_slidesToScroll_accessor_storage, "f"); }
|
|
188
|
+
set slidesToScroll(value) { __classPrivateFieldSet(this, _Carousel_slidesToScroll_accessor_storage, value, "f"); }
|
|
124
189
|
/**
|
|
125
190
|
* Set the initial scroll snap index.
|
|
126
191
|
*
|
|
127
192
|
* @link https://www.embla-carousel.com/api/options/#startindex
|
|
128
193
|
*/
|
|
129
|
-
get startIndex() { return __classPrivateFieldGet(this,
|
|
130
|
-
set startIndex(value) { __classPrivateFieldSet(this,
|
|
194
|
+
get startIndex() { return __classPrivateFieldGet(this, _Carousel_startIndex_accessor_storage, "f"); }
|
|
195
|
+
set startIndex(value) { __classPrivateFieldSet(this, _Carousel_startIndex_accessor_storage, value, "f"); }
|
|
131
196
|
/**
|
|
132
197
|
* Clear leading and trailing empty space.
|
|
133
198
|
*
|
|
134
199
|
* @link https://www.embla-carousel.com/api/options/#containscroll
|
|
135
200
|
*/
|
|
136
|
-
get containScroll() { return __classPrivateFieldGet(this,
|
|
137
|
-
set containScroll(value) { __classPrivateFieldSet(this,
|
|
138
|
-
get single() { return __classPrivateFieldGet(this,
|
|
139
|
-
set single(value) { __classPrivateFieldSet(this,
|
|
140
|
-
get withDots() { return __classPrivateFieldGet(this,
|
|
141
|
-
set withDots(value) { __classPrivateFieldSet(this,
|
|
142
|
-
get withScrollbar() { return __classPrivateFieldGet(this,
|
|
143
|
-
set withScrollbar(value) { __classPrivateFieldSet(this,
|
|
144
|
-
get withFullscreen() { return __classPrivateFieldGet(this,
|
|
145
|
-
set withFullscreen(value) { __classPrivateFieldSet(this,
|
|
146
|
-
get dotAppearance() { return __classPrivateFieldGet(this,
|
|
147
|
-
set dotAppearance(value) { __classPrivateFieldSet(this,
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
_LuxenCarousel_duration_accessor_storage.set(this, 20);
|
|
160
|
-
_LuxenCarousel_skipSnaps_accessor_storage.set(this, false);
|
|
161
|
-
_LuxenCarousel_slidesToScroll_accessor_storage.set(this, 1);
|
|
162
|
-
_LuxenCarousel_startIndex_accessor_storage.set(this, 0);
|
|
163
|
-
_LuxenCarousel_containScroll_accessor_storage.set(this, 'trimSnaps');
|
|
164
|
-
_LuxenCarousel_single_accessor_storage.set(this, false);
|
|
165
|
-
_LuxenCarousel_withDots_accessor_storage.set(this, false);
|
|
166
|
-
_LuxenCarousel_withScrollbar_accessor_storage.set(this, false);
|
|
167
|
-
_LuxenCarousel_withFullscreen_accessor_storage.set(this, false);
|
|
168
|
-
_LuxenCarousel_dotAppearance_accessor_storage.set(this, 'bar');
|
|
169
|
-
_LuxenCarousel_scrollButtonsPosition_accessor_storage.set(this, 'inside');
|
|
170
|
-
this.next = this.next.bind(this);
|
|
171
|
-
this.previous = this.previous.bind(this);
|
|
172
|
-
this.onInit = this.onInit.bind(this);
|
|
173
|
-
this.onReInit = this.onReInit.bind(this);
|
|
174
|
-
this.onResize = this.onResize.bind(this);
|
|
175
|
-
this.onSelect = this.onSelect.bind(this);
|
|
176
|
-
this.onSlidesInView = this.onSlidesInView.bind(this);
|
|
177
|
-
this.detachEventListeners = this.detachEventListeners.bind(this);
|
|
178
|
-
}
|
|
201
|
+
get containScroll() { return __classPrivateFieldGet(this, _Carousel_containScroll_accessor_storage, "f"); }
|
|
202
|
+
set containScroll(value) { __classPrivateFieldSet(this, _Carousel_containScroll_accessor_storage, value, "f"); }
|
|
203
|
+
get single() { return __classPrivateFieldGet(this, _Carousel_single_accessor_storage, "f"); }
|
|
204
|
+
set single(value) { __classPrivateFieldSet(this, _Carousel_single_accessor_storage, value, "f"); }
|
|
205
|
+
get withDots() { return __classPrivateFieldGet(this, _Carousel_withDots_accessor_storage, "f"); }
|
|
206
|
+
set withDots(value) { __classPrivateFieldSet(this, _Carousel_withDots_accessor_storage, value, "f"); }
|
|
207
|
+
get withScrollbar() { return __classPrivateFieldGet(this, _Carousel_withScrollbar_accessor_storage, "f"); }
|
|
208
|
+
set withScrollbar(value) { __classPrivateFieldSet(this, _Carousel_withScrollbar_accessor_storage, value, "f"); }
|
|
209
|
+
get withFullscreen() { return __classPrivateFieldGet(this, _Carousel_withFullscreen_accessor_storage, "f"); }
|
|
210
|
+
set withFullscreen(value) { __classPrivateFieldSet(this, _Carousel_withFullscreen_accessor_storage, value, "f"); }
|
|
211
|
+
get dotAppearance() { return __classPrivateFieldGet(this, _Carousel_dotAppearance_accessor_storage, "f"); }
|
|
212
|
+
set dotAppearance(value) { __classPrivateFieldSet(this, _Carousel_dotAppearance_accessor_storage, value, "f"); }
|
|
213
|
+
/**
|
|
214
|
+
* Maximum number of dots rendered at once. When the snap count exceeds this,
|
|
215
|
+
* a sliding window keeps the active dot in view and shrinks the edge dot(s)
|
|
216
|
+
* on the side where dots are hidden. `0` (default) renders all dots.
|
|
217
|
+
*/
|
|
218
|
+
get maxVisibleDots() { return __classPrivateFieldGet(this, _Carousel_maxVisibleDots_accessor_storage, "f"); }
|
|
219
|
+
set maxVisibleDots(value) { __classPrivateFieldSet(this, _Carousel_maxVisibleDots_accessor_storage, value, "f"); }
|
|
220
|
+
get scrollButtonsPosition() { return __classPrivateFieldGet(this, _Carousel_scrollButtonsPosition_accessor_storage, "f"); }
|
|
221
|
+
set scrollButtonsPosition(value) { __classPrivateFieldSet(this, _Carousel_scrollButtonsPosition_accessor_storage, value, "f"); }
|
|
222
|
+
get _selectedSnap() { return __classPrivateFieldGet(this, _Carousel__selectedSnap_accessor_storage, "f"); }
|
|
223
|
+
set _selectedSnap(value) { __classPrivateFieldSet(this, _Carousel__selectedSnap_accessor_storage, value, "f"); }
|
|
179
224
|
connectedCallback() {
|
|
180
225
|
super.connectedCallback();
|
|
181
226
|
this.createEmbla();
|
|
@@ -199,48 +244,16 @@ export class LuxenCarousel extends LuxenElement {
|
|
|
199
244
|
.on('select', this.onSelect)
|
|
200
245
|
.on('destroy', this.detachEventListeners);
|
|
201
246
|
}
|
|
202
|
-
onSlidesInView() {
|
|
203
|
-
this.emit('slides-in-view', {
|
|
204
|
-
detail: { indexes: this.embla.slidesInView() },
|
|
205
|
-
});
|
|
206
|
-
}
|
|
207
|
-
onInit() {
|
|
208
|
-
this.updateNavigation();
|
|
209
|
-
}
|
|
210
|
-
onReInit() {
|
|
211
|
-
this.updateNavigation();
|
|
212
|
-
this.requestUpdate();
|
|
213
|
-
}
|
|
214
|
-
onSelect() {
|
|
215
|
-
this.emit('select', {
|
|
216
|
-
detail: { index: this.embla.selectedScrollSnap() },
|
|
217
|
-
});
|
|
218
|
-
this.updateNavigation();
|
|
219
|
-
}
|
|
220
|
-
onResize() {
|
|
221
|
-
this.requestUpdate();
|
|
222
|
-
}
|
|
223
247
|
attachEventListeners() {
|
|
224
248
|
this.previousBtn.addEventListener('click', this.previous);
|
|
225
249
|
this.nextBtn.addEventListener('click', this.next);
|
|
226
250
|
}
|
|
227
|
-
detachEventListeners() {
|
|
228
|
-
this.previousBtn.removeEventListener('click', this.previous);
|
|
229
|
-
this.nextBtn.removeEventListener('click', this.next);
|
|
230
|
-
}
|
|
231
251
|
updateNavigation() {
|
|
232
252
|
const canScroll = this.embla.canScrollPrev() || this.embla.canScrollNext();
|
|
233
253
|
this.previousBtn.toggleAttribute('disabled', !this.embla.canScrollPrev());
|
|
234
254
|
this.nextBtn.toggleAttribute('disabled', !this.embla.canScrollNext());
|
|
235
255
|
this.scrollButtons.classList.toggle('scroll-buttons--disabled', !canScroll);
|
|
236
|
-
|
|
237
|
-
const previous = this.embla.previousScrollSnap();
|
|
238
|
-
const selected = this.embla.selectedScrollSnap();
|
|
239
|
-
this.dotNodes[previous]?.classList.remove('dot--selected');
|
|
240
|
-
this.dotNodes[previous]?.removeAttribute('aria-selected');
|
|
241
|
-
this.dotNodes[selected]?.classList.add('dot--selected');
|
|
242
|
-
this.dotNodes[selected]?.setAttribute('aria-selected', 'true');
|
|
243
|
-
}
|
|
256
|
+
this._selectedSnap = this.embla.selectedScrollSnap();
|
|
244
257
|
}
|
|
245
258
|
async updated(changedProperties) {
|
|
246
259
|
if (changedProperties.has('autoplay') && this.autoplay) {
|
|
@@ -250,16 +263,6 @@ export class LuxenCarousel extends LuxenElement {
|
|
|
250
263
|
initAutoplay() {
|
|
251
264
|
this.embla.reInit(this.options(), [Autoplay(this.autoplayOptions || { delay: this.autoplay })]);
|
|
252
265
|
}
|
|
253
|
-
handleSlotChange(event) {
|
|
254
|
-
const slot = event.target;
|
|
255
|
-
if (slot.assignedElements().length > 0) {
|
|
256
|
-
this.embla.reInit(this.options());
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
handleDotClick(event) {
|
|
260
|
-
const button = event.currentTarget;
|
|
261
|
-
this.goToSlide(Number(button.dataset.index));
|
|
262
|
-
}
|
|
263
266
|
options() {
|
|
264
267
|
const container = this.shadowRoot.querySelector('slot');
|
|
265
268
|
if (!container) {
|
|
@@ -283,12 +286,6 @@ export class LuxenCarousel extends LuxenElement {
|
|
|
283
286
|
startIndex: this.startIndex,
|
|
284
287
|
};
|
|
285
288
|
}
|
|
286
|
-
next() {
|
|
287
|
-
this.embla.scrollNext();
|
|
288
|
-
}
|
|
289
|
-
previous() {
|
|
290
|
-
this.embla.scrollPrev();
|
|
291
|
-
}
|
|
292
289
|
goToSlide(index, jump) {
|
|
293
290
|
this.embla.scrollTo(index, jump);
|
|
294
291
|
}
|
|
@@ -360,6 +357,53 @@ export class LuxenCarousel extends LuxenElement {
|
|
|
360
357
|
</button>
|
|
361
358
|
</div>`;
|
|
362
359
|
}
|
|
360
|
+
renderDots() {
|
|
361
|
+
if (!this.embla)
|
|
362
|
+
return nothing;
|
|
363
|
+
const snaps = this.embla.scrollSnapList();
|
|
364
|
+
const total = snaps.length;
|
|
365
|
+
if (total === 0)
|
|
366
|
+
return nothing;
|
|
367
|
+
const selected = this._selectedSnap;
|
|
368
|
+
const max = this.maxVisibleDots;
|
|
369
|
+
let start = 0;
|
|
370
|
+
let end = total;
|
|
371
|
+
if (max > 0 && max < total) {
|
|
372
|
+
const half = Math.floor((max - 1) / 2);
|
|
373
|
+
start = Math.max(0, selected - half);
|
|
374
|
+
end = Math.min(total, start + max);
|
|
375
|
+
if (end - start < max)
|
|
376
|
+
start = Math.max(0, end - max);
|
|
377
|
+
}
|
|
378
|
+
const edgeStart = start > 0;
|
|
379
|
+
const edgeEnd = end < total;
|
|
380
|
+
return html `<div
|
|
381
|
+
class="dots"
|
|
382
|
+
part="dots"
|
|
383
|
+
role="tablist"
|
|
384
|
+
>
|
|
385
|
+
${map(snaps.slice(start, end), (_, i) => {
|
|
386
|
+
const index = start + i;
|
|
387
|
+
const isFirst = i === 0;
|
|
388
|
+
const isLast = i === end - start - 1;
|
|
389
|
+
const isSelected = index === selected;
|
|
390
|
+
const isEdge = !isSelected && ((isFirst && edgeStart) || (isLast && edgeEnd));
|
|
391
|
+
return html `<button
|
|
392
|
+
part="button-dot"
|
|
393
|
+
type="button"
|
|
394
|
+
role="tab"
|
|
395
|
+
class="dot dot--${this.dotAppearance} ${isSelected ? 'dot--selected' : ''}"
|
|
396
|
+
aria-label="Go to slide ${index + 1}"
|
|
397
|
+
aria-selected=${isSelected ? 'true' : nothing}
|
|
398
|
+
data-index="${index}"
|
|
399
|
+
data-edge=${isEdge ? '' : nothing}
|
|
400
|
+
@click=${this.handleDotClick}
|
|
401
|
+
>
|
|
402
|
+
<i></i>
|
|
403
|
+
</button>`;
|
|
404
|
+
})}
|
|
405
|
+
</div>`;
|
|
406
|
+
}
|
|
363
407
|
render() {
|
|
364
408
|
return html `
|
|
365
409
|
<div class="wrapper ${this.isActive() ? '' : 'inactive'}">
|
|
@@ -374,100 +418,82 @@ export class LuxenCarousel extends LuxenElement {
|
|
|
374
418
|
></slot>
|
|
375
419
|
</div>
|
|
376
420
|
${this.withFullscreen ? this.renderFullscreenButton() : ''}
|
|
377
|
-
${this.renderNextPreviousButtons()}
|
|
378
|
-
${this.withDots
|
|
379
|
-
? html `<div
|
|
380
|
-
class="dots"
|
|
381
|
-
part="dots"
|
|
382
|
-
role="tablist"
|
|
383
|
-
>
|
|
384
|
-
${map(this.embla.scrollSnapList(), (_, index) => {
|
|
385
|
-
return html `<button
|
|
386
|
-
part="button-dot"
|
|
387
|
-
type="button"
|
|
388
|
-
role="tab"
|
|
389
|
-
class="dot dot--${this.dotAppearance}"
|
|
390
|
-
aria-label="Go to slide ${index + 1}"
|
|
391
|
-
data-index="${index}"
|
|
392
|
-
@click=${this.handleDotClick}
|
|
393
|
-
>
|
|
394
|
-
<i></i>
|
|
395
|
-
</button>`;
|
|
396
|
-
})}
|
|
397
|
-
</div> `
|
|
398
|
-
: ''}
|
|
421
|
+
${this.renderNextPreviousButtons()} ${this.withDots ? this.renderDots() : ''}
|
|
399
422
|
</div>
|
|
400
423
|
`;
|
|
401
424
|
}
|
|
402
425
|
}
|
|
403
|
-
|
|
404
|
-
|
|
426
|
+
_Carousel_autoplay_accessor_storage = new WeakMap(), _Carousel_autoplayOptions_accessor_storage = new WeakMap(), _Carousel_axis_accessor_storage = new WeakMap(), _Carousel_align_accessor_storage = new WeakMap(), _Carousel_breakpoints_accessor_storage = new WeakMap(), _Carousel_loop_accessor_storage = new WeakMap(), _Carousel_dragFree_accessor_storage = new WeakMap(), _Carousel_duration_accessor_storage = new WeakMap(), _Carousel_skipSnaps_accessor_storage = new WeakMap(), _Carousel_slidesToScroll_accessor_storage = new WeakMap(), _Carousel_startIndex_accessor_storage = new WeakMap(), _Carousel_containScroll_accessor_storage = new WeakMap(), _Carousel_single_accessor_storage = new WeakMap(), _Carousel_withDots_accessor_storage = new WeakMap(), _Carousel_withScrollbar_accessor_storage = new WeakMap(), _Carousel_withFullscreen_accessor_storage = new WeakMap(), _Carousel_dotAppearance_accessor_storage = new WeakMap(), _Carousel_maxVisibleDots_accessor_storage = new WeakMap(), _Carousel_scrollButtonsPosition_accessor_storage = new WeakMap(), _Carousel__selectedSnap_accessor_storage = new WeakMap();
|
|
427
|
+
Carousel.styles = [hostStyles, styles];
|
|
405
428
|
__decorate([
|
|
406
429
|
property({ type: Number, reflect: true })
|
|
407
|
-
],
|
|
430
|
+
], Carousel.prototype, "autoplay", null);
|
|
408
431
|
__decorate([
|
|
409
432
|
property({ type: Object, attribute: 'autoplay-options' })
|
|
410
|
-
],
|
|
433
|
+
], Carousel.prototype, "autoplayOptions", null);
|
|
411
434
|
__decorate([
|
|
412
435
|
property()
|
|
413
|
-
],
|
|
436
|
+
], Carousel.prototype, "axis", null);
|
|
414
437
|
__decorate([
|
|
415
438
|
property()
|
|
416
|
-
],
|
|
439
|
+
], Carousel.prototype, "align", null);
|
|
417
440
|
__decorate([
|
|
418
441
|
property({ type: Object, reflect: true })
|
|
419
|
-
],
|
|
442
|
+
], Carousel.prototype, "breakpoints", null);
|
|
420
443
|
__decorate([
|
|
421
444
|
property({ type: Boolean })
|
|
422
|
-
],
|
|
445
|
+
], Carousel.prototype, "loop", null);
|
|
423
446
|
__decorate([
|
|
424
447
|
property({ type: Boolean, attribute: 'drag-free' })
|
|
425
|
-
],
|
|
448
|
+
], Carousel.prototype, "dragFree", null);
|
|
426
449
|
__decorate([
|
|
427
450
|
property({ type: Number })
|
|
428
|
-
],
|
|
451
|
+
], Carousel.prototype, "duration", null);
|
|
429
452
|
__decorate([
|
|
430
453
|
property({ type: Boolean, attribute: 'skip-snaps' })
|
|
431
|
-
],
|
|
454
|
+
], Carousel.prototype, "skipSnaps", null);
|
|
432
455
|
__decorate([
|
|
433
456
|
property({ attribute: 'slides-to-scroll' })
|
|
434
|
-
],
|
|
457
|
+
], Carousel.prototype, "slidesToScroll", null);
|
|
435
458
|
__decorate([
|
|
436
459
|
property({ type: Number, attribute: 'start-index' })
|
|
437
|
-
],
|
|
460
|
+
], Carousel.prototype, "startIndex", null);
|
|
438
461
|
__decorate([
|
|
439
462
|
property({ attribute: 'contain-scroll' })
|
|
440
|
-
],
|
|
463
|
+
], Carousel.prototype, "containScroll", null);
|
|
441
464
|
__decorate([
|
|
442
465
|
property({ type: Boolean })
|
|
443
|
-
],
|
|
466
|
+
], Carousel.prototype, "single", null);
|
|
444
467
|
__decorate([
|
|
445
468
|
property({ type: Boolean, attribute: 'with-dots' })
|
|
446
|
-
],
|
|
469
|
+
], Carousel.prototype, "withDots", null);
|
|
447
470
|
__decorate([
|
|
448
471
|
property({ type: Boolean, attribute: 'with-scrollbar' })
|
|
449
|
-
],
|
|
472
|
+
], Carousel.prototype, "withScrollbar", null);
|
|
450
473
|
__decorate([
|
|
451
474
|
property({ type: Boolean, attribute: 'with-fullscreen' })
|
|
452
|
-
],
|
|
475
|
+
], Carousel.prototype, "withFullscreen", null);
|
|
453
476
|
__decorate([
|
|
454
477
|
property({ type: String, attribute: 'dot-appearance' })
|
|
455
|
-
],
|
|
478
|
+
], Carousel.prototype, "dotAppearance", null);
|
|
479
|
+
__decorate([
|
|
480
|
+
property({ type: Number, attribute: 'max-visible-dots' })
|
|
481
|
+
], Carousel.prototype, "maxVisibleDots", null);
|
|
456
482
|
__decorate([
|
|
457
483
|
property({ type: String, attribute: 'scroll-buttons-position' })
|
|
458
|
-
],
|
|
484
|
+
], Carousel.prototype, "scrollButtonsPosition", null);
|
|
485
|
+
__decorate([
|
|
486
|
+
state()
|
|
487
|
+
], Carousel.prototype, "_selectedSnap", null);
|
|
459
488
|
__decorate([
|
|
460
489
|
query('.scroll-buttons')
|
|
461
|
-
],
|
|
490
|
+
], Carousel.prototype, "scrollButtons", void 0);
|
|
462
491
|
__decorate([
|
|
463
492
|
query('.button-previous')
|
|
464
|
-
],
|
|
493
|
+
], Carousel.prototype, "previousBtn", void 0);
|
|
465
494
|
__decorate([
|
|
466
495
|
query('.button-next')
|
|
467
|
-
],
|
|
496
|
+
], Carousel.prototype, "nextBtn", void 0);
|
|
468
497
|
__decorate([
|
|
469
498
|
query('.container')
|
|
470
|
-
],
|
|
471
|
-
__decorate([
|
|
472
|
-
queryAll('.dot')
|
|
473
|
-
], LuxenCarousel.prototype, "dotNodes", void 0);
|
|
499
|
+
], Carousel.prototype, "container", void 0);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Carousel } from './carousel';
|
|
2
2
|
export * from './carousel';
|
|
3
3
|
declare global {
|
|
4
4
|
interface HTMLElementTagNameMap {
|
|
5
|
-
'l-carousel':
|
|
5
|
+
'l-carousel': Carousel;
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/html/elements/carousel/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/html/elements/carousel/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,cAAc,YAAY,CAAC;AAG3B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,QAAQ,CAAC;KACxB;CACF"}
|
|
@@ -5,7 +5,7 @@ import { LuxenElement } from '../../shared/luxen-element';
|
|
|
5
5
|
*
|
|
6
6
|
* @cssproperty --aspect-ratio - Aspect ratio of the slide.
|
|
7
7
|
*/
|
|
8
|
-
export declare class
|
|
8
|
+
export declare class CarouselItem extends LuxenElement {
|
|
9
9
|
static styles: CSSResultGroup;
|
|
10
10
|
connectedCallback(): void;
|
|
11
11
|
render(): import("lit").TemplateResult<1>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carousel-item.d.ts","sourceRoot":"","sources":["../../../src/html/elements/carousel-item/carousel-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM1D;;;;GAIG;AACH,qBAAa,
|
|
1
|
+
{"version":3,"file":"carousel-item.d.ts","sourceRoot":"","sources":["../../../src/html/elements/carousel-item/carousel-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM1D;;;;GAIG;AACH,qBAAa,YAAa,SAAQ,YAAY;IAC5C,OAAgB,MAAM,EAAE,cAAc,CAAwB;IAErD,iBAAiB;IAKjB,MAAM;CAGhB"}
|
|
@@ -8,7 +8,7 @@ const styles = unsafeCSS(rawStyles);
|
|
|
8
8
|
*
|
|
9
9
|
* @cssproperty --aspect-ratio - Aspect ratio of the slide.
|
|
10
10
|
*/
|
|
11
|
-
export class
|
|
11
|
+
export class CarouselItem extends LuxenElement {
|
|
12
12
|
connectedCallback() {
|
|
13
13
|
super.connectedCallback();
|
|
14
14
|
this.setAttribute('role', 'group');
|
|
@@ -17,4 +17,4 @@ export class LuxenCarouselItem extends LuxenElement {
|
|
|
17
17
|
return html ` <slot></slot> `;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
CarouselItem.styles = [hostStyles, styles];
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CarouselItem } from './carousel-item';
|
|
2
2
|
export * from './carousel-item';
|
|
3
3
|
declare global {
|
|
4
4
|
interface HTMLElementTagNameMap {
|
|
5
|
-
'l-carousel-item':
|
|
5
|
+
'l-carousel-item': CarouselItem;
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/html/elements/carousel-item/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/html/elements/carousel-item/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,cAAc,iBAAiB,CAAC;AAGhC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,YAAY,CAAC;KACjC;CACF"}
|
|
@@ -30,7 +30,7 @@ import { LuxenElement } from '../../shared/luxen-element';
|
|
|
30
30
|
* @event hide - Fired when the dialog is about to close. Cancelable — call `event.preventDefault()` to keep it open.
|
|
31
31
|
* @event after-hide - Fired after the close animation completes.
|
|
32
32
|
*/
|
|
33
|
-
export declare class
|
|
33
|
+
export declare class Dialog extends LuxenElement {
|
|
34
34
|
static styles: import("lit").CSSResult[];
|
|
35
35
|
/** Dialog title rendered in the header. */
|
|
36
36
|
title: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/html/elements/dialog/dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAwB1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,
|
|
1
|
+
{"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/html/elements/dialog/dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAwB1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,MAAO,SAAQ,YAAY;IACtC,MAAM,CAAC,MAAM,4BAAwB;IAErC,2CAA2C;IAE3C,KAAK,SAAM;IAEX,kCAAkC;IAElC,IAAI,UAAS;IAEb,0CAA0C;IAE1C,YAAY,UAAS;IAErB,uDAAuD;IAEvD,aAAa,UAAS;IAGtB,MAAM,EAAG,iBAAiB,CAAC;IAE3B,OAAO,CAAC,gBAAgB,CAA4B;IAEpD,OAAO,CAAC,gBAAgB,CAEtB;IAIF,iBAAiB;IAKjB,oBAAoB;IAKpB,YAAY;IASZ,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;IA0BrC,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,eAAe,CAAC,CAAY;IAEpC,OAAO,CAAC,aAAa;YAcP,UAAU;IAUxB,OAAO,CAAC,qBAAqB;IAK7B,MAAM;CA0BP"}
|