@transferwise/neptune-css 10.0.5 → 10.0.6-beta.38

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.
Files changed (113) hide show
  1. package/dist/css/accordion.css +1 -1
  2. package/dist/css/alerts.css +1 -1
  3. package/dist/css/background.css +1 -1
  4. package/dist/css/badge.css +1 -1
  5. package/dist/css/breadcrumbs.css +1 -1
  6. package/dist/css/button-groups.css +1 -1
  7. package/dist/css/buttons.css +1 -1
  8. package/dist/css/chevron.css +1 -1
  9. package/dist/css/circles.css +1 -1
  10. package/dist/css/close.css +1 -1
  11. package/dist/css/column-layout.css +1 -1
  12. package/dist/css/currency-flags.css +1 -1
  13. package/dist/css/decision.css +1 -1
  14. package/dist/css/dropdowns.css +1 -0
  15. package/dist/css/droppable.css +1 -1
  16. package/dist/css/flex.css +1 -1
  17. package/dist/css/footer.css +1 -1
  18. package/dist/css/forms.css +1 -1
  19. package/dist/css/grid.css +1 -1
  20. package/dist/css/input-groups.css +1 -1
  21. package/dist/css/link-callout.css +1 -1
  22. package/dist/css/list-group.css +1 -1
  23. package/dist/css/media.css +1 -1
  24. package/dist/css/modals.css +1 -1
  25. package/dist/css/navbar-base.css +1 -0
  26. package/dist/css/navbar.css +1 -1
  27. package/dist/css/navs.css +1 -1
  28. package/dist/css/neptune-addons.css +1 -1
  29. package/dist/css/neptune-core.css +1 -1
  30. package/dist/css/neptune-social-media.css +1 -1
  31. package/dist/css/neptune.css +1 -1
  32. package/dist/css/panels.css +1 -1
  33. package/dist/css/popovers.css +1 -1
  34. package/dist/css/process.css +1 -1
  35. package/dist/css/progress-bars.css +1 -1
  36. package/dist/css/select.css +1 -1
  37. package/dist/css/sequences.css +1 -1
  38. package/dist/css/table.css +1 -1
  39. package/dist/css/tick.css +1 -1
  40. package/dist/css/tooltip.css +1 -1
  41. package/dist/css/utilities.css +1 -1
  42. package/dist/css/wells.css +1 -1
  43. package/dist/less/neptune-tokens.less +85 -78
  44. package/dist/props/neptune-tokens.css +89 -41
  45. package/package.json +3 -3
  46. package/src/less/addons/_background-utilities.less +31 -6
  47. package/src/less/addons/_spacing-utilities.less +4 -4
  48. package/src/less/addons/_utilities.less +141 -0
  49. package/src/less/alerts.less +14 -14
  50. package/src/less/badge.less +65 -4
  51. package/src/less/breadcrumbs.less +25 -4
  52. package/src/less/button-groups.less +45 -38
  53. package/src/less/buttons.less +90 -107
  54. package/src/less/chevron.less +1 -1
  55. package/src/less/circles.less +206 -19
  56. package/src/less/close.less +38 -6
  57. package/src/less/column-layout.less +160 -3
  58. package/src/less/core/_scaffolding.less +36 -27
  59. package/src/less/core/_typography-utilities.less +59 -45
  60. package/src/less/core/_typography.less +126 -111
  61. package/src/less/currency-flags.less +4 -4
  62. package/src/less/decision.less +4 -9
  63. package/src/less/dropdowns.less +362 -0
  64. package/src/less/droppable.less +202 -3
  65. package/src/less/flex.less +17 -16
  66. package/src/less/footer.less +18 -19
  67. package/src/less/forms/bootstrap-forms.less +105 -95
  68. package/src/less/forms/checkbox-radio.less +51 -52
  69. package/src/less/grid.less +23 -22
  70. package/src/less/input-groups.less +47 -48
  71. package/src/less/link-callout.less +4 -1
  72. package/src/less/list-group.less +281 -4
  73. package/src/less/media.less +8 -5
  74. package/src/less/mixins/_alerts.less +15 -7
  75. package/src/less/mixins/_arrows.less +13 -7
  76. package/src/less/mixins/_border-radius.less +1 -8
  77. package/src/less/mixins/_buttons.less +5 -5
  78. package/src/less/mixins/_center-block.less +7 -0
  79. package/src/less/mixins/_circle.less +11 -0
  80. package/src/less/mixins/_forms.less +16 -12
  81. package/src/less/mixins/_grid-framework.less +11 -8
  82. package/src/less/mixins/_grid.less +52 -36
  83. package/src/less/mixins/_hide-text.less +20 -0
  84. package/src/less/mixins/_list-group.less +23 -0
  85. package/src/less/mixins/_logical-properties-IE-friendly.less +329 -0
  86. package/src/less/mixins/_logical-properties-modern-browsers.less +226 -0
  87. package/src/less/mixins/_logical-properties.less +5 -0
  88. package/src/less/mixins/_panels.less +23 -0
  89. package/src/less/mixins/_physical-properties.less +111 -0
  90. package/src/less/mixins/_reset-text.less +22 -0
  91. package/src/less/mixins/_sequence.less +197 -0
  92. package/src/less/mixins/_spacing.less +20 -10
  93. package/src/less/mixins/_table-row.less +1 -1
  94. package/src/less/mixins/_text-emphasis.less +7 -1
  95. package/src/less/modals.less +53 -23
  96. package/src/less/navbar-base.less +1382 -0
  97. package/src/less/navbar.less +16 -20
  98. package/src/less/navs.less +348 -3
  99. package/src/less/neptune-social-media.less +11 -6
  100. package/src/less/neptune.bundle.less +2 -1
  101. package/src/less/panels.less +409 -4
  102. package/src/less/popovers.less +368 -5
  103. package/src/less/process.less +358 -3
  104. package/src/less/progress-bars.less +14 -9
  105. package/src/less/select.less +8 -6
  106. package/src/less/sequences.less +504 -8
  107. package/src/less/table.less +40 -54
  108. package/src/less/tick.less +14 -1
  109. package/src/less/tooltip.less +123 -4
  110. package/src/less/utilities.less +134 -4
  111. package/src/less/variables/_typography.less +2 -0
  112. package/src/props/neptune-tokens.css +2 -1
  113. package/src/variables/neptune-tokens.less +1 -3
