bobjoll 0.0.4
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/LICENSE +21 -0
- package/README.md +35 -0
- package/package.json +25 -0
- package/scss/layout/_footer.scss +10 -0
- package/scss/layout/_header.scss +10 -0
- package/scss/modules/_fonts.scss +26 -0
- package/scss/modules/_reset.scss +219 -0
- package/scss/modules/bourbon/addons/_clearfix.scss +25 -0
- package/scss/modules/bourbon/addons/_ellipsis.scss +30 -0
- package/scss/modules/bourbon/addons/_position.scss +48 -0
- package/scss/modules/bourbon/addons/_prefixer.scss +66 -0
- package/scss/modules/bourbon/addons/_size.scss +51 -0
- package/scss/modules/bourbon/addons/_timing-functions.scss +34 -0
- package/scss/modules/bourbon/addons/_triangle.scss +63 -0
- package/scss/modules/bourbon/css3/_calc.scss +4 -0
- package/scss/modules/bourbon/css3/_flex-box.scss +287 -0
- package/scss/modules/bourbon/css3/_keyframes.scss +36 -0
- package/scss/modules/bourbon/css3/_linear-gradient.scss +38 -0
- package/scss/modules/bourbon/css3/_placeholder.scss +8 -0
- package/scss/modules/bourbon/css3/_selection.scss +42 -0
- package/scss/modules/bourbon/css3/_transition.scss +71 -0
- package/scss/modules/mixins/_component.scss +9 -0
- package/scss/modules/mixins/_grid.scss +75 -0
- package/scss/modules/mixins/_helpers.scss +224 -0
- package/scss/modules/variables/_colors.scss +447 -0
- package/scss/modules/variables/_general.scss +235 -0
- package/scss/partials/_accordion-v1-0.scss +165 -0
- package/scss/partials/_autocomplete-v1-0.scss +55 -0
- package/scss/partials/_general-v1-0.scss +51 -0
- package/scss/partials/_grid-v1-0.scss +109 -0
- package/scss/partials/_helper-v1-0.scss +299 -0
- package/scss/partials/_icon-v2-0.scss +323 -0
- package/scss/partials/_list-v1-0.scss +100 -0
- package/scss/partials/_modal-v1-0.scss +159 -0
- package/scss/partials/_notification-v1-1.scss +297 -0
- package/scss/partials/_progress-bar-v1.0.scss +25 -0
- package/scss/partials/_range-v1.0.scss +75 -0
- package/scss/partials/_tooltipFixed-v1.0.scss +128 -0
- package/scss/partials/_typography-v1-0.scss +201 -0
- package/scss/partials/animations/_fade.scss +23 -0
- package/scss/partials/animations/_rotate.scss +11 -0
- package/scss/partials/animations/_scale.scss +23 -0
- package/scss/partials/animations/_slide.scss +31 -0
- package/scss/partials/button-v4-0/_component.scss +304 -0
- package/scss/partials/form/_checkbox-and-radio-v1-0.scss +187 -0
- package/scss/partials/form/_dropdowns-v1-0.scss +323 -0
- package/scss/partials/form/_general-v1-0.scss +166 -0
- package/scss/partials/form/_group-v1-0.scss +157 -0
- package/scss/partials/form/_password-v1-0.scss +28 -0
- package/scss/partials/form/_switch-v1-0.scss +128 -0
- package/scss/partials/form/_upload-v1-0.scss +91 -0
- package/ts/library/common.ts +30 -0
- package/ts/library/cookie.ts +47 -0
- package/ts/library/delegate.ts +122 -0
- package/ts/library/dom.ts +124 -0
- package/ts/library/event.ts +138 -0
- package/ts/library/extend.js +32 -0
- package/ts/library/gr/dom.q.ts +12 -0
- package/ts/library/gr/social/dependency/twitter_pu.js +66 -0
- package/ts/library/gr/social/facebook.ts +154 -0
- package/ts/library/gr/social/google.ts +127 -0
- package/ts/library/gr/social/index.ts +35 -0
- package/ts/library/gr/social/twitter.ts +65 -0
- package/ts/library/helpers.ts +9 -0
- package/ts/library/number-abbreviate.js +57 -0
- package/ts/library/settings.ts +7 -0
- package/ts/library/storage.ts +131 -0
- package/ts/library/svg4everybody.legacy.js +122 -0
- package/ts/partials/accordion-v1.0.ts +104 -0
- package/ts/partials/accordionTabs-v1.0.ts +27 -0
- package/ts/partials/alert-v1.0.ts +51 -0
- package/ts/partials/copy-v1.0.ts +17 -0
- package/ts/partials/countdown-v1.0.ts +119 -0
- package/ts/partials/dropdown-v1.0.ts +247 -0
- package/ts/partials/hbs-v1.0.ts +9 -0
- package/ts/partials/modal-v1.0.ts +213 -0
- package/ts/partials/notifications-v1.1.ts +376 -0
- package/ts/partials/notify-v1.0.ts +746 -0
- package/ts/partials/password-v1.0.ts +19 -0
- package/ts/partials/popover-v1.0.ts +125 -0
- package/ts/partials/progress-bar-v1.0.ts +29 -0
- package/ts/partials/scroll-v1.0.ts +169 -0
- package/ts/partials/scrollable-v1.0.ts +90 -0
- package/ts/partials/tabs-v1.0.ts +79 -0
- package/ts/partials/tags-v1.0.ts +21 -0
- package/ts/partials/trigger-v2.0.ts +155 -0
- package/ts/partials/upload-v1.0.ts +17 -0
- package/ts/views/hbs/alert-v1.0/element.html.hbs +35 -0
- package/ts/views/hbs/countdown-v1.0/countdown-inner.hbs +39 -0
- package/ts/views/hbs/countdown-v1.0/countdown.hbs +4 -0
- package/ts/views/hbs/dropdown-v1.0/element.html.hbs +70 -0
- package/ts/views/hbs/helpers.js +58 -0
- package/ts/views/hbs/modal-v1.0/element.html.hbs +17 -0
- package/ts/views/hbs/notification-v1.1/element-disable.html.hbs +26 -0
- package/ts/views/hbs/notification-v1.1/element.html.hbs +43 -0
- package/ts/views/hbs/notification-v1.1/wrapper.html.hbs +4 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License Copyright (c) 2021
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free
|
|
4
|
+
of charge, to any person obtaining a copy of this software and associated
|
|
5
|
+
documentation files (the "Software"), to deal in the Software without
|
|
6
|
+
restriction, including without limitation the rights to use, copy, modify, merge,
|
|
7
|
+
publish, distribute, sublicense, and/or sell copies of the Software, and to
|
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to the
|
|
9
|
+
following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice
|
|
12
|
+
(including the next paragraph) shall be included in all copies or substantial
|
|
13
|
+
portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
|
|
16
|
+
ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
17
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
|
|
18
|
+
EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
|
19
|
+
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
20
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
+
THE SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# bobjoll
|
|
2
|
+
|
|
3
|
+
HBS views of bob joll
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- ES6 syntax, managed with Prettier + Eslint and Stylelint
|
|
8
|
+
- Typescript
|
|
9
|
+
- Handlebars
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```sh
|
|
14
|
+
yarn add bobjoll
|
|
15
|
+
// or
|
|
16
|
+
npm i bobjoll
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### Requirements
|
|
20
|
+
|
|
21
|
+
- Node.js `v10.x` or later
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
### Usage
|
|
25
|
+
|
|
26
|
+
```js
|
|
27
|
+
import { IsUrlValid } from 'bobjoll';
|
|
28
|
+
import alert from 'bobjoll/views/alert-v1.0/element.html.hbs'
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
if(IsUrlValid('http://your-domain.com')) {
|
|
32
|
+
// execute the compiled template and print the output to the console
|
|
33
|
+
console.log(alert({ message: "This url valid as a rock!" }));
|
|
34
|
+
}
|
|
35
|
+
```
|
package/package.json
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "bobjoll",
|
|
3
|
+
"version": "0.0.4",
|
|
4
|
+
"private": false,
|
|
5
|
+
"description": "HBS views of bob joll",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"author": "hfrpik",
|
|
8
|
+
"main": "ts/library/helpers.ts",
|
|
9
|
+
"scripts": {
|
|
10
|
+
"test": "exit 0"
|
|
11
|
+
},
|
|
12
|
+
"repository": "https://www.gitlab.com/hfrpik/bobjoll",
|
|
13
|
+
"publishConfig": {
|
|
14
|
+
"access": "public"
|
|
15
|
+
},
|
|
16
|
+
"dependencies": {
|
|
17
|
+
"@babel/runtime": "^7.18.9",
|
|
18
|
+
"axios": "^0.27.0",
|
|
19
|
+
"handlebars": "~4.7.7"
|
|
20
|
+
},
|
|
21
|
+
"devDependencies": {
|
|
22
|
+
"handlebars-template-loader": "^1.0.0",
|
|
23
|
+
"typescript": "3.9.4"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
|
|
2
|
+
@if $fonts {
|
|
3
|
+
@font-face {
|
|
4
|
+
font-family: 'Proxima Nova';
|
|
5
|
+
src: url('~bobjoll/fonts/proximanova-regular-webfont.woff2') format('woff2');
|
|
6
|
+
font-weight: $normal-font-weight;
|
|
7
|
+
font-style: normal;
|
|
8
|
+
font-display: swap;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
@font-face {
|
|
12
|
+
font-family: 'Proxima Nova';
|
|
13
|
+
src: url('~bobjoll/fonts/proximanova-semibold-webfont.woff2') format('woff2');
|
|
14
|
+
font-weight: $semi-font-weight;
|
|
15
|
+
font-style: normal;
|
|
16
|
+
font-display: swap;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
@font-face {
|
|
20
|
+
font-family: 'Proxima Nova';
|
|
21
|
+
src: url('~bobjoll/fonts/proximanova-bold-webfont.woff2') format('woff2');
|
|
22
|
+
font-weight: $bold-font-weight;
|
|
23
|
+
font-style: normal;
|
|
24
|
+
font-display: swap;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/*! normalize.scss v0.1.0 | MIT License | based on git.io/normalize */
|
|
2
|
+
|
|
3
|
+
html {
|
|
4
|
+
font-family: sans-serif; /* 1 */
|
|
5
|
+
-ms-text-size-adjust: 100%; /* 2 */
|
|
6
|
+
-webkit-text-size-adjust: 100%; /* 2 */
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
body {
|
|
10
|
+
margin: 0;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
article,
|
|
14
|
+
aside,
|
|
15
|
+
details,
|
|
16
|
+
figcaption,
|
|
17
|
+
figure,
|
|
18
|
+
footer,
|
|
19
|
+
header,
|
|
20
|
+
hgroup,
|
|
21
|
+
main,
|
|
22
|
+
menu,
|
|
23
|
+
nav,
|
|
24
|
+
section,
|
|
25
|
+
summary {
|
|
26
|
+
display: block;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
audio,
|
|
30
|
+
canvas,
|
|
31
|
+
progress,
|
|
32
|
+
video {
|
|
33
|
+
display: inline-block; /* 1 */
|
|
34
|
+
vertical-align: baseline; /* 2 */
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
audio:not([controls]) {
|
|
38
|
+
display: none;
|
|
39
|
+
height: 0;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
[hidden],
|
|
43
|
+
template {
|
|
44
|
+
display: none;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
a {
|
|
48
|
+
background-color: transparent;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
a:active,
|
|
52
|
+
a:hover {
|
|
53
|
+
outline: 0;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
abbr[title] {
|
|
57
|
+
text-decoration: none;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
b,
|
|
61
|
+
strong {
|
|
62
|
+
font-weight: bold;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
dfn {
|
|
66
|
+
font-style: italic;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
h1 {
|
|
70
|
+
font-size: 2em;
|
|
71
|
+
margin: 0.67em 0;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
mark {
|
|
75
|
+
background: #ff0;
|
|
76
|
+
color: #000;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
small {
|
|
80
|
+
font-size: 80%;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
sub,
|
|
84
|
+
sup {
|
|
85
|
+
font-size: 75%;
|
|
86
|
+
line-height: 0;
|
|
87
|
+
position: relative;
|
|
88
|
+
vertical-align: baseline;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
sup {
|
|
92
|
+
top: -0.5em;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
sub {
|
|
96
|
+
bottom: -0.25em;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
img {
|
|
100
|
+
border: 0;
|
|
101
|
+
}
|
|
102
|
+
svg:not(:root) {
|
|
103
|
+
overflow: hidden;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
figure {
|
|
107
|
+
margin: 1em 40px;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
hr {
|
|
111
|
+
-moz-box-sizing: content-box;
|
|
112
|
+
box-sizing: content-box;
|
|
113
|
+
height: 0;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
pre {
|
|
117
|
+
overflow: auto;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
code,
|
|
121
|
+
kbd,
|
|
122
|
+
pre,
|
|
123
|
+
samp {
|
|
124
|
+
font-family: monospace, monospace;
|
|
125
|
+
font-size: 1em;
|
|
126
|
+
}
|
|
127
|
+
button,
|
|
128
|
+
input,
|
|
129
|
+
optgroup,
|
|
130
|
+
select,
|
|
131
|
+
textarea {
|
|
132
|
+
color: inherit; /* 1 */
|
|
133
|
+
font: inherit; /* 2 */
|
|
134
|
+
margin: 0; /* 3 */
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
button {
|
|
138
|
+
overflow: visible;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
button,
|
|
142
|
+
select {
|
|
143
|
+
text-transform: none;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
button,
|
|
147
|
+
html input[type="button"], /* 1 */
|
|
148
|
+
input[type="reset"],
|
|
149
|
+
input[type="submit"] {
|
|
150
|
+
-webkit-appearance: button; /* 2 */
|
|
151
|
+
cursor: pointer; /* 3 */
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
button[disabled],
|
|
155
|
+
html input[disabled] {
|
|
156
|
+
cursor: default;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
button::-moz-focus-inner,
|
|
160
|
+
input::-moz-focus-inner {
|
|
161
|
+
border: 0;
|
|
162
|
+
padding: 0;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
input {
|
|
166
|
+
line-height: normal;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
input[type="checkbox"],
|
|
170
|
+
input[type="radio"] {
|
|
171
|
+
box-sizing: border-box; /* 1 */
|
|
172
|
+
padding: 0; /* 2 */
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
input[type="number"]::-webkit-inner-spin-button,
|
|
176
|
+
input[type="number"]::-webkit-outer-spin-button {
|
|
177
|
+
height: auto;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
input[type="search"] {
|
|
181
|
+
-webkit-appearance: textfield; /* 1 */
|
|
182
|
+
-moz-box-sizing: content-box;
|
|
183
|
+
-webkit-box-sizing: content-box; /* 2 */
|
|
184
|
+
box-sizing: content-box;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
input[type="search"]::-webkit-search-cancel-button,
|
|
188
|
+
input[type="search"]::-webkit-search-decoration {
|
|
189
|
+
-webkit-appearance: none;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
fieldset {
|
|
193
|
+
border: 1px solid #c0c0c0;
|
|
194
|
+
margin: 0 2px;
|
|
195
|
+
padding: 0.35em 0.625em 0.75em;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
legend {
|
|
199
|
+
border: 0; /* 1 */
|
|
200
|
+
padding: 0; /* 2 */
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
textarea {
|
|
204
|
+
overflow: auto;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
optgroup {
|
|
208
|
+
font-weight: bold;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
table {
|
|
212
|
+
border-collapse: collapse;
|
|
213
|
+
border-spacing: 0;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
td,
|
|
217
|
+
th {
|
|
218
|
+
padding: 0;
|
|
219
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
2
|
+
|
|
3
|
+
/// Provides an easy way to include a clearfix for containing floats.
|
|
4
|
+
///
|
|
5
|
+
/// @link http://cssmojo.com/latest_new_clearfix_so_far/
|
|
6
|
+
///
|
|
7
|
+
/// @example scss - Usage
|
|
8
|
+
/// .element {
|
|
9
|
+
/// @include clearfix;
|
|
10
|
+
/// }
|
|
11
|
+
///
|
|
12
|
+
/// @example css - CSS Output
|
|
13
|
+
/// .element::after {
|
|
14
|
+
/// clear: both;
|
|
15
|
+
/// content: "";
|
|
16
|
+
/// display: table;
|
|
17
|
+
/// }
|
|
18
|
+
|
|
19
|
+
@mixin clearfix {
|
|
20
|
+
&::after {
|
|
21
|
+
clear: both;
|
|
22
|
+
content: "";
|
|
23
|
+
display: table;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
2
|
+
|
|
3
|
+
/// Truncates text and adds an ellipsis to represent overflow.
|
|
4
|
+
///
|
|
5
|
+
/// @param {Number} $width [100%]
|
|
6
|
+
/// Max-width for the string to respect before being truncated
|
|
7
|
+
///
|
|
8
|
+
/// @example scss - Usage
|
|
9
|
+
/// .element {
|
|
10
|
+
/// @include ellipsis;
|
|
11
|
+
/// }
|
|
12
|
+
///
|
|
13
|
+
/// @example css - CSS Output
|
|
14
|
+
/// .element {
|
|
15
|
+
/// display: inline-block;
|
|
16
|
+
/// max-width: 100%;
|
|
17
|
+
/// overflow: hidden;
|
|
18
|
+
/// text-overflow: ellipsis;
|
|
19
|
+
/// white-space: nowrap;
|
|
20
|
+
/// word-wrap: normal;
|
|
21
|
+
/// }
|
|
22
|
+
|
|
23
|
+
@mixin ellipsis($width: 100%) {
|
|
24
|
+
display: inline-block;
|
|
25
|
+
max-width: $width;
|
|
26
|
+
overflow: hidden;
|
|
27
|
+
text-overflow: ellipsis;
|
|
28
|
+
white-space: nowrap;
|
|
29
|
+
word-wrap: normal;
|
|
30
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
2
|
+
|
|
3
|
+
/// Provides a quick method for setting an element’s position. Use a `null` value to “skip” a side.
|
|
4
|
+
///
|
|
5
|
+
/// @param {Position} $position [relative]
|
|
6
|
+
/// A CSS position value
|
|
7
|
+
///
|
|
8
|
+
/// @param {Arglist} $coordinates [null null null null]
|
|
9
|
+
/// List of values that correspond to the 4-value syntax for the edges of a box
|
|
10
|
+
///
|
|
11
|
+
/// @example scss - Usage
|
|
12
|
+
/// .element {
|
|
13
|
+
/// @include position(absolute, 0 null null 10em);
|
|
14
|
+
/// }
|
|
15
|
+
///
|
|
16
|
+
/// @example css - CSS Output
|
|
17
|
+
/// .element {
|
|
18
|
+
/// left: 10em;
|
|
19
|
+
/// position: absolute;
|
|
20
|
+
/// top: 0;
|
|
21
|
+
/// }
|
|
22
|
+
///
|
|
23
|
+
/// @require {function} is-length
|
|
24
|
+
/// @require {function} unpack
|
|
25
|
+
|
|
26
|
+
@mixin position($position: relative, $coordinates: null null null null) {
|
|
27
|
+
@if type-of($position) == list {
|
|
28
|
+
$coordinates: $position;
|
|
29
|
+
$position: relative;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
$coordinates: unpack($coordinates);
|
|
33
|
+
|
|
34
|
+
$offsets: (
|
|
35
|
+
top: nth($coordinates, 1),
|
|
36
|
+
right: nth($coordinates, 2),
|
|
37
|
+
bottom: nth($coordinates, 3),
|
|
38
|
+
left: nth($coordinates, 4)
|
|
39
|
+
);
|
|
40
|
+
|
|
41
|
+
position: $position;
|
|
42
|
+
|
|
43
|
+
@each $offset, $value in $offsets {
|
|
44
|
+
@if is-length($value) {
|
|
45
|
+
#{$offset}: $value;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
2
|
+
|
|
3
|
+
/// A mixin for generating vendor prefixes on non-standardized properties.
|
|
4
|
+
///
|
|
5
|
+
/// @param {String} $property
|
|
6
|
+
/// Property to prefix
|
|
7
|
+
///
|
|
8
|
+
/// @param {*} $value
|
|
9
|
+
/// Value to use
|
|
10
|
+
///
|
|
11
|
+
/// @param {List} $prefixes
|
|
12
|
+
/// Prefixes to define
|
|
13
|
+
///
|
|
14
|
+
/// @example scss - Usage
|
|
15
|
+
/// .element {
|
|
16
|
+
/// @include prefixer(border-radius, 10px, webkit ms spec);
|
|
17
|
+
/// }
|
|
18
|
+
///
|
|
19
|
+
/// @example css - CSS Output
|
|
20
|
+
/// .element {
|
|
21
|
+
/// -webkit-border-radius: 10px;
|
|
22
|
+
/// -moz-border-radius: 10px;
|
|
23
|
+
/// border-radius: 10px;
|
|
24
|
+
/// }
|
|
25
|
+
///
|
|
26
|
+
/// @require {variable} $prefix-for-webkit
|
|
27
|
+
/// @require {variable} $prefix-for-mozilla
|
|
28
|
+
/// @require {variable} $prefix-for-microsoft
|
|
29
|
+
/// @require {variable} $prefix-for-opera
|
|
30
|
+
/// @require {variable} $prefix-for-spec
|
|
31
|
+
|
|
32
|
+
@mixin prefixer($property, $value, $prefixes) {
|
|
33
|
+
@each $prefix in $prefixes {
|
|
34
|
+
@if $prefix == webkit {
|
|
35
|
+
@if $prefix-for-webkit {
|
|
36
|
+
-webkit-#{$property}: $value;
|
|
37
|
+
}
|
|
38
|
+
} @else if $prefix == moz {
|
|
39
|
+
@if $prefix-for-mozilla {
|
|
40
|
+
-moz-#{$property}: $value;
|
|
41
|
+
}
|
|
42
|
+
} @else if $prefix == ms {
|
|
43
|
+
@if $prefix-for-microsoft {
|
|
44
|
+
-ms-#{$property}: $value;
|
|
45
|
+
}
|
|
46
|
+
} @else if $prefix == o {
|
|
47
|
+
@if $prefix-for-opera {
|
|
48
|
+
-o-#{$property}: $value;
|
|
49
|
+
}
|
|
50
|
+
} @else if $prefix == spec {
|
|
51
|
+
@if $prefix-for-spec {
|
|
52
|
+
#{$property}: $value;
|
|
53
|
+
}
|
|
54
|
+
} @else {
|
|
55
|
+
@warn "Unrecognized prefix: #{$prefix}";
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
@mixin disable-prefix-for-all() {
|
|
61
|
+
$prefix-for-webkit: false !global;
|
|
62
|
+
$prefix-for-mozilla: false !global;
|
|
63
|
+
$prefix-for-microsoft: false !global;
|
|
64
|
+
$prefix-for-opera: false !global;
|
|
65
|
+
$prefix-for-spec: false !global;
|
|
66
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
2
|
+
|
|
3
|
+
/// Sets the `width` and `height` of the element.
|
|
4
|
+
///
|
|
5
|
+
/// @param {List} $size
|
|
6
|
+
/// A list of at most 2 size values.
|
|
7
|
+
///
|
|
8
|
+
/// If there is only a single value in `$size` it is used for both width and height. All units are supported.
|
|
9
|
+
///
|
|
10
|
+
/// @example scss - Usage
|
|
11
|
+
/// .first-element {
|
|
12
|
+
/// @include size(2em);
|
|
13
|
+
/// }
|
|
14
|
+
///
|
|
15
|
+
/// .second-element {
|
|
16
|
+
/// @include size(auto 10em);
|
|
17
|
+
/// }
|
|
18
|
+
///
|
|
19
|
+
/// @example css - CSS Output
|
|
20
|
+
/// .first-element {
|
|
21
|
+
/// width: 2em;
|
|
22
|
+
/// height: 2em;
|
|
23
|
+
/// }
|
|
24
|
+
///
|
|
25
|
+
/// .second-element {
|
|
26
|
+
/// width: auto;
|
|
27
|
+
/// height: 10em;
|
|
28
|
+
/// }
|
|
29
|
+
///
|
|
30
|
+
/// @todo Refactor in 5.0.0 to use a comma-separated argument
|
|
31
|
+
|
|
32
|
+
@mixin size($value) {
|
|
33
|
+
$width: nth($value, 1);
|
|
34
|
+
$height: $width;
|
|
35
|
+
|
|
36
|
+
@if length($value) > 1 {
|
|
37
|
+
$height: nth($value, 2);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@if is-size($height) {
|
|
41
|
+
height: $height;
|
|
42
|
+
} @else {
|
|
43
|
+
@warn "`#{$height}` is not a valid length for the `$height` parameter in the `size` mixin.";
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
@if is-size($width) {
|
|
47
|
+
width: $width;
|
|
48
|
+
} @else {
|
|
49
|
+
@warn "`#{$width}` is not a valid length for the `$width` parameter in the `size` mixin.";
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
2
|
+
|
|
3
|
+
/// CSS cubic-bezier timing functions. Timing functions courtesy of jquery.easie (github.com/jaukia/easie)
|
|
4
|
+
///
|
|
5
|
+
/// Timing functions are the same as demoed here: http://jqueryui.com/resources/demos/effect/easing.html
|
|
6
|
+
///
|
|
7
|
+
/// @type cubic-bezier
|
|
8
|
+
|
|
9
|
+
$ease-in-quad: cubic-bezier(0.550, 0.085, 0.680, 0.530);
|
|
10
|
+
$ease-in-cubic: cubic-bezier(0.550, 0.055, 0.675, 0.190);
|
|
11
|
+
$ease-in-quart: cubic-bezier(0.895, 0.030, 0.685, 0.220);
|
|
12
|
+
$ease-in-quint: cubic-bezier(0.755, 0.050, 0.855, 0.060);
|
|
13
|
+
$ease-in-sine: cubic-bezier(0.470, 0.000, 0.745, 0.715);
|
|
14
|
+
$ease-in-expo: cubic-bezier(0.950, 0.050, 0.795, 0.035);
|
|
15
|
+
$ease-in-circ: cubic-bezier(0.600, 0.040, 0.980, 0.335);
|
|
16
|
+
$ease-in-back: cubic-bezier(0.600, -0.280, 0.735, 0.045);
|
|
17
|
+
|
|
18
|
+
$ease-out-quad: cubic-bezier(0.250, 0.460, 0.450, 0.940);
|
|
19
|
+
$ease-out-cubic: cubic-bezier(0.215, 0.610, 0.355, 1.000);
|
|
20
|
+
$ease-out-quart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
|
|
21
|
+
$ease-out-quint: cubic-bezier(0.230, 1.000, 0.320, 1.000);
|
|
22
|
+
$ease-out-sine: cubic-bezier(0.390, 0.575, 0.565, 1.000);
|
|
23
|
+
$ease-out-expo: cubic-bezier(0.190, 1.000, 0.220, 1.000);
|
|
24
|
+
$ease-out-circ: cubic-bezier(0.075, 0.820, 0.165, 1.000);
|
|
25
|
+
$ease-out-back: cubic-bezier(0.175, 0.885, 0.320, 1.275);
|
|
26
|
+
|
|
27
|
+
$ease-in-out-quad: cubic-bezier(0.455, 0.030, 0.515, 0.955);
|
|
28
|
+
$ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
|
29
|
+
$ease-in-out-quart: cubic-bezier(0.770, 0.000, 0.175, 1.000);
|
|
30
|
+
$ease-in-out-quint: cubic-bezier(0.860, 0.000, 0.070, 1.000);
|
|
31
|
+
$ease-in-out-sine: cubic-bezier(0.445, 0.050, 0.550, 0.950);
|
|
32
|
+
$ease-in-out-expo: cubic-bezier(1.000, 0.000, 0.000, 1.000);
|
|
33
|
+
$ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.150, 0.860);
|
|
34
|
+
$ease-in-out-back: cubic-bezier(0.680, -0.550, 0.265, 1.550);
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
@mixin triangle($size, $color, $direction) {
|
|
2
|
+
$width: nth($size, 1);
|
|
3
|
+
$height: nth($size, length($size));
|
|
4
|
+
$foreground-color: nth($color, 1);
|
|
5
|
+
$background-color: if(length($color) == 2, nth($color, 2), transparent);
|
|
6
|
+
height: 0;
|
|
7
|
+
width: 0;
|
|
8
|
+
|
|
9
|
+
@if ($direction == up) or ($direction == down) or ($direction == right) or ($direction == left) {
|
|
10
|
+
$width: $width / 2;
|
|
11
|
+
$height: if(length($size) > 1, $height, $height/2);
|
|
12
|
+
|
|
13
|
+
@if $direction == up {
|
|
14
|
+
border-bottom: $height solid $foreground-color;
|
|
15
|
+
border-left: $width solid $background-color;
|
|
16
|
+
border-right: $width solid $background-color;
|
|
17
|
+
} @else if $direction == right {
|
|
18
|
+
border-bottom: $width solid $background-color;
|
|
19
|
+
border-left: $height solid $foreground-color;
|
|
20
|
+
border-top: $width solid $background-color;
|
|
21
|
+
} @else if $direction == down {
|
|
22
|
+
border-left: $width solid $background-color;
|
|
23
|
+
border-right: $width solid $background-color;
|
|
24
|
+
border-top: $height solid $foreground-color;
|
|
25
|
+
} @else if $direction == left {
|
|
26
|
+
border-bottom: $width solid $background-color;
|
|
27
|
+
border-right: $height solid $foreground-color;
|
|
28
|
+
border-top: $width solid $background-color;
|
|
29
|
+
}
|
|
30
|
+
} @else if ($direction == up-right) or ($direction == up-left) {
|
|
31
|
+
border-top: $height solid $foreground-color;
|
|
32
|
+
|
|
33
|
+
@if $direction == up-right {
|
|
34
|
+
border-left: $width solid $background-color;
|
|
35
|
+
} @else if $direction == up-left {
|
|
36
|
+
border-right: $width solid $background-color;
|
|
37
|
+
}
|
|
38
|
+
} @else if ($direction == down-right) or ($direction == down-left) {
|
|
39
|
+
border-bottom: $height solid $foreground-color;
|
|
40
|
+
|
|
41
|
+
@if $direction == down-right {
|
|
42
|
+
border-left: $width solid $background-color;
|
|
43
|
+
} @else if $direction == down-left {
|
|
44
|
+
border-right: $width solid $background-color;
|
|
45
|
+
}
|
|
46
|
+
} @else if ($direction == inset-up) {
|
|
47
|
+
border-color: $background-color $background-color $foreground-color;
|
|
48
|
+
border-style: solid;
|
|
49
|
+
border-width: $height $width;
|
|
50
|
+
} @else if ($direction == inset-down) {
|
|
51
|
+
border-color: $foreground-color $background-color $background-color;
|
|
52
|
+
border-style: solid;
|
|
53
|
+
border-width: $height $width;
|
|
54
|
+
} @else if ($direction == inset-right) {
|
|
55
|
+
border-color: $background-color $background-color $background-color $foreground-color;
|
|
56
|
+
border-style: solid;
|
|
57
|
+
border-width: $width $height;
|
|
58
|
+
} @else if ($direction == inset-left) {
|
|
59
|
+
border-color: $background-color $foreground-color $background-color $background-color;
|
|
60
|
+
border-style: solid;
|
|
61
|
+
border-width: $width $height;
|
|
62
|
+
}
|
|
63
|
+
}
|