diff options
| author | Henry Jameson <me@hjkos.com> | 2024-02-21 22:18:56 +0200 |
|---|---|---|
| committer | Henry Jameson <me@hjkos.com> | 2024-02-21 22:18:56 +0200 |
| commit | 8a21594dbc5075b92d245f4c83530c7dae71c62a (patch) | |
| tree | d471f798fe698dec8d0be36304605a339a85d634 /src/components/button.style.js | |
| parent | 7041d29eded837fb2b98670fa4758846ab3db9c3 (diff) | |
shadow slots work + minor fixes
Diffstat (limited to 'src/components/button.style.js')
| -rw-r--r-- | src/components/button.style.js | 43 |
1 files changed, 16 insertions, 27 deletions
diff --git a/src/components/button.style.js b/src/components/button.style.js index 1404061c..4910a5ac 100644 --- a/src/components/button.style.js +++ b/src/components/button.style.js @@ -1,23 +1,3 @@ -const buttonInsetFakeBorders = ['$borderSide(#FFFFFF, top, 0.2)', '$borderSide(#000000, bottom, 0.2)'] -const inputInsetFakeBorders = ['$borderSide(#FFFFFF, bottom, 0.2)', '$borderSide(#000000, top, 0.2)'] -const buttonOuterShadow = { - x: 0, - y: 0, - blur: 2, - spread: 0, - color: '#000000', - alpha: 1 -} - -const hoverGlow = { - x: 0, - y: 0, - blur: 4, - spread: 0, - color: '--text', - alpha: 1 -} - export default { name: 'Button', // Name of the component selector: '.button-default', // CSS selector/prefix @@ -50,51 +30,60 @@ export default { // Default rules, used as "default theme", essentially. defaultRules: [ { + component: 'Root', + directives: { + '--defaultButtonHoverGlow': 'shadow | 0 0 4 --text', + '--defaultButtonShadow': 'shadow | 0 0 2 #000000', + '--defaultButtonBevel': 'shadow | $borderSide(#FFFFFF, top, 0.2) | $borderSide(#000000, bottom, 0.2)', + '--pressedButtonBevel': 'shadow | $borderSide(#FFFFFF, bottom, 0.2)| $borderSide(#000000, top, 0.2)' + } + }, + { // component: 'Button', // no need to specify components every time unless you're specifying how other component should look // like within it directives: { background: '--fg', - shadow: [buttonOuterShadow, ...buttonInsetFakeBorders], + shadow: ['--defaultButtonShadow', '--defaultButtonBevel'], roundness: 3 } }, { state: ['hover'], directives: { - shadow: [hoverGlow, ...buttonInsetFakeBorders] + shadow: ['--defaultButtonHoverGlow', '--defaultButtonBevel'] } }, { state: ['pressed'], directives: { - shadow: [buttonOuterShadow, ...inputInsetFakeBorders] + shadow: ['--defaultButtonShadow', '--pressedButtonBevel'] } }, { state: ['hover', 'pressed'], directives: { - shadow: [hoverGlow, ...inputInsetFakeBorders] + shadow: ['--defaultButtonHoverGlow', '--pressedButtonBevel'] } }, { state: ['toggled'], directives: { background: '--inheritedBackground,-24.2', - shadow: [buttonOuterShadow, ...inputInsetFakeBorders] + shadow: ['--defaultButtonShadow', '--pressedButtonBevel'] } }, { state: ['toggled', 'hover'], directives: { background: '--inheritedBackground,-24.2', - shadow: [hoverGlow, ...inputInsetFakeBorders] + shadow: ['--defaultButtonHoverGlow', '--pressedButtonBevel'] } }, { state: ['disabled'], directives: { background: '$blend(--inheritedBackground, 0.25, --parent)', - shadow: [...buttonInsetFakeBorders] + shadow: ['--defaultButtonBevel'] } }, { |