@@ -1,5 +1,282 @@
1
- // TODO: remove bootstrap dependencies
2
-
3
1
  @import (reference) '../variables/legacy-variables.less';
4
- @import 'bootstrap/less/mixins/list-group.less';
5
- @import 'bootstrap/less/list-group.less';
2
+ @import (reference) './mixins/_list-group.less';
3
+ @import (reference) './mixins/_logical-properties.less';
4
+
5
+ //
6
+ // List groups
7
+ // --------------------------------------------------
8
+
9
+ // Base class
10
+ //
11
+ // Easily usable on <ul>, <ol>, or <div>.
12
+
13
+ .list-group {
14
+ // No need to set list-style: none; since .list-group-item is block level
15
+
16
+ margin-bottom: 20px;
17
+ .padding(left, 0); // reset padding because ul and ol
18
+
19
+ border-left: 1px solid var(--color-border-neutral);
20
+ border-right: 1px solid var(--color-border-neutral);
21
+ border-bottom: 1px solid var(--color-border-neutral);
22
+ }
23
+
24
+ // Individual list items
25
+ //
26
+ // Use on `li`s or `div`s within the `.list-group` parent.
27
+
28
+ .list-group-item {
29
+ display: block;
30
+ .padding-shorthand(@spacing-1-mobile, @spacing-1-mobile, @spacing-1-mobile, (@spacing-1-mobile - 2px));
31
+
32
+ // Place the border on the list items and negative margin up for better styling
33
+
34
+ background-color: var(--color-background-screen);
35
+ .border(left, 2px, solid, transparent);
36
+
37
+ margin-top: 1px;
38
+ line-height: @line-height-computed;
39
+ transition: all ease @panel-focus-transtion;
40
+
41
+ .panel-group & {
42
+ border-top: 1px solid var(--color-border-neutral);
43
+ margin-top: 0;
44
+ }
45
+ }
46
+
47
+ @media (--screen-sm) {
48
+ .list-group-item {
49
+ .padding-shorthand(@spacing-1-tablet, @spacing-1-tablet, @spacing-1-tablet, (@spacing-1-tablet - 2px));
50
+ }
51
+ }
52
+
53
+ @media (--screen-lg) {
54
+ .list-group-item {
55
+ .padding-shorthand(@spacing-1-desktop, @spacing-1-desktop, @spacing-1-desktop, (@spacing-1-desktop - 2px));
56
+ }
57
+ }
58
+
59
+ // Custom content options
60
+ //
61
+ // Extra classes for creating well-formatted content within `.list-group-item`s.
62
+
63
+ .list-group-item-heading {
64
+ margin-bottom: 0;
65
+ font-size: @font-size-base;
66
+ font-weight: @font-weight-normal;
67
+ color: var(--color-content-primary);
68
+ }
69
+
70
+ .list-group-item-text {
71
+ margin-bottom: 0;
72
+ color: var(--color-content-secondary);
73
+ }
74
+
75
+ // Linked list items
76
+ //
77
+ // Use anchor elements instead of `li`s or `div`s to create linked list items.
78
+ // Includes an extra `.active` modifier class for showing selected items.
79
+
80
+ a.list-group-item {
81
+ color: var(--color-content-accent);
82
+ text-decoration: none;
83
+
84
+ .list-group-item-heading {
85
+ color: var(--color-content-accent);
86
+ }
87
+
88
+ // Hover state
89
+ &:hover,
90
+ &:focus {
91
+ text-decoration: none;
92
+ color: var(--color-content-accent-hover);
93
+ background-color: var(--color-background-neutral);
94
+ }
95
+ }
96
+
97
+ // stylelint-disable-next-line no-duplicate-selectors
98
+ .list-group-item {
99
+ // Ideally would use role=button on list group item but invalid markup on li
100
+ &[ng-click] {
101
+ cursor: pointer;
102
+
103
+ &:hover {
104
+ // tell the browser there is a likelihood this will animate when clicked
105
+ will-change: margin, contents;
106
+ }
107
+ }
108
+
109
+ // Disabled state
110
+ &.disabled {
111
+ color: var(--color-content-disabled);
112
+
113
+ .list-group-item-heading,
114
+ .list-group-item-text,
115
+ b,
116
+ strong,
117
+ .circle,
118
+ .icon {
119
+ color: var(--color-content-disabled);
120
+ }
121
+ }
122
+
123
+ // Active class on item itself, not parent
124
+ &.active {
125
+ z-index: 2; // Place active items above their siblings for proper border styling
126
+ background-color: var(--color-background-elevated);
127
+ box-shadow: 0 1px 10px @brand-smoke-plus-10;
128
+ margin-top: @line-height-computed;
129
+ margin-bottom: @line-height-computed;
130
+
131
+ &:first-child {
132
+ margin-top: 1px;
133
+ }
134
+
135
+ &:last-child {
136
+ margin-bottom: 0;
137
+ }
138
+
139
+ + .list-group-item {
140
+ border-top-width: 0;
141
+ }
142
+ }
143
+
144
+ @media (min-width: @screen-md-min) {
145
+ &.active {
146
+ margin-left: -12px;
147
+ margin-right: -12px;
148
+ }
149
+
150
+ .media-body {
151
+ // In combination with applying extra padding to the media-body,
152
+ // this prevents text reflow on panel expansion
153
+ transition: padding ease @panel-focus-transtion;
154
+ }
155
+ }
156
+ }
157
+
158
+ .list-group-inactive {
159
+ .list-group-item {
160
+ background-color: transparent;
161
+ border-top: 1px solid var(--color-border-neutral);
162
+ margin-top: 0;
163
+
164
+ &:hover,
165
+ &.active {
166
+ background-color: var(--color-background-screen);
167
+
168
+ @media (--screen-sm) {
169
+ .circle {
170
+ background-color: var(--color-background-neutral);
171
+ }
172
+ }
173
+ }
174
+
175
+ &.active {
176
+ border-top: 0;
177
+ margin-top: @line-height-computed;
178
+ }
179
+ }
180
+ }
181
+
182
+ // Contextual variants
183
+ //
184
+ // Add modifier classes to change text and background color on individual items.
185
+ // Organizationally, this must come after the `:hover` states.
186
+
187
+ .list-group-item-variant(success; var(--color-background-positive); var(--color-content-positive));
188
+ .list-group-item-variant(info; var(--color-background-accent); var(--color-content-accent));
189
+ .list-group-item-variant(warning; var(--color-background-warning); var(--color-content-warning));
190
+ .list-group-item-variant(danger; var(--color-background-negative); var(--color-content-negative));
191
+
192
+ // Hover states
193
+ .list-group:hover {
194
+ .list-group-item:not(.active) {
195
+ background-color: #fbfcfd;
196
+
197
+ .media {
198
+ opacity: 0.94;
199
+ }
200
+ }
201
+
202
+ .list-group-item:hover {
203
+ background-color: var(--color-background-screen);
204
+
205
+ .media {
206
+ opacity: 1;
207
+ }
208
+ }
209
+ }
210
+
211
+ .list-group-inactive:hover {
212
+ .list-group-item:not(.active) {
213
+ background-color: var(--color-background-neutral);
214
+ }
215
+
216
+ .list-group-item:hover {
217
+ background-color: var(--color-background-screen);
218
+ }
219
+ }
220
+
221
+ @keyframes listSlideOver {
222
+ 0% { transform: translateX(100vw); }
223
+ 100% { transform: translateX(0); }
224
+ }
225
+
226
+ @media (max-width: @screen-sm-max) {
227
+ .list-group-slide-out {
228
+ .list-group-item {
229
+ .collapse {
230
+ position: fixed;
231
+ top: 0;
232
+ .left(0);
233
+
234
+ width: 100vw;
235
+ height: 100vh;
236
+ margin: 0;
237
+ overflow-y: auto;
238
+ background-color: #fff;
239
+ animation: listSlideOver 0.15s ease-out forwards;
240
+ z-index: 3;
241
+
242
+ .media-left {
243
+ display: none;
244
+ }
245
+
246
+ .well {
247
+ border-radius: 0;
248
+ margin-bottom: 0;
249
+ }
250
+ }
251
+ }
252
+
253
+ .list-group-item.active,
254
+ .list-group-inactive .list-group-item.active {
255
+ margin-top: 1px;
256
+ margin-bottom: 0;
257
+ box-shadow: none !important;
258
+ }
259
+
260
+ .list-group-inactive .list-group-item.active {
261
+ border-top: 1px solid var(--color-border-neutral);
262
+ border-bottom: 1px solid var(--color-border-neutral);
263
+ }
264
+
265
+ .list-group-item.active .collapse {
266
+ height: 100vh;
267
+ overflow-y: auto;
268
+
269
+ // Annoying but makes sure the last content is visible in iOS safari
270
+
271
+ padding-bottom: 72px;
272
+ }
273
+
274
+ .list-group-item.active .collapse .well {
275
+
276
+ // Annoying but makes sure the last content is visible in iOS safari
277
+
278
+ padding-bottom: 72px;
279
+ margin-bottom: -72px;
280
+ }
281
+ }
282
+ }
@@ -1,3 +1,5 @@
1
+ @import (reference) './mixins/_logical-properties.less';
2
+
1
3
  .media {
2
4
  display: flex;
3
5
  }
