godown 3.0.0-canary.8 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -9
- package/alert.d.ts +1 -0
- package/alert.d.ts.map +1 -1
- package/alert.js +1 -5
- package/alert.js.map +1 -1
- package/avatar.d.ts +1 -0
- package/avatar.d.ts.map +1 -1
- package/avatar.js +1 -5
- package/avatar.js.map +1 -1
- package/badge.d.ts +9 -0
- package/badge.d.ts.map +1 -0
- package/badge.js +2 -0
- package/badge.js.map +1 -0
- package/breath.js +1 -5
- package/breath.js.map +1 -1
- package/build/godown+lit.iife.js +59 -0
- package/build/godown+lit.iife.js.map +1 -0
- package/build/godown+lit.js +59 -0
- package/build/godown+lit.js.map +1 -0
- package/build/godown+lit.umd.js +59 -0
- package/build/godown+lit.umd.js.map +1 -0
- package/build/godown.iife.js +47 -0
- package/build/godown.js +48 -0
- package/build/godown.js.map +1 -0
- package/build/godown.umd.js +48 -0
- package/build/godown.umd.js.map +1 -0
- package/button.d.ts +1 -0
- package/button.d.ts.map +1 -1
- package/button.js +1 -5
- package/button.js.map +1 -1
- package/card.d.ts +1 -0
- package/card.d.ts.map +1 -1
- package/card.js +1 -5
- package/card.js.map +1 -1
- package/carousel.d.ts +1 -0
- package/carousel.d.ts.map +1 -1
- package/carousel.js +1 -5
- package/carousel.js.map +1 -1
- package/components/alert.d.ts +4 -1
- package/components/alert.d.ts.map +1 -1
- package/components/alert.js +1 -176
- package/components/alert.js.map +1 -1
- package/components/avatar.d.ts +8 -2
- package/components/avatar.d.ts.map +1 -1
- package/components/avatar.js +1 -61
- package/components/avatar.js.map +1 -1
- package/components/badge.d.ts +23 -0
- package/components/badge.d.ts.map +1 -0
- package/components/badge.js +2 -0
- package/components/badge.js.map +1 -0
- package/components/breath.d.ts +7 -4
- package/components/breath.d.ts.map +1 -1
- package/components/breath.js +1 -79
- package/components/breath.js.map +1 -1
- package/components/button.d.ts +19 -10
- package/components/button.d.ts.map +1 -1
- package/components/button.js +1 -165
- package/components/button.js.map +1 -1
- package/components/card.d.ts +3 -2
- package/components/card.d.ts.map +1 -1
- package/components/card.js +1 -53
- package/components/card.js.map +1 -1
- package/components/carousel.d.ts +10 -5
- package/components/carousel.d.ts.map +1 -1
- package/components/carousel.js +1 -112
- package/components/carousel.js.map +1 -1
- package/components/details.d.ts +6 -2
- package/components/details.d.ts.map +1 -1
- package/components/details.js +1 -49
- package/components/details.js.map +1 -1
- package/components/dialog.d.ts +8 -3
- package/components/dialog.d.ts.map +1 -1
- package/components/dialog.js +1 -93
- package/components/dialog.js.map +1 -1
- package/components/divider.d.ts +3 -3
- package/components/divider.d.ts.map +1 -1
- package/components/divider.js +1 -36
- package/components/divider.js.map +1 -1
- package/components/dragbox.d.ts +11 -9
- package/components/dragbox.d.ts.map +1 -1
- package/components/dragbox.js +1 -109
- package/components/dragbox.js.map +1 -1
- package/components/flex.d.ts +4 -1
- package/components/flex.d.ts.map +1 -1
- package/components/flex.js +1 -54
- package/components/flex.js.map +1 -1
- package/components/form.d.ts +3 -3
- package/components/form.d.ts.map +1 -1
- package/components/form.js +1 -77
- package/components/form.js.map +1 -1
- package/components/grid.d.ts +10 -3
- package/components/grid.d.ts.map +1 -1
- package/components/grid.js +1 -55
- package/components/grid.js.map +1 -1
- package/components/heading.d.ts +29 -0
- package/components/heading.d.ts.map +1 -0
- package/components/heading.js +2 -0
- package/components/heading.js.map +1 -0
- package/components/input.d.ts +7 -3
- package/components/input.d.ts.map +1 -1
- package/components/input.js +1 -50
- package/components/input.js.map +1 -1
- package/components/layout.d.ts +8 -9
- package/components/layout.d.ts.map +1 -1
- package/components/layout.js +1 -46
- package/components/layout.js.map +1 -1
- package/components/link.d.ts +8 -1
- package/components/link.d.ts.map +1 -1
- package/components/link.js +1 -42
- package/components/link.js.map +1 -1
- package/components/progress.d.ts +4 -11
- package/components/progress.d.ts.map +1 -1
- package/components/progress.js +1 -67
- package/components/progress.js.map +1 -1
- package/components/range.d.ts +22 -15
- package/components/range.d.ts.map +1 -1
- package/components/range.js +1 -273
- package/components/range.js.map +1 -1
- package/components/rotate.d.ts +4 -2
- package/components/rotate.d.ts.map +1 -1
- package/components/rotate.js +1 -56
- package/components/rotate.js.map +1 -1
- package/components/router.d.ts +20 -24
- package/components/router.d.ts.map +1 -1
- package/components/router.js +1 -250
- package/components/router.js.map +1 -1
- package/components/select.d.ts +8 -4
- package/components/select.d.ts.map +1 -1
- package/components/select.js +1 -212
- package/components/select.js.map +1 -1
- package/components/skeleton.d.ts +3 -1
- package/components/skeleton.d.ts.map +1 -1
- package/components/skeleton.js +1 -54
- package/components/skeleton.js.map +1 -1
- package/components/split.d.ts +25 -2
- package/components/split.d.ts.map +1 -1
- package/components/split.js +1 -128
- package/components/split.js.map +1 -1
- package/components/switch.d.ts +8 -5
- package/components/switch.d.ts.map +1 -1
- package/components/switch.js +1 -92
- package/components/switch.js.map +1 -1
- package/components/text.d.ts +3 -1
- package/components/text.d.ts.map +1 -1
- package/components/text.js +1 -43
- package/components/text.js.map +1 -1
- package/components/time.d.ts +8 -6
- package/components/time.d.ts.map +1 -1
- package/components/time.js +1 -85
- package/components/time.js.map +1 -1
- package/components/tooltip.d.ts +14 -2
- package/components/tooltip.d.ts.map +1 -1
- package/components/tooltip.js +1 -66
- package/components/tooltip.js.map +1 -1
- package/components/typewriter.d.ts +8 -14
- package/components/typewriter.d.ts.map +1 -1
- package/components/typewriter.js +1 -129
- package/components/typewriter.js.map +1 -1
- package/core/global-style.d.ts +2 -2
- package/core/global-style.d.ts.map +1 -1
- package/core/global-style.js +1 -45
- package/core/global-style.js.map +1 -1
- package/core/super-anchor.d.ts +2 -1
- package/core/super-anchor.d.ts.map +1 -1
- package/core/super-anchor.js +1 -38
- package/core/super-anchor.js.map +1 -1
- package/core/super-input.d.ts +6 -5
- package/core/super-input.d.ts.map +1 -1
- package/core/super-input.js +1 -111
- package/core/super-input.js.map +1 -1
- package/core/super-openable.d.ts +1 -1
- package/core/super-openable.d.ts.map +1 -1
- package/core/super-openable.js +1 -37
- package/core/super-openable.js.map +1 -1
- package/custom-elements.json +1 -1
- package/details.d.ts +1 -0
- package/details.d.ts.map +1 -1
- package/details.js +1 -5
- package/details.js.map +1 -1
- package/dev/alert.d.ts +1 -0
- package/dev/alert.d.ts.map +1 -1
- package/dev/alert.js +1 -0
- package/dev/alert.js.map +1 -1
- package/dev/avatar.d.ts +1 -0
- package/dev/avatar.d.ts.map +1 -1
- package/dev/avatar.js +1 -0
- package/dev/avatar.js.map +1 -1
- package/dev/badge.d.ts +9 -0
- package/dev/badge.d.ts.map +1 -0
- package/dev/badge.js +5 -0
- package/dev/badge.js.map +1 -0
- package/dev/button.d.ts +1 -0
- package/dev/button.d.ts.map +1 -1
- package/dev/button.js +1 -0
- package/dev/button.js.map +1 -1
- package/dev/card.d.ts +1 -0
- package/dev/card.d.ts.map +1 -1
- package/dev/card.js +1 -0
- package/dev/card.js.map +1 -1
- package/dev/carousel.d.ts +1 -0
- package/dev/carousel.d.ts.map +1 -1
- package/dev/carousel.js +1 -0
- package/dev/carousel.js.map +1 -1
- package/dev/components/alert.d.ts +4 -1
- package/dev/components/alert.d.ts.map +1 -1
- package/dev/components/alert.js +20 -23
- package/dev/components/alert.js.map +1 -1
- package/dev/components/avatar.d.ts +8 -2
- package/dev/components/avatar.d.ts.map +1 -1
- package/dev/components/avatar.js +23 -13
- package/dev/components/avatar.js.map +1 -1
- package/dev/components/badge.d.ts +23 -0
- package/dev/components/badge.d.ts.map +1 -0
- package/dev/components/badge.js +107 -0
- package/dev/components/badge.js.map +1 -0
- package/dev/components/breath.d.ts +7 -4
- package/dev/components/breath.d.ts.map +1 -1
- package/dev/components/breath.js +30 -26
- package/dev/components/breath.js.map +1 -1
- package/dev/components/button.d.ts +19 -10
- package/dev/components/button.d.ts.map +1 -1
- package/dev/components/button.js +47 -28
- package/dev/components/button.js.map +1 -1
- package/dev/components/card.d.ts +3 -2
- package/dev/components/card.d.ts.map +1 -1
- package/dev/components/card.js +23 -33
- package/dev/components/card.js.map +1 -1
- package/dev/components/carousel.d.ts +10 -5
- package/dev/components/carousel.d.ts.map +1 -1
- package/dev/components/carousel.js +33 -26
- package/dev/components/carousel.js.map +1 -1
- package/dev/components/details.d.ts +6 -2
- package/dev/components/details.d.ts.map +1 -1
- package/dev/components/details.js +24 -26
- package/dev/components/details.js.map +1 -1
- package/dev/components/dialog.d.ts +8 -3
- package/dev/components/dialog.d.ts.map +1 -1
- package/dev/components/dialog.js +21 -17
- package/dev/components/dialog.js.map +1 -1
- package/dev/components/divider.d.ts +3 -3
- package/dev/components/divider.d.ts.map +1 -1
- package/dev/components/divider.js +29 -17
- package/dev/components/divider.js.map +1 -1
- package/dev/components/dragbox.d.ts +11 -9
- package/dev/components/dragbox.d.ts.map +1 -1
- package/dev/components/dragbox.js +11 -4
- package/dev/components/dragbox.js.map +1 -1
- package/dev/components/flex.d.ts +4 -1
- package/dev/components/flex.d.ts.map +1 -1
- package/dev/components/flex.js +25 -9
- package/dev/components/flex.js.map +1 -1
- package/dev/components/form.d.ts +3 -3
- package/dev/components/form.d.ts.map +1 -1
- package/dev/components/form.js +2 -5
- package/dev/components/form.js.map +1 -1
- package/dev/components/grid.d.ts +10 -3
- package/dev/components/grid.d.ts.map +1 -1
- package/dev/components/grid.js +18 -10
- package/dev/components/grid.js.map +1 -1
- package/dev/components/heading.d.ts +29 -0
- package/dev/components/heading.d.ts.map +1 -0
- package/dev/components/heading.js +103 -0
- package/dev/components/heading.js.map +1 -0
- package/dev/components/input.d.ts +7 -3
- package/dev/components/input.d.ts.map +1 -1
- package/dev/components/input.js +18 -18
- package/dev/components/input.js.map +1 -1
- package/dev/components/layout.d.ts +8 -9
- package/dev/components/layout.d.ts.map +1 -1
- package/dev/components/layout.js +38 -25
- package/dev/components/layout.js.map +1 -1
- package/dev/components/link.d.ts +8 -1
- package/dev/components/link.d.ts.map +1 -1
- package/dev/components/link.js +15 -3
- package/dev/components/link.js.map +1 -1
- package/dev/components/progress.d.ts +4 -11
- package/dev/components/progress.d.ts.map +1 -1
- package/dev/components/progress.js +43 -49
- package/dev/components/progress.js.map +1 -1
- package/dev/components/range.d.ts +22 -15
- package/dev/components/range.d.ts.map +1 -1
- package/dev/components/range.js +56 -61
- package/dev/components/range.js.map +1 -1
- package/dev/components/rotate.d.ts +4 -2
- package/dev/components/rotate.d.ts.map +1 -1
- package/dev/components/rotate.js +3 -5
- package/dev/components/rotate.js.map +1 -1
- package/dev/components/router.d.ts +20 -24
- package/dev/components/router.d.ts.map +1 -1
- package/dev/components/router.js +23 -36
- package/dev/components/router.js.map +1 -1
- package/dev/components/select.d.ts +8 -4
- package/dev/components/select.d.ts.map +1 -1
- package/dev/components/select.js +44 -32
- package/dev/components/select.js.map +1 -1
- package/dev/components/skeleton.d.ts +3 -1
- package/dev/components/skeleton.d.ts.map +1 -1
- package/dev/components/skeleton.js +9 -9
- package/dev/components/skeleton.js.map +1 -1
- package/dev/components/split.d.ts +25 -2
- package/dev/components/split.d.ts.map +1 -1
- package/dev/components/split.js +71 -38
- package/dev/components/split.js.map +1 -1
- package/dev/components/switch.d.ts +8 -5
- package/dev/components/switch.d.ts.map +1 -1
- package/dev/components/switch.js +28 -31
- package/dev/components/switch.js.map +1 -1
- package/dev/components/text.d.ts +3 -1
- package/dev/components/text.d.ts.map +1 -1
- package/dev/components/text.js +12 -15
- package/dev/components/text.js.map +1 -1
- package/dev/components/time.d.ts +8 -6
- package/dev/components/time.d.ts.map +1 -1
- package/dev/components/time.js +8 -14
- package/dev/components/time.js.map +1 -1
- package/dev/components/tooltip.d.ts +14 -2
- package/dev/components/tooltip.d.ts.map +1 -1
- package/dev/components/tooltip.js +54 -24
- package/dev/components/tooltip.js.map +1 -1
- package/dev/components/typewriter.d.ts +8 -14
- package/dev/components/typewriter.d.ts.map +1 -1
- package/dev/components/typewriter.js +22 -37
- package/dev/components/typewriter.js.map +1 -1
- package/dev/core/global-style.d.ts +2 -2
- package/dev/core/global-style.d.ts.map +1 -1
- package/dev/core/global-style.js +18 -14
- package/dev/core/global-style.js.map +1 -1
- package/dev/core/super-anchor.d.ts +2 -1
- package/dev/core/super-anchor.d.ts.map +1 -1
- package/dev/core/super-anchor.js +25 -23
- package/dev/core/super-anchor.js.map +1 -1
- package/dev/core/super-input.d.ts +6 -5
- package/dev/core/super-input.d.ts.map +1 -1
- package/dev/core/super-input.js +43 -36
- package/dev/core/super-input.js.map +1 -1
- package/dev/core/super-openable.d.ts +1 -1
- package/dev/core/super-openable.d.ts.map +1 -1
- package/dev/core/super-openable.js +2 -2
- package/dev/core/super-openable.js.map +1 -1
- package/dev/details.d.ts +1 -0
- package/dev/details.d.ts.map +1 -1
- package/dev/details.js +1 -0
- package/dev/details.js.map +1 -1
- package/dev/dialog.d.ts +1 -0
- package/dev/dialog.d.ts.map +1 -1
- package/dev/dialog.js +1 -0
- package/dev/dialog.js.map +1 -1
- package/dev/divider.d.ts +1 -0
- package/dev/divider.d.ts.map +1 -1
- package/dev/divider.js +1 -0
- package/dev/divider.js.map +1 -1
- package/dev/dragbox.d.ts +1 -0
- package/dev/dragbox.d.ts.map +1 -1
- package/dev/dragbox.js +1 -0
- package/dev/dragbox.js.map +1 -1
- package/dev/flex.d.ts +1 -0
- package/dev/flex.d.ts.map +1 -1
- package/dev/flex.js +1 -0
- package/dev/flex.js.map +1 -1
- package/dev/form.d.ts +1 -0
- package/dev/form.d.ts.map +1 -1
- package/dev/form.js +1 -0
- package/dev/form.js.map +1 -1
- package/dev/grid.d.ts +1 -0
- package/dev/grid.d.ts.map +1 -1
- package/dev/grid.js +1 -0
- package/dev/grid.js.map +1 -1
- package/dev/heading.d.ts +9 -0
- package/dev/heading.d.ts.map +1 -0
- package/dev/heading.js +5 -0
- package/dev/heading.js.map +1 -0
- package/dev/index.d.ts +2 -0
- package/dev/index.d.ts.map +1 -1
- package/dev/index.js +2 -0
- package/dev/index.js.map +1 -1
- package/dev/layout.d.ts.map +1 -1
- package/dev/progress.d.ts.map +1 -1
- package/dev/router.d.ts.map +1 -1
- package/dev/split.d.ts +1 -1
- package/dev/split.d.ts.map +1 -1
- package/dev/typewriter.d.ts +1 -0
- package/dev/typewriter.d.ts.map +1 -1
- package/dev/typewriter.js +1 -0
- package/dev/typewriter.js.map +1 -1
- package/dialog.d.ts +1 -0
- package/dialog.d.ts.map +1 -1
- package/dialog.js +1 -5
- package/dialog.js.map +1 -1
- package/divider.d.ts +1 -0
- package/divider.d.ts.map +1 -1
- package/divider.js +1 -5
- package/divider.js.map +1 -1
- package/dragbox.d.ts +1 -0
- package/dragbox.d.ts.map +1 -1
- package/dragbox.js +1 -5
- package/dragbox.js.map +1 -1
- package/flex.d.ts +1 -0
- package/flex.d.ts.map +1 -1
- package/flex.js +1 -5
- package/flex.js.map +1 -1
- package/form.d.ts +1 -0
- package/form.d.ts.map +1 -1
- package/form.js +1 -5
- package/form.js.map +1 -1
- package/grid.d.ts +1 -0
- package/grid.d.ts.map +1 -1
- package/grid.js +1 -5
- package/grid.js.map +1 -1
- package/heading.d.ts +9 -0
- package/heading.d.ts.map +1 -0
- package/heading.js +2 -0
- package/heading.js.map +1 -0
- package/index.d.ts +2 -0
- package/index.d.ts.map +1 -1
- package/index.js +1 -56
- package/index.js.map +1 -1
- package/input.js +1 -5
- package/input.js.map +1 -1
- package/layout.d.ts.map +1 -1
- package/layout.js +1 -5
- package/layout.js.map +1 -1
- package/link.js +1 -5
- package/link.js.map +1 -1
- package/package.json +11 -6
- package/progress.d.ts.map +1 -1
- package/progress.js +1 -5
- package/progress.js.map +1 -1
- package/range.js +1 -5
- package/range.js.map +1 -1
- package/rotate.js +1 -5
- package/rotate.js.map +1 -1
- package/router.d.ts.map +1 -1
- package/router.js +1 -5
- package/router.js.map +1 -1
- package/select.js +1 -5
- package/select.js.map +1 -1
- package/skeleton.js +1 -5
- package/skeleton.js.map +1 -1
- package/split.d.ts +1 -1
- package/split.d.ts.map +1 -1
- package/split.js +1 -5
- package/split.js.map +1 -1
- package/src/alert.ts +2 -0
- package/src/avatar.ts +2 -0
- package/src/badge.ts +13 -0
- package/src/button.ts +2 -0
- package/src/card.ts +2 -0
- package/src/carousel.ts +2 -0
- package/src/components/alert.ts +26 -29
- package/src/components/avatar.ts +28 -17
- package/src/components/badge.ts +107 -0
- package/src/components/breath.ts +38 -31
- package/src/components/button.ts +55 -46
- package/src/components/card.ts +26 -34
- package/src/components/carousel.ts +48 -38
- package/src/components/details.ts +27 -28
- package/src/components/dialog.ts +30 -26
- package/src/components/divider.ts +29 -17
- package/src/components/dragbox.ts +25 -19
- package/src/components/flex.ts +26 -11
- package/src/components/form.ts +7 -9
- package/src/components/grid.ts +31 -13
- package/src/components/heading.ts +105 -0
- package/src/components/input.ts +23 -22
- package/src/components/layout.ts +26 -31
- package/src/components/link.ts +15 -4
- package/src/components/progress.ts +51 -52
- package/src/components/range.ts +82 -94
- package/src/components/rotate.ts +12 -11
- package/src/components/router.ts +59 -48
- package/src/components/select.ts +59 -47
- package/src/components/skeleton.ts +13 -11
- package/src/components/split.ts +90 -49
- package/src/components/switch.ts +38 -37
- package/src/components/text.ts +14 -21
- package/src/components/time.ts +20 -14
- package/src/components/tooltip.ts +54 -29
- package/src/components/typewriter.ts +41 -47
- package/src/core/global-style.ts +33 -19
- package/src/core/super-anchor.ts +30 -26
- package/src/core/super-input.ts +54 -54
- package/src/core/super-openable.ts +7 -7
- package/src/details.ts +2 -0
- package/src/dialog.ts +2 -0
- package/src/divider.ts +2 -0
- package/src/dragbox.ts +2 -0
- package/src/flex.ts +2 -0
- package/src/form.ts +2 -0
- package/src/grid.ts +2 -0
- package/src/heading.ts +13 -0
- package/src/index.ts +2 -0
- package/src/layout.ts +1 -0
- package/src/progress.ts +1 -0
- package/src/router.ts +1 -0
- package/src/split.ts +1 -1
- package/src/typewriter.ts +2 -0
- package/switch.js +1 -5
- package/switch.js.map +1 -1
- package/text.js +1 -5
- package/text.js.map +1 -1
- package/time.js +1 -5
- package/time.js.map +1 -1
- package/tooltip.js +1 -5
- package/tooltip.js.map +1 -1
- package/typewriter.d.ts +1 -0
- package/typewriter.d.ts.map +1 -1
- package/typewriter.js +1 -5
- package/typewriter.js.map +1 -1
- package/vscode.html-custom-data.json +1 -1
- package/web-types.json +1 -1
package/components/select.js
CHANGED
@@ -1,213 +1,2 @@
|
|
1
|
-
import {
|
2
|
-
import { godown } from '@godown/element/decorators/godown.js';
|
3
|
-
import { part } from '@godown/element/decorators/part.js';
|
4
|
-
import { styles } from '@godown/element/decorators/styles.js';
|
5
|
-
import { htmlSlot } from '@godown/element/directives/html-slot.js';
|
6
|
-
import svgCaretDown from '@godown/f7-icon/icons/chevron-down.js';
|
7
|
-
import { css, html, nothing } from 'lit';
|
8
|
-
import { property, state } from 'lit/decorators.js';
|
9
|
-
import { ifDefined } from 'lit/directives/if-defined.js';
|
10
|
-
import Input from './input.js';
|
11
|
-
|
12
|
-
function contain(a, b) {
|
13
|
-
return a && b && a.toLowerCase().includes(b.toLowerCase());
|
14
|
-
}
|
15
|
-
function betweenAt(i, s, c) {
|
16
|
-
const start = s.slice(0, i).lastIndexOf(c) + 1 || 0;
|
17
|
-
const end = s.indexOf(c, i) || s.length;
|
18
|
-
return s.slice(start, end);
|
19
|
-
}
|
20
|
-
function updateChecked(element, operation) {
|
21
|
-
if (element) {
|
22
|
-
const name = "checked";
|
23
|
-
if (operation) {
|
24
|
-
element.setAttribute(name, "");
|
25
|
-
}
|
26
|
-
else {
|
27
|
-
element.removeAttribute(name);
|
28
|
-
}
|
29
|
-
}
|
30
|
-
}
|
31
|
-
const protoName = "select";
|
32
|
-
/**
|
33
|
-
* {@linkcode Select} is similar to `<select>`.
|
34
|
-
*
|
35
|
-
* Elements with the value attribute/property can be used as options.
|
36
|
-
*
|
37
|
-
* The checked attribute will be added to the selected element.
|
38
|
-
*
|
39
|
-
* Multi-selected state looks the same as single-selected.
|
40
|
-
*
|
41
|
-
* Input will filter the element.
|
42
|
-
*
|
43
|
-
* @slot - Options.
|
44
|
-
* @category input
|
45
|
-
*/
|
46
|
-
let Select = class Select extends Input {
|
47
|
-
constructor() {
|
48
|
-
super(...arguments);
|
49
|
-
this._cache = new WeakMap();
|
50
|
-
this.autoDirection = "bottom";
|
51
|
-
this._store = [];
|
52
|
-
}
|
53
|
-
render() {
|
54
|
-
return html `<div part="root" class="input-field">${[
|
55
|
-
this._renderPrefix(),
|
56
|
-
html `<input part="input" dir="${ifDefined(this.dir)}" id="${this.makeId}" .value="${this.text}" type="${this.type}" placeholder="${this.placeholder || nothing}" ?autofocus="${this.autofocus}" autocapitalize="${this.autocapitalize || nothing}" autocomplete="${this.autocomplete || nothing}" ?disabled="${this.disabled}" @focus="${this._handleFocus}" @input="${this._handleInput}">`,
|
57
|
-
html `<label for="${this.makeId}" part="suffix"><i part="space"></i><i part="icon">${svgCaretDown()}</i><i part="space"></i></label>`,
|
58
|
-
html `<label for="${this.makeId}" part="content" style="visibility:${this.visible ? "visible" : "hidden"}" direction="${this.direction || this.autoDirection}">${htmlSlot()}</label>`,
|
59
|
-
]}</div>`;
|
60
|
-
}
|
61
|
-
_handleFocus() {
|
62
|
-
if (!this.direction) {
|
63
|
-
const { top, bottom } = this.getBoundingClientRect();
|
64
|
-
if (window.innerHeight - bottom < this._content.clientHeight && top > this._content.clientHeight) {
|
65
|
-
this.autoDirection = "top";
|
66
|
-
}
|
67
|
-
else {
|
68
|
-
this.autoDirection = "bottom";
|
69
|
-
}
|
70
|
-
}
|
71
|
-
this.visible = true;
|
72
|
-
}
|
73
|
-
firstUpdated() {
|
74
|
-
this.events.add(this._content, "click", (e) => {
|
75
|
-
e.preventDefault();
|
76
|
-
e.stopPropagation();
|
77
|
-
const { target } = e;
|
78
|
-
const value = this.optionValue(target);
|
79
|
-
if (value) {
|
80
|
-
const operation = this.select(value, target.textContent);
|
81
|
-
if (!this.multiple) {
|
82
|
-
updateChecked(this.lastChecked, 0);
|
83
|
-
}
|
84
|
-
updateChecked(target, operation);
|
85
|
-
this.lastChecked = target;
|
86
|
-
}
|
87
|
-
this._input.focus();
|
88
|
-
});
|
89
|
-
this.events.add(document, "click", (e) => {
|
90
|
-
// e.preventDefault();
|
91
|
-
e.stopPropagation();
|
92
|
-
const composed1 = e.composedPath()[0];
|
93
|
-
if (composed1 && !this.shadowRoot.contains(composed1)) {
|
94
|
-
this.blur();
|
95
|
-
}
|
96
|
-
});
|
97
|
-
}
|
98
|
-
_connectedInit() {
|
99
|
-
if (!this.value) {
|
100
|
-
const checked = [...this.querySelectorAll("[checked]")];
|
101
|
-
const list = this.multiple
|
102
|
-
? checked
|
103
|
-
: checked.length
|
104
|
-
? [this.lastChecked = checked[0]]
|
105
|
-
: [];
|
106
|
-
list.forEach((element) => {
|
107
|
-
const operation = this.select(this.optionValue(element), element.textContent);
|
108
|
-
updateChecked(element, operation);
|
109
|
-
});
|
110
|
-
this.default = this.value;
|
111
|
-
this.defaultText = this.text;
|
112
|
-
this.defaultChecked = checked;
|
113
|
-
}
|
114
|
-
if (!this.text) {
|
115
|
-
this.text = "";
|
116
|
-
}
|
117
|
-
}
|
118
|
-
reset() {
|
119
|
-
this.value = this.default;
|
120
|
-
this.text = this.defaultText;
|
121
|
-
this.querySelectorAll("[checked]").forEach(element => updateChecked(element, 0));
|
122
|
-
this.defaultChecked.forEach(element => updateChecked(element, 1));
|
123
|
-
}
|
124
|
-
select(value, text) {
|
125
|
-
text ||= value;
|
126
|
-
let operation = 0;
|
127
|
-
if (this.multiple) {
|
128
|
-
const i = this._store.findIndex(s => s.value === value);
|
129
|
-
if (i > -1) {
|
130
|
-
this._store.splice(i, 1);
|
131
|
-
}
|
132
|
-
else {
|
133
|
-
this._store.push({ value, text });
|
134
|
-
operation = 1;
|
135
|
-
}
|
136
|
-
this.value = this._store.map(s => s.value);
|
137
|
-
this.text = this._store.map(s => s.text).join(", ");
|
138
|
-
}
|
139
|
-
else {
|
140
|
-
if (this.value === value) {
|
141
|
-
this.value = "";
|
142
|
-
this.text = "";
|
143
|
-
}
|
144
|
-
else {
|
145
|
-
this.value = value;
|
146
|
-
this.text = text;
|
147
|
-
operation = 1;
|
148
|
-
}
|
149
|
-
}
|
150
|
-
this.dispatchEvent(new CustomEvent("change", { detail: this.namevalue() }));
|
151
|
-
this.filter();
|
152
|
-
return operation;
|
153
|
-
}
|
154
|
-
filter(query) {
|
155
|
-
query = query?.trim();
|
156
|
-
[...this.children].forEach((element) => {
|
157
|
-
this.filterCallback(element, !query
|
158
|
-
|| contain(this.optionValue(element), query)
|
159
|
-
|| contain(element.textContent, query), query);
|
160
|
-
});
|
161
|
-
}
|
162
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
163
|
-
filterCallback(element, match, query) {
|
164
|
-
element.style.display = match ? "" : "none";
|
165
|
-
}
|
166
|
-
_handleInput(e) {
|
167
|
-
e.stopPropagation();
|
168
|
-
if (this.compositing) {
|
169
|
-
return;
|
170
|
-
}
|
171
|
-
const s = this._input.value;
|
172
|
-
this.filter(this.multiple ? betweenAt(this._input.selectionStart, s, ",") : s);
|
173
|
-
this.dispatchEvent(new CustomEvent("input", { detail: this.namevalue() }));
|
174
|
-
}
|
175
|
-
focus(options) {
|
176
|
-
this._input.focus(options);
|
177
|
-
this.visible = true;
|
178
|
-
}
|
179
|
-
blur() {
|
180
|
-
this._input.blur();
|
181
|
-
this.visible = false;
|
182
|
-
super.blur();
|
183
|
-
}
|
184
|
-
optionValue(option) {
|
185
|
-
return option.value || option.getAttribute("value") || "";
|
186
|
-
}
|
187
|
-
};
|
188
|
-
__decorate([
|
189
|
-
property()
|
190
|
-
], Select.prototype, "text", void 0);
|
191
|
-
__decorate([
|
192
|
-
part("content")
|
193
|
-
], Select.prototype, "_content", void 0);
|
194
|
-
__decorate([
|
195
|
-
property()
|
196
|
-
], Select.prototype, "direction", void 0);
|
197
|
-
__decorate([
|
198
|
-
property({ type: Boolean })
|
199
|
-
], Select.prototype, "multiple", void 0);
|
200
|
-
__decorate([
|
201
|
-
property({ type: Boolean })
|
202
|
-
], Select.prototype, "visible", void 0);
|
203
|
-
__decorate([
|
204
|
-
state()
|
205
|
-
], Select.prototype, "autoDirection", void 0);
|
206
|
-
Select = __decorate([
|
207
|
-
godown(protoName),
|
208
|
-
styles(css `[part=input]{text-overflow:ellipsis}[part=content]{position:absolute;width:100%}[direction=bottom]{top:100%}[direction=top]{bottom:100%}`)
|
209
|
-
], Select);
|
210
|
-
var Select$1 = Select;
|
211
|
-
|
212
|
-
export { Select$1 as default };
|
1
|
+
import{__decorate as t}from"tslib";import{part as e,godown as i,styles as o,attr as s,htmlSlot as n}from"@godown/element";import l from"@godown/f7-icon/icons/chevron-down.js";import{css as h,html as a,nothing as r}from"lit";import{property as c,state as u}from"lit/decorators.js";import p from"./input.js";function d(t,e){return t&&e&&t.toLowerCase().includes(e.toLowerCase())}function f(t,e){if(t){const i="checked";e?t.setAttribute(i,""):t.removeAttribute(i)}}let v=class Select extends p{constructor(){super(...arguments),this.multiple=!1,this.visible=!1,this.autoDirection="bottom",this._store=[]}render(){return a`<div part="root" ${s({...this.observedRecord,direction:this.direction||this.autoDirection})} class="input-field">${[this._renderPrefix(),a`<input part="input" dir="${this.dir||r}" id="${this.makeId}" .value="${this.text}" type="${this.type}" placeholder="${this.placeholder||r}" ?autofocus="${this.autofocus}" autocapitalize="${this.autocapitalize||r}" autocomplete="${this.autocomplete||r}" ?disabled="${this.disabled}" @focus="${this._handleFocus}" @input="${this._handleInput}">`,a`<label for="${this.makeId}" part="suffix"><i part="icon">${l()}</i></label>`,a`<label for="${this.makeId}" part="content">${n()}</label>`]}</div>`}_handleFocus(){if(!this.direction){const{top:t,bottom:e}=this.getBoundingClientRect();window.innerHeight-e<this._content.clientHeight&&t>this._content.clientHeight?this.autoDirection="top":this.autoDirection="bottom"}this.visible=!0}firstUpdated(){this.events.add(this._content,"click",(t=>{t.preventDefault(),t.stopPropagation();const{target:e}=t,i=this.optionValue(e);if(i){const t=this.select(i,e.textContent);this.multiple||f(this.lastChecked,0),f(e,t),this.lastChecked=e}this._input.focus()})),this.events.add(document,"click",(t=>{t.stopPropagation();const e=t.composedPath()[0];e&&!this.shadowRoot.contains(e)&&this.blur()}))}_connectedInit(){if(!this.value){const t=[...this.querySelectorAll("[checked]")];(this.multiple?t:t.length?[this.lastChecked=t[0]]:[]).forEach((t=>{f(t,this.select(this.optionValue(t),t.textContent))})),this.default=this.value,this.defaultText=this.text,this.defaultChecked=t}this.text||(this.text="")}reset(){this.value=this.default,this.text=this.defaultText,this.querySelectorAll("[checked]").forEach((t=>f(t,0))),this.defaultChecked.forEach((t=>f(t,1)))}select(t,e){e||=t;let i=0;if(this.multiple){const o=this._store.findIndex((e=>e.value===t));o>-1?this._store.splice(o,1):(this._store.push({value:t,text:e}),i=1),this.value=this._store.map((t=>t.value)),this.text=this._store.map((t=>t.text)).join(", ")}else this.value===t?(this.value="",this.text=""):(this.value=t,this.text=e,i=1);return this.dispatchEvent(new CustomEvent("select",{detail:this.value,composed:!0})),this.filter(),i}filter(t){t=t?.trim(),[...this.children].forEach((e=>{this.filterCallback(e,!t||d(this.optionValue(e),t)||d(e.textContent,t),t)}))}filterCallback(t,e,i){t.style.display=e?"":"none"}_handleInput(t){if(t.stopPropagation(),this.compositing)return;const e=this._input.value;this.filter(this.multiple?function(t,e,i){const o=e.slice(0,t).lastIndexOf(i)+1||0,s=e.indexOf(i,t)||e.length;return e.slice(o,s)}(this._input.selectionStart,e,","):e),this.dispatchEvent(new CustomEvent("input",{detail:this.value,composed:!0,bubbles:!0})),this.dispatchEvent(new CustomEvent("change",{detail:this.value,composed:!0}))}focus(t){this._input.focus(t),this.visible=!0}blur(){this._input.blur(),this.visible=!1,super.blur()}optionValue(t){return t.value||t.getAttribute("value")||""}};t([c()],v.prototype,"text",void 0),t([e("content")],v.prototype,"_content",void 0),t([c()],v.prototype,"direction",void 0),t([c({type:Boolean})],v.prototype,"multiple",void 0),t([c({type:Boolean})],v.prototype,"visible",void 0),t([u()],v.prototype,"autoDirection",void 0),v=t([i("select"),o(h`[part=input]{text-overflow:ellipsis}[part=content]{position:absolute;width:100%;visibility:hidden}[direction=bottom] [part=content]{top:100%}[direction=top] [part=content]{bottom:100%}[visible] [part=content]{visibility:visible}`)],v);var m=v;export{v as Select,m as default};
|
213
2
|
//# sourceMappingURL=select.js.map
|
package/components/select.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"select.js","sources":["../src/components/select.ts"],"sourcesContent":null,"names":[
|
1
|
+
{"version":3,"file":"select.js","sources":["../src/components/select.ts"],"sourcesContent":null,"names":["contain","a","b","toLowerCase","includes","updateChecked","element","operation","name","setAttribute","removeAttribute","Select","Input","constructor","this","multiple","visible","autoDirection","_store","render","html","attr","observedRecord","direction","_renderPrefix","dir","nothing","makeId","text","type","placeholder","autofocus","autocapitalize","autocomplete","disabled","_handleFocus","_handleInput","svgCaretDown","htmlSlot","top","bottom","getBoundingClientRect","window","innerHeight","_content","clientHeight","firstUpdated","events","add","e","preventDefault","stopPropagation","target","value","optionValue","select","textContent","lastChecked","_input","focus","document","composed1","composedPath","shadowRoot","contains","blur","_connectedInit","checked","querySelectorAll","length","forEach","default","defaultText","defaultChecked","reset","i","findIndex","s","splice","push","map","join","dispatchEvent","CustomEvent","detail","composed","filter","query","trim","children","filterCallback","match","style","display","compositing","c","start","slice","lastIndexOf","end","indexOf","betweenAt","selectionStart","bubbles","options","super","option","getAttribute","__decorate","property","prototype","part","Boolean","state","godown","styles","css","Select$1"],"mappings":"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"}
|
package/components/skeleton.d.ts
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
import { type TemplateResult } from "lit";
|
1
2
|
import { GlobalStyle } from "../core/global-style.js";
|
2
3
|
/**
|
3
4
|
* {@linkcode Skeleton} renders a skeleton screen.
|
@@ -20,7 +21,8 @@ declare class Skeleton extends GlobalStyle {
|
|
20
21
|
* If false, render slot only.
|
21
22
|
*/
|
22
23
|
loading: boolean;
|
23
|
-
protected render():
|
24
|
+
protected render(): TemplateResult<1>;
|
24
25
|
}
|
25
26
|
export default Skeleton;
|
27
|
+
export { Skeleton };
|
26
28
|
//# sourceMappingURL=skeleton.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../src/components/skeleton.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../src/components/skeleton.ts"],"names":[],"mappings":"AAEA,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGrD,OAAO,EAAiB,WAAW,EAAe,MAAM,yBAAyB,CAAC;AAKlF;;;;;;GAMG;AACH,cAIM,QAAS,SAAQ,WAAW;IAChC;;OAEG;IAEH,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAEvB;;;OAGG;IAEH,SAAS,EAAE,UAAU,GAAG,SAAS,CAAc;IAE/C;;OAEG;IAEH,OAAO,UAAQ;IAEf,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;CAMtC;AAED,eAAe,QAAQ,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
package/components/skeleton.js
CHANGED
@@ -1,55 +1,2 @@
|
|
1
|
-
import {
|
2
|
-
import { godown } from '@godown/element/decorators/godown.js';
|
3
|
-
import { styles } from '@godown/element/decorators/styles.js';
|
4
|
-
import { htmlSlot } from '@godown/element/directives/html-slot.js';
|
5
|
-
import iconPhoto from '@godown/f7-icon/icons/photo.js';
|
6
|
-
import { css, html } from 'lit';
|
7
|
-
import { property, state } from 'lit/decorators.js';
|
8
|
-
import { scopePrefix, cssGlobalVars, GlobalStyle } from '../core/global-style.js';
|
9
|
-
|
10
|
-
const protoName = "skeleton";
|
11
|
-
const cssScope = scopePrefix(protoName);
|
12
|
-
/**
|
13
|
-
* {@linkcode Skeleton} renders a skeleton screen.
|
14
|
-
*
|
15
|
-
* @slot loading - The content if loading is true.
|
16
|
-
* @slot - The content if loading is false.
|
17
|
-
* @category feedback
|
18
|
-
*/
|
19
|
-
let Skeleton = class Skeleton extends GlobalStyle {
|
20
|
-
constructor() {
|
21
|
-
super(...arguments);
|
22
|
-
/**
|
23
|
-
* Animation type.
|
24
|
-
* opacity animation only effect on slotted element and image icon.
|
25
|
-
*/
|
26
|
-
this.animation = "position";
|
27
|
-
/**
|
28
|
-
* If false, render slot only.
|
29
|
-
*/
|
30
|
-
this.loading = true;
|
31
|
-
}
|
32
|
-
render() {
|
33
|
-
if (!this.loading) {
|
34
|
-
return htmlSlot();
|
35
|
-
}
|
36
|
-
return html `<div part="root" class="${this.animation}">${this.type === "image" ? iconPhoto() : ""} ${htmlSlot("loading")}</div>`;
|
37
|
-
}
|
38
|
-
};
|
39
|
-
__decorate([
|
40
|
-
property()
|
41
|
-
], Skeleton.prototype, "type", void 0);
|
42
|
-
__decorate([
|
43
|
-
property()
|
44
|
-
], Skeleton.prototype, "animation", void 0);
|
45
|
-
__decorate([
|
46
|
-
state()
|
47
|
-
], Skeleton.prototype, "loading", void 0);
|
48
|
-
Skeleton = __decorate([
|
49
|
-
godown(protoName),
|
50
|
-
styles(css `:host{${cssScope}--from:var(${cssGlobalVars._colors.darkgray[9]});${cssScope}--to:var(${cssGlobalVars._colors.darkgray[7]});${cssScope}--deg:95deg;${cssScope}--duration:1.5s;${cssScope}--icon-size:5em;${cssScope}--icon-margin:.25em;color:var(${cssGlobalVars._colors.darkgray[5]});background:var(${cssScope}--from);min-height:1.5em;width:100%;flex-shrink:0;display:block;overflow:hidden}[part=root]{height:100%;min-height:inherit;text-align:center;animation:var(${cssScope}--duration) ease-in-out 0s infinite none running}svg{--size:var(${cssScope}--icon-size);font-size:var(--size);margin:calc(var(--size) * .05)}.position{background-image:linear-gradient(var(${cssScope}--deg),var(${cssScope}--from) 36%,var(${cssScope}--to) 50%,var(${cssScope}--from) 64%);background-color:transparent;background-size:200% 100%;animation-name:po}@keyframes po{from{background-position:150% center}to{background-position:-50% center}}.opacity{animation-name:op;animation-direction:alternate}@keyframes op{50%{opacity:.25}to{opacity:1}}`)
|
51
|
-
], Skeleton);
|
52
|
-
var Skeleton$1 = Skeleton;
|
53
|
-
|
54
|
-
export { Skeleton$1 as default };
|
1
|
+
import{__decorate as o}from"tslib";import{godown as i,styles as r,htmlSlot as t,attr as a}from"@godown/element";import n from"@godown/f7-icon/icons/photo.js";import{css as e,html as s}from"lit";import{property as m,state as d}from"lit/decorators.js";import{scopePrefix as c,cssGlobalVars as p,GlobalStyle as g}from"../core/global-style.js";const l="skeleton",v=c(l);let f=class Skeleton extends g{constructor(){super(...arguments),this.animation="position",this.loading=!0}render(){return this.loading?s`<div part="root" ${a(this.observedRecord)}>${"image"===this.type?n():""} ${t("loading")}</div>`:t()}};o([m()],f.prototype,"type",void 0),o([m()],f.prototype,"animation",void 0),o([d()],f.prototype,"loading",void 0),f=o([i(l),r(e`:host{${v}--from:var(${p._colors.darkgray[9]});${v}--to:var(${p._colors.darkgray[7]});${v}--deg:95deg;${v}--duration:1.5s;${v}--icon-size:5em;${v}--icon-margin:.25em;color:var(${p._colors.darkgray[5]});background:var(${v}--from);min-height:1.5em;width:100%;flex-shrink:0;display:block;overflow:hidden}[part=root]{height:100%;min-height:inherit;text-align:center;animation:var(${v}--duration) ease-in-out 0s infinite none running}svg{--size:var(${v}--icon-size);font-size:var(--size);margin:calc(var(--size) * .05)}[animation=position]{background-image:linear-gradient(var(${v}--deg),var(${v}--from) 36%,var(${v}--to) 50%,var(${v}--from) 64%);background-color:transparent;background-size:200% 100%;animation-name:po}@keyframes po{from{background-position:150% center}to{background-position:-50% center}}[animation=opacity]{animation-name:op;animation-direction:alternate}@keyframes op{50%{opacity:.25}to{opacity:1}}`)],f);var $=f;export{f as Skeleton,$ as default};
|
55
2
|
//# sourceMappingURL=skeleton.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"skeleton.js","sources":["../src/components/skeleton.ts"],"sourcesContent":null,"names":[
|
1
|
+
{"version":3,"file":"skeleton.js","sources":["../src/components/skeleton.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Skeleton","GlobalStyle","constructor","this","animation","loading","render","html","attr","observedRecord","type","iconPhoto","htmlSlot","__decorate","property","prototype","state","godown","styles","css","cssGlobalVars","_colors","darkgray","Skeleton$1"],"mappings":"oVAOA,MAAMA,EAAY,WACZC,EAAWC,EAAYF,GAa7B,IAAMG,EAAN,MAAMA,iBAAiBC,EAAvB,WAAAC,uBAYEC,KAASC,UAA2B,WAMpCD,KAAOE,SAAG,EAEA,MAAAC,GACR,OAAKH,KAAKE,QAGHE,CAAI,oBAAoBC,EAAKL,KAAKM,mBACvB,UAAdN,KAAKO,KAAmBC,IAAc,MACtCC,EAAS,mBAJJA,MAjBXC,EAAA,CADCC,KACqBd,EAAAe,UAAA,YAAA,GAOtBF,EAAA,CADCC,KAC6Cd,EAAAe,UAAA,iBAAA,GAM9CF,EAAA,CADCG,KACahB,EAAAe,UAAA,eAAA,GAlBVf,EAAQa,EAAA,CAJbI,EAAOpB,GACPqB,EACCC,CAAG,SAASrB,eAAsBsB,EAAcC,QAAQC,SAAS,OAAOxB,aAAoBsB,EAAcC,QAAQC,SAAS,OAAOxB,gBAAuBA,oBAA2BA,oBAA2BA,kCAAyCsB,EAAcC,QAAQC,SAAS,sBAAsBxB,+JAAsKA,oEAA2EA,gIAAwIA,eAAsBA,oBAA2BA,kBAAyBA,mSAE5uBE,GA+BN,IAAAuB,EAAevB"}
|
package/components/split.d.ts
CHANGED
@@ -1,4 +1,5 @@
|
|
1
|
-
import { type HandlerEvent } from "@godown/element
|
1
|
+
import { type HandlerEvent } from "@godown/element";
|
2
|
+
import { type TemplateResult } from "lit";
|
2
3
|
import SuperInput from "../core/super-input.js";
|
3
4
|
/**
|
4
5
|
* {@linkcode Split} renders multiple input boxes.
|
@@ -7,6 +8,10 @@ import SuperInput from "../core/super-input.js";
|
|
7
8
|
*
|
8
9
|
* Delete: will move the focus box forward until the first and no inputs for each.
|
9
10
|
*
|
11
|
+
* @fires input - Fires when the input value changes.
|
12
|
+
* @fires change - Fires when the input value changes.
|
13
|
+
* @fires focus - Fires when the input is focused.
|
14
|
+
* @fires blur - Fires when the input is blurred.
|
10
15
|
* @category input
|
11
16
|
*/
|
12
17
|
declare class Split extends SuperInput {
|
@@ -20,13 +25,31 @@ declare class Split extends SuperInput {
|
|
20
25
|
index: number;
|
21
26
|
current: number;
|
22
27
|
currentValue: (string | void)[];
|
23
|
-
protected render():
|
28
|
+
protected render(): TemplateResult<1>;
|
24
29
|
connectedCallback(): void;
|
25
30
|
protected _handleInput(e: HandlerEvent<HTMLInputElement, InputEvent>): void;
|
31
|
+
/**
|
32
|
+
* Fill input with data.
|
33
|
+
*
|
34
|
+
* If data is null
|
35
|
+
* - If current value is null, move to before.
|
36
|
+
* - If current value is not null, delete it.
|
37
|
+
*
|
38
|
+
* If data is not null
|
39
|
+
* - If current value is null, input data.
|
40
|
+
* - If current value is not null, input data and move to after.
|
41
|
+
*
|
42
|
+
* If data is multiple characters,
|
43
|
+
* Fill input with data[0] and call fillInput with data.slice(1).
|
44
|
+
*
|
45
|
+
* @param data Input event data.
|
46
|
+
*/
|
47
|
+
protected fillInput(data: string | null): void;
|
26
48
|
focus(): void;
|
27
49
|
focusAt(i: number): void;
|
28
50
|
blur(): void;
|
29
51
|
reset(): void;
|
30
52
|
}
|
31
53
|
export default Split;
|
54
|
+
export { Split };
|
32
55
|
//# sourceMappingURL=split.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../src/components/split.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../src/components/split.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,YAAY,EAAU,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAI9D,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAahD;;;;;;;;;;;;GAYG;AACH,cAIM,KAAM,SAAQ,UAAU;IAC5B;;OAEG;IAEH,GAAG,SAAK;IAER;;OAEG;IAEH,KAAK,SAAM;IAGX,OAAO,SAAM;IAGb,YAAY,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAM;IAErC,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAYrC,iBAAiB,IAAI,IAAI;IAKzB,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,gBAAgB,EAAE,UAAU,CAAC,GAAG,IAAI;IAY3E;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IA2C9C,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAMxB,IAAI,IAAI,IAAI;IAOZ,KAAK,IAAI,IAAI;CAQd;AAED,eAAe,KAAK,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
package/components/split.js
CHANGED
@@ -1,129 +1,2 @@
|
|
1
|
-
import {
|
2
|
-
import { godown } from '@godown/element/decorators/godown.js';
|
3
|
-
import { styles } from '@godown/element/decorators/styles.js';
|
4
|
-
import { classList } from '@godown/element/directives/class-list.js';
|
5
|
-
import { css, html, nothing } from 'lit';
|
6
|
-
import { property, state } from 'lit/decorators.js';
|
7
|
-
import { scopePrefix, cssGlobalVars } from '../core/global-style.js';
|
8
|
-
import SuperInput from '../core/super-input.js';
|
9
|
-
|
10
|
-
const protoName = "split";
|
11
|
-
const cssScope = scopePrefix(protoName);
|
12
|
-
const loop = (len, fn) => {
|
13
|
-
const result = new Array(len);
|
14
|
-
for (let index = 0; index < len; index++) {
|
15
|
-
result[index] = fn(index);
|
16
|
-
}
|
17
|
-
return result;
|
18
|
-
};
|
19
|
-
/**
|
20
|
-
* {@linkcode Split} renders multiple input boxes.
|
21
|
-
*
|
22
|
-
* Input: will move the focus box backward until the complete input from start to end.
|
23
|
-
*
|
24
|
-
* Delete: will move the focus box forward until the first and no inputs for each.
|
25
|
-
*
|
26
|
-
* @category input
|
27
|
-
*/
|
28
|
-
let Split = class Split extends SuperInput {
|
29
|
-
constructor() {
|
30
|
-
super(...arguments);
|
31
|
-
/**
|
32
|
-
* The number of input boxes.
|
33
|
-
*/
|
34
|
-
this.len = 6;
|
35
|
-
/**
|
36
|
-
* Focus index.
|
37
|
-
*/
|
38
|
-
this.index = -1;
|
39
|
-
this.current = -1;
|
40
|
-
this.currentValue = [];
|
41
|
-
}
|
42
|
-
render() {
|
43
|
-
return html `<div part="root">${loop(this.len, (index) => html `<span part="input-box" @click="${this.disabled ? null : () => this.focusAt(index)}" class="${classList({ focus: this.current === index }) || nothing}">${this.currentValue[index]}</span>`)} <input part="input" id="${this.makeId}" @blur="${this.blur}" @input="${this._handleInput}" .value="${
|
44
|
-
/* Ensure that input always has a value of length this.len */
|
45
|
-
this.value.padStart(this.len, " ")}"></div>`;
|
46
|
-
}
|
47
|
-
connectedCallback() {
|
48
|
-
super.connectedCallback();
|
49
|
-
this.reset();
|
50
|
-
}
|
51
|
-
_handleInput(e) {
|
52
|
-
e.stopPropagation();
|
53
|
-
if (this.compositing) {
|
54
|
-
return;
|
55
|
-
}
|
56
|
-
if (e.data === null) {
|
57
|
-
// delete
|
58
|
-
if (this.currentValue[this.current] !== null) {
|
59
|
-
// delete exist value
|
60
|
-
this.currentValue[this.current] = null;
|
61
|
-
}
|
62
|
-
else {
|
63
|
-
// go to before
|
64
|
-
this.currentValue[this.current - 1] = null;
|
65
|
-
const lastNotNull = this.currentValue.findLastIndex(a => a !== null);
|
66
|
-
this.current = this.current - 1 < 0 ? lastNotNull < 0 ? 0 : lastNotNull : this.current - 1;
|
67
|
-
}
|
68
|
-
}
|
69
|
-
else {
|
70
|
-
// input
|
71
|
-
this.currentValue[this.current] = e.data;
|
72
|
-
if (this.current + 1 >= this.len) {
|
73
|
-
// index overflow
|
74
|
-
this.current = this.currentValue.indexOf(null);
|
75
|
-
if (this.current === -1) {
|
76
|
-
this.blur();
|
77
|
-
}
|
78
|
-
}
|
79
|
-
else {
|
80
|
-
// go to after
|
81
|
-
this.current += 1;
|
82
|
-
}
|
83
|
-
}
|
84
|
-
this.value = this.currentValue.join("");
|
85
|
-
this.dispatchEvent(new CustomEvent("input", { detail: this.value, bubbles: true, composed: true }));
|
86
|
-
this.dispatchEvent(new CustomEvent("change", { detail: this.value, composed: true }));
|
87
|
-
}
|
88
|
-
focus() {
|
89
|
-
this.focusAt(this.current);
|
90
|
-
super.focus();
|
91
|
-
}
|
92
|
-
focusAt(i) {
|
93
|
-
this.current = i;
|
94
|
-
this._input.focus();
|
95
|
-
}
|
96
|
-
blur() {
|
97
|
-
this._input.blur();
|
98
|
-
this.current = -1;
|
99
|
-
super.blur();
|
100
|
-
}
|
101
|
-
reset() {
|
102
|
-
this.current = -1;
|
103
|
-
this.value = this.default;
|
104
|
-
this.currentValue = this.value.split("").concat(Array(this.len - this.value.length).fill(null));
|
105
|
-
if (this.index > -1) {
|
106
|
-
this.current = this.index;
|
107
|
-
}
|
108
|
-
}
|
109
|
-
};
|
110
|
-
__decorate([
|
111
|
-
property({ type: Number })
|
112
|
-
], Split.prototype, "len", void 0);
|
113
|
-
__decorate([
|
114
|
-
property({ type: Number })
|
115
|
-
], Split.prototype, "index", void 0);
|
116
|
-
__decorate([
|
117
|
-
state()
|
118
|
-
], Split.prototype, "current", void 0);
|
119
|
-
__decorate([
|
120
|
-
state()
|
121
|
-
], Split.prototype, "currentValue", void 0);
|
122
|
-
Split = __decorate([
|
123
|
-
godown(protoName),
|
124
|
-
styles(css `:host{color:var(${cssGlobalVars.foreground});display:block;border-radius:1px;width:-moz-fit-content;width:fit-content;${cssScope}--size:1.45em;${cssScope}--gap:.25em}[part=root]{gap:var(${cssScope}--gap);width:100%;position:relative;vertical-align:top;display:inline-flex;justify-content:space-between;border-radius:inherit}[part=input-box]{width:var(${cssScope}--size);height:var(${cssScope}--size);vertical-align:top;text-align:center;background-color:var(${cssGlobalVars.input}-background);border-radius:inherit}[part=input]{width:100%;height:100%;opacity:0;background:0 0;position:absolute;z-index:-1}.focus{box-shadow:var(${cssGlobalVars.input}-box-shadow)}`)
|
125
|
-
], Split);
|
126
|
-
var Split$1 = Split;
|
127
|
-
|
128
|
-
export { Split$1 as default };
|
1
|
+
import{__decorate as t}from"tslib";import{godown as e,styles as r,attr as i,classList as s}from"@godown/element";import{css as n,html as u,nothing as o}from"lit";import{property as l,state as c}from"lit/decorators.js";import{scopePrefix as a,cssGlobalVars as h}from"../core/global-style.js";import p from"../core/super-input.js";const d="split",b=a(d);let f=class Split extends p{constructor(){super(...arguments),this.len=6,this.index=-1,this.current=-1,this.currentValue=[]}render(){return u`<div part="root" ${i(this.observedRecord)}>${((t,e)=>{const r=new Array(t);for(let i=0;i<t;i++)r[i]=e(i);return r})(this.len,(t=>u`<span part="input-box" @click="${this.disabled?null:()=>this.focusAt(t)}" class="${s({focus:this.current===t})||o}">${this.currentValue[t]}</span>`))} <input part="input" id="${this.makeId}" @blur="${this.blur}" @input="${this._handleInput}" .value="${this.value.padStart(this.len," ")}"></div>`}connectedCallback(){super.connectedCallback(),this.reset()}_handleInput(t){t.stopPropagation(),this.compositing||(this.fillInput(t.data),this.value=this.currentValue.join(""),this.dispatchEvent(new CustomEvent("input",{detail:this.value,composed:!0,bubbles:!0})))}fillInput(t){if(null===t){if(null!==this.currentValue[this.current])this.currentValue[this.current]=null;else{this.currentValue[this.current-1]=null;const t=this.currentValue.findLastIndex((t=>null!==t));this.current=this.current-1<0?t<0?0:t:this.current-1}return}const e=t.length>1;if(this.currentValue[this.current]=t[0],this.current+1>=this.len?(this.current=this.currentValue.indexOf(null),-1===this.current&&this.blur()):this.current+=1,e){const e=t.slice(1);e&&this.fillInput(e)}}focus(){this.focusAt(this.current),super.focus()}focusAt(t){this.current=t,this._input.focus(),this.dispatchEvent(new CustomEvent("focus",{detail:t,bubbles:!0,composed:!0}))}blur(){this._input.blur(),this.current=-1,super.blur(),this.dispatchEvent(new CustomEvent("blur",{bubbles:!0,composed:!0}))}reset(){this.current=-1,this.value=this.default,this.currentValue=this.value.split("").concat(Array(this.len-this.value.length).fill(null)),this.index>-1&&(this.current=this.index)}};t([l({type:Number})],f.prototype,"len",void 0),t([l({type:Number})],f.prototype,"index",void 0),t([c()],f.prototype,"current",void 0),t([c()],f.prototype,"currentValue",void 0),f=t([e(d),r(n`:host{color:var(${h.foreground});display:block;border-radius:1px;width:-moz-fit-content;width:fit-content;${b}--size:1.45em;${b}--gap:.25em}:host([contents]) [part=root]{width:-moz-fit-content;width:fit-content}[part=root]{gap:var(${b}--gap);width:100%;position:relative;vertical-align:top;display:flex;justify-content:space-between;border-radius:inherit}[part=input-box]{width:var(${b}--size);height:var(${b}--size);vertical-align:top;text-align:center;background-color:var(${h.input}-background);border-radius:inherit}[part=input]{width:100%;height:100%;opacity:0;background:0 0;position:absolute;z-index:-1}.focus{box-shadow:var(${h.input}-box-shadow)}`)],f);var v=f;export{f as Split,v as default};
|
129
2
|
//# sourceMappingURL=split.js.map
|
package/components/split.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"split.js","sources":["../src/components/split.ts"],"sourcesContent":null,"names":[
|
1
|
+
{"version":3,"file":"split.js","sources":["../src/components/split.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Split","SuperInput","constructor","this","len","index","current","currentValue","render","html","attr","observedRecord","fn","result","Array","loop","disabled","focusAt","classList","focus","nothing","makeId","blur","_handleInput","value","padStart","connectedCallback","super","reset","e","stopPropagation","compositing","fillInput","data","join","dispatchEvent","CustomEvent","detail","composed","bubbles","lastNotNull","findLastIndex","a","multiple","length","indexOf","after","slice","i","_input","default","split","concat","fill","__decorate","property","type","Number","prototype","state","godown","styles","css","cssGlobalVars","foreground","input","Split$1"],"mappings":"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"}
|