godown 2.6.2 → 2.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{deps.d.ts → .deps.d.ts} +1 -1
- package/.deps.d.ts.map +1 -0
- package/{deps.js → .deps.js} +1 -1
- package/.deps.js.map +1 -0
- package/README.md +166 -43
- package/a.d.ts +2 -0
- package/a.d.ts.map +1 -0
- package/a.js +2 -0
- package/a.js.map +1 -0
- package/alert.d.ts +2 -0
- package/alert.d.ts.map +1 -0
- package/alert.js +2 -0
- package/alert.js.map +1 -0
- package/avatar-group.js.map +1 -1
- package/avatar.d.ts +2 -0
- package/avatar.d.ts.map +1 -0
- package/avatar.js +2 -0
- package/avatar.js.map +1 -0
- package/button.d.ts +2 -0
- package/button.d.ts.map +1 -0
- package/button.js +2 -0
- package/button.js.map +1 -0
- package/card.d.ts +2 -0
- package/card.d.ts.map +1 -0
- package/card.js +2 -0
- package/card.js.map +1 -0
- package/carousel.d.ts +2 -0
- package/carousel.d.ts.map +1 -0
- package/carousel.js +2 -0
- package/carousel.js.map +1 -0
- package/clip.d.ts +2 -0
- package/clip.d.ts.map +1 -0
- package/clip.js +2 -0
- package/clip.js.map +1 -0
- package/conf.d.ts +23 -3
- package/conf.d.ts.map +1 -1
- package/conf.js +19 -16
- package/conf.js.map +1 -1
- package/decorators/define.d.ts +7 -0
- package/decorators/define.d.ts.map +1 -0
- package/decorators/define.js +11 -0
- package/decorators/define.js.map +1 -0
- package/details-group.js.map +1 -1
- package/details.d.ts +2 -0
- package/details.d.ts.map +1 -0
- package/details.js +2 -0
- package/details.js.map +1 -0
- package/dialog.d.ts +2 -0
- package/dialog.d.ts.map +1 -0
- package/dialog.js +2 -0
- package/dialog.js.map +1 -0
- package/divider.d.ts +2 -0
- package/divider.d.ts.map +1 -0
- package/divider.js +2 -0
- package/divider.js.map +1 -0
- package/dragbox.d.ts +2 -0
- package/dragbox.d.ts.map +1 -0
- package/dragbox.js +2 -0
- package/dragbox.js.map +1 -0
- package/flex-flow.js.map +1 -1
- package/form.d.ts +2 -0
- package/form.d.ts.map +1 -0
- package/form.js +2 -0
- package/form.js.map +1 -0
- package/godown-element.d.ts +1 -1
- package/godown-element.d.ts.map +1 -1
- package/godown-element.js +12 -4
- package/godown-element.js.map +1 -1
- package/input.d.ts +2 -0
- package/input.d.ts.map +1 -0
- package/input.js +2 -0
- package/input.js.map +1 -0
- package/label-input.js.map +1 -1
- package/lib/event-collection.d.ts +1 -1
- package/lib/event-collection.d.ts.map +1 -1
- package/lib/templates.d.ts +2 -0
- package/lib/templates.d.ts.map +1 -1
- package/lib/templates.js +4 -0
- package/lib/templates.js.map +1 -1
- package/lib/utils.d.ts +0 -1
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +0 -7
- package/lib/utils.js.map +1 -1
- package/naming.d.ts +91 -0
- package/naming.d.ts.map +1 -0
- package/naming.js +67 -0
- package/naming.js.map +1 -0
- package/nav-layout.js.map +1 -1
- package/open-offset.d.ts +1 -1
- package/open-offset.d.ts.map +1 -1
- package/open-offset.js +1 -1
- package/open-offset.js.map +1 -1
- package/overbreath.d.ts +2 -0
- package/overbreath.d.ts.map +1 -0
- package/overbreath.js +2 -0
- package/overbreath.js.map +1 -0
- package/package.json +29 -33
- package/progress.d.ts +2 -0
- package/progress.d.ts.map +1 -0
- package/progress.js +2 -0
- package/progress.js.map +1 -0
- package/react/index.d.ts +24 -25
- package/react/index.d.ts.map +1 -1
- package/react/index.js +52 -56
- package/react/index.js.map +1 -1
- package/router-a.d.ts +2 -0
- package/router-a.d.ts.map +1 -0
- package/router-a.js +2 -0
- package/router-a.js.map +1 -0
- package/router.d.ts +2 -0
- package/router.d.ts.map +1 -0
- package/router.js +2 -0
- package/router.js.map +1 -0
- package/search-input.js.map +1 -1
- package/select-input.js.map +1 -1
- package/skeleton.d.ts +2 -0
- package/skeleton.d.ts.map +1 -0
- package/skeleton.js +2 -0
- package/skeleton.js.map +1 -0
- package/split-input.js.map +1 -1
- package/supers/anchor.d.ts +26 -0
- package/supers/anchor.d.ts.map +1 -0
- package/{web-components/a/super-a.js → supers/anchor.js} +27 -22
- package/supers/anchor.js.map +1 -0
- package/supers/input.d.ts +28 -0
- package/supers/input.d.ts.map +1 -0
- package/supers/input.js +117 -0
- package/supers/input.js.map +1 -0
- package/{web-components/open/open.d.ts → supers/openable.d.ts} +6 -6
- package/supers/openable.d.ts.map +1 -0
- package/{web-components/open/open.js → supers/openable.js} +11 -11
- package/supers/openable.js.map +1 -0
- package/supers/root.d.ts +18 -0
- package/supers/root.d.ts.map +1 -0
- package/{root.js → supers/root.js} +3 -11
- package/supers/root.js.map +1 -0
- package/switch-input.js.map +1 -1
- package/tabs.d.ts +2 -0
- package/tabs.d.ts.map +1 -0
- package/tabs.js +2 -0
- package/tabs.js.map +1 -0
- package/time.d.ts +2 -0
- package/time.d.ts.map +1 -0
- package/time.js +2 -0
- package/time.js.map +1 -0
- package/tooltip.d.ts +2 -0
- package/tooltip.d.ts.map +1 -0
- package/tooltip.js +2 -0
- package/tooltip.js.map +1 -0
- package/typewriter.d.ts +2 -0
- package/typewriter.d.ts.map +1 -0
- package/typewriter.js +2 -0
- package/typewriter.js.map +1 -0
- package/web-components/a/a.d.ts +16 -0
- package/web-components/a/a.d.ts.map +1 -0
- package/web-components/a/a.js +17 -0
- package/web-components/a/a.js.map +1 -0
- package/web-components/{items/alert-item.d.ts → alert/alert.d.ts} +8 -7
- package/web-components/alert/alert.d.ts.map +1 -0
- package/web-components/{items/alert-item.js → alert/alert.js} +18 -17
- package/web-components/alert/alert.js.map +1 -0
- package/web-components/{a/avatar-a.d.ts → avatar/avatar.d.ts} +9 -8
- package/web-components/avatar/avatar.d.ts.map +1 -0
- package/web-components/{a/avatar-a.js → avatar/avatar.js} +20 -19
- package/web-components/avatar/avatar.js.map +1 -0
- package/web-components/button/{base-button.d.ts → button.d.ts} +7 -10
- package/web-components/button/button.d.ts.map +1 -0
- package/web-components/button/{base-button.js → button.js} +22 -46
- package/web-components/button/button.js.map +1 -0
- package/web-components/{items/card-item.d.ts → card/card.d.ts} +8 -7
- package/web-components/card/card.d.ts.map +1 -0
- package/web-components/{items/card-item.js → card/card.js} +15 -14
- package/web-components/card/card.js.map +1 -0
- package/web-components/carousel/{carousel-slider.d.ts → carousel.d.ts} +8 -6
- package/web-components/carousel/carousel.d.ts.map +1 -0
- package/web-components/carousel/{carousel-slider.js → carousel.js} +16 -16
- package/web-components/carousel/carousel.js.map +1 -0
- package/web-components/{open/open-details.d.ts → details/details.d.ts} +8 -7
- package/web-components/details/details.d.ts.map +1 -0
- package/web-components/{open/open-details.js → details/details.js} +17 -16
- package/web-components/details/details.js.map +1 -0
- package/web-components/{open/open-dialog.d.ts → dialog/dialog.d.ts} +9 -7
- package/web-components/dialog/dialog.d.ts.map +1 -0
- package/web-components/{open/open-dialog.js → dialog/dialog.js} +19 -18
- package/web-components/dialog/dialog.js.map +1 -0
- package/web-components/form/{base-form.d.ts → form.d.ts} +8 -7
- package/web-components/form/form.d.ts.map +1 -0
- package/web-components/form/{base-form.js → form.js} +16 -15
- package/web-components/form/form.js.map +1 -0
- package/web-components/group/avatar-group.d.ts +6 -5
- package/web-components/group/avatar-group.d.ts.map +1 -1
- package/web-components/group/avatar-group.js +8 -7
- package/web-components/group/avatar-group.js.map +1 -1
- package/web-components/group/details-group.d.ts +3 -2
- package/web-components/group/details-group.d.ts.map +1 -1
- package/web-components/group/details-group.js +4 -3
- package/web-components/group/details-group.js.map +1 -1
- package/web-components/index.d.ts +24 -25
- package/web-components/index.d.ts.map +1 -1
- package/web-components/index.js +24 -26
- package/web-components/index.js.map +1 -1
- package/web-components/input/input.d.ts +44 -22
- package/web-components/input/input.d.ts.map +1 -1
- package/web-components/input/input.js +210 -80
- package/web-components/input/input.js.map +1 -1
- package/web-components/input/label-input.d.ts +5 -4
- package/web-components/input/label-input.d.ts.map +1 -1
- package/web-components/input/label-input.js +7 -6
- package/web-components/input/label-input.js.map +1 -1
- package/web-components/input/search-input.d.ts +5 -4
- package/web-components/input/search-input.d.ts.map +1 -1
- package/web-components/input/search-input.js +7 -6
- package/web-components/input/search-input.js.map +1 -1
- package/web-components/input/select-input.d.ts +5 -4
- package/web-components/input/select-input.d.ts.map +1 -1
- package/web-components/input/select-input.js +7 -6
- package/web-components/input/select-input.js.map +1 -1
- package/web-components/input/split-input.d.ts +5 -4
- package/web-components/input/split-input.d.ts.map +1 -1
- package/web-components/input/split-input.js +7 -6
- package/web-components/input/split-input.js.map +1 -1
- package/web-components/input/switch-input.d.ts +5 -4
- package/web-components/input/switch-input.d.ts.map +1 -1
- package/web-components/input/switch-input.js +7 -6
- package/web-components/input/switch-input.js.map +1 -1
- package/web-components/layout/divider.d.ts +22 -0
- package/web-components/layout/divider.d.ts.map +1 -0
- package/web-components/layout/{divider-line.js → divider.js} +13 -12
- package/web-components/layout/divider.js.map +1 -0
- package/web-components/layout/flex-flow.d.ts +3 -2
- package/web-components/layout/flex-flow.d.ts.map +1 -1
- package/web-components/layout/flex-flow.js +4 -3
- package/web-components/layout/flex-flow.js.map +1 -1
- package/web-components/layout/nav-layout.d.ts +4 -3
- package/web-components/layout/nav-layout.d.ts.map +1 -1
- package/web-components/layout/nav-layout.js +4 -3
- package/web-components/layout/nav-layout.js.map +1 -1
- package/web-components/{open → offset}/open-offset.d.ts +5 -4
- package/web-components/offset/open-offset.d.ts.map +1 -0
- package/web-components/{open → offset}/open-offset.js +5 -5
- package/web-components/offset/open-offset.js.map +1 -0
- package/web-components/{loading/loading-progress.d.ts → progress/progress.d.ts} +9 -7
- package/web-components/progress/progress.d.ts.map +1 -0
- package/web-components/{loading/loading-progress.js → progress/progress.js} +15 -14
- package/web-components/progress/progress.js.map +1 -0
- package/web-components/router/router-a.d.ts +25 -0
- package/web-components/router/router-a.d.ts.map +1 -0
- package/web-components/router/router-a.js +70 -0
- package/web-components/router/router-a.js.map +1 -0
- package/web-components/{view/route-view.d.ts → router/router.d.ts} +10 -9
- package/web-components/router/router.d.ts.map +1 -0
- package/web-components/{view/route-view.js → router/router.js} +21 -21
- package/web-components/router/router.js.map +1 -0
- package/web-components/{loading/skeleton-screen.d.ts → skeleton/skeleton.d.ts} +8 -7
- package/web-components/skeleton/skeleton.d.ts.map +1 -0
- package/web-components/{loading/skeleton-screen.js → skeleton/skeleton.js} +15 -14
- package/web-components/skeleton/skeleton.js.map +1 -0
- package/web-components/{group/tab-group.d.ts → tabs/tabs.d.ts} +9 -8
- package/web-components/tabs/tabs.d.ts.map +1 -0
- package/web-components/{group/tab-group.js → tabs/tabs.js} +17 -16
- package/web-components/tabs/tabs.js.map +1 -0
- package/web-components/text/clip.d.ts +22 -0
- package/web-components/text/clip.d.ts.map +1 -0
- package/web-components/text/{clip-text.js → clip.js} +13 -12
- package/web-components/text/clip.js.map +1 -0
- package/web-components/text/{overbreath-text.d.ts → overbreath.d.ts} +8 -7
- package/web-components/text/overbreath.d.ts.map +1 -0
- package/web-components/text/{overbreath-text.js → overbreath.js} +15 -14
- package/web-components/text/overbreath.js.map +1 -0
- package/web-components/text/time.d.ts +60 -0
- package/web-components/text/time.d.ts.map +1 -0
- package/web-components/{items/time-bar.js → text/time.js} +53 -36
- package/web-components/text/time.js.map +1 -0
- package/web-components/text/{typewriter-text.d.ts → typewriter.d.ts} +10 -9
- package/web-components/text/typewriter.d.ts.map +1 -0
- package/web-components/text/{typewriter-text.js → typewriter.js} +23 -22
- package/web-components/text/typewriter.js.map +1 -0
- package/web-components/tooltip/tooltip.d.ts +26 -0
- package/web-components/tooltip/tooltip.d.ts.map +1 -0
- package/web-components/{open/open-tooltip.js → tooltip/tooltip.js} +15 -14
- package/web-components/tooltip/tooltip.js.map +1 -0
- package/web-components/{items/drag-box.d.ts → wrapper/dragbox.d.ts} +7 -6
- package/web-components/wrapper/dragbox.d.ts.map +1 -0
- package/web-components/{items/drag-box.js → wrapper/dragbox.js} +14 -13
- package/web-components/wrapper/dragbox.js.map +1 -0
- package/web-components/{view/wrap-view.d.ts → wrapper/wrapper.d.ts} +7 -5
- package/web-components/wrapper/wrapper.d.ts.map +1 -0
- package/web-components/{view/wrap-view.js → wrapper/wrapper.js} +13 -12
- package/web-components/wrapper/wrapper.js.map +1 -0
- package/wrapper.d.ts +2 -0
- package/wrapper.d.ts.map +1 -0
- package/wrapper.js +2 -0
- package/wrapper.js.map +1 -0
- package/alert-item.d.ts +0 -2
- package/alert-item.d.ts.map +0 -1
- package/alert-item.js +0 -2
- package/alert-item.js.map +0 -1
- package/avatar-a.d.ts +0 -2
- package/avatar-a.d.ts.map +0 -1
- package/avatar-a.js +0 -2
- package/avatar-a.js.map +0 -1
- package/base-button.d.ts +0 -2
- package/base-button.d.ts.map +0 -1
- package/base-button.js +0 -2
- package/base-button.js.map +0 -1
- package/base-form.d.ts +0 -2
- package/base-form.d.ts.map +0 -1
- package/base-form.js +0 -2
- package/base-form.js.map +0 -1
- package/base-input.d.ts +0 -2
- package/base-input.d.ts.map +0 -1
- package/base-input.js +0 -2
- package/base-input.js.map +0 -1
- package/card-item.d.ts +0 -2
- package/card-item.d.ts.map +0 -1
- package/card-item.js +0 -2
- package/card-item.js.map +0 -1
- package/carousel-slider.d.ts +0 -2
- package/carousel-slider.d.ts.map +0 -1
- package/carousel-slider.js +0 -2
- package/carousel-slider.js.map +0 -1
- package/clip-text.d.ts +0 -2
- package/clip-text.d.ts.map +0 -1
- package/clip-text.js +0 -2
- package/clip-text.js.map +0 -1
- package/deps.d.ts.map +0 -1
- package/deps.js.map +0 -1
- package/divider-line.d.ts +0 -2
- package/divider-line.d.ts.map +0 -1
- package/divider-line.js +0 -2
- package/divider-line.js.map +0 -1
- package/drag-box.d.ts +0 -2
- package/drag-box.d.ts.map +0 -1
- package/drag-box.js +0 -2
- package/drag-box.js.map +0 -1
- package/link-a.d.ts +0 -2
- package/link-a.d.ts.map +0 -1
- package/link-a.js +0 -2
- package/link-a.js.map +0 -1
- package/loading-progress.d.ts +0 -2
- package/loading-progress.d.ts.map +0 -1
- package/loading-progress.js +0 -2
- package/loading-progress.js.map +0 -1
- package/open-details.d.ts +0 -2
- package/open-details.d.ts.map +0 -1
- package/open-details.js +0 -2
- package/open-details.js.map +0 -1
- package/open-dialog.d.ts +0 -2
- package/open-dialog.d.ts.map +0 -1
- package/open-dialog.js +0 -2
- package/open-dialog.js.map +0 -1
- package/open-tooltip.d.ts +0 -2
- package/open-tooltip.d.ts.map +0 -1
- package/open-tooltip.js +0 -2
- package/open-tooltip.js.map +0 -1
- package/overbreath-text.d.ts +0 -2
- package/overbreath-text.d.ts.map +0 -1
- package/overbreath-text.js +0 -2
- package/overbreath-text.js.map +0 -1
- package/root.d.ts +0 -23
- package/root.d.ts.map +0 -1
- package/root.js.map +0 -1
- package/route-view.d.ts +0 -2
- package/route-view.d.ts.map +0 -1
- package/route-view.js +0 -2
- package/route-view.js.map +0 -1
- package/sign-form.d.ts +0 -2
- package/sign-form.d.ts.map +0 -1
- package/sign-form.js +0 -2
- package/sign-form.js.map +0 -1
- package/skeleton-screen.d.ts +0 -2
- package/skeleton-screen.d.ts.map +0 -1
- package/skeleton-screen.js +0 -2
- package/skeleton-screen.js.map +0 -1
- package/super-a.d.ts +0 -2
- package/super-a.d.ts.map +0 -1
- package/super-a.js +0 -2
- package/super-a.js.map +0 -1
- package/tab-group.d.ts +0 -2
- package/tab-group.d.ts.map +0 -1
- package/tab-group.js +0 -2
- package/tab-group.js.map +0 -1
- package/time-bar.d.ts +0 -2
- package/time-bar.d.ts.map +0 -1
- package/time-bar.js +0 -2
- package/time-bar.js.map +0 -1
- package/typewriter-text.d.ts +0 -2
- package/typewriter-text.d.ts.map +0 -1
- package/typewriter-text.js +0 -2
- package/typewriter-text.js.map +0 -1
- package/web-components/a/avatar-a.d.ts.map +0 -1
- package/web-components/a/avatar-a.js.map +0 -1
- package/web-components/a/link-a.d.ts +0 -33
- package/web-components/a/link-a.d.ts.map +0 -1
- package/web-components/a/link-a.js +0 -81
- package/web-components/a/link-a.js.map +0 -1
- package/web-components/a/super-a.d.ts +0 -31
- package/web-components/a/super-a.d.ts.map +0 -1
- package/web-components/a/super-a.js.map +0 -1
- package/web-components/button/base-button.d.ts.map +0 -1
- package/web-components/button/base-button.js.map +0 -1
- package/web-components/carousel/carousel-slider.d.ts.map +0 -1
- package/web-components/carousel/carousel-slider.js.map +0 -1
- package/web-components/form/base-form.d.ts.map +0 -1
- package/web-components/form/base-form.js.map +0 -1
- package/web-components/form/sign-form.d.ts +0 -19
- package/web-components/form/sign-form.d.ts.map +0 -1
- package/web-components/form/sign-form.js +0 -16
- package/web-components/form/sign-form.js.map +0 -1
- package/web-components/group/tab-group.d.ts.map +0 -1
- package/web-components/group/tab-group.js.map +0 -1
- package/web-components/input/base-input.d.ts +0 -49
- package/web-components/input/base-input.d.ts.map +0 -1
- package/web-components/input/base-input.js +0 -246
- package/web-components/input/base-input.js.map +0 -1
- package/web-components/items/alert-item.d.ts.map +0 -1
- package/web-components/items/alert-item.js.map +0 -1
- package/web-components/items/card-item.d.ts.map +0 -1
- package/web-components/items/card-item.js.map +0 -1
- package/web-components/items/drag-box.d.ts.map +0 -1
- package/web-components/items/drag-box.js.map +0 -1
- package/web-components/items/index.d.ts +0 -5
- package/web-components/items/index.d.ts.map +0 -1
- package/web-components/items/index.js +0 -6
- package/web-components/items/index.js.map +0 -1
- package/web-components/items/time-bar.d.ts +0 -54
- package/web-components/items/time-bar.d.ts.map +0 -1
- package/web-components/items/time-bar.js.map +0 -1
- package/web-components/layout/divider-line.d.ts +0 -20
- package/web-components/layout/divider-line.d.ts.map +0 -1
- package/web-components/layout/divider-line.js.map +0 -1
- package/web-components/loading/loading-progress.d.ts.map +0 -1
- package/web-components/loading/loading-progress.js.map +0 -1
- package/web-components/loading/skeleton-screen.d.ts.map +0 -1
- package/web-components/loading/skeleton-screen.js.map +0 -1
- package/web-components/open/open-details.d.ts.map +0 -1
- package/web-components/open/open-details.js.map +0 -1
- package/web-components/open/open-dialog.d.ts.map +0 -1
- package/web-components/open/open-dialog.js.map +0 -1
- package/web-components/open/open-offset.d.ts.map +0 -1
- package/web-components/open/open-offset.js.map +0 -1
- package/web-components/open/open-tooltip.d.ts +0 -24
- package/web-components/open/open-tooltip.d.ts.map +0 -1
- package/web-components/open/open-tooltip.js.map +0 -1
- package/web-components/open/open.d.ts.map +0 -1
- package/web-components/open/open.js.map +0 -1
- package/web-components/text/clip-text.d.ts +0 -21
- package/web-components/text/clip-text.d.ts.map +0 -1
- package/web-components/text/clip-text.js.map +0 -1
- package/web-components/text/overbreath-text.d.ts.map +0 -1
- package/web-components/text/overbreath-text.js.map +0 -1
- package/web-components/text/typewriter-text.d.ts.map +0 -1
- package/web-components/text/typewriter-text.js.map +0 -1
- package/web-components/view/route-view.d.ts.map +0 -1
- package/web-components/view/route-view.js.map +0 -1
- package/web-components/view/wrap-view.d.ts.map +0 -1
- package/web-components/view/wrap-view.js.map +0 -1
- package/wrap-view.d.ts +0 -2
- package/wrap-view.d.ts.map +0 -1
- package/wrap-view.js +0 -2
- package/wrap-view.js.map +0 -1
@@ -1,17 +1,18 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
|
-
import { css, html, property, state } from "
|
2
|
+
import { css, html, property, state } from "../../.deps.js";
|
3
|
+
import { define } from "../../decorators/define.js";
|
3
4
|
import { ifValue } from "../../lib/directives.js";
|
4
5
|
import { htmlSlot } from "../../lib/templates.js";
|
5
6
|
import { deepQuerySelectorAll } from "../../lib/utils.js";
|
6
|
-
import { createScope, cssvarValues,
|
7
|
-
const defineName = "
|
7
|
+
import { createScope, cssvarValues, GodownElement } from "../../supers/root.js";
|
8
|
+
const defineName = "tabs";
|
8
9
|
const cssvarScope = createScope(defineName);
|
9
10
|
/**
|
10
|
-
*
|
11
|
+
* {@linkcode GodownTab} used to support multiple tab.
|
11
12
|
*
|
12
13
|
* Inspired by Next-ui.
|
13
14
|
*/
|
14
|
-
let
|
15
|
+
let Tabs = class Tabs extends GodownElement {
|
15
16
|
constructor() {
|
16
17
|
super(...arguments);
|
17
18
|
/**
|
@@ -98,7 +99,7 @@ let TabGroup = class TabGroup extends GodownElement {
|
|
98
99
|
this.contents = this.slottedNames;
|
99
100
|
}
|
100
101
|
};
|
101
|
-
|
102
|
+
Tabs.styles = [
|
102
103
|
GodownElement.styles,
|
103
104
|
css `
|
104
105
|
:host {
|
@@ -143,22 +144,22 @@ TabGroup.styles = [
|
|
143
144
|
];
|
144
145
|
__decorate([
|
145
146
|
property()
|
146
|
-
],
|
147
|
+
], Tabs.prototype, "index", void 0);
|
147
148
|
__decorate([
|
148
149
|
property()
|
149
|
-
],
|
150
|
+
], Tabs.prototype, "def", void 0);
|
150
151
|
__decorate([
|
151
152
|
property()
|
152
|
-
],
|
153
|
+
], Tabs.prototype, "align", void 0);
|
153
154
|
__decorate([
|
154
155
|
state()
|
155
|
-
],
|
156
|
+
], Tabs.prototype, "headers", void 0);
|
156
157
|
__decorate([
|
157
158
|
state()
|
158
|
-
],
|
159
|
-
|
159
|
+
], Tabs.prototype, "contents", void 0);
|
160
|
+
Tabs = __decorate([
|
160
161
|
define(defineName)
|
161
|
-
],
|
162
|
-
export {
|
163
|
-
export default
|
164
|
-
//# sourceMappingURL=
|
162
|
+
], Tabs);
|
163
|
+
export { Tabs };
|
164
|
+
export default Tabs;
|
165
|
+
//# sourceMappingURL=tabs.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"tabs.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/tabs/tabs.ts"],"names":[],"mappings":"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","sourcesContent":["import { css, type CSSResultGroup, html, property, type PropertyValueMap, state } from \"../../.deps.js\";\nimport { define } from \"../../decorators/define.js\";\nimport { ifValue } from \"../../lib/directives.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { deepQuerySelectorAll } from \"../../lib/utils.js\";\nimport { createScope, cssvarValues, GodownElement } from \"../../supers/root.js\";\n\nconst defineName = \"tabs\";\n\nconst cssvarScope = createScope(defineName);\n\n/**\n * {@linkcode GodownTab} used to support multiple tab.\n *\n * Inspired by Next-ui.\n */\n@define(defineName)\nexport class Tabs extends GodownElement {\n /**\n * Active slot name.\n */\n @property() index = \"\";\n /**\n * Default slot name.\n */\n @property() def = \"\";\n /**\n * Align type.\n */\n @property() align = \"start\";\n /**\n * Header texts or slot names, if headers is a zero value, it is taken from the {@linkcode Tabs.contents}.\n */\n @state() headers: string[] | void;\n /**\n * Contents slot names.\n */\n @state() contents: string[];\n\n static styles = [\n GodownElement.styles,\n css`\n :host {\n ${cssvarScope}--background: var(${cssvarValues.main});\n ${cssvarScope}--background-active: rgb(var(${cssvarValues.textRGB}) / 18%);\n ${cssvarScope}--radius: .25em;\n ${cssvarScope}--cursor: default;\n background: var(${cssvarScope}--background);\n display: block;\n color: var(${cssvarValues.text});\n }\n\n nav {\n display: grid;\n grid-auto-flow: column;\n gap: 0.25em;\n position: relative;\n border-radius: inherit;\n }\n\n section {\n white-space: nowrap;\n border-radius: inherit;\n padding: 0.15em 0.2em;\n cursor: var(${cssvarScope}--cursor);\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n #slider {\n height: 100%;\n position: absolute;\n padding: 0;\n background: var(${cssvarScope}--background-active);\n transform: translateX(-50%);\n transition: all 180ms ease 0s;\n z-index: 0;\n }\n `,\n ] as CSSResultGroup;\n\n protected render(): HTMLTemplate {\n const headers = (this.headers || this.contents).map((value) => {\n return html`<section\n class=\"${ifValue(this.index === value, \"active\")}\"\n @click=\"${() => {\n this.select(value, true);\n }}\"\n >\n ${this.headers ? htmlSlot(value) : value}\n </section>`;\n });\n return html`\n <nav style=\"justify-content:${this.align}\">\n ${headers}\n <section id=\"slider\"></section>\n </nav>\n ${htmlSlot(this.index || this.def)}\n `;\n }\n\n protected updated(changedProperties: PropertyValueMap<this>) {\n if (changedProperties.has(\"index\")) {\n // Move slider.\n const active = this.shadowRoot.querySelector<HTMLElement>(\"section.active\");\n const slider = this.shadowRoot.querySelector<HTMLElement>(\"#slider\");\n if (active) {\n this.dispatchEvent(new CustomEvent(\"select\", { detail: this.index }));\n slider.style.width = `${active.clientWidth}px`;\n slider.animate([{ left: `${active.offsetLeft + active.clientWidth / 2}px` }], {\n duration: 180,\n fill: \"forwards\",\n });\n } else {\n slider.style.width = \"0\";\n }\n }\n }\n\n /**\n * Select one tab.\n * @param s New index.\n * @param callSync if true, update all same elements (headers contains s).\n */\n select(s: string, callSync = false) {\n if (callSync) {\n const elements = deepQuerySelectorAll<this>(this.tagName, document.body);\n for (const e of elements) {\n if ((e.headers || e.contents).includes(s)) {\n e.select(s);\n }\n }\n return;\n }\n this.index = s;\n }\n\n connectedCallback() {\n super.connectedCallback();\n if (!this.def) {\n this.def = this.slottedNames[0] || \"\";\n }\n if (!this.index && this.def) {\n this.index = this.def;\n }\n this.getTabs();\n }\n\n /**\n * Update content controls (this.headers, this.contents).\n */\n getTabs() {\n this.contents = this.slottedNames;\n }\n}\n\nexport default Tabs;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"tab-group\": Tabs;\n \"g-tabs\": Tabs;\n }\n}\n"]}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import { type CSSResultGroup } from "../../.deps.js";
|
2
|
+
import { type HTMLTemplate } from "../../lib/templates.js";
|
3
|
+
import { GodownElement } from "../../supers/root.js";
|
4
|
+
/**
|
5
|
+
* {@linkcode Clip} renders a gradient text.
|
6
|
+
*/
|
7
|
+
export declare class Clip extends GodownElement {
|
8
|
+
/**
|
9
|
+
* The text to be clipped.
|
10
|
+
*/
|
11
|
+
text: string;
|
12
|
+
static styles: CSSResultGroup;
|
13
|
+
protected render(): HTMLTemplate | string;
|
14
|
+
}
|
15
|
+
export default Clip;
|
16
|
+
declare global {
|
17
|
+
interface HTMLElementTagNameMap {
|
18
|
+
"clip-text": Clip;
|
19
|
+
"g-clip": Clip;
|
20
|
+
}
|
21
|
+
}
|
22
|
+
//# sourceMappingURL=clip.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"clip.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/clip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,cAAc,EAAY,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAuB,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAK1E;;GAEG;AACH,qBACa,IAAK,SAAQ,aAAa;IACrC;;OAEG;IACS,IAAI,SAAM;IAEtB,MAAM,CAAC,MAAM,iBAaO;IAEpB,SAAS,CAAC,MAAM,IAAI,YAAY,GAAG,MAAM;CAG1C;AAED,eAAe,IAAI,CAAC;AAEpB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,IAAI,CAAC;QAClB,QAAQ,EAAE,IAAI,CAAC;KAChB;CACF"}
|
@@ -1,13 +1,14 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
|
-
import { css, property } from "
|
2
|
+
import { css, property } from "../../.deps.js";
|
3
|
+
import { define } from "../../decorators/define.js";
|
3
4
|
import { htmlSlot } from "../../lib/templates.js";
|
4
|
-
import { createScope, cssvar,
|
5
|
-
const defineName = "clip
|
5
|
+
import { createScope, cssvar, GodownElement } from "../../supers/root.js";
|
6
|
+
const defineName = "clip";
|
6
7
|
const cssvarScope = createScope(defineName);
|
7
8
|
/**
|
8
|
-
*
|
9
|
+
* {@linkcode Clip} renders a gradient text.
|
9
10
|
*/
|
10
|
-
let
|
11
|
+
let Clip = class Clip extends GodownElement {
|
11
12
|
constructor() {
|
12
13
|
super(...arguments);
|
13
14
|
/**
|
@@ -19,7 +20,7 @@ let ClipText = class ClipText extends GodownElement {
|
|
19
20
|
return this.text || htmlSlot();
|
20
21
|
}
|
21
22
|
};
|
22
|
-
|
23
|
+
Clip.styles = [
|
23
24
|
GodownElement.styles,
|
24
25
|
css `
|
25
26
|
:host {
|
@@ -35,10 +36,10 @@ ClipText.styles = [
|
|
35
36
|
];
|
36
37
|
__decorate([
|
37
38
|
property()
|
38
|
-
],
|
39
|
-
|
39
|
+
], Clip.prototype, "text", void 0);
|
40
|
+
Clip = __decorate([
|
40
41
|
define(defineName)
|
41
|
-
],
|
42
|
-
export {
|
43
|
-
export default
|
44
|
-
//# sourceMappingURL=clip
|
42
|
+
], Clip);
|
43
|
+
export { Clip };
|
44
|
+
export default Clip;
|
45
|
+
//# sourceMappingURL=clip.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"clip.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/clip.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAqB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1E,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAE5C;;GAEG;AAEI,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,aAAa;IAAhC;;QACL;;WAEG;QACS,SAAI,GAAG,EAAE,CAAC;IAoBxB,CAAC;IAHW,MAAM;QACd,OAAO,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;IACjC,CAAC;;AAjBM,WAAM,GAAG;IACd,aAAa,CAAC,MAAM;IACpB,GAAG,CAAA;;UAEG,WAAW,0BAA0B,MAAM;0BAC3B,WAAW;;;;;;;KAOhC;CACgB,AAbN,CAaO;AAfR;IAAX,QAAQ,EAAE;kCAAW;AAJX,IAAI;IADhB,MAAM,CAAC,UAAU,CAAC;GACN,IAAI,CAwBhB;;AAED,eAAe,IAAI,CAAC","sourcesContent":["import { css, type CSSResultGroup, property } from \"../../.deps.js\";\nimport { define } from \"../../decorators/define.js\";\nimport { htmlSlot, type HTMLTemplate } from \"../../lib/templates.js\";\nimport { createScope, cssvar, GodownElement } from \"../../supers/root.js\";\n\nconst defineName = \"clip\";\nconst cssvarScope = createScope(defineName);\n\n/**\n * {@linkcode Clip} renders a gradient text.\n */\n@define(defineName)\nexport class Clip extends GodownElement {\n /**\n * The text to be clipped.\n */\n @property() text = \"\";\n\n static styles = [\n GodownElement.styles,\n css`\n :host {\n ${cssvarScope}--clip-background: var(${cssvar}--clip-background);\n background: var(${cssvarScope}--clip-background);\n color: transparent;\n -webkit-text-fill-color: transparent;\n background-clip: text !important;\n -webkit-background-clip: text !important;\n display: inline-flex;\n }\n `,\n ] as CSSResultGroup;\n\n protected render(): HTMLTemplate | string {\n return this.text || htmlSlot();\n }\n}\n\nexport default Clip;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"clip-text\": Clip;\n \"g-clip\": Clip;\n }\n}\n"]}
|
@@ -1,12 +1,12 @@
|
|
1
|
-
import { type CSSResultGroup } from "
|
1
|
+
import { type CSSResultGroup } from "../../.deps.js";
|
2
2
|
import { type HTMLTemplate } from "../../lib/templates.js";
|
3
|
-
import { GodownElement } from "../../root.js";
|
3
|
+
import { GodownElement } from "../../supers/root.js";
|
4
4
|
/**
|
5
|
-
*
|
5
|
+
* {@linkcode Overbreath} renders three animated pieces of text.
|
6
6
|
*
|
7
7
|
* Inspired by Vercel homepage (2022? - 2023).
|
8
8
|
*/
|
9
|
-
export declare class
|
9
|
+
export declare class Overbreath extends GodownElement {
|
10
10
|
/**
|
11
11
|
* One of the texts.
|
12
12
|
*/
|
@@ -17,10 +17,11 @@ export declare class OverbreathText extends GodownElement {
|
|
17
17
|
protected render(): HTMLTemplate[];
|
18
18
|
protected renderText(text: string): HTMLTemplate;
|
19
19
|
}
|
20
|
-
export default
|
20
|
+
export default Overbreath;
|
21
21
|
declare global {
|
22
22
|
interface HTMLElementTagNameMap {
|
23
|
-
"overbreath-text":
|
23
|
+
"overbreath-text": Overbreath;
|
24
|
+
"g-overbreath": Overbreath;
|
24
25
|
}
|
25
26
|
}
|
26
|
-
//# sourceMappingURL=overbreath
|
27
|
+
//# sourceMappingURL=overbreath.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"overbreath.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/overbreath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,cAAc,EAAkB,MAAM,gBAAgB,CAAC;AAE1E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAuB,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAK1E;;;;GAIG;AACH,qBACa,UAAW,SAAQ,aAAa;IAC3C;;OAEG;IACS,EAAE,SAAM;IAER,EAAE,SAAM;IAER,EAAE,SAAM;IAEpB,MAAM,CAAC,MAAM,iBAiLO;IAEpB,SAAS,CAAC,MAAM,IAAI,YAAY,EAAE;IAIlC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY;CAMjD;AAED,eAAe,UAAU,CAAC;AAE1B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,UAAU,CAAC;QAC9B,cAAc,EAAE,UAAU,CAAC;KAC5B;CACF"}
|
@@ -1,14 +1,15 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
|
-
import { css, html, property } from "
|
3
|
-
import {
|
4
|
-
|
2
|
+
import { css, html, property } from "../../.deps.js";
|
3
|
+
import { define } from "../../decorators/define.js";
|
4
|
+
import { createScope, cssvar, GodownElement } from "../../supers/root.js";
|
5
|
+
const defineName = "overbreath";
|
5
6
|
const cssvarScope = createScope(defineName);
|
6
7
|
/**
|
7
|
-
*
|
8
|
+
* {@linkcode Overbreath} renders three animated pieces of text.
|
8
9
|
*
|
9
10
|
* Inspired by Vercel homepage (2022? - 2023).
|
10
11
|
*/
|
11
|
-
let
|
12
|
+
let Overbreath = class Overbreath extends GodownElement {
|
12
13
|
constructor() {
|
13
14
|
super(...arguments);
|
14
15
|
/**
|
@@ -30,7 +31,7 @@ let OverbreathText = class OverbreathText extends GodownElement {
|
|
30
31
|
</span>`;
|
31
32
|
}
|
32
33
|
};
|
33
|
-
|
34
|
+
Overbreath.styles = [
|
34
35
|
GodownElement.styles,
|
35
36
|
css `
|
36
37
|
:host {
|
@@ -210,16 +211,16 @@ OverbreathText.styles = [
|
|
210
211
|
];
|
211
212
|
__decorate([
|
212
213
|
property()
|
213
|
-
],
|
214
|
+
], Overbreath.prototype, "t1", void 0);
|
214
215
|
__decorate([
|
215
216
|
property()
|
216
|
-
],
|
217
|
+
], Overbreath.prototype, "t2", void 0);
|
217
218
|
__decorate([
|
218
219
|
property()
|
219
|
-
],
|
220
|
-
|
220
|
+
], Overbreath.prototype, "t3", void 0);
|
221
|
+
Overbreath = __decorate([
|
221
222
|
define(defineName)
|
222
|
-
],
|
223
|
-
export {
|
224
|
-
export default
|
225
|
-
//# sourceMappingURL=overbreath
|
223
|
+
], Overbreath);
|
224
|
+
export { Overbreath };
|
225
|
+
export default Overbreath;
|
226
|
+
//# sourceMappingURL=overbreath.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"overbreath.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/overbreath.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAuB,IAAI,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1E,MAAM,UAAU,GAAG,YAAY,CAAC;AAChC,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAE5C;;;;GAIG;AAEI,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,aAAa;IAAtC;;QACL;;WAEG;QACS,OAAE,GAAG,EAAE,CAAC;QACpB,SAAS;QACG,OAAE,GAAG,EAAE,CAAC;QACpB,SAAS;QACG,OAAE,GAAG,EAAE,CAAC;IA+LtB,CAAC;IAVW,MAAM;QACd,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAES,UAAU,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAA;yBACU,IAAI;yBACJ,IAAI;YACjB,CAAC;IACX,CAAC;;AA5LM,iBAAM,GAAG;IACd,aAAa,CAAC,MAAM;IACpB,GAAG,CAAA;;UAEG,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW;UACX,WAAW,4BAA4B,WAAW,eAAe,WAAW,eAAe,WAAW;UACtG,WAAW,4BAA4B,WAAW,eAAe,WAAW,eAAe,WAAW;UACtG,WAAW,4BAA4B,WAAW,eAAe,WAAW,eAAe,WAAW;;KAE3G;IACD,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA2CyB,WAAW;;;;;gCAKX,WAAW;;;;;gCAKX,WAAW;;;;;;;;;;;;;;KActC;IACD,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+EF;IACD,GAAG,CAAA;;UAEG,WAAW,0BAA0B,MAAM;0BAC3B,WAAW;;;;;;;;;KAShC;CACgB,AAjLN,CAiLO;AAvLR;IAAX,QAAQ,EAAE;sCAAS;AAER;IAAX,QAAQ,EAAE;sCAAS;AAER;IAAX,QAAQ,EAAE;sCAAS;AART,UAAU;IADtB,MAAM,CAAC,UAAU,CAAC;GACN,UAAU,CAuMtB;;AAED,eAAe,UAAU,CAAC","sourcesContent":["import { css, type CSSResultGroup, html, property } from \"../../.deps.js\";\nimport { define } from \"../../decorators/define.js\";\nimport { type HTMLTemplate } from \"../../lib/templates.js\";\nimport { createScope, cssvar, GodownElement } from \"../../supers/root.js\";\n\nconst defineName = \"overbreath\";\nconst cssvarScope = createScope(defineName);\n\n/**\n * {@linkcode Overbreath} renders three animated pieces of text.\n *\n * Inspired by Vercel homepage (2022? - 2023).\n */\n@define(defineName)\nexport class Overbreath extends GodownElement {\n /**\n * One of the texts.\n */\n @property() t1 = \"\";\n // As t1.\n @property() t2 = \"\";\n // As t2.\n @property() t3 = \"\";\n\n static styles = [\n GodownElement.styles,\n css`\n :host {\n ${cssvarScope}--1-1: #ae0ca5;\n ${cssvarScope}--1-2: #ffd802;\n ${cssvarScope}--2-1: #1fe173;\n ${cssvarScope}--2-2: #582bca;\n ${cssvarScope}--3-1: #00b4f0;\n ${cssvarScope}--3-2: #e614e6;\n ${cssvarScope}--deg: 60deg;\n ${cssvarScope}--1: linear-gradient(var(${cssvarScope}--deg), var(${cssvarScope}--1-1), var(${cssvarScope}--1-2));\n ${cssvarScope}--2: linear-gradient(var(${cssvarScope}--deg), var(${cssvarScope}--2-1), var(${cssvarScope}--2-2));\n ${cssvarScope}--3: linear-gradient(var(${cssvarScope}--deg), var(${cssvarScope}--3-1), var(${cssvarScope}--3-2));\n }\n `,\n css`\n :host {\n display: flex;\n margin: auto;\n width: fit-content;\n font-size: clamp(3.5rem, 10vw, 5.5rem);\n align-items: center;\n }\n\n @media (max-width: 1280px) {\n :host {\n flex-direction: column;\n }\n }\n\n *::selection {\n background: none;\n }\n\n .fg,\n .bg {\n padding: 0 0.05em;\n box-sizing: border-box;\n }\n\n .bg {\n position: absolute;\n top: 0;\n }\n\n span {\n display: block;\n }\n\n .rel {\n position: relative;\n font-weight: 800;\n font-size: inherit;\n letter-spacing: -0.05em;\n }\n\n .rel:nth-child(1) .fg {\n animation: lg1 8s infinite;\n background-image: var(${cssvarScope}--1);\n }\n\n .rel:nth-child(2) .fg {\n animation: 8s infinite lg2;\n background-image: var(${cssvarScope}--2);\n }\n\n .rel:nth-child(3) .fg {\n animation: 8s infinite lg3;\n background-image: var(${cssvarScope}--3);\n }\n\n .rel:nth-child(1) .bg {\n animation: text1 8s infinite;\n }\n\n .rel:nth-child(2) .bg {\n animation: text2 8s infinite;\n }\n\n .rel:nth-child(3) .bg {\n animation: text3 8s infinite;\n }\n `,\n css`\n @keyframes lg1 {\n 0%,\n 16.667%,\n to {\n opacity: 1;\n }\n 33.333%,\n 83.333% {\n opacity: 0;\n }\n }\n\n @keyframes lg2 {\n 0%,\n to {\n opacity: 0;\n }\n 33.333%,\n 50% {\n opacity: 1;\n }\n 16.667%,\n 66.667% {\n opacity: 0;\n }\n }\n\n @keyframes lg3 {\n 0%,\n 50%,\n to {\n opacity: 0;\n }\n 66.667%,\n 83.333% {\n opacity: 1;\n }\n }\n\n @keyframes text1 {\n 0%,\n 16.667%,\n to {\n opacity: 0;\n }\n 25%,\n 91.667% {\n opacity: 1;\n }\n }\n\n @keyframes text2 {\n 0%,\n to {\n opacity: 1;\n }\n 33.333%,\n 50% {\n opacity: 0;\n }\n 25%,\n 58.333% {\n opacity: 1;\n }\n }\n\n @keyframes text3 {\n 0%,\n 58.333%,\n 91.667%,\n to {\n opacity: 1;\n }\n 66.667%,\n 83.333% {\n opacity: 0;\n }\n }\n `,\n css`\n span.bg {\n ${cssvarScope}--clip-background: var(${cssvar}--clip-background);\n background: var(${cssvarScope}--clip-background);\n }\n span {\n color: transparent;\n -webkit-text-fill-color: transparent;\n background-clip: text !important;\n -webkit-background-clip: text !important;\n display: inline-flex;\n }\n `,\n ] as CSSResultGroup;\n\n protected render(): HTMLTemplate[] {\n return [this.t1, this.t2, this.t3].map(this.renderText);\n }\n\n protected renderText(text: string): HTMLTemplate {\n return html`<span class=\"rel\">\n <span class=\"bg\">${text}</span>\n <span class=\"fg\">${text}</span>\n </span>`;\n }\n}\n\nexport default Overbreath;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"overbreath-text\": Overbreath;\n \"g-overbreath\": Overbreath;\n }\n}\n"]}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
import { type CSSResultGroup } from "../../.deps.js";
|
2
|
+
import { GodownElement } from "../../supers/root.js";
|
3
|
+
/**
|
4
|
+
* {@linkcode Time} renders a formatting time.
|
5
|
+
*/
|
6
|
+
export declare class Time extends GodownElement {
|
7
|
+
/**
|
8
|
+
* Cancels the next character formatting.
|
9
|
+
*/
|
10
|
+
escape: string;
|
11
|
+
/**
|
12
|
+
* Format strings.
|
13
|
+
* {@linkcode Time.fmt}
|
14
|
+
*/
|
15
|
+
format: string;
|
16
|
+
/**
|
17
|
+
* Display content.
|
18
|
+
*/
|
19
|
+
value: string;
|
20
|
+
/**
|
21
|
+
* Time.
|
22
|
+
*/
|
23
|
+
time: Date;
|
24
|
+
/**
|
25
|
+
* If there is a value, update every gap or timeout.
|
26
|
+
*/
|
27
|
+
timeout: number;
|
28
|
+
/**
|
29
|
+
* The number of milliseconds that change with each update.
|
30
|
+
*/
|
31
|
+
gap: number;
|
32
|
+
intervalID: number;
|
33
|
+
static styles: CSSResultGroup;
|
34
|
+
protected render(): string;
|
35
|
+
protected firstUpdated(): void;
|
36
|
+
disconnectedCallback(): void;
|
37
|
+
/**
|
38
|
+
* Y for year\
|
39
|
+
* M for month\
|
40
|
+
* D for day\
|
41
|
+
* h for hour\
|
42
|
+
* m for minute\
|
43
|
+
* s for second\
|
44
|
+
* S for milli Second\
|
45
|
+
* Z for time zone.
|
46
|
+
*
|
47
|
+
* @param fm Format string.
|
48
|
+
* @param tm Time.
|
49
|
+
* @returns Format result
|
50
|
+
*/
|
51
|
+
static fmt(fm: string, tm: Date, em: string): string;
|
52
|
+
}
|
53
|
+
export default Time;
|
54
|
+
declare global {
|
55
|
+
interface HTMLElementTagNameMap {
|
56
|
+
"time-bar": Time;
|
57
|
+
"g-time": Time;
|
58
|
+
}
|
59
|
+
}
|
60
|
+
//# sourceMappingURL=time.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"time.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,cAAc,EAAY,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAIrD;;GAEG;AACH,qBACa,IAAK,SAAQ,aAAa;IACrC;;OAEG;IACS,MAAM,SAAO;IACzB;;;OAGG;IACS,MAAM,SAA8B;IAChD;;OAEG;IACS,KAAK,SAAM;IACvB;;OAEG;IACyB,IAAI,OAAc;IAC9C;;OAEG;IACyB,OAAO,SAAK;IACxC;;OAEG;IACyB,GAAG,SAAK;IAEpC,UAAU,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,MAAM,EAAE,cAAc,CAM3B;IAEF,SAAS,CAAC,MAAM,IAAI,MAAM;IAI1B,SAAS,CAAC,YAAY;IAQtB,oBAAoB;IAIpB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;CA6CrD;AAED,eAAe,IAAI,CAAC;AAEpB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,IAAI,CAAC;QACjB,QAAQ,EAAE,IAAI,CAAC;KAChB;CACF"}
|
@@ -1,17 +1,22 @@
|
|
1
|
-
var
|
1
|
+
var Time_1;
|
2
2
|
import { __decorate } from "tslib";
|
3
|
-
import { css, property } from "
|
4
|
-
import { define
|
5
|
-
|
3
|
+
import { css, property } from "../../.deps.js";
|
4
|
+
import { define } from "../../decorators/define.js";
|
5
|
+
import { GodownElement } from "../../supers/root.js";
|
6
|
+
const defineName = "time";
|
6
7
|
/**
|
7
|
-
*
|
8
|
+
* {@linkcode Time} renders a formatting time.
|
8
9
|
*/
|
9
|
-
let
|
10
|
+
let Time = Time_1 = class Time extends GodownElement {
|
10
11
|
constructor() {
|
11
12
|
super(...arguments);
|
13
|
+
/**
|
14
|
+
* Cancels the next character formatting.
|
15
|
+
*/
|
16
|
+
this.escape = "%";
|
12
17
|
/**
|
13
18
|
* Format strings.
|
14
|
-
* {@linkcode
|
19
|
+
* {@linkcode Time.fmt}
|
15
20
|
*/
|
16
21
|
this.format = "YYYY-MM-DD hh:mm:ss UTFZ";
|
17
22
|
/**
|
@@ -32,7 +37,7 @@ let TimeBar = TimeBar_1 = class TimeBar extends GodownElement {
|
|
32
37
|
this.gap = 0;
|
33
38
|
}
|
34
39
|
render() {
|
35
|
-
return this.value ||
|
40
|
+
return this.value || Time_1.fmt(this.format, this.time, this.escape);
|
36
41
|
}
|
37
42
|
firstUpdated() {
|
38
43
|
if (this.timeout) {
|
@@ -45,28 +50,35 @@ let TimeBar = TimeBar_1 = class TimeBar extends GodownElement {
|
|
45
50
|
clearInterval(this.intervalID);
|
46
51
|
}
|
47
52
|
/**
|
53
|
+
* Y for year\
|
54
|
+
* M for month\
|
55
|
+
* D for day\
|
56
|
+
* h for hour\
|
57
|
+
* m for minute\
|
58
|
+
* s for second\
|
59
|
+
* S for milli Second\
|
60
|
+
* Z for time zone.
|
61
|
+
*
|
48
62
|
* @param fm Format string.
|
49
63
|
* @param tm Time.
|
50
|
-
* @returns
|
51
|
-
*
|
52
|
-
* Y for years\
|
53
|
-
* M for months\
|
54
|
-
* D for days\
|
55
|
-
* h for hours\
|
56
|
-
* m for minutes\
|
57
|
-
* s for seconds\
|
58
|
-
* Z for time zones.
|
64
|
+
* @returns Format result
|
59
65
|
*/
|
60
|
-
static fmt(fm, tm) {
|
61
|
-
if (fm
|
66
|
+
static fmt(fm, tm, em) {
|
67
|
+
if (!fm) {
|
62
68
|
return fm;
|
63
69
|
}
|
70
|
+
if (isNaN(tm.getTime())) {
|
71
|
+
return undefined;
|
72
|
+
}
|
64
73
|
const rest = [];
|
65
|
-
|
74
|
+
const replaced = `${em}${em}`;
|
75
|
+
fm = fm.replace(new RegExp(`${em}([ZYMDhmsS${em}])`, "g"), (_, p1) => {
|
66
76
|
rest.push(p1);
|
67
|
-
return
|
77
|
+
return replaced;
|
68
78
|
});
|
69
|
-
|
79
|
+
function formatNumber(n, max = 2) {
|
80
|
+
return n.toString().padStart(max, "0").split("");
|
81
|
+
}
|
70
82
|
const z = tm.getTimezoneOffset() / -60;
|
71
83
|
const switcher = {
|
72
84
|
Z: [z >= 0 ? "+" + z.toString() : z.toString()],
|
@@ -76,11 +88,13 @@ let TimeBar = TimeBar_1 = class TimeBar extends GodownElement {
|
|
76
88
|
h: formatNumber(tm.getHours()),
|
77
89
|
m: formatNumber(tm.getMinutes()),
|
78
90
|
s: formatNumber(tm.getSeconds()),
|
91
|
+
S: formatNumber(tm.getMilliseconds(), 3),
|
79
92
|
};
|
80
93
|
const result = [];
|
81
94
|
for (const f of fm.split("").reverse()) {
|
82
|
-
|
83
|
-
|
95
|
+
const s = switcher[f]?.pop();
|
96
|
+
if (s) {
|
97
|
+
result.push(s);
|
84
98
|
}
|
85
99
|
else {
|
86
100
|
result.push(f);
|
@@ -89,12 +103,12 @@ let TimeBar = TimeBar_1 = class TimeBar extends GodownElement {
|
|
89
103
|
return result
|
90
104
|
.reverse()
|
91
105
|
.join("")
|
92
|
-
.replace(
|
106
|
+
.replace(new RegExp(replaced, "g"), () => {
|
93
107
|
return rest.shift();
|
94
108
|
});
|
95
109
|
}
|
96
110
|
};
|
97
|
-
|
111
|
+
Time.styles = [
|
98
112
|
css `
|
99
113
|
:host {
|
100
114
|
text-align: center;
|
@@ -103,22 +117,25 @@ TimeBar.styles = [
|
|
103
117
|
];
|
104
118
|
__decorate([
|
105
119
|
property()
|
106
|
-
],
|
120
|
+
], Time.prototype, "escape", void 0);
|
121
|
+
__decorate([
|
122
|
+
property()
|
123
|
+
], Time.prototype, "format", void 0);
|
107
124
|
__decorate([
|
108
125
|
property()
|
109
|
-
],
|
126
|
+
], Time.prototype, "value", void 0);
|
110
127
|
__decorate([
|
111
128
|
property({ type: Object })
|
112
|
-
],
|
129
|
+
], Time.prototype, "time", void 0);
|
113
130
|
__decorate([
|
114
131
|
property({ type: Number })
|
115
|
-
],
|
132
|
+
], Time.prototype, "timeout", void 0);
|
116
133
|
__decorate([
|
117
134
|
property({ type: Number })
|
118
|
-
],
|
119
|
-
|
135
|
+
], Time.prototype, "gap", void 0);
|
136
|
+
Time = Time_1 = __decorate([
|
120
137
|
define(defineName)
|
121
|
-
],
|
122
|
-
export {
|
123
|
-
export default
|
124
|
-
//# sourceMappingURL=time
|
138
|
+
], Time);
|
139
|
+
export { Time };
|
140
|
+
export default Time;
|
141
|
+
//# sourceMappingURL=time.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"time.js","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/time.ts"],"names":[],"mappings":"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","sourcesContent":["import { css, type CSSResultGroup, property } from \"../../.deps.js\";\nimport { define } from \"../../decorators/define.js\";\nimport { GodownElement } from \"../../supers/root.js\";\n\nconst defineName = \"time\";\n\n/**\n * {@linkcode Time} renders a formatting time.\n */\n@define(defineName)\nexport class Time extends GodownElement {\n /**\n * Cancels the next character formatting.\n */\n @property() escape = \"%\";\n /**\n * Format strings.\n * {@linkcode Time.fmt}\n */\n @property() format = \"YYYY-MM-DD hh:mm:ss UTFZ\";\n /**\n * Display content.\n */\n @property() value = \"\";\n /**\n * Time.\n */\n @property({ type: Object }) time = new Date();\n /**\n * If there is a value, update every gap or timeout.\n */\n @property({ type: Number }) timeout = 0;\n /**\n * The number of milliseconds that change with each update.\n */\n @property({ type: Number }) gap = 0;\n\n intervalID: number;\n\n static styles: CSSResultGroup = [\n css`\n :host {\n text-align: center;\n }\n `,\n ];\n\n protected render(): string {\n return this.value || Time.fmt(this.format, this.time, this.escape);\n }\n\n protected firstUpdated() {\n if (this.timeout) {\n this.intervalID = setInterval(() => {\n this.time = new Date(this.time.getTime() + (this.gap || this.timeout));\n }, Math.abs(this.timeout));\n }\n }\n\n disconnectedCallback() {\n clearInterval(this.intervalID);\n }\n\n /**\n * Y for year\\\n * M for month\\\n * D for day\\\n * h for hour\\\n * m for minute\\\n * s for second\\\n * S for milli Second\\\n * Z for time zone.\n *\n * @param fm Format string.\n * @param tm Time.\n * @returns Format result\n */\n static fmt(fm: string, tm: Date, em: string): string {\n if (!fm) {\n return fm;\n }\n if (isNaN(tm.getTime())) {\n return undefined;\n }\n const rest = [];\n const replaced = `${em}${em}`;\n fm = fm.replace(new RegExp(`${em}([ZYMDhmsS${em}])`, \"g\"), (_, p1) => {\n rest.push(p1);\n return replaced;\n });\n\n function formatNumber(n: number, max = 2) {\n return n.toString().padStart(max, \"0\").split(\"\");\n }\n\n const z = tm.getTimezoneOffset() / -60;\n const switcher: Record<string, string[]> = {\n Z: [z >= 0 ? \"+\" + z.toString() : z.toString()],\n Y: tm.getFullYear().toString().split(\"\"),\n M: formatNumber(tm.getMonth() + 1),\n D: formatNumber(tm.getDate()),\n h: formatNumber(tm.getHours()),\n m: formatNumber(tm.getMinutes()),\n s: formatNumber(tm.getSeconds()),\n S: formatNumber(tm.getMilliseconds(), 3),\n };\n const result: string[] = [];\n for (const f of fm.split(\"\").reverse()) {\n const s = switcher[f]?.pop();\n if (s) {\n result.push(s);\n } else {\n result.push(f);\n }\n }\n return result\n .reverse()\n .join(\"\")\n .replace(new RegExp(replaced, \"g\"), () => {\n return rest.shift();\n });\n }\n}\n\nexport default Time;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"time-bar\": Time;\n \"g-time\": Time;\n }\n}\n"]}
|
@@ -1,16 +1,16 @@
|
|
1
|
-
import { type PropertyValueMap } from "
|
1
|
+
import { type PropertyValueMap } from "../../.deps.js";
|
2
2
|
import { type HTMLTemplate } from "../../lib/templates.js";
|
3
|
-
import { GodownElement } from "../../root.js";
|
3
|
+
import { GodownElement } from "../../supers/root.js";
|
4
4
|
/**
|
5
|
-
*
|
5
|
+
* {@linkcode Typewriter} renders a typewriter effect to text.
|
6
6
|
*/
|
7
|
-
export declare class
|
7
|
+
export declare class Typewriter extends GodownElement {
|
8
8
|
/**
|
9
9
|
* Raw text.
|
10
10
|
*/
|
11
11
|
text: string;
|
12
12
|
/**
|
13
|
-
* Start immediately after {@linkcode
|
13
|
+
* Start immediately after {@linkcode Typewriter.firstUpdated}.
|
14
14
|
*/
|
15
15
|
stopped: boolean;
|
16
16
|
/**
|
@@ -40,7 +40,7 @@ export declare class TypewriterText extends GodownElement {
|
|
40
40
|
timeoutID: number;
|
41
41
|
_i: HTMLElement;
|
42
42
|
/**
|
43
|
-
* {@linkcode
|
43
|
+
* {@linkcode Typewriter.text} length.
|
44
44
|
*/
|
45
45
|
get len(): number;
|
46
46
|
static styles: import("lit").CSSResult[];
|
@@ -51,10 +51,11 @@ export declare class TypewriterText extends GodownElement {
|
|
51
51
|
stop(): void;
|
52
52
|
end(): void;
|
53
53
|
}
|
54
|
-
export default
|
54
|
+
export default Typewriter;
|
55
55
|
declare global {
|
56
56
|
interface HTMLElementTagNameMap {
|
57
|
-
"typewriter-text":
|
57
|
+
"typewriter-text": Typewriter;
|
58
|
+
"g-typewriter": Typewriter;
|
58
59
|
}
|
59
60
|
}
|
60
|
-
//# sourceMappingURL=typewriter
|
61
|
+
//# sourceMappingURL=typewriter.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"typewriter.d.ts","sourceRoot":"https://github.com/startracex/godown/tree/main/src/","sources":["web-components/text/typewriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,gBAAgB,EAAgB,MAAM,gBAAgB,CAAC;AAE1F,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAe,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAKlE;;GAEG;AACH,qBACa,UAAW,SAAQ,aAAa;IAC3C;;OAEG;IACS,IAAI,SAAM;IACtB;;OAEG;IAC0B,OAAO,UAAS;IAC7C;;OAEG;IAC0B,KAAK,UAAS;IAC3C;;OAEG;IACyB,GAAG,SAAO;IACtC;;OAEG;IACyB,GAAG,SAAM;IACrC;;OAEG;IACyB,KAAK,SAAK;IACtC;;OAEG;IACyB,KAAK,SAAK;IACtC;;OAEG;IACM,OAAO,SAAM;IAEtB,SAAS,EAAE,MAAM,CAAC;IACN,EAAE,EAAE,WAAW,CAAC;IAE5B;;OAEG;IACH,IAAI,GAAG,WAEN;IAED,MAAM,CAAC,MAAM,4BA+BX;IAEF,SAAS,CAAC,MAAM,IAAI,YAAY;IAIhC,SAAS,CAAC,YAAY;IAStB,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAM3D,KAAK,CAAC,EAAE,SAAa;IAYrB,IAAI;IAIJ,GAAG;CAGJ;AAED,eAAe,UAAU,CAAC;AAE1B,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,UAAU,CAAC;QAC9B,cAAc,EAAE,UAAU,CAAC;KAC5B;CACF"}
|