@shortfuse/materialdesignweb 0.8.0 → 0.9.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 +32 -24
- package/bin/mdw-css.js +1 -1
- package/components/Badge.js +12 -5
- package/components/Body.js +3 -0
- package/components/BottomAppBar.js +1 -8
- package/components/BottomSheet.js +424 -0
- package/components/Box.js +11 -49
- package/components/Button.js +61 -82
- package/components/Card.js +56 -61
- package/components/Checkbox.js +7 -25
- package/components/CheckboxIcon.js +10 -28
- package/components/Chip.js +13 -11
- package/components/Dialog.js +49 -98
- package/components/Display.js +55 -0
- package/components/Fab.js +83 -17
- package/components/FabContainer.js +48 -0
- package/components/FilterChip.js +34 -32
- package/components/Grid.js +176 -0
- package/components/Headline.js +5 -28
- package/components/Icon.js +54 -69
- package/components/IconButton.js +71 -120
- package/components/Input.js +669 -83
- package/components/InputChip.js +161 -0
- package/components/Label.js +3 -0
- package/components/List.js +1 -5
- package/components/ListItem.js +39 -23
- package/components/ListOption.js +79 -62
- package/components/Listbox.js +19 -10
- package/components/Menu.js +8 -18
- package/components/MenuItem.js +25 -26
- package/components/NavBar.js +53 -19
- package/components/NavDrawer.js +15 -15
- package/components/NavDrawerItem.js +2 -4
- package/components/NavItem.js +40 -33
- package/components/NavRail.js +23 -21
- package/components/NavRailItem.js +5 -2
- package/components/Page.js +105 -0
- package/components/Pane.js +18 -0
- package/components/Popup.js +17 -8
- package/components/Radio.js +2 -5
- package/components/RadioIcon.js +10 -14
- package/components/Ripple.js +11 -7
- package/components/Root.js +209 -0
- package/components/Scrim.js +87 -0
- package/components/Search.js +12 -20
- package/components/SegmentedButton.js +33 -36
- package/components/SegmentedButtonGroup.js +9 -3
- package/components/Select.js +6 -7
- package/components/Shape.js +5 -65
- package/components/SideSheet.js +308 -0
- package/components/Slider.js +71 -34
- package/components/Snackbar.js +22 -16
- package/components/SnackbarContainer.js +42 -0
- package/components/Surface.js +15 -10
- package/components/Switch.js +3 -16
- package/components/SwitchIcon.js +40 -32
- package/components/Tab.js +57 -38
- package/components/TabContent.js +1 -0
- package/components/TabList.js +60 -32
- package/components/TabPanel.js +1 -1
- package/components/Table.js +116 -0
- package/components/TextArea.js +16 -15
- package/components/Title.js +4 -9
- package/components/Tooltip.js +43 -21
- package/components/TopAppBar.js +56 -78
- package/constants/shapes.js +36 -0
- package/constants/typography.js +127 -0
- package/core/Composition.js +354 -192
- package/core/CompositionAdapter.js +11 -12
- package/core/CustomElement.js +588 -236
- package/core/css.js +117 -12
- package/core/customTypes.js +120 -25
- package/core/dom.js +17 -11
- package/core/jsonMergePatch.js +12 -10
- package/core/observe.js +298 -253
- package/core/optimizations.js +9 -9
- package/core/template.js +14 -57
- package/dist/index.min.js +85 -115
- package/dist/index.min.js.map +4 -4
- package/dist/meta.json +1 -1
- package/dom/HTMLOptionsCollectionProxy.js +106 -0
- package/{theming/themableMixinLoader.js → loaders/palette.js} +4 -3
- package/loaders/theme.js +12 -0
- package/mixins/AriaReflectorMixin.js +53 -13
- package/mixins/AriaToolbarMixin.js +3 -0
- package/mixins/ControlMixin.js +76 -33
- package/mixins/DelegatesFocusMixin.js +54 -0
- package/mixins/DensityMixin.js +2 -2
- package/mixins/ElevationMixin.js +62 -0
- package/mixins/FlexableMixin.js +66 -37
- package/mixins/FormAssociatedMixin.js +60 -8
- package/mixins/HyperlinkMixin.js +66 -0
- package/mixins/InputMixin.js +205 -32
- package/mixins/KeyboardNavMixin.js +8 -6
- package/mixins/NavigationListenerMixin.js +33 -0
- package/mixins/PopupMixin.js +176 -208
- package/mixins/ResizeObserverMixin.js +16 -4
- package/mixins/RippleMixin.js +8 -6
- package/mixins/ScrollListenerMixin.js +1 -1
- package/mixins/SemiStickyMixin.js +44 -98
- package/mixins/ShapeMaskedMixin.js +117 -0
- package/mixins/ShapeMixin.js +22 -204
- package/mixins/StateMixin.js +70 -34
- package/mixins/TextFieldMixin.js +107 -143
- package/mixins/ThemableMixin.js +44 -56
- package/mixins/TooltipTriggerMixin.js +291 -359
- package/mixins/TouchTargetMixin.js +1 -1
- package/mixins/TypographyMixin.js +121 -0
- package/package.json +110 -74
- package/services/rtl.js +10 -0
- package/services/svgAlias.js +17 -0
- package/{theming/index.js → services/theme.js} +24 -174
- package/types/bin/mdw-css.d.ts +3 -0
- package/types/bin/mdw-css.d.ts.map +1 -0
- package/types/components/Badge.d.ts +39 -0
- package/types/components/Badge.d.ts.map +1 -0
- package/types/components/Body.d.ts +29 -0
- package/types/components/Body.d.ts.map +1 -0
- package/types/components/BottomAppBar.d.ts +73 -0
- package/types/components/BottomAppBar.d.ts.map +1 -0
- package/types/components/BottomSheet.d.ts +109 -0
- package/types/components/BottomSheet.d.ts.map +1 -0
- package/types/components/Box.d.ts +16 -0
- package/types/components/Box.d.ts.map +1 -0
- package/types/components/Button.d.ts +714 -0
- package/types/components/Button.d.ts.map +1 -0
- package/types/components/Card.d.ts +412 -0
- package/types/components/Card.d.ts.map +1 -0
- package/types/components/Checkbox.d.ts +205 -0
- package/types/components/Checkbox.d.ts.map +1 -0
- package/types/components/CheckboxIcon.d.ts +44 -0
- package/types/components/CheckboxIcon.d.ts.map +1 -0
- package/types/components/Chip.d.ts +1425 -0
- package/types/components/Chip.d.ts.map +1 -0
- package/types/components/Dialog.d.ts +286 -0
- package/types/components/Dialog.d.ts.map +1 -0
- package/types/components/DialogActions.d.ts +4 -0
- package/types/components/DialogActions.d.ts.map +1 -0
- package/types/components/Display.d.ts +45 -0
- package/types/components/Display.d.ts.map +1 -0
- package/types/components/Divider.d.ts +10 -0
- package/types/components/Divider.d.ts.map +1 -0
- package/types/components/Fab.d.ts +741 -0
- package/types/components/Fab.d.ts.map +1 -0
- package/types/components/FabContainer.d.ts +10 -0
- package/types/components/FabContainer.d.ts.map +1 -0
- package/types/components/FilterChip.d.ts +4283 -0
- package/types/components/FilterChip.d.ts.map +1 -0
- package/types/components/Grid.d.ts +37 -0
- package/types/components/Grid.d.ts.map +1 -0
- package/types/components/Headline.d.ts +47 -0
- package/types/components/Headline.d.ts.map +1 -0
- package/types/components/Icon.d.ts +103 -0
- package/types/components/Icon.d.ts.map +1 -0
- package/types/components/IconButton.d.ts +1486 -0
- package/types/components/IconButton.d.ts.map +1 -0
- package/types/components/Input.d.ts +51288 -0
- package/types/components/Input.d.ts.map +1 -0
- package/types/components/InputChip.d.ts +243 -0
- package/types/components/InputChip.d.ts.map +1 -0
- package/types/components/Label.d.ts +29 -0
- package/types/components/Label.d.ts.map +1 -0
- package/types/components/List.d.ts +31 -0
- package/types/components/List.d.ts.map +1 -0
- package/types/components/ListItem.d.ts +349 -0
- package/types/components/ListItem.d.ts.map +1 -0
- package/types/components/ListOption.d.ts +1493 -0
- package/types/components/ListOption.d.ts.map +1 -0
- package/types/components/Listbox.d.ts +12012 -0
- package/types/components/Listbox.d.ts.map +1 -0
- package/types/components/Menu.d.ts +119 -0
- package/types/components/Menu.d.ts.map +1 -0
- package/types/components/MenuItem.d.ts +3109 -0
- package/types/components/MenuItem.d.ts.map +1 -0
- package/types/components/NavBar.d.ts +18 -0
- package/types/components/NavBar.d.ts.map +1 -0
- package/types/components/NavBarItem.d.ts +186 -0
- package/types/components/NavBarItem.d.ts.map +1 -0
- package/types/components/NavDrawer.d.ts +108 -0
- package/types/components/NavDrawer.d.ts.map +1 -0
- package/types/components/NavDrawerItem.d.ts +186 -0
- package/types/components/NavDrawerItem.d.ts.map +1 -0
- package/types/components/NavItem.d.ts +190 -0
- package/types/components/NavItem.d.ts.map +1 -0
- package/types/components/NavRail.d.ts +109 -0
- package/types/components/NavRail.d.ts.map +1 -0
- package/types/components/NavRailItem.d.ts +186 -0
- package/types/components/NavRailItem.d.ts.map +1 -0
- package/types/components/Page.d.ts +24 -0
- package/types/components/Page.d.ts.map +1 -0
- package/types/components/Pane.d.ts +44 -0
- package/types/components/Pane.d.ts.map +1 -0
- package/types/components/Popup.d.ts +76 -0
- package/types/components/Popup.d.ts.map +1 -0
- package/types/components/Progress.d.ts +19 -0
- package/types/components/Progress.d.ts.map +1 -0
- package/types/components/Radio.d.ts +199 -0
- package/types/components/Radio.d.ts.map +1 -0
- package/types/components/RadioIcon.d.ts +46 -0
- package/types/components/RadioIcon.d.ts.map +1 -0
- package/types/components/Ripple.d.ts +34 -0
- package/types/components/Ripple.d.ts.map +1 -0
- package/types/components/Root.d.ts +68 -0
- package/types/components/Root.d.ts.map +1 -0
- package/types/components/Scrim.d.ts +6 -0
- package/types/components/Scrim.d.ts.map +1 -0
- package/types/components/Search.d.ts +16 -0
- package/types/components/Search.d.ts.map +1 -0
- package/types/components/SegmentedButton.d.ts +718 -0
- package/types/components/SegmentedButton.d.ts.map +1 -0
- package/types/components/SegmentedButtonGroup.d.ts +44 -0
- package/types/components/SegmentedButtonGroup.d.ts.map +1 -0
- package/types/components/Select.d.ts +1361 -0
- package/types/components/Select.d.ts.map +1 -0
- package/types/components/Shape.d.ts +10 -0
- package/types/components/Shape.d.ts.map +1 -0
- package/types/components/SideSheet.d.ts +106 -0
- package/types/components/SideSheet.d.ts.map +1 -0
- package/types/components/Slider.d.ts +382 -0
- package/types/components/Slider.d.ts.map +1 -0
- package/types/components/Snackbar.d.ts +65 -0
- package/types/components/Snackbar.d.ts.map +1 -0
- package/types/components/SnackbarContainer.d.ts +6 -0
- package/types/components/SnackbarContainer.d.ts.map +1 -0
- package/types/components/Surface.d.ts +45 -0
- package/types/components/Surface.d.ts.map +1 -0
- package/types/components/Switch.d.ts +183 -0
- package/types/components/Switch.d.ts.map +1 -0
- package/types/components/SwitchIcon.d.ts +169 -0
- package/types/components/SwitchIcon.d.ts.map +1 -0
- package/types/components/Tab.d.ts +879 -0
- package/types/components/Tab.d.ts.map +1 -0
- package/types/components/TabContent.d.ts +122 -0
- package/types/components/TabContent.d.ts.map +1 -0
- package/types/components/TabList.d.ts +6266 -0
- package/types/components/TabList.d.ts.map +1 -0
- package/types/components/TabPanel.d.ts +28 -0
- package/types/components/TabPanel.d.ts.map +1 -0
- package/types/components/Table.d.ts +2 -0
- package/types/components/Table.d.ts.map +1 -0
- package/types/components/TextArea.d.ts +1394 -0
- package/types/components/TextArea.d.ts.map +1 -0
- package/types/components/Title.d.ts +47 -0
- package/types/components/Title.d.ts.map +1 -0
- package/types/components/Tooltip.d.ts +49 -0
- package/types/components/Tooltip.d.ts.map +1 -0
- package/types/components/TopAppBar.d.ts +130 -0
- package/types/components/TopAppBar.d.ts.map +1 -0
- package/types/constants/colorKeywords.d.ts +2 -0
- package/types/constants/colorKeywords.d.ts.map +1 -0
- package/types/constants/shapes.d.ts +38 -0
- package/types/constants/shapes.d.ts.map +1 -0
- package/types/constants/typography.d.ts +212 -0
- package/types/constants/typography.d.ts.map +1 -0
- package/types/core/Composition.d.ts +252 -0
- package/types/core/Composition.d.ts.map +1 -0
- package/types/core/CompositionAdapter.d.ts +92 -0
- package/types/core/CompositionAdapter.d.ts.map +1 -0
- package/types/core/CustomElement.d.ts +302 -0
- package/types/core/CustomElement.d.ts.map +1 -0
- package/types/core/css.d.ts +44 -0
- package/types/core/css.d.ts.map +1 -0
- package/types/core/customTypes.d.ts +26 -0
- package/types/core/customTypes.d.ts.map +1 -0
- package/types/core/dom.d.ts +32 -0
- package/types/core/dom.d.ts.map +1 -0
- package/types/core/jsonMergePatch.d.ts +31 -0
- package/types/core/jsonMergePatch.d.ts.map +1 -0
- package/types/core/observe.d.ts +113 -0
- package/types/core/observe.d.ts.map +1 -0
- package/types/core/optimizations.d.ts +7 -0
- package/types/core/optimizations.d.ts.map +1 -0
- package/types/core/template.d.ts +47 -0
- package/types/core/template.d.ts.map +1 -0
- package/types/core/uid.d.ts +6 -0
- package/types/core/uid.d.ts.map +1 -0
- package/types/dom/HTMLOptionsCollectionProxy.d.ts +18 -0
- package/types/dom/HTMLOptionsCollectionProxy.d.ts.map +1 -0
- package/types/index.d.ts +88 -0
- package/types/index.d.ts.map +1 -0
- package/types/loaders/palette.d.ts +2 -0
- package/types/loaders/palette.d.ts.map +1 -0
- package/types/loaders/theme.d.ts +2 -0
- package/types/loaders/theme.d.ts.map +1 -0
- package/types/mixins/AriaReflectorMixin.d.ts +23 -0
- package/types/mixins/AriaReflectorMixin.d.ts.map +1 -0
- package/types/mixins/AriaToolbarMixin.d.ts +32 -0
- package/types/mixins/AriaToolbarMixin.d.ts.map +1 -0
- package/types/mixins/ControlMixin.d.ts +124 -0
- package/types/mixins/ControlMixin.d.ts.map +1 -0
- package/types/mixins/DelegatesFocusMixin.d.ts +5 -0
- package/types/mixins/DelegatesFocusMixin.d.ts.map +1 -0
- package/types/mixins/DensityMixin.d.ts +5 -0
- package/types/mixins/DensityMixin.d.ts.map +1 -0
- package/types/mixins/ElevationMixin.d.ts +33 -0
- package/types/mixins/ElevationMixin.d.ts.map +1 -0
- package/types/mixins/FlexableMixin.d.ts +13 -0
- package/types/mixins/FlexableMixin.d.ts.map +1 -0
- package/types/mixins/FormAssociatedMixin.d.ts +122 -0
- package/types/mixins/FormAssociatedMixin.d.ts.map +1 -0
- package/types/mixins/HyperlinkMixin.d.ts +22 -0
- package/types/mixins/HyperlinkMixin.d.ts.map +1 -0
- package/types/mixins/InputMixin.d.ts +179 -0
- package/types/mixins/InputMixin.d.ts.map +1 -0
- package/types/mixins/KeyboardNavMixin.d.ts +47 -0
- package/types/mixins/KeyboardNavMixin.d.ts.map +1 -0
- package/types/mixins/NavigationListenerMixin.d.ts +8 -0
- package/types/mixins/NavigationListenerMixin.d.ts.map +1 -0
- package/types/mixins/PopupMixin.d.ts +82 -0
- package/types/mixins/PopupMixin.d.ts.map +1 -0
- package/types/mixins/RTLObserverMixin.d.ts +7 -0
- package/types/mixins/RTLObserverMixin.d.ts.map +1 -0
- package/types/mixins/ResizeObserverMixin.d.ts +12 -0
- package/types/mixins/ResizeObserverMixin.d.ts.map +1 -0
- package/types/mixins/RippleMixin.d.ts +92 -0
- package/types/mixins/RippleMixin.d.ts.map +1 -0
- package/types/mixins/ScrollListenerMixin.d.ts +41 -0
- package/types/mixins/ScrollListenerMixin.d.ts.map +1 -0
- package/types/mixins/SemiStickyMixin.d.ts +50 -0
- package/types/mixins/SemiStickyMixin.d.ts.map +1 -0
- package/types/mixins/ShapeMaskedMixin.d.ts +9 -0
- package/types/mixins/ShapeMaskedMixin.d.ts.map +1 -0
- package/types/mixins/ShapeMixin.d.ts +38 -0
- package/types/mixins/ShapeMixin.d.ts.map +1 -0
- package/types/mixins/StateMixin.d.ts +27 -0
- package/types/mixins/StateMixin.d.ts.map +1 -0
- package/types/mixins/TextFieldMixin.d.ts +1354 -0
- package/types/mixins/TextFieldMixin.d.ts.map +1 -0
- package/types/mixins/ThemableMixin.d.ts +9 -0
- package/types/mixins/ThemableMixin.d.ts.map +1 -0
- package/types/mixins/TooltipTriggerMixin.d.ts +106 -0
- package/types/mixins/TooltipTriggerMixin.d.ts.map +1 -0
- package/types/mixins/TouchTargetMixin.d.ts +3 -0
- package/types/mixins/TouchTargetMixin.d.ts.map +1 -0
- package/types/mixins/TypographyMixin.d.ts +17 -0
- package/types/mixins/TypographyMixin.d.ts.map +1 -0
- package/types/services/rtl.d.ts +3 -0
- package/types/services/rtl.d.ts.map +1 -0
- package/types/services/svgAlias.d.ts +13 -0
- package/types/services/svgAlias.d.ts.map +1 -0
- package/types/services/theme.d.ts +45 -0
- package/types/services/theme.d.ts.map +1 -0
- package/types/utils/cli.d.ts +3 -0
- package/types/utils/cli.d.ts.map +1 -0
- package/types/utils/function.d.ts +3 -0
- package/types/utils/function.d.ts.map +1 -0
- package/types/utils/jsx-runtime.d.ts +20 -0
- package/types/utils/jsx-runtime.d.ts.map +1 -0
- package/types/utils/material-color/blend.d.ts +34 -0
- package/types/utils/material-color/blend.d.ts.map +1 -0
- package/types/utils/material-color/hct/Cam16.d.ts +142 -0
- package/types/utils/material-color/hct/Cam16.d.ts.map +1 -0
- package/types/utils/material-color/hct/Hct.d.ts +93 -0
- package/types/utils/material-color/hct/Hct.d.ts.map +1 -0
- package/types/utils/material-color/hct/ViewingConditions.d.ts +69 -0
- package/types/utils/material-color/hct/ViewingConditions.d.ts.map +1 -0
- package/types/utils/material-color/hct/hctSolver.d.ts +30 -0
- package/types/utils/material-color/hct/hctSolver.d.ts.map +1 -0
- package/types/utils/material-color/helper.d.ts +8 -0
- package/types/utils/material-color/helper.d.ts.map +1 -0
- package/types/utils/material-color/palettes/CorePalette.d.ts +75 -0
- package/types/utils/material-color/palettes/CorePalette.d.ts.map +1 -0
- package/types/utils/material-color/palettes/TonalPalette.d.ts +38 -0
- package/types/utils/material-color/palettes/TonalPalette.d.ts.map +1 -0
- package/types/utils/material-color/scheme/Scheme.d.ts +264 -0
- package/types/utils/material-color/scheme/Scheme.d.ts.map +1 -0
- package/types/utils/material-color/utils/color.d.ts +172 -0
- package/types/utils/material-color/utils/color.d.ts.map +1 -0
- package/types/utils/material-color/utils/math.d.ts +94 -0
- package/types/utils/material-color/utils/math.d.ts.map +1 -0
- package/types/utils/pixelmatch.d.ts +22 -0
- package/types/utils/pixelmatch.d.ts.map +1 -0
- package/types/utils/popup.d.ts +106 -0
- package/types/utils/popup.d.ts.map +1 -0
- package/types/utils/searchParams.d.ts +3 -0
- package/types/utils/searchParams.d.ts.map +1 -0
- package/types/utils/svg.d.ts +7 -0
- package/types/utils/svg.d.ts.map +1 -0
- package/utils/material-color/scheme/Scheme.js +1 -1
- package/utils/pixelmatch.js +360 -0
- package/utils/popup.js +86 -10
- package/utils/searchParams.js +19 -0
- package/components/ExtendedFab.js +0 -32
- package/components/Layout.js +0 -504
- package/components/Nav.js +0 -38
- package/core/DomAdapter.js +0 -586
- package/core/ICustomElement.d.ts +0 -291
- package/core/ICustomElement.js +0 -1
- package/core/test.js +0 -126
- package/core/typings.d.ts +0 -142
- package/core/typings.js +0 -1
- package/mixins/SurfaceMixin.js +0 -127
- package/theming/loader.js +0 -22
- /package/{utils/color_keywords.js → constants/colorKeywords.js} +0 -0
package/components/Slider.js
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import CustomElement from '../core/CustomElement.js';
|
|
2
|
-
import { isRtl } from '../core/dom.js';
|
|
2
|
+
import { SAFARI_VERSION, isFocused, isRtl } from '../core/dom.js';
|
|
3
3
|
import InputMixin from '../mixins/InputMixin.js';
|
|
4
4
|
import StateMixin from '../mixins/StateMixin.js';
|
|
5
5
|
import ThemableMixin from '../mixins/ThemableMixin.js';
|
|
6
|
+
import { loadGlobalStyles } from '../services/rtl.js';
|
|
7
|
+
|
|
8
|
+
loadGlobalStyles();
|
|
6
9
|
|
|
7
10
|
/**
|
|
8
11
|
* @param {string} value
|
|
@@ -40,8 +43,11 @@ export default CustomElement
|
|
|
40
43
|
})
|
|
41
44
|
.observe({
|
|
42
45
|
ticks: 'string',
|
|
43
|
-
|
|
44
|
-
|
|
46
|
+
_valueAsText: { nullable: false },
|
|
47
|
+
thumbLabel: {
|
|
48
|
+
type: 'string',
|
|
49
|
+
reflect: 'read',
|
|
50
|
+
},
|
|
45
51
|
_roundedValue: 'float',
|
|
46
52
|
_isHoveringThumb: 'boolean',
|
|
47
53
|
_lastDispatchedChangeValue: 'string',
|
|
@@ -120,7 +126,20 @@ export default CustomElement
|
|
|
120
126
|
}
|
|
121
127
|
|
|
122
128
|
this._roundedValue = roundedValue;
|
|
123
|
-
this.
|
|
129
|
+
this._valueAsText = roundedValue.toString(10);
|
|
130
|
+
if (isTouch && SAFARI_VERSION) {
|
|
131
|
+
// Safari does not update input when drag wasn't initiated at thumb
|
|
132
|
+
if (event.type === 'touchstart') {
|
|
133
|
+
// Default touch action on Safari is to magnify when on track
|
|
134
|
+
event.preventDefault();
|
|
135
|
+
}
|
|
136
|
+
const { _input } = this;
|
|
137
|
+
if (_input.valueAsNumber !== roundedValue) {
|
|
138
|
+
_input.valueAsNumber = roundedValue;
|
|
139
|
+
this.dispatchEvent(new Event('input', { bubbles: true, composed: true }));
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
124
143
|
return;
|
|
125
144
|
}
|
|
126
145
|
|
|
@@ -138,7 +157,7 @@ export default CustomElement
|
|
|
138
157
|
|
|
139
158
|
/** @param {Event} event */
|
|
140
159
|
onLeaveEvent({ currentTarget }) {
|
|
141
|
-
if (
|
|
160
|
+
if (isFocused(/** @type {Element} */ (currentTarget))) return;
|
|
142
161
|
this._isHoveringThumb = false;
|
|
143
162
|
},
|
|
144
163
|
|
|
@@ -149,12 +168,14 @@ export default CustomElement
|
|
|
149
168
|
onControlFinish(event) {
|
|
150
169
|
const input = event.currentTarget;
|
|
151
170
|
if (input.disabled) return;
|
|
152
|
-
event.
|
|
171
|
+
if (event.type === 'click') {
|
|
172
|
+
event.preventDefault();
|
|
173
|
+
}
|
|
153
174
|
input.valueAsNumber = this._roundedValue;
|
|
154
175
|
this._value = input.value;
|
|
155
176
|
if (this._lastDispatchedChangeValue !== this._value) {
|
|
156
177
|
this._lastDispatchedChangeValue = this._value;
|
|
157
|
-
|
|
178
|
+
this.dispatchEvent(new Event('change', { bubbles: true }));
|
|
158
179
|
}
|
|
159
180
|
},
|
|
160
181
|
})
|
|
@@ -167,26 +188,36 @@ export default CustomElement
|
|
|
167
188
|
'~mousedown': 'onControlMouseOrTouch',
|
|
168
189
|
'~mousemove': 'onControlMouseOrTouch',
|
|
169
190
|
'~mouseout': 'onControlMouseOrTouch',
|
|
191
|
+
touchstart: 'onControlMouseOrTouch',
|
|
170
192
|
'~touchmove': 'onControlMouseOrTouch',
|
|
171
|
-
'~touchstart': 'onControlMouseOrTouch',
|
|
172
|
-
// @ts-expect-error Old spec
|
|
173
193
|
'~touchleave': 'onControlMouseOrTouch',
|
|
174
194
|
'~touchcancel': 'onControlMouseOrTouch',
|
|
175
195
|
'~touchend': 'onControlMouseOrTouch',
|
|
176
196
|
touchend: 'onControlFinish',
|
|
177
197
|
click: 'onControlFinish',
|
|
198
|
+
'~change'(event) {
|
|
199
|
+
// Change event will be rethrown by ControlMixin
|
|
200
|
+
// Track value to avoid double dispatch
|
|
201
|
+
if (this._lastDispatchedChangeValue === this._value) {
|
|
202
|
+
event.stopPropagation();
|
|
203
|
+
}
|
|
204
|
+
this._lastDispatchedChangeValue = this._value;
|
|
205
|
+
},
|
|
178
206
|
},
|
|
179
207
|
})
|
|
180
208
|
.expressions({
|
|
181
|
-
computeTrackStyle({ ticks,
|
|
209
|
+
computeTrackStyle({ ticks, _valueAsText, min, max }) {
|
|
182
210
|
return [
|
|
183
211
|
ticks ? `--ticks:${ticks}` : null,
|
|
184
|
-
`--value:${valueAsFraction(
|
|
212
|
+
`--value:${valueAsFraction(_valueAsText, min, max)}`,
|
|
185
213
|
].filter(Boolean).join(';') || null;
|
|
186
214
|
},
|
|
187
215
|
_thumbLabelHidden({ _isHoveringThumb, focusedState }) {
|
|
188
216
|
return (!_isHoveringThumb && !focusedState);
|
|
189
217
|
},
|
|
218
|
+
_computedThumbLabel({ thumbLabel, _valueAsText }) {
|
|
219
|
+
return thumbLabel ?? _valueAsText;
|
|
220
|
+
},
|
|
190
221
|
})
|
|
191
222
|
.html`
|
|
192
223
|
<div id=track style={computeTrackStyle} aria-hidden=true disabled={disabledState}>
|
|
@@ -196,18 +227,17 @@ export default CustomElement
|
|
|
196
227
|
<div id=thumb></div>
|
|
197
228
|
<div id=thumb-label
|
|
198
229
|
hidden={_thumbLabelHidden}
|
|
199
|
-
text={
|
|
230
|
+
text={_computedThumbLabel}></div>
|
|
200
231
|
</div>
|
|
201
232
|
</div>
|
|
202
233
|
`
|
|
234
|
+
.recompose(({ refs: { thumb, state, control } }) => {
|
|
235
|
+
thumb.append(state);
|
|
236
|
+
control.removeAttribute('aria-labelledby');
|
|
237
|
+
})
|
|
203
238
|
.on({
|
|
204
|
-
composed() {
|
|
205
|
-
const { thumb, state, control } = this.refs;
|
|
206
|
-
thumb.append(state);
|
|
207
|
-
control.removeAttribute('aria-labelledby');
|
|
208
|
-
},
|
|
209
239
|
valueChanged(oldValue, newValue) {
|
|
210
|
-
this.
|
|
240
|
+
this._valueAsText = newValue;
|
|
211
241
|
},
|
|
212
242
|
})
|
|
213
243
|
.css`
|
|
@@ -307,6 +337,10 @@ export default CustomElement
|
|
|
307
337
|
border-radius: 50%;
|
|
308
338
|
}
|
|
309
339
|
|
|
340
|
+
#control[disabled] {
|
|
341
|
+
cursor: not-allowed;
|
|
342
|
+
}
|
|
343
|
+
|
|
310
344
|
#track {
|
|
311
345
|
--value: 0.5;
|
|
312
346
|
position: absolute;
|
|
@@ -321,6 +355,7 @@ export default CustomElement
|
|
|
321
355
|
|
|
322
356
|
background-color: rgb(var(--mdw-color__surface-container-highest));
|
|
323
357
|
border-radius: inherit;
|
|
358
|
+
color: rgb(var(--mdw-bg));
|
|
324
359
|
}
|
|
325
360
|
|
|
326
361
|
#thumb {
|
|
@@ -340,7 +375,7 @@ export default CustomElement
|
|
|
340
375
|
|
|
341
376
|
border-radius: 50%;
|
|
342
377
|
|
|
343
|
-
color:
|
|
378
|
+
color: currentColor;
|
|
344
379
|
}
|
|
345
380
|
|
|
346
381
|
#thumb::before {
|
|
@@ -354,7 +389,7 @@ export default CustomElement
|
|
|
354
389
|
background-color: currentColor;
|
|
355
390
|
border-radius: 50%;
|
|
356
391
|
|
|
357
|
-
transition: background-color 100ms;
|
|
392
|
+
transition: color 100ms, background-color 100ms;
|
|
358
393
|
}
|
|
359
394
|
|
|
360
395
|
/* Inactive ticks */
|
|
@@ -366,28 +401,27 @@ export default CustomElement
|
|
|
366
401
|
position: absolute;
|
|
367
402
|
inset: 0;
|
|
368
403
|
|
|
369
|
-
padding-inline:
|
|
404
|
+
padding-inline: 2px;
|
|
370
405
|
|
|
371
406
|
background-clip: content-box;
|
|
372
|
-
|
|
373
|
-
background-
|
|
374
|
-
background-position: center center;
|
|
407
|
+
background-image: radial-gradient(circle at 1px, currentColor 0, currentColor 1px, transparent 0);
|
|
408
|
+
background-position: -1px 50%;
|
|
375
409
|
background-repeat: repeat-x;
|
|
376
|
-
background-size: 0
|
|
377
|
-
background-size: calc(100% / var(--ticks, 0)) 2px;
|
|
410
|
+
background-size: calc(100% / (var(--ticks, 0) + 1)) 2px;
|
|
378
411
|
}
|
|
379
412
|
|
|
380
413
|
#ticks::before {
|
|
381
|
-
|
|
414
|
+
color: rgb(var(--mdw-color__on-surface-variant));
|
|
382
415
|
}
|
|
383
416
|
|
|
384
417
|
#ticks::after {
|
|
385
|
-
--tick-color: rgb(var(--mdw-ink));
|
|
386
418
|
/* TODO: Use single-paint implementation */
|
|
387
419
|
padding-inline-end: calc(100% - (100% * var(--value)) + 10px);
|
|
388
420
|
|
|
389
421
|
z-index: 1;
|
|
390
422
|
|
|
423
|
+
color: rgb(var(--mdw-ink));
|
|
424
|
+
|
|
391
425
|
will-change: padding-inline-end;
|
|
392
426
|
}
|
|
393
427
|
/* Active Indicator */
|
|
@@ -409,7 +443,7 @@ export default CustomElement
|
|
|
409
443
|
transform: scaleX(var(--value));
|
|
410
444
|
transform-origin: calc(100% * calc(-0.5 * var(--mdw-dir, 1) + 0.5)) 0;
|
|
411
445
|
|
|
412
|
-
background-color:
|
|
446
|
+
background-color: currentColor;
|
|
413
447
|
|
|
414
448
|
will-change: transform;
|
|
415
449
|
}
|
|
@@ -465,21 +499,24 @@ export default CustomElement
|
|
|
465
499
|
align-items: center;
|
|
466
500
|
justify-content: center;
|
|
467
501
|
|
|
502
|
+
box-sizing: border-box;
|
|
503
|
+
|
|
468
504
|
min-block-size: 28px;
|
|
469
505
|
min-inline-size: 28px;
|
|
506
|
+
padding: 4px;
|
|
470
507
|
|
|
471
508
|
z-index: 1;
|
|
472
509
|
|
|
473
510
|
background-color: rgb(var(--mdw-bg));
|
|
474
|
-
border-radius:
|
|
511
|
+
border-radius: 14px;
|
|
475
512
|
color: rgb(var(--mdw-ink));
|
|
476
513
|
}
|
|
477
514
|
|
|
478
515
|
#thumb-label::after {
|
|
479
516
|
/* Values from Figma SVG */
|
|
480
|
-
--x-start:
|
|
481
|
-
--x-end:
|
|
482
|
-
--y:
|
|
517
|
+
--x-start: 4.1005px; /*4.1005px*/
|
|
518
|
+
--x-end: calc(100% - 4.1005px);
|
|
519
|
+
--y: calc(100% - 9.9584px); /*24.0416px*/
|
|
483
520
|
|
|
484
521
|
content: "";
|
|
485
522
|
|
|
@@ -489,7 +526,7 @@ export default CustomElement
|
|
|
489
526
|
|
|
490
527
|
clip-path: polygon(var(--x-start) var(--y), var(--x-end) var(--y), 50% 100%, var(--x-start) var(--y));
|
|
491
528
|
|
|
492
|
-
background-color:
|
|
529
|
+
background-color: currentColor;
|
|
493
530
|
}
|
|
494
531
|
|
|
495
532
|
#track[disabled] {
|
package/components/Snackbar.js
CHANGED
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
// https://w3c.github.io/aria/#status
|
|
2
2
|
|
|
3
|
+
import CustomElement from '../core/CustomElement.js';
|
|
3
4
|
import { EVENT_HANDLER_TYPE } from '../core/customTypes.js';
|
|
4
5
|
import AriaReflectorMixin from '../mixins/AriaReflectorMixin.js';
|
|
5
6
|
import DensityMixin from '../mixins/DensityMixin.js';
|
|
7
|
+
import ElevationMixin from '../mixins/ElevationMixin.js';
|
|
8
|
+
import ShapeMixin from '../mixins/ShapeMixin.js';
|
|
9
|
+
import ThemableMixin from '../mixins/ThemableMixin.js';
|
|
6
10
|
|
|
7
11
|
import './Button.js';
|
|
8
12
|
import './IconButton.js';
|
|
9
13
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
export default Surface
|
|
14
|
+
export default CustomElement
|
|
13
15
|
.extend()
|
|
16
|
+
.mixin(ThemableMixin)
|
|
17
|
+
.mixin(ShapeMixin)
|
|
14
18
|
.mixin(DensityMixin)
|
|
15
19
|
.mixin(AriaReflectorMixin)
|
|
20
|
+
.mixin(ElevationMixin)
|
|
16
21
|
.set({
|
|
17
22
|
_ariaRole: 'status',
|
|
18
23
|
elevated: true,
|
|
@@ -47,16 +52,10 @@ export default Surface
|
|
|
47
52
|
},
|
|
48
53
|
})
|
|
49
54
|
.html`
|
|
50
|
-
<div id=content></div>
|
|
55
|
+
<div id=content><slot id=slot></div>
|
|
51
56
|
<mdw-button mdw-if={action} id=action class=button ink={actionInk} type-style={actionTypeStyle}>{action}</mdw-button>
|
|
52
57
|
<mdw-icon-button mdw-if={closeButton} id=close class=button icon={closeIcon} ink={closeInk}>Close</mdw-button>
|
|
53
58
|
`
|
|
54
|
-
.on({
|
|
55
|
-
composed() {
|
|
56
|
-
const { content, slot } = this.refs;
|
|
57
|
-
content.append(slot);
|
|
58
|
-
},
|
|
59
|
-
})
|
|
60
59
|
.childEvents({
|
|
61
60
|
action: {
|
|
62
61
|
'~click'() {
|
|
@@ -75,21 +74,28 @@ export default Surface
|
|
|
75
74
|
|
|
76
75
|
:host {
|
|
77
76
|
--mdw-shape__size: var(--mdw-shape__small);
|
|
78
|
-
--mdw-
|
|
79
|
-
--mdw-shape__bg: rgb(var(--mdw-color__inverse-surface));
|
|
77
|
+
--mdw-bg: var(--mdw-color__inverse-surface);
|
|
80
78
|
--mdw-ink: var(--mdw-color__inverse-on-surface);
|
|
81
|
-
|
|
82
79
|
--mdw-type__line-height: var(--mdw-typescale__body-medium__line-height);
|
|
80
|
+
|
|
83
81
|
display: flex;
|
|
84
82
|
align-items: center;
|
|
85
83
|
|
|
86
|
-
|
|
84
|
+
grid-area: snackbar;
|
|
85
|
+
|
|
86
|
+
padding-inline: 16px;
|
|
87
87
|
|
|
88
|
+
pointer-events: auto;
|
|
89
|
+
|
|
90
|
+
filter: var(--mdw-elevation__drop-shadow__3);
|
|
88
91
|
opacity: 0;
|
|
89
92
|
transform: translateY(25%) scaleY(0.25);
|
|
90
93
|
transform-origin: bottom center;
|
|
91
94
|
visibility: hidden; /* Remove from tab order */
|
|
92
|
-
z-index:
|
|
95
|
+
z-index: 22;
|
|
96
|
+
|
|
97
|
+
background-color: rgb(var(--mdw-bg));
|
|
98
|
+
color: rgb(var(--mdw-ink));
|
|
93
99
|
|
|
94
100
|
font: var(--mdw-typescale__body-medium__font);
|
|
95
101
|
letter-spacing: var(--mdw-typescale__body-medium__letter-spacing);
|
|
@@ -112,7 +118,7 @@ export default Surface
|
|
|
112
118
|
:host([open]) {
|
|
113
119
|
opacity: 1;
|
|
114
120
|
transform: scale(1);
|
|
115
|
-
visibility:
|
|
121
|
+
visibility: inherit;
|
|
116
122
|
}
|
|
117
123
|
|
|
118
124
|
#content {
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import CustomElement from '../core/CustomElement.js';
|
|
2
|
+
import DelegatesFocusMixin from '../mixins/DelegatesFocusMixin.js';
|
|
3
|
+
|
|
4
|
+
export default CustomElement
|
|
5
|
+
.extend()
|
|
6
|
+
.mixin(DelegatesFocusMixin)
|
|
7
|
+
.html`
|
|
8
|
+
<slot id=slot></slot>
|
|
9
|
+
`
|
|
10
|
+
.css`
|
|
11
|
+
:host {
|
|
12
|
+
display: grid;
|
|
13
|
+
align-items: flex-end;
|
|
14
|
+
grid-template:
|
|
15
|
+
"snackbar" auto
|
|
16
|
+
/ minmax(auto, 60ch);
|
|
17
|
+
|
|
18
|
+
justify-content: center;
|
|
19
|
+
|
|
20
|
+
margin: 16px;
|
|
21
|
+
|
|
22
|
+
pointer-events: none;
|
|
23
|
+
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@media (min-width: 648px) {
|
|
27
|
+
:host {
|
|
28
|
+
grid-template-columns: minmax(auto, 1fr);
|
|
29
|
+
|
|
30
|
+
margin: 24px;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
@media (min-width: 1248px) {
|
|
35
|
+
:host {
|
|
36
|
+
grid-template-columns: minmax(auto, 60ch);
|
|
37
|
+
justify-content: flex-start;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
`
|
|
42
|
+
.autoRegister('mdw-snackbar-container');
|
package/components/Surface.js
CHANGED
|
@@ -1,32 +1,37 @@
|
|
|
1
1
|
import CustomElement from '../core/CustomElement.js';
|
|
2
|
+
import ElevationMixin from '../mixins/ElevationMixin.js';
|
|
2
3
|
import FlexableMixin from '../mixins/FlexableMixin.js';
|
|
3
4
|
import ShapeMixin from '../mixins/ShapeMixin.js';
|
|
4
|
-
import SurfaceMixin from '../mixins/SurfaceMixin.js';
|
|
5
5
|
import ThemableMixin from '../mixins/ThemableMixin.js';
|
|
6
6
|
|
|
7
7
|
export default CustomElement
|
|
8
8
|
.extend()
|
|
9
9
|
.mixin(ThemableMixin)
|
|
10
10
|
.mixin(FlexableMixin)
|
|
11
|
-
.mixin(
|
|
11
|
+
.mixin(ElevationMixin)
|
|
12
12
|
.mixin(ShapeMixin)
|
|
13
13
|
.html`<slot id=slot></slot>`
|
|
14
|
-
.on({
|
|
15
|
-
composed() {
|
|
16
|
-
const { surface, shape } = this.refs;
|
|
17
|
-
surface.append(shape);
|
|
18
|
-
},
|
|
19
|
-
})
|
|
20
14
|
.css`
|
|
21
15
|
:host {
|
|
22
|
-
--mdw-
|
|
16
|
+
--mdw-bg: var(--mdw-color__surface);
|
|
23
17
|
--mdw-ink: var(--mdw-color__on-surface);
|
|
24
18
|
position: relative;
|
|
19
|
+
|
|
20
|
+
filter: var(--mdw-elevation__drop-shadow__0);
|
|
25
21
|
|
|
22
|
+
background-color: rgb(var(--mdw-bg));
|
|
26
23
|
color: rgb(var(--mdw-ink));
|
|
27
24
|
|
|
28
25
|
font: var(--mdw-type__font);
|
|
29
26
|
letter-spacing: var(--mdw-type__letter-spacing);
|
|
30
|
-
|
|
27
|
+
|
|
28
|
+
transition: filter 200ms;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
:host(:where([elevation="1"])) { filter: var(--mdw-elevation__drop-shadow__1); }
|
|
32
|
+
:host(:where([elevation="2"])) { filter: var(--mdw-elevation__drop-shadow__2); }
|
|
33
|
+
:host(:where([elevation="3"])) { filter: var(--mdw-elevation__drop-shadow__3); }
|
|
34
|
+
:host(:where([elevation="4"])) { filter: var(--mdw-elevation__drop-shadow__4); }
|
|
35
|
+
:host(:where([elevation="5"])) { filter: var(--mdw-elevation__drop-shadow__5); }
|
|
31
36
|
`
|
|
32
37
|
.autoRegister('mdw-surface');
|
package/components/Switch.js
CHANGED
|
@@ -38,22 +38,9 @@ export default CustomElement
|
|
|
38
38
|
</mdw-switch-icon>
|
|
39
39
|
<slot id=slot></slot>
|
|
40
40
|
`
|
|
41
|
-
.
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
if (event.target !== control) {
|
|
45
|
-
// Label-like click
|
|
46
|
-
event.stopPropagation();
|
|
47
|
-
control.click();
|
|
48
|
-
}
|
|
49
|
-
},
|
|
50
|
-
})
|
|
51
|
-
.on({
|
|
52
|
-
composed() {
|
|
53
|
-
const { switch: switchEl, state, control } = this.refs;
|
|
54
|
-
switchEl.append(state, control);
|
|
55
|
-
control.setAttribute('role', 'switch');
|
|
56
|
-
},
|
|
41
|
+
.recompose(({ refs: { switch: switchEl, state, control } }) => {
|
|
42
|
+
switchEl.append(state, control);
|
|
43
|
+
control.setAttribute('role', 'switch');
|
|
57
44
|
})
|
|
58
45
|
.methods({
|
|
59
46
|
/**
|
package/components/SwitchIcon.js
CHANGED
|
@@ -3,6 +3,9 @@ import './Shape.js';
|
|
|
3
3
|
import CustomElement from '../core/CustomElement.js';
|
|
4
4
|
import ShapeMixin from '../mixins/ShapeMixin.js';
|
|
5
5
|
import ThemableMixin from '../mixins/ThemableMixin.js';
|
|
6
|
+
import { loadGlobalStyles } from '../services/rtl.js';
|
|
7
|
+
|
|
8
|
+
loadGlobalStyles();
|
|
6
9
|
|
|
7
10
|
export default CustomElement
|
|
8
11
|
.extend()
|
|
@@ -50,28 +53,29 @@ export default CustomElement
|
|
|
50
53
|
hasIcon({ icon, src, unselectedIcon, unselectedSrc }) {
|
|
51
54
|
return Boolean(icon || src || unselectedIcon || unselectedSrc);
|
|
52
55
|
},
|
|
56
|
+
iconVariation({ selected }) {
|
|
57
|
+
return selected ? 'filled' : null;
|
|
58
|
+
},
|
|
53
59
|
})
|
|
54
60
|
.html`
|
|
55
|
-
<div id=
|
|
56
|
-
<
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
61
|
+
<div id=track selected={checked} disabled={disabled}>
|
|
62
|
+
<div id=thumb selected={checked} pressed={pressed} disabled={disabled}>
|
|
63
|
+
<mdw-box block id=thumb-shape selected={checked} pressed={pressed} hovered={hovered} focused={focused} icon={hasIcon}
|
|
64
|
+
color={_thumbColor} active={_active} ink={_thumbInk} disabled={disabled}></mdw-box>
|
|
65
|
+
<mdw-icon ink={_iconInk} class=icon id=icon src={src} selected={checked} icon={icon} variation={iconVariation}></mdw-icon>
|
|
66
|
+
<mdw-icon ink={_iconInk} class=icon id=selected-icon src={selectedIconSrc} selected={checked} icon={selectedIcon} variation=filled></mdw-icon>
|
|
67
|
+
<mdw-icon ink={_iconInk} class=icon id=unselected-icon src={unselectedIconSrc} selected={checked} icon={unselectedIcon}></mdw-icon>
|
|
68
|
+
<slot id=slot selected={checked}></slot>
|
|
69
|
+
</div>
|
|
62
70
|
</div>
|
|
63
71
|
`
|
|
72
|
+
.recompose(({ refs: { outline } }) => {
|
|
73
|
+
outline.removeAttribute('mdw-if');
|
|
74
|
+
outline.setAttribute('selected', '{checked}');
|
|
75
|
+
outline.setAttribute('errored', '{errored}');
|
|
76
|
+
outline.setAttribute('disabled', '{disabled}');
|
|
77
|
+
})
|
|
64
78
|
.on({
|
|
65
|
-
composed() {
|
|
66
|
-
const { outline, shape: track } = this.refs;
|
|
67
|
-
track.id = 'track';
|
|
68
|
-
track.setAttribute('selected', '{checked}');
|
|
69
|
-
track.setAttribute('disabled', '{disabled}');
|
|
70
|
-
outline.removeAttribute('mdw-if');
|
|
71
|
-
outline.setAttribute('selected', '{checked}');
|
|
72
|
-
outline.setAttribute('errored', '{errored}');
|
|
73
|
-
outline.setAttribute('disabled', '{disabled}');
|
|
74
|
-
},
|
|
75
79
|
dragValueChanged(oldValue, newValue) {
|
|
76
80
|
if (newValue == null) {
|
|
77
81
|
this.refs.thumb.style.removeProperty('--mdw-switch__value');
|
|
@@ -116,6 +120,7 @@ export default CustomElement
|
|
|
116
120
|
inset: 0;
|
|
117
121
|
|
|
118
122
|
background-color: rgb(var(--mdw-color__surface-container-highest));
|
|
123
|
+
border-radius: inherit;
|
|
119
124
|
}
|
|
120
125
|
|
|
121
126
|
#track[selected] {
|
|
@@ -123,19 +128,17 @@ export default CustomElement
|
|
|
123
128
|
}
|
|
124
129
|
|
|
125
130
|
#track[disabled] {
|
|
126
|
-
|
|
131
|
+
background-color: rgba(var(--mdw-color__surface-container-highest), calc(0.12/0.38));
|
|
127
132
|
}
|
|
128
133
|
|
|
129
134
|
#track[disabled][selected] {
|
|
130
|
-
background-color:
|
|
135
|
+
background-color: rgba(var(--mdw-color__on-surface), calc(0.12/0.38));
|
|
131
136
|
}
|
|
132
137
|
|
|
133
138
|
#outline {
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
drop-shadow(-1px 0px 0px currentColor)
|
|
138
|
-
drop-shadow(0px -1px 0px currentColor);
|
|
139
|
+
border-width: 2px;
|
|
140
|
+
|
|
141
|
+
z-index: 1;
|
|
139
142
|
|
|
140
143
|
color: rgb(var(--mdw-color__outline));
|
|
141
144
|
}
|
|
@@ -145,7 +148,7 @@ export default CustomElement
|
|
|
145
148
|
}
|
|
146
149
|
|
|
147
150
|
#outline[disabled] {
|
|
148
|
-
color:
|
|
151
|
+
color: rgba(var(--mdw-color__on-surface), calc(0.12/0.38));
|
|
149
152
|
}
|
|
150
153
|
|
|
151
154
|
#outline[selected] {
|
|
@@ -166,6 +169,7 @@ export default CustomElement
|
|
|
166
169
|
|
|
167
170
|
transform: translateX(calc(var(--mdw-dir, 1) * var(--mdw-switch__value) * (52px - 100%)));
|
|
168
171
|
|
|
172
|
+
border-radius: inherit;
|
|
169
173
|
aspect-ratio: 1/1;
|
|
170
174
|
}
|
|
171
175
|
|
|
@@ -198,6 +202,8 @@ export default CustomElement
|
|
|
198
202
|
|
|
199
203
|
transform: scale(calc(16/28));
|
|
200
204
|
z-index: 0;
|
|
205
|
+
|
|
206
|
+
border-radius:inherit;
|
|
201
207
|
}
|
|
202
208
|
|
|
203
209
|
#thumb-shape[icon] {
|
|
@@ -221,6 +227,14 @@ export default CustomElement
|
|
|
221
227
|
transform: scale(1);
|
|
222
228
|
}
|
|
223
229
|
|
|
230
|
+
#thumb-shape[disabled] {
|
|
231
|
+
background-color: rgb(var(--mdw-color__on-surface));
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
#thumb-shape[disabled][selected] {
|
|
235
|
+
background-color: rgb(var(--mdw-color__surface));
|
|
236
|
+
}
|
|
237
|
+
|
|
224
238
|
/** Thumb Icons **/
|
|
225
239
|
|
|
226
240
|
.icon {
|
|
@@ -239,13 +253,11 @@ export default CustomElement
|
|
|
239
253
|
}
|
|
240
254
|
|
|
241
255
|
.icon:not([src]):empty {
|
|
242
|
-
display: none;
|
|
256
|
+
/* display: none; */
|
|
243
257
|
}
|
|
244
258
|
|
|
245
259
|
#icon, #unselected-icon {
|
|
246
260
|
opacity: 1;
|
|
247
|
-
|
|
248
|
-
font-variation-settings: 'FILL' 0;
|
|
249
261
|
}
|
|
250
262
|
|
|
251
263
|
#unselected-icon[selected] {
|
|
@@ -256,10 +268,6 @@ export default CustomElement
|
|
|
256
268
|
opacity: 1;
|
|
257
269
|
}
|
|
258
270
|
|
|
259
|
-
#icon[selected] {
|
|
260
|
-
font-variation-settings: 'FILL' 1;
|
|
261
|
-
}
|
|
262
|
-
|
|
263
271
|
#thumb[disabled] {
|
|
264
272
|
color: rgb(var(--mdw-color__on-surface));
|
|
265
273
|
}
|