@@ -27,18 +29,18 @@
27
29
  /* Alignment */
28
30
 
29
31
  .media-right {
30
- padding-left: var(--size-16);
32
+ .padding(left, var(--size-16));
31
33
 
32
34
  @media (--screen-sm) {
33
- padding-left: var(--size-24);
35
+ .padding(left, var(--size-24));
34
36
  }
35
37
  }
36
38
 
37
39
  .media-left {
38
- padding-right: var(--size-16);
40
+ .padding(right, var(--size-16));
39
41
 
40
42
  @media (--screen-sm) {
41
- padding-right: var(--size-24);
43
+ .padding(right, 24px);
42
44
  }
43
45
  }
44
46
 
@@ -52,7 +54,8 @@
52
54
  /* Media list variation */
53
55
 
54
56
  .media-list {
55
- padding-left: 0;
57
+ .padding(left, 0);
58
+
56
59
  list-style: none;
57
60
  }
58
61
 
@@ -1,3 +1,5 @@
1
+ @import (reference) '../mixins/_logical-properties.less';
2
+
1
3
  .alert-variant(@background; @text-color; @text-hover) {
2
4
  background-color: @background;
3
5
  color: @text-color;
@@ -34,17 +36,20 @@
34
36
  display: block;
35
37
  width: @size;
36
38
  height: @size;
37
- left: (2 * @size);
39
+ .left((2 * @size));
40
+
38
41
  top: (@size / -2);
39
42
  transform: rotate(45deg);
43
+ clip-path: polygon(0% 0%, 0 100%, 100% 0);
40
44
  background-color: inherit;
41
45
  }
