@woosmap/ui 2.58.0 → 3.1.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/.storybook/preview.js +2 -2
- package/package.json +2 -2
- package/src/components/Demo/SkeletonDemo.js +17 -87
- package/src/components/Icon/Icon.js +15 -35
- package/src/styles/next-website/button.styl +343 -0
- package/src/styles/next-website/colors.styl +279 -0
- package/src/styles/next-website/demo.styl +65 -0
- package/src/styles/next-website/dropdown.styl +82 -0
- package/src/styles/next-website/font.styl +1 -0
- package/src/styles/next-website/input.styl +136 -0
- package/src/styles/next-website/mixins.styl +126 -0
- package/src/styles/next-website/select.styl +111 -0
- package/src/styles/next-website/tab.styl +41 -0
- package/src/styles/next-website/variables.styl +110 -0
- package/src/styles/style-next-website.styl +12 -12
- package/src/icons/battery.svg +0 -1
- package/src/icons/cars.svg +0 -1
- package/src/icons/green.svg +0 -1
- package/src/icons/map-hd.svg +0 -1
- package/src/icons/markers.svg +0 -1
- package/src/icons/notification.svg +0 -1
- package/src/icons/schedule.svg +0 -1
- package/src/icons/security.svg +0 -1
- package/src/icons/zoom.svg +0 -1
package/.storybook/preview.js
CHANGED
|
@@ -36,12 +36,12 @@ let isConsoleStyle = false;
|
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
if (mode === 'prod') {
|
|
39
|
-
import('../src/styles/style-website.styl');
|
|
39
|
+
import('../src/styles/style-next-website.styl');
|
|
40
40
|
import('../src/styles/style-stories.styl');
|
|
41
41
|
} else {
|
|
42
42
|
import('../src/styles/style-stories.styl').then((storiesStyl) => {
|
|
43
43
|
import('../src/styles/style-console.styl').then((consoleStylLoaded) => {
|
|
44
|
-
import('../src/styles/style-website.styl').then((websiteStylLoaded) => {
|
|
44
|
+
import('../src/styles/style-next-website.styl').then((websiteStylLoaded) => {
|
|
45
45
|
const storeGlobals = sessionStorage.getItem('@storybook/preview/store');
|
|
46
46
|
const globalTheme = storeGlobals ? JSON.parse(storeGlobals).globals.theme : null;
|
|
47
47
|
const defaultStyle = urlParams.get('theme')|| globalTheme || "Website theme";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@woosmap/ui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/WebGeoServices/ui.git"
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"scripts": {
|
|
29
29
|
"start": "yarn storybook:dev",
|
|
30
30
|
"build": "rimraf dist && NODE_ENV=production babel src --out-dir dist --copy-files --no-copy-ignored --ignore '**/*.stories.js,**/*.test.js,**/*.styl' && yarn build-css",
|
|
31
|
-
"build-css": "stylus ./src/styles/style-website.styl -o dist && stylus ./src/styles/style-console.styl -o dist && stylus ./src/styles/style-stories.styl -o dist",
|
|
31
|
+
"build-css": "stylus ./src/styles/style-next-website.styl -o dist && stylus ./src/styles/style-console.styl -o dist && stylus ./src/styles/style-stories.styl -o dist",
|
|
32
32
|
"test": "react-scripts test",
|
|
33
33
|
"test:generate-output": "react-scripts test --json --outputFile=./.storybook/jest-test-results.json --silent",
|
|
34
34
|
"prestorybook:dev": "clear && echo \"DOING FIRST TEST RUN\" && CI=true npm run test:generate-output",
|
|
@@ -160,78 +160,26 @@ export default class SkeletonDemo extends Component {
|
|
|
160
160
|
};
|
|
161
161
|
|
|
162
162
|
render() {
|
|
163
|
-
const {
|
|
164
|
-
noheader,
|
|
165
|
-
header,
|
|
166
|
-
id,
|
|
167
|
-
result,
|
|
168
|
-
withMap,
|
|
169
|
-
request,
|
|
170
|
-
response,
|
|
171
|
-
className,
|
|
172
|
-
leftContent,
|
|
173
|
-
docLink,
|
|
174
|
-
docLabel,
|
|
175
|
-
renderCode,
|
|
176
|
-
subHeader,
|
|
177
|
-
} = this.props;
|
|
163
|
+
const { result, request, response, renderCode } = this.props;
|
|
178
164
|
const { copied } = this.state;
|
|
179
165
|
return (
|
|
180
|
-
<
|
|
181
|
-
<div className="
|
|
182
|
-
|
|
183
|
-
<div className="
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
<a
|
|
190
|
-
rel="noreferrer"
|
|
191
|
-
href={docLink || tr('http://developers.woosmap.com')}
|
|
192
|
-
target="_blank"
|
|
193
|
-
onClick={() => {
|
|
194
|
-
const { trackEvent } = this.context;
|
|
195
|
-
if (trackEvent) {
|
|
196
|
-
trackEvent(
|
|
197
|
-
'Showcase',
|
|
198
|
-
"Developer's Documentation",
|
|
199
|
-
`User went to the ${header.title} documentation`
|
|
200
|
-
);
|
|
201
|
-
}
|
|
202
|
-
}}
|
|
203
|
-
>
|
|
204
|
-
{docLabel || tr('Go to documentation')}
|
|
205
|
-
</a>
|
|
206
|
-
</p>
|
|
207
|
-
<div className="demo__desc">{subHeader}</div>
|
|
166
|
+
<article className="demo">
|
|
167
|
+
<div className="demo__content">
|
|
168
|
+
<div className="demo__showcase">
|
|
169
|
+
<div className="demo__filters">
|
|
170
|
+
{this.renderHeaderFilters()}
|
|
171
|
+
{this.renderFooterFilters()}
|
|
172
|
+
</div>
|
|
173
|
+
<div className="demo__map">
|
|
174
|
+
<div className="map" ref={this.mapDivRef} />
|
|
208
175
|
</div>
|
|
209
|
-
)}
|
|
210
|
-
</div>
|
|
211
|
-
<div className="demo__content-wrapper">
|
|
212
|
-
<div className="demo__content-header">
|
|
213
|
-
{this.renderHeaderTagline()}
|
|
214
|
-
{this.renderHeaderFilters()}
|
|
215
176
|
</div>
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
<div className="demo__results__content">{result}</div>
|
|
223
|
-
</div>
|
|
224
|
-
) : null}
|
|
225
|
-
{withMap ? (
|
|
226
|
-
<div
|
|
227
|
-
className={cl('demo__map', {
|
|
228
|
-
'demo__map--small': result,
|
|
229
|
-
})}
|
|
230
|
-
>
|
|
231
|
-
<div className="map" ref={this.mapDivRef} />
|
|
232
|
-
</div>
|
|
233
|
-
) : null}
|
|
234
|
-
<div className="demo__api">
|
|
177
|
+
<div className="demo__data">
|
|
178
|
+
<div className="demo__results">
|
|
179
|
+
<div className="demo__results__header">{tr('Results')}</div>
|
|
180
|
+
<div className="demo__results__content">{result}</div>
|
|
181
|
+
</div>
|
|
182
|
+
<div className="demo__code">
|
|
235
183
|
<Tab
|
|
236
184
|
actions={[
|
|
237
185
|
{
|
|
@@ -271,7 +219,7 @@ export default class SkeletonDemo extends Component {
|
|
|
271
219
|
</div>
|
|
272
220
|
</div>
|
|
273
221
|
</div>
|
|
274
|
-
</
|
|
222
|
+
</article>
|
|
275
223
|
);
|
|
276
224
|
}
|
|
277
225
|
}
|
|
@@ -279,46 +227,28 @@ export default class SkeletonDemo extends Component {
|
|
|
279
227
|
SkeletonDemo.contextType = TrackEventContext;
|
|
280
228
|
|
|
281
229
|
SkeletonDemo.defaultProps = {
|
|
282
|
-
id: '',
|
|
283
|
-
docLink: null,
|
|
284
|
-
docLabel: null,
|
|
285
230
|
renderCode: null,
|
|
286
231
|
headerFilters: null,
|
|
287
232
|
headerTagline: null,
|
|
288
233
|
footerFilters: null,
|
|
289
|
-
leftContent: null,
|
|
290
|
-
className: '',
|
|
291
234
|
result: null,
|
|
292
|
-
withMap: false,
|
|
293
235
|
request: null,
|
|
294
236
|
response: {},
|
|
295
237
|
params: {},
|
|
296
|
-
noheader: false,
|
|
297
238
|
referer: '',
|
|
298
239
|
body: '',
|
|
299
240
|
method: '',
|
|
300
|
-
header: null,
|
|
301
|
-
subHeader: null,
|
|
302
241
|
};
|
|
303
242
|
SkeletonDemo.propTypes = {
|
|
304
|
-
id: PropTypes.string,
|
|
305
|
-
docLink: PropTypes.string,
|
|
306
243
|
renderCode: PropTypes.func,
|
|
307
|
-
docLabel: PropTypes.string,
|
|
308
244
|
params: PropTypes.object,
|
|
309
|
-
noheader: PropTypes.bool,
|
|
310
|
-
header: PropTypes.object,
|
|
311
245
|
headerTagline: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
|
|
312
|
-
className: PropTypes.string,
|
|
313
246
|
headerFilters: PropTypes.array,
|
|
314
247
|
footerFilters: PropTypes.array,
|
|
315
248
|
result: PropTypes.node,
|
|
316
|
-
withMap: PropTypes.bool,
|
|
317
|
-
leftContent: PropTypes.node,
|
|
318
249
|
request: PropTypes.string,
|
|
319
250
|
referer: PropTypes.string,
|
|
320
251
|
body: PropTypes.string,
|
|
321
252
|
method: PropTypes.string,
|
|
322
|
-
subHeader: PropTypes.object,
|
|
323
253
|
response: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),
|
|
324
254
|
};
|
|
@@ -1,23 +1,6 @@
|
|
|
1
1
|
import React, { Component } from 'react';
|
|
2
2
|
import cl from 'classnames';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
|
-
import { ReactComponent as Autocomplete } from '../../icons/autocomplete.svg';
|
|
5
|
-
import { ReactComponent as Buildings } from '../../icons/buildings.svg';
|
|
6
|
-
import { ReactComponent as Battery } from '../../icons/battery.svg';
|
|
7
|
-
import { ReactComponent as Cars } from '../../icons/cars.svg';
|
|
8
|
-
import { ReactComponent as Github } from '../../icons/github.svg';
|
|
9
|
-
import { ReactComponent as Green } from '../../icons/green.svg';
|
|
10
|
-
import { ReactComponent as MapHd } from '../../icons/map-hd.svg';
|
|
11
|
-
import { ReactComponent as Markers } from '../../icons/markers.svg';
|
|
12
|
-
import { ReactComponent as Notification } from '../../icons/notification.svg';
|
|
13
|
-
import { ReactComponent as Quote } from '../../icons/quote.svg';
|
|
14
|
-
import { ReactComponent as Position } from '../../icons/position.svg';
|
|
15
|
-
import { ReactComponent as SaveMoney } from '../../icons/save-money.svg';
|
|
16
|
-
import { ReactComponent as Schedule } from '../../icons/schedule.svg';
|
|
17
|
-
import { ReactComponent as Security } from '../../icons/security.svg';
|
|
18
|
-
import { ReactComponent as World } from '../../icons/world.svg';
|
|
19
|
-
import { ReactComponent as Zoom } from '../../icons/zoom.svg';
|
|
20
|
-
|
|
21
4
|
import { ReactComponent as Access } from '../../icons/access.svg';
|
|
22
5
|
import { ReactComponent as Add } from '../../icons/add.svg';
|
|
23
6
|
import { ReactComponent as AddCircle } from '../../icons/add-circle.svg';
|
|
@@ -37,10 +20,12 @@ import { ReactComponent as ArrowLink } from '../../icons/arrow-link.svg';
|
|
|
37
20
|
import { ReactComponent as Asset } from '../../icons/asset.svg';
|
|
38
21
|
import { ReactComponent as AssetAddFile } from '../../icons/asset-add-file.svg';
|
|
39
22
|
import { ReactComponent as AssetAdd } from '../../icons/asset-add.svg';
|
|
23
|
+
import { ReactComponent as Autocomplete } from '../../icons/autocomplete.svg';
|
|
40
24
|
import { ReactComponent as Bank } from '../../icons/bank.svg';
|
|
41
25
|
import { ReactComponent as Beaker } from '../../icons/beaker.svg';
|
|
42
26
|
import { ReactComponent as Bell } from '../../icons/bell.svg';
|
|
43
27
|
import { ReactComponent as Bookmark } from '../../icons/bookmark.svg';
|
|
28
|
+
import { ReactComponent as Buildings } from '../../icons/buildings.svg';
|
|
44
29
|
import { ReactComponent as Bulb } from '../../icons/bulb.svg';
|
|
45
30
|
import { ReactComponent as CaretBotton } from '../../icons/caret-bottom.svg';
|
|
46
31
|
import { ReactComponent as CaretLeft } from '../../icons/caret-left.svg';
|
|
@@ -72,6 +57,7 @@ import { ReactComponent as Exchange } from '../../icons/exchange.svg';
|
|
|
72
57
|
import { ReactComponent as Expand } from '../../icons/expand.svg';
|
|
73
58
|
import { ReactComponent as Export } from '../../icons/export.svg';
|
|
74
59
|
import { ReactComponent as Flag } from '../../icons/flag.svg';
|
|
60
|
+
import { ReactComponent as Github } from '../../icons/github.svg';
|
|
75
61
|
import { ReactComponent as Globe } from '../../icons/globe.svg';
|
|
76
62
|
import { ReactComponent as Home } from '../../icons/home.svg';
|
|
77
63
|
import { ReactComponent as HomeUser } from '../../icons/home-user.svg';
|
|
@@ -93,19 +79,23 @@ import { ReactComponent as Organization } from '../../icons/organization.svg';
|
|
|
93
79
|
import { ReactComponent as Organizations } from '../../icons/organizations.svg';
|
|
94
80
|
import { ReactComponent as Phone } from '../../icons/phone.svg';
|
|
95
81
|
import { ReactComponent as Platform } from '../../icons/platform.svg';
|
|
82
|
+
import { ReactComponent as Position } from '../../icons/position.svg';
|
|
96
83
|
import { ReactComponent as ProductActivated } from '../../icons/product-activated.svg';
|
|
97
84
|
import { ReactComponent as ProductAdd } from '../../icons/product-add.svg';
|
|
98
85
|
import { ReactComponent as Products } from '../../icons/products.svg';
|
|
99
86
|
import { ReactComponent as Projects } from '../../icons/projects.svg';
|
|
100
87
|
import { ReactComponent as Puzzle } from '../../icons/puzzle.svg';
|
|
101
88
|
import { ReactComponent as Question } from '../../icons/question.svg';
|
|
89
|
+
import { ReactComponent as Quote } from '../../icons/quote.svg';
|
|
102
90
|
import { ReactComponent as Receipt } from '../../icons/receipt.svg';
|
|
91
|
+
import { ReactComponent as SaveMoney } from '../../icons/save-money.svg';
|
|
103
92
|
import { ReactComponent as Search } from '../../icons/search.svg';
|
|
104
93
|
import { ReactComponent as SeePage } from '../../icons/see-page.svg';
|
|
105
94
|
import { ReactComponent as Settings } from '../../icons/settings.svg';
|
|
106
95
|
import { ReactComponent as Shield } from '../../icons/shield.svg';
|
|
107
96
|
import { ReactComponent as Star } from '../../icons/star.svg';
|
|
108
97
|
import { ReactComponent as StarFilled } from '../../icons/star-filled.svg';
|
|
98
|
+
import { ReactComponent as Stores } from '../../icons/stores.svg';
|
|
109
99
|
import { ReactComponent as Support } from '../../icons/support.svg';
|
|
110
100
|
import { ReactComponent as Switch } from '../../icons/switch.svg';
|
|
111
101
|
import { ReactComponent as Team } from '../../icons/team.svg';
|
|
@@ -117,36 +107,19 @@ import { ReactComponent as ViewList } from '../../icons/view-list.svg';
|
|
|
117
107
|
import { ReactComponent as ViewMiniCard } from '../../icons/view-mini-card.svg';
|
|
118
108
|
import { ReactComponent as Warning } from '../../icons/warning.svg';
|
|
119
109
|
import { ReactComponent as Woosmap } from '../../icons/woosmap.svg';
|
|
110
|
+
import { ReactComponent as World } from '../../icons/world.svg';
|
|
120
111
|
import { ReactComponent as Address } from '../../icons/address.svg';
|
|
121
112
|
import { ReactComponent as Distance } from '../../icons/distance.svg';
|
|
122
113
|
import { ReactComponent as Geolocation } from '../../icons/geolocation.svg';
|
|
123
114
|
import { ReactComponent as Localities } from '../../icons/localities.svg';
|
|
124
115
|
import { ReactComponent as Map } from '../../icons/map.svg';
|
|
125
116
|
import { ReactComponent as Merchant } from '../../icons/merchant.svg';
|
|
126
|
-
import { ReactComponent as Stores } from '../../icons/stores.svg';
|
|
127
117
|
import { ReactComponent as Traffic } from '../../icons/traffic.svg';
|
|
128
118
|
import { ReactComponent as SocialFacebook } from '../../icons/social-facebook.svg';
|
|
129
119
|
import { ReactComponent as SocialLinkedin } from '../../icons/social-linkedin.svg';
|
|
130
120
|
import { ReactComponent as SocialTwitter } from '../../icons/social-twitter.svg';
|
|
131
121
|
|
|
132
122
|
const Icons = {
|
|
133
|
-
autocomplete: Autocomplete,
|
|
134
|
-
battery: Battery,
|
|
135
|
-
buildings: Buildings,
|
|
136
|
-
cars: Cars,
|
|
137
|
-
github: Github,
|
|
138
|
-
green: Green,
|
|
139
|
-
'map-hd': MapHd,
|
|
140
|
-
markers: Markers,
|
|
141
|
-
notification: Notification,
|
|
142
|
-
position: Position,
|
|
143
|
-
quote: Quote,
|
|
144
|
-
'save-money': SaveMoney,
|
|
145
|
-
schedule: Schedule,
|
|
146
|
-
security: Security,
|
|
147
|
-
world: World,
|
|
148
|
-
zoom: Zoom,
|
|
149
|
-
|
|
150
123
|
access: Access,
|
|
151
124
|
add: Add,
|
|
152
125
|
'add-circle': AddCircle,
|
|
@@ -166,10 +139,12 @@ const Icons = {
|
|
|
166
139
|
asset: Asset,
|
|
167
140
|
'asset-add-file': AssetAddFile,
|
|
168
141
|
'asset-add': AssetAdd,
|
|
142
|
+
autocomplete: Autocomplete,
|
|
169
143
|
bank: Bank,
|
|
170
144
|
beaker: Beaker,
|
|
171
145
|
bell: Bell,
|
|
172
146
|
bookmark: Bookmark,
|
|
147
|
+
buildings: Buildings,
|
|
173
148
|
bulb: Bulb,
|
|
174
149
|
'caret-bottom': CaretBotton,
|
|
175
150
|
'caret-left': CaretLeft,
|
|
@@ -202,6 +177,7 @@ const Icons = {
|
|
|
202
177
|
export: Export,
|
|
203
178
|
flag: Flag,
|
|
204
179
|
globe: Globe,
|
|
180
|
+
github: Github,
|
|
205
181
|
home: Home,
|
|
206
182
|
'home-user': HomeUser,
|
|
207
183
|
import: Import,
|
|
@@ -222,13 +198,16 @@ const Icons = {
|
|
|
222
198
|
organizations: Organizations,
|
|
223
199
|
phone: Phone,
|
|
224
200
|
platform: Platform,
|
|
201
|
+
position: Position,
|
|
225
202
|
'product-activated': ProductActivated,
|
|
226
203
|
'product-add': ProductAdd,
|
|
227
204
|
products: Products,
|
|
228
205
|
projects: Projects,
|
|
229
206
|
puzzle: Puzzle,
|
|
230
207
|
question: Question,
|
|
208
|
+
quote: Quote,
|
|
231
209
|
receipt: Receipt,
|
|
210
|
+
'save-money': SaveMoney,
|
|
232
211
|
search: Search,
|
|
233
212
|
'see-page': SeePage,
|
|
234
213
|
settings: Settings,
|
|
@@ -247,6 +226,7 @@ const Icons = {
|
|
|
247
226
|
'view-mini-card': ViewMiniCard,
|
|
248
227
|
warning: Warning,
|
|
249
228
|
woosmap: Woosmap,
|
|
229
|
+
world: World,
|
|
250
230
|
address: Address,
|
|
251
231
|
distance: Distance,
|
|
252
232
|
geolocation: Geolocation,
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
.btn
|
|
2
|
+
cursor pointer
|
|
3
|
+
text-decoration none
|
|
4
|
+
.icon
|
|
5
|
+
flex-shrink 0
|
|
6
|
+
&.active
|
|
7
|
+
cursor default
|
|
8
|
+
&:disabled
|
|
9
|
+
&:not(.btn--group)
|
|
10
|
+
cursor default
|
|
11
|
+
opacity .3
|
|
12
|
+
box-shadow none
|
|
13
|
+
&:hover
|
|
14
|
+
opacity .3
|
|
15
|
+
&--icon
|
|
16
|
+
&:not(.btn--link):not(.btn--link-primary):not(.btn--link-info):not(.btn--link-flex):not(.btn--link-flex-info):not(.btn--group):not(.btn--sidebar-link)
|
|
17
|
+
sq()
|
|
18
|
+
btn()
|
|
19
|
+
justify-content center
|
|
20
|
+
padding 0
|
|
21
|
+
&.btn--loading
|
|
22
|
+
padding 0
|
|
23
|
+
.icon
|
|
24
|
+
sq(2.4)
|
|
25
|
+
&.btn--small
|
|
26
|
+
buttonSmall()
|
|
27
|
+
width $buttonHeightSmall
|
|
28
|
+
&.btn--mini
|
|
29
|
+
buttonMini()
|
|
30
|
+
width $buttonHeightMini
|
|
31
|
+
&.btn--large
|
|
32
|
+
buttonLarge()
|
|
33
|
+
width $buttonHeightLarge
|
|
34
|
+
&.btn--primary
|
|
35
|
+
&:disabled
|
|
36
|
+
&:hover
|
|
37
|
+
background-color $primary
|
|
38
|
+
.icon
|
|
39
|
+
fill $light
|
|
40
|
+
&.btn--loading
|
|
41
|
+
&:hover
|
|
42
|
+
background-color $primary
|
|
43
|
+
&.btn--secondary
|
|
44
|
+
&:disabled
|
|
45
|
+
&:hover
|
|
46
|
+
background-color transparent
|
|
47
|
+
border-color $inputBorderColor
|
|
48
|
+
.icon
|
|
49
|
+
fill $secondary
|
|
50
|
+
&.btn--important
|
|
51
|
+
&:disabled
|
|
52
|
+
&:hover
|
|
53
|
+
background-color $error
|
|
54
|
+
.icon
|
|
55
|
+
fill $light
|
|
56
|
+
&.btn--has-icon
|
|
57
|
+
&:not(.btn--small):not(.btn--large)
|
|
58
|
+
mbi(.4)
|
|
59
|
+
&.btn--icon
|
|
60
|
+
flex-shrink 0
|
|
61
|
+
.icon
|
|
62
|
+
flex-shrink 0
|
|
63
|
+
&--primary
|
|
64
|
+
&--important
|
|
65
|
+
btn()
|
|
66
|
+
textShadow()
|
|
67
|
+
color $light
|
|
68
|
+
.icon
|
|
69
|
+
fill $light
|
|
70
|
+
trans()
|
|
71
|
+
&.btn--loading:not(.btn--small):not(.btn--large)
|
|
72
|
+
disableHoverEffect()
|
|
73
|
+
.icon
|
|
74
|
+
margin-right .3rem
|
|
75
|
+
sq(2.2)
|
|
76
|
+
&.btn--has-icon
|
|
77
|
+
&:not(.btn--small):not(.btn--large)
|
|
78
|
+
mbi(.4)
|
|
79
|
+
&.btn--icon
|
|
80
|
+
flex-shrink 0
|
|
81
|
+
.icon
|
|
82
|
+
flex-shrink 0
|
|
83
|
+
&--primary
|
|
84
|
+
background-color $primary
|
|
85
|
+
&:disabled
|
|
86
|
+
&:hover
|
|
87
|
+
background-color $primary
|
|
88
|
+
&--important
|
|
89
|
+
background-color $error
|
|
90
|
+
&:disabled
|
|
91
|
+
&:hover
|
|
92
|
+
background-color $error
|
|
93
|
+
&--secondary
|
|
94
|
+
btn()
|
|
95
|
+
color $secondary
|
|
96
|
+
background-color $light
|
|
97
|
+
border .1rem solid $inputBorderColor
|
|
98
|
+
.icon
|
|
99
|
+
fill $secondary
|
|
100
|
+
trans()
|
|
101
|
+
&.btn--has-icon
|
|
102
|
+
mbi(.4)
|
|
103
|
+
&.btn--icon
|
|
104
|
+
flex-shrink 0
|
|
105
|
+
.icon
|
|
106
|
+
flex-shrink 0
|
|
107
|
+
&:hover
|
|
108
|
+
border-color $success
|
|
109
|
+
&.btn--loading
|
|
110
|
+
&:hover
|
|
111
|
+
background-color transparent
|
|
112
|
+
color $secondary
|
|
113
|
+
cursor default
|
|
114
|
+
border-color $inputBorderColor
|
|
115
|
+
.icon
|
|
116
|
+
fill $secondary
|
|
117
|
+
&:disabled
|
|
118
|
+
opacity .4
|
|
119
|
+
cursor default
|
|
120
|
+
&:disabled
|
|
121
|
+
&:hover
|
|
122
|
+
opacity .4
|
|
123
|
+
background-color transparent
|
|
124
|
+
color $secondary
|
|
125
|
+
border-color $inputBorderColor
|
|
126
|
+
.icon
|
|
127
|
+
fill $secondary
|
|
128
|
+
&--inverse
|
|
129
|
+
btn()
|
|
130
|
+
background-color transparent
|
|
131
|
+
border .1rem solid $light
|
|
132
|
+
color $light
|
|
133
|
+
.icon
|
|
134
|
+
fill $light
|
|
135
|
+
&.btn--has-icon
|
|
136
|
+
mbi(.4)
|
|
137
|
+
&.btn--icon
|
|
138
|
+
flex-shrink 0
|
|
139
|
+
.icon
|
|
140
|
+
flex-shrink 0
|
|
141
|
+
&:hover
|
|
142
|
+
border-color $success
|
|
143
|
+
color $light
|
|
144
|
+
.icon
|
|
145
|
+
fill $light
|
|
146
|
+
&:disabled
|
|
147
|
+
opacity .3
|
|
148
|
+
&:hover
|
|
149
|
+
cursor default
|
|
150
|
+
border-color $success
|
|
151
|
+
color $light
|
|
152
|
+
.icon
|
|
153
|
+
fill $light
|
|
154
|
+
&--link-flex
|
|
155
|
+
&--link-flex-info
|
|
156
|
+
&--link
|
|
157
|
+
&--link-primary
|
|
158
|
+
&--link-info
|
|
159
|
+
focus()
|
|
160
|
+
trans()
|
|
161
|
+
height auto
|
|
162
|
+
padding 0
|
|
163
|
+
line-height $fontSize
|
|
164
|
+
color $secondary
|
|
165
|
+
vertical-align baseline
|
|
166
|
+
position relative
|
|
167
|
+
.btn__label
|
|
168
|
+
line-height $fontSize
|
|
169
|
+
vertical-align baseline
|
|
170
|
+
&:hover
|
|
171
|
+
text-decoration underline
|
|
172
|
+
color $primary
|
|
173
|
+
.icon
|
|
174
|
+
fill $primary
|
|
175
|
+
&:disabled
|
|
176
|
+
cursor default
|
|
177
|
+
opacity .3
|
|
178
|
+
&:hover
|
|
179
|
+
color inherit
|
|
180
|
+
opacity .3
|
|
181
|
+
text-decoration underline
|
|
182
|
+
.icon
|
|
183
|
+
fill inherit
|
|
184
|
+
.label &
|
|
185
|
+
&:hover
|
|
186
|
+
.icon
|
|
187
|
+
fill $light
|
|
188
|
+
&.btn--icon
|
|
189
|
+
padding 0
|
|
190
|
+
text-decoration none
|
|
191
|
+
&.btn--has-icon
|
|
192
|
+
&:not(.btn--icon-right)
|
|
193
|
+
.icon
|
|
194
|
+
margin-right .3rem
|
|
195
|
+
&.btn--icon-right
|
|
196
|
+
.icon
|
|
197
|
+
margin-left .3rem
|
|
198
|
+
&--link
|
|
199
|
+
&--link-primary
|
|
200
|
+
&--link-info
|
|
201
|
+
.icon
|
|
202
|
+
trans()
|
|
203
|
+
position relative
|
|
204
|
+
top .7rem
|
|
205
|
+
&:not(.btn--icon-right)
|
|
206
|
+
.icon
|
|
207
|
+
left -.3rem
|
|
208
|
+
&.btn--small
|
|
209
|
+
.icon
|
|
210
|
+
top .5rem
|
|
211
|
+
left -.3rem
|
|
212
|
+
&.btn--large
|
|
213
|
+
.icon
|
|
214
|
+
top 1.2rem
|
|
215
|
+
left -.3rem
|
|
216
|
+
&.btn--icon-right
|
|
217
|
+
.icon
|
|
218
|
+
right -.3rem
|
|
219
|
+
&.btn--small
|
|
220
|
+
.icon
|
|
221
|
+
top .5rem
|
|
222
|
+
rigth -.3rem
|
|
223
|
+
&.btn--large
|
|
224
|
+
.icon
|
|
225
|
+
top 1.2rem
|
|
226
|
+
rigth -.3rem
|
|
227
|
+
&--link-flex
|
|
228
|
+
&--link-flex-info
|
|
229
|
+
display flex
|
|
230
|
+
align-items center
|
|
231
|
+
&.btn--no-label
|
|
232
|
+
display flex
|
|
233
|
+
align-items center
|
|
234
|
+
justify-content center
|
|
235
|
+
&.btn--large
|
|
236
|
+
&.btn--small
|
|
237
|
+
height auto
|
|
238
|
+
padding 0 !important
|
|
239
|
+
&--link-flex-info
|
|
240
|
+
&:hover
|
|
241
|
+
color $primary
|
|
242
|
+
text-decoration none
|
|
243
|
+
.icon
|
|
244
|
+
fill $primary
|
|
245
|
+
&:disabled
|
|
246
|
+
&:hover
|
|
247
|
+
color $primary
|
|
248
|
+
text-decoration none
|
|
249
|
+
.icon
|
|
250
|
+
fill $primary
|
|
251
|
+
&--link
|
|
252
|
+
&--link-flex
|
|
253
|
+
&.btn--light-color
|
|
254
|
+
color $secondary-medium40
|
|
255
|
+
.icon
|
|
256
|
+
trans()
|
|
257
|
+
fill $secondary-medium40
|
|
258
|
+
&:hover
|
|
259
|
+
color $primary
|
|
260
|
+
.icon
|
|
261
|
+
fill $primary
|
|
262
|
+
&--link-primary
|
|
263
|
+
color $primary
|
|
264
|
+
.icon
|
|
265
|
+
fill $primary
|
|
266
|
+
&:disabled
|
|
267
|
+
&:hover
|
|
268
|
+
color $primary
|
|
269
|
+
text-decoration none
|
|
270
|
+
.icon
|
|
271
|
+
fill $primary
|
|
272
|
+
&--link-info
|
|
273
|
+
&--link-flex-info
|
|
274
|
+
color $info
|
|
275
|
+
.icon
|
|
276
|
+
fill $info
|
|
277
|
+
&:hover
|
|
278
|
+
color $primary
|
|
279
|
+
text-decoration underline
|
|
280
|
+
.icon
|
|
281
|
+
fill $primary
|
|
282
|
+
&--link-info
|
|
283
|
+
&--link-flex-info
|
|
284
|
+
&--link-flex
|
|
285
|
+
transition none
|
|
286
|
+
.icon
|
|
287
|
+
trans()
|
|
288
|
+
.btn__label
|
|
289
|
+
trans()
|
|
290
|
+
|
|
291
|
+
&--has-icon
|
|
292
|
+
&:not(.btn--icon):not(.btn--link):not(.btn--link-primary):not(.btn--link-info):not(.btn--link-flex):not(.btn--link-flex-info):not(.btn--loading):not(.btn--mini):not(.btn--small):not(.btn--large):not(.btn--dropdown-item):not(.btn--tab):not(.btn--sidebar-link):not(.btn--icon-right)
|
|
293
|
+
padding 0 $padding 0 $padding - .6
|
|
294
|
+
&:not(.btn--icon):not(.btn--link):not(.btn--link-primary):not(.btn--link-info):not(.btn--link-flex):not(.btn--link-flex-info):not(.btn--loading):not(.btn--mini):not(.btn--small):not(.btn--large):not(.btn--dropdown-item):not(.btn--tab):not(.btn--sidebar-link)
|
|
295
|
+
&.btn--icon-right
|
|
296
|
+
padding 0 $padding - .6 0 $padding
|
|
297
|
+
&--loading
|
|
298
|
+
&:not(.btn--icon):not(.btn--small):not(.btn--large):not(.btn--sidebar-link)
|
|
299
|
+
padding-left $padding - .4
|
|
300
|
+
&:hover
|
|
301
|
+
&.btn--important
|
|
302
|
+
background-color $error
|
|
303
|
+
.icon
|
|
304
|
+
sq(2.2)
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
&--small
|
|
308
|
+
buttonSmall()
|
|
309
|
+
&.btn--group
|
|
310
|
+
&.btn--switch
|
|
311
|
+
buttonSmall()
|
|
312
|
+
&.btn--icon
|
|
313
|
+
width auto
|
|
314
|
+
img
|
|
315
|
+
max-width 2.2rem
|
|
316
|
+
&:not(.btn--custom-icon-size)
|
|
317
|
+
.icon
|
|
318
|
+
sq(1.8)
|
|
319
|
+
&:not(.btn--icon)
|
|
320
|
+
.icon
|
|
321
|
+
margin-right .4rem
|
|
322
|
+
&.btn--has-icon
|
|
323
|
+
padding-left $padding - .5
|
|
324
|
+
&.btn--loading
|
|
325
|
+
padding-left $padding - .4
|
|
326
|
+
disableHoverEffect()
|
|
327
|
+
.icon
|
|
328
|
+
sq(1.8)
|
|
329
|
+
&--large
|
|
330
|
+
buttonLarge()
|
|
331
|
+
&:not(.btn--custom-icon-size)
|
|
332
|
+
.icon
|
|
333
|
+
sq(3.2)
|
|
334
|
+
&:not(.btn--icon)
|
|
335
|
+
.icon
|
|
336
|
+
margin-right .6rem
|
|
337
|
+
&.btn--has-icon
|
|
338
|
+
padding-left $padding - .4
|
|
339
|
+
&.btn--loading
|
|
340
|
+
padding-left $padding
|
|
341
|
+
disableHoverEffect()
|
|
342
|
+
.icon
|
|
343
|
+
sq(3.2)
|