UNPKG

2.6 kBSCSSView Raw
1@import 'restyle';
2
3@function my-fn($var) {
4 @return (
5 my-fn: $var * 2
6 );
7}
8
9@include restyle-define(test-cmpt, (
10 color: green,
11 width: 100%,
12 font-size: 10px,
13
14 restyle-function(my-fn): 1,
15
16 // modifiers...
17 '@restyle.modifiers': (
18 drop-all: (
19 '@restyle.remove': all
20 ),
21 drop-color: (
22 restyle-meta: (
23 description: drops color rule
24 ),
25 '@restyle.remove': color
26 ),
27 drop-width-font-size: (
28 '@restyle.remove': width font-size
29 ),
30 drop-all-new: (
31 '@restyle.remove': all,
32 color: blue,
33 height: 10px
34 ),
35 drop-functions: (
36 restyle-remove: functions
37 )
38 )
39));
40
41@include restyle-define(test-states, (
42 color: green,
43 '@restyle.states': (
44 hover: (
45 color: blue
46 ),
47 focus: (
48 color: purple
49 ),
50 other: (
51 color: red
52 )
53 ),
54 '@restyle.modifiers': (
55 drop-states: (
56 '@restyle.remove': states
57 ),
58 drop-hover-state: (
59 '@restyle.remove': '@states.hover'
60 ),
61 drop-multi-states: (
62 restyle-remove: states(hover) states(focus)
63 ),
64 drop-multi-states-and-color: (
65 restyle-remove: states(hover) states(focus) color
66 )
67 )
68));
69
70@include restyle-define(test-selectors, (
71 color: green,
72 '.first': (
73 color: blue
74 ),
75 '.second': (
76 color: red
77 ),
78 '@restyle.modifiers': (
79 drop-selectors: (
80 '@restyle.remove': selectors
81 ),
82 drop-first-selector: (
83 '@restyle.remove': '.first'
84 )
85 )
86));
87
88.should-have-all-styles {
89 @include restyle(test-cmpt);
90}
91
92.should-have-no-styles {
93 @include restyle(drop-all test-cmpt);
94}
95
96.should-have-no-color {
97 @include restyle(drop-color test-cmpt);
98}
99
100.should-have-no-functions {
101 @include restyle(drop-functions test-cmpt);
102}
103
104.should-have-no-width-font-size {
105 @include restyle(drop-width-font-size test-cmpt);
106}
107
108.should-have-color-blue-height-10px {
109 @include restyle(drop-all-new test-cmpt);
110}
111
112.should-have-hover-focus-state {
113 @include restyle(test-states);
114}
115
116.should-have-no-state {
117 @include restyle(drop-states test-states);
118}
119
120.should-have-focus-state {
121 @include restyle(drop-hover-state test-states);
122}
123
124.should-have-no-focus-no-hover {
125 @include restyle(drop-multi-states test-states);
126}
127
128.should-have-no-focus-no-hover-no-color {
129 @include restyle(drop-multi-states-and-color test-states);
130}
131
132
133.should-have-two-selectors {
134 @include restyle(test-selectors);
135}
136
137.should-have-no-selectors {
138 @include restyle(drop-selectors test-selectors);
139}
140
141.should-have-second-selector {
142 @include restyle(drop-first-selector test-selectors);
143}