42
46
  }
43
47
 
44
48
  .arrow-positions(@size: 10px) {
45
49
  &.arrow-center::before {
46
- left: 50%;
47
- margin-left: (@size / -2);
50
+ .left(50%);
51
+
52
+ .margin(left, (@size / -2));
48
53
  }
49
54
 
50
55
  &.arrow-top::before {
@@ -53,17 +58,20 @@
53
58
  }
54
59
 
55
60
  &.arrow-left::before {
56
- left: (2 * @size);
57
- right: auto;
61
+ .left((2 * @size));
62
+
63
+ .right(auto);
58
64
  }
59
65
 
60
66
  &.arrow-right::before {
61
- left: auto;
62
- right: (2 * @size);
67
+ .left(auto);
68
+
69
+ .right((2 * @size));
63
70
  }
64
71
 
65
72
  &.arrow-bottom::before {
66
73
  top: auto;
67
74
  bottom: (@size / -2);
75
+ transform: rotate(225deg);
68
76
  }
69
77
  }
@@ -1,3 +1,5 @@
1
+ @import (reference) '../mixins/_logical-properties.less';
2
+
1
3
  .arrow(@size: 10px) {
2
4
  position: relative;
3
5
  .arrow-pointer(@size);
@@ -11,7 +13,8 @@
11
13
  display: block;
12
14
  width: @size;
13
15
  height: @size;
14
- left: (2 * @size);
16
+ .left((2 * @size));
17
+
15
18
  top: (@size / -2);
16
19
  transform: rotate(45deg);
17
20
  background-color: inherit;
@@ -20,8 +23,9 @@
20
23
 
21
24
  .arrow-positions(@size: 10px) {
22
25
  &.arrow-center::before {
23
- left: 50%;
24
- margin-left: (@size / -2);
26
+ .left(50%);
27
+
28
+ .margin(left, (@size / -2));
25
29
  }
26
30
 
27
31
  &.arrow-top::before {
@@ -30,13 +34,15 @@
30
34
  }
31
35
 
32
36
  &.arrow-left::before {
33
- left: (2 * @size);
34
- right: auto;
37
+ .left((2 * @size));
38
+
39
+ .right(auto);
35
40
  }
36
41
 
37
42
  &.arrow-right::before {
38
- left: auto;
39
- right: (2 * @size);
43
+ .left(auto);
44
+
45
+ .right((2 * @size));
40
46
  }
41
47
 
42
48
  &.arrow-bottom::before {
@@ -4,15 +4,8 @@
4
4
  border-top-right-radius: @radius;
5
5
  border-top-left-radius: @radius;
6
6
  }
7
- .border-right-radius(@radius) {
8
- border-bottom-right-radius: @radius;
9
- border-top-right-radius: @radius;
10
- }
7
+
11
8
  .border-bottom-radius(@radius) {
12
9
  border-bottom-right-radius: @radius;
13
10
  border-bottom-left-radius: @radius;
14
11
  }
15
- .border-left-radius(@radius) {
16
- border-bottom-left-radius: @radius;
17
- border-top-left-radius: @radius;
18
- }
@@ -59,14 +59,14 @@
59
59
  &.focus,
60
60
  &:active,
61
61
  &.active {
62
- background-color: @btn-disabled-bg;
63
- border-color: @btn-disabled-bg;
64
- color: @btn-disabled-color;
62
+ background-color: var(--color-background-neutral);
63
+ border-color: var(--color-interactive-disabled);
64
+ color: var(--color-content-disabled);
65
65
 
66
66
  &.btn-priority-2 {
67
67
  background-color: @background;
68
- border-color: @btn-disabled-color;
69
- color: @btn-disabled-color;
68
+ border-color: var(--color-interactive-disabled);
69
+ color: var(--color-content-disabled);
70
70
  }
71
71
  }
72
72
  }
@@ -0,0 +1,7 @@
1
+ // Center-align a block level element
2
+
3
+ .center-block() {
4
+ display: block;
5
+ margin-left: auto;
6
+ margin-right: auto;
7
+ }
@@ -0,0 +1,11 @@
1
+ .circle-variant(@diameter; @font-size; @icon-size) {
2
+ font-size: @font-size;
3
+ width: @diameter;
4
+ height: @diameter;
5
+ line-height: @diameter;
6
+
7
+ .icon {
8
+ font-size: @icon-size;
9
+ line-height: (@diameter - 2px);
10
+ }
11
+ }
@@ -3,7 +3,7 @@
3
3
  // Used in forms.less to generate the form validation CSS for warnings, errors,
4
4
  // and successes.
5
5
 
6
- .form-control-validation(@text-color: #555; @border-color: #ccc; @border-hover: #aaa; @background-color: #f5f5f5) {
6
+ .form-control-validation(@text-color; @border-color; @border-hover; @border-active: var(--color-interactive-accent-active)) {
7
7
  border-color: @border-color !important;
8
8
 
9
9
  // Color the label and help text
@@ -28,23 +28,29 @@
28
28
  // Set the border and box shadow on specific inputs to match
29
29
  .form-control,
30
30
  .btn-input,
31
- .btn-input:active,
32
31
  .btn-input:focus,
33
32
  .btn-input:hover,
34
33
  .input-group-addon,
35
- .input-group .form-control:focus,
36
34
  .alert {
37
- border-color: @border-color !important;
35
+ border-color: @border-color;
38
36
  }
39
37
 
40
- &:hover,
41
- &:focus-within {
38
+ &:active {
42
39
  .form-control,
43
40
  &.radio label,
44
41
  &.checkbox label,
45
42
  .btn-input,
46
43
  .input-group-addon,
47
- .input-group .form-control:focus,
44
+ .alert {
45
+ border-color: @border-active !important;
46
+ }
47
+ }
48
+
49
+ &:hover {
50
+ &.radio label,
51
+ &.checkbox label,
52
+ .btn-input,
53
+ .input-group-addon,
48
54
  .alert {
49
55
  border-color: @border-hover !important;
50
56
  }
@@ -60,7 +66,7 @@
60
66
  > label {
61
67
  &:not(.disabled) {
62
68
  border-color: @border-color;
63
- color: @input-color;
69
+ color: var(--color-content-primary);
64
70
  }
65
71
 
66
72
  &:hover,
@@ -84,7 +90,7 @@
84
90
  // Form control focus state
85
91
  //
86
92
  // Generate a customized focus state and for any input with the specified color,
87
- // which defaults to the `@input-border-focus` variable.
93
+ // which defaults to the `var(--color-interactive-secondary-active)` CSS custom prop.
88
94
  //
89
95
  // We highly encourage you to not customize the default value, but instead use
90
96
  // this to tweak colors on an as-needed basis. This aesthetic change is based on
@@ -93,9 +99,7 @@
93
99
  //
94
100
  // Example usage: change the default blue border and shadow to white for better
95
101
  // contrast against a dark gray background.
96
- .form-control-focus(@color: @input-border-focus) {
97
- @color-rgba: rgba(red(@color), green(@color), blue(@color), 0.6);
98
-
102
+ .form-control-focus(@color: var(--color-interactive-accent-active)) {
99
103
  &:focus {
100
104
  border-color: @color;
101
105
  outline: 0;
@@ -1,3 +1,5 @@
1
+ @import (reference) '_logical-properties.less';
2
+
1
3
  // Framework grid generation
2
4
  //
3
5
  // Used only by Bootstrap to generate the correct number of grid classes given
@@ -22,8 +24,9 @@
22
24
  // Prevent columns from collapsing when empty
23
25
  min-height: 1px;
24
26
  // Inner gutter via padding
25
- padding-left: ceil((@grid-gutter-width / 2));
26
- padding-right: floor((@grid-gutter-width / 2));
27
+ .padding(left, ceil((@grid-gutter-width / 2)));
28
+
29
+ .padding(right, floor((@grid-gutter-width / 2)));
27
30
  }
28
31
  }
29
32
  .col(1); // kickstart it
@@ -43,7 +46,7 @@
43
46
  .col(@index, @list) when (@index > @grid-columns) {
44
47
  // terminal
45
48
  @{list} {
46
- float: left;
49
+ .float(left);
47
50
  }
48
51
  }
49
52
  .col(1); // kickstart it
@@ -60,27 +63,27 @@
60
63
  }
61
64
  .calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {
62
65
  .col-@{class}-push-@{index} {
63
- left: percentage((@index / @grid-columns));
66
+ .left(percentage((@index / @grid-columns)));
64
67
  }
65
68
  }
66
69
  .calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {
67
70
  .col-@{class}-push-0 {
68
- left: auto;
71
+ .left(auto);
69
72
  }
70
73
  }
71
74
  .calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {
72
75
  .col-@{class}-pull-@{index} {
73
- right: percentage((@index / @grid-columns));
76
+ .right(percentage((@index / @grid-columns)));
74
77
  }
75
78
  }
76
79
  .calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {
77
80
  .col-@{class}-pull-0 {
78
- right: auto;
81
+ .right(auto);
79
82
  }
80
83
  }
81
84
  .calc-grid-column(@index, @class, @type) when (@type = offset) {
82
85
  .col-@{class}-offset-@{index} {
83
- margin-left: percentage((@index / @grid-columns));
86
+ .margin(left, percentage((@index / @grid-columns)));
84
87
  }
85
88
  }
86
89