@@ -6,6 +6,7 @@ import { classMap } from "lit/directives/class-map.js";
6
6
import { ifDefined } from "lit/directives/if-defined.js" ;
7
7
import { styleMap } from "lit/directives/style-map.js" ;
8
8
import { capitalize , lowerCase } from "lodash-es" ;
9
+ import { when } from "lit/directives/when.js" ;
9
10
10
11
import "../index.css" ;
11
12
@@ -41,7 +42,7 @@ export const Template = ({
41
42
[ `${ rootClass } --${ withBorder } ` ] : typeof withBorder !== "undefined" && withBorder !== "default" ,
42
43
"is-selected" : ! isDisabled && isSelected ,
43
44
"is-disabled" : isDisabled ,
44
- "is-image" : ( isImage || isGradient )
45
+ "is-image" : ( isImage || isGradient || isMixedValue )
45
46
&& ( typeof gradient !== "undefined" || gradient !== "transparent" || imageUrl !== "undefined" ) ,
46
47
"is-mixedValue" : ! isDisabled && isMixedValue ,
47
48
[ `${ rootClass } --rectangle` ] : typeof isRectangle !== "undefined" && isRectangle !== false ,
@@ -52,8 +53,6 @@ export const Template = ({
52
53
id=${ ifDefined ( id ) }
53
54
style=${ ifDefined ( styleMap ( {
54
55
"--spectrum-picked-color" : swatchColor ,
55
- "--spectrum-gradient" : gradient ,
56
- "--spectrum-background" : `url(${ imageUrl } )` ,
57
56
...customStyles ,
58
57
} ) ) }
59
58
tabindex="0"
@@ -68,22 +67,39 @@ export const Template = ({
68
67
updateArgs ( { isSelected : ! isSelected } ) ;
69
68
} }
70
69
>
71
- ${ OpacityCheckerboard ( {
72
- customClasses : [ `${ rootClass } -fill` ] ,
73
- content : [
74
- ...( isDisabled ? [ Icon ( {
75
- customClasses : [ `${ rootClass } -disabledIcon` ] ,
76
- setName : "workflow" ,
77
- iconName : "Cancel" ,
78
- } , context ) ] : [ ] ) ,
79
- ...( isMixedValue ? [ Icon ( {
80
- customClasses : [ `${ rootClass } -mixedValueIcon` ] ,
81
- setName : "ui" ,
82
- iconName : "Dash" ,
83
- } , context ) ] : [ ] ) ,
84
- ]
85
- } , context ) }
86
- </ div >
70
+ ${ when ( isImage || isGradient , ( ) => html `
71
+ ${ when ( isImage , ( ) => html `
72
+ < div class ="${ rootClass } -fill " >
73
+ < img src ="${ imageUrl } " alt ="" class ="${ rootClass } -image " />
74
+ </ div >
75
+ ` ,
76
+ ( ) => html `
77
+ ${ OpacityCheckerboard ( {
78
+ customClasses : [ `${ rootClass } -fill` ] ,
79
+ content : [
80
+ html `< div class ='spectrum-Swatch-image ' style ='background: ${ ifDefined ( gradient ) } '> </ div > `
81
+ ] ,
82
+ } , context ) }
83
+ `
84
+ ) } `,
85
+ ( ) => html `
86
+ ${ OpacityCheckerboard ( {
87
+ customClasses : [ `${ rootClass } -fill` ] ,
88
+ content : [
89
+ ...( isDisabled ? [ Icon ( {
90
+ customClasses : [ `${ rootClass } -disabledIcon` ] ,
91
+ setName : "workflow" ,
92
+ iconName : "Cancel" ,
93
+ } , context ) ] : [ ] ) ,
94
+ ...( isMixedValue ? [ Icon ( {
95
+ customClasses : [ `${ rootClass } -mixedValueIcon` ] ,
96
+ setName : "ui" ,
97
+ iconName : "Dash" ,
98
+ } , context ) ] : [ ] ) ,
99
+ ]
100
+ } ) }
101
+ `
102
+ ) }
87
103
` ;
88
104
} ;
89
105
0 commit comments