mithril-materialized 0.19.6 → 1.0.0-beta.1

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 (84) hide show
  1. package/README.md +6 -2
  2. package/dist/autocomplete.d.ts +14 -7
  3. package/dist/button.d.ts +40 -40
  4. package/dist/carousel.d.ts +38 -18
  5. package/dist/chip.d.ts +31 -11
  6. package/dist/code-block.d.ts +8 -9
  7. package/dist/collapsible.d.ts +26 -22
  8. package/dist/collection.d.ts +49 -49
  9. package/dist/dropdown.d.ts +45 -46
  10. package/dist/floating-action-button.d.ts +37 -34
  11. package/dist/icon.d.ts +11 -11
  12. package/dist/index.css +7968 -2
  13. package/dist/index.d.ts +26 -28
  14. package/dist/index.esm.js +4211 -2
  15. package/dist/index.js +4265 -2
  16. package/dist/index.umd.js +4269 -2
  17. package/dist/input-options.d.ts +85 -81
  18. package/dist/input.d.ts +47 -42
  19. package/dist/label.d.ts +21 -22
  20. package/dist/material-box.d.ts +38 -21
  21. package/dist/material-icon.d.ts +14 -0
  22. package/dist/modal.d.ts +41 -26
  23. package/dist/option.d.ts +61 -52
  24. package/dist/pagination.d.ts +16 -20
  25. package/dist/parallax.d.ts +14 -13
  26. package/dist/pickers.d.ts +130 -8
  27. package/dist/radio.d.ts +41 -37
  28. package/dist/search-select.d.ts +41 -0
  29. package/dist/select.d.ts +46 -45
  30. package/dist/switch.d.ts +12 -13
  31. package/dist/tabs.d.ts +57 -45
  32. package/dist/utils.d.ts +43 -70
  33. package/package.json +55 -16
  34. package/sass/components/_badges.scss +59 -0
  35. package/sass/components/_buttons.scss +327 -0
  36. package/sass/components/_cards.scss +197 -0
  37. package/sass/components/_carousel.scss +92 -0
  38. package/sass/components/_chips.scss +92 -0
  39. package/sass/components/_collapsible.scss +94 -0
  40. package/sass/components/_color-classes.scss +34 -0
  41. package/sass/components/_color-variables.scss +371 -0
  42. package/sass/components/_datepicker.scss +251 -0
  43. package/sass/components/_dropdown.scss +90 -0
  44. package/sass/components/_global.scss +775 -0
  45. package/sass/components/_grid.scss +160 -0
  46. package/sass/components/_icons-material-design.scss +5 -0
  47. package/sass/components/_materialbox.scss +43 -0
  48. package/sass/components/_modal.scss +97 -0
  49. package/sass/components/_navbar.scss +211 -0
  50. package/sass/components/_normalize.scss +447 -0
  51. package/sass/components/_preloader.scss +336 -0
  52. package/sass/components/_pulse.scss +34 -0
  53. package/sass/components/_sidenav.scss +213 -0
  54. package/sass/components/_slider.scss +94 -0
  55. package/sass/components/_table_of_contents.scss +36 -0
  56. package/sass/components/_tabs.scss +102 -0
  57. package/sass/components/_tapTarget.scss +105 -0
  58. package/sass/components/_timepicker.scss +170 -0
  59. package/sass/components/_toast.scss +61 -0
  60. package/sass/components/_tooltip.scss +32 -0
  61. package/sass/components/_transitions.scss +13 -0
  62. package/sass/components/_typography.scss +61 -0
  63. package/sass/components/_variables.scss +352 -0
  64. package/sass/components/_waves.scss +114 -0
  65. package/sass/components/forms/_checkboxes.scss +203 -0
  66. package/sass/components/forms/_file-input.scss +50 -0
  67. package/sass/components/forms/_form-groups.scss +28 -0
  68. package/sass/components/forms/_forms.scss +24 -0
  69. package/sass/components/forms/_input-fields.scss +361 -0
  70. package/sass/components/forms/_radio-buttons.scss +118 -0
  71. package/sass/components/forms/_range.scss +164 -0
  72. package/sass/components/forms/_select.scss +193 -0
  73. package/sass/components/forms/_switches.scss +92 -0
  74. package/sass/materialize.scss +41 -0
  75. package/dist/index.css.map +0 -1
  76. package/dist/index.esm.js.map +0 -1
  77. package/dist/index.js.map +0 -1
  78. package/dist/index.modern.js +0 -2
  79. package/dist/index.modern.js.map +0 -1
  80. package/dist/index.umd.js.map +0 -1
  81. package/dist/kanban.d.ts +0 -47
  82. package/dist/layout-form-generator.d.ts +0 -75
  83. package/dist/map-editor.d.ts +0 -63
  84. package/dist/timeline.d.ts +0 -24
package/package.json CHANGED
@@ -1,24 +1,49 @@
1
1
  {
2
2
  "name": "mithril-materialized",
3
- "version": "0.19.6",
3
+ "version": "1.0.0-beta.1",
4
4
  "description": "A materialize library for mithril.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
7
- "exports": {
8
- ".": "./dist/index.modern.js",
9
- "./index.css": "./dist/index.css"
10
- },
7
+ "browser": "dist/index.umd.js",
11
8
  "unpkg": "dist/index.umd.js",
9
+ "jsdelivr": "dist/index.umd.js",
12
10
  "types": "dist/index.d.ts",
11
+ "exports": {
12
+ ".": {
13
+ "types": "./dist/index.d.ts",
14
+ "import": "./dist/index.modern.js",
15
+ "require": "./dist/index.js",
16
+ "default": "./dist/index.modern.js"
17
+ },
18
+ "./modern": "./dist/index.modern.js",
19
+ "./esm": "./dist/index.esm.js",
20
+ "./umd": "./dist/index.umd.js",
21
+ "./index.css": "./dist/index.css",
22
+ "./sass/*": "./sass/*"
23
+ },
24
+ "sideEffects": false,
25
+ "files": [
26
+ "dist",
27
+ "sass"
28
+ ],
13
29
  "scripts": {
14
- "build": "microbundle ./src/index.ts",
15
- "dev": "microbundle watch ./src/index.ts",
30
+ "build": "rollup -c rollup.config.mjs",
31
+ "dev": "rollup -c rollup.config.mjs -w",
16
32
  "start": "npm run dev",
17
33
  "clean": "rimraf dist node_modules/.cache",
34
+ "test": "jest",
35
+ "test:watch": "jest --watch",
36
+ "test:coverage": "jest --coverage",
37
+ "test:ui": "jest --watch --verbose",
38
+ "test:server": "node test-server.js",
39
+ "test:visual": "playwright test",
40
+ "test:visual:ui": "playwright test --ui",
41
+ "test:all": "npm run test && npm run test:visual",
18
42
  "link:old": "pnpm link",
19
43
  "typedoc": "typedoc --out ../../docs/typedoc src",
20
44
  "build:domain": "npm run clean && npm run build && typedoc --out ../../docs/typedoc src",
21
45
  "dry-run": "npm publish --dry-run",
46
+ "sass:watch": "sass --watch ./sass/materialize.scss ./dist/index.css",
22
47
  "patch-release": "npm run clean && npm run build && npm version patch --force -m \"Patch release\" && npm publish && git push --follow-tags",
23
48
  "minor-release": "npm run clean && npm run build && npm version minor --force -m \"Minor release\" && npm publish && git push --follow-tags",
24
49
  "major-release": "npm run clean && npm run build && npm version major --force -m \"Major release\" && npm publish && git push --follow-tags"
@@ -34,17 +59,31 @@
34
59
  "author": "Erik Vullings <erik.vullings@gmail.com> (http://www.tno.nl)",
35
60
  "license": "MIT",
36
61
  "dependencies": {
37
- "materialize-css": "^1.0.0"
62
+ "mithril": "^2.3.3"
38
63
  },
39
64
  "devDependencies": {
40
- "@types/materialize-css": "^1.0.11",
41
- "@types/mithril": "^2.0.11",
42
- "mithril": "^2.2.2",
65
+ "@playwright/test": "^1.54.2",
66
+ "@rollup/plugin-typescript": "^12.1.4",
67
+ "@testing-library/dom": "^10.4.1",
68
+ "@testing-library/jest-dom": "^6.6.4",
69
+ "@testing-library/user-event": "^14.6.1",
70
+ "@types/jest": "^30.0.0",
71
+ "@types/materialize-css": "^1.0.14",
72
+ "@types/mithril": "^2.2.7",
73
+ "autoprefixer": "^10.4.21",
74
+ "express": "^5.1.0",
75
+ "identity-obj-proxy": "^3.0.0",
76
+ "jest": "^30.0.5",
77
+ "jest-environment-jsdom": "^30.0.5",
43
78
  "js-yaml": "^4.1.0",
44
- "microbundle": "^0.15.0",
45
- "rimraf": "^3.0.2",
46
- "tslib": "^2.4.0",
47
- "typedoc": "^0.22.15",
48
- "typescript": "^4.7.2"
79
+ "materialize-css": "^1.0.0",
80
+ "rimraf": "^6.0.1",
81
+ "rollup": "^4.46.2",
82
+ "rollup-plugin-postcss": "^4.0.2",
83
+ "sass": "^1.90.0",
84
+ "ts-jest": "^29.4.1",
85
+ "tslib": "^2.8.1",
86
+ "typedoc": "^0.28.9",
87
+ "typescript": "^5.9.2"
49
88
  }
50
89
  }
@@ -0,0 +1,59 @@
1
+ @use "color-variables";
2
+ @use 'sass:math';
3
+ @use "variables";
4
+
5
+ // Badges
6
+ span.badge {
7
+ min-width: 3rem;
8
+ padding: 0 6px;
9
+ margin-left: 14px;
10
+ text-align: center;
11
+ font-size: 1rem;
12
+ line-height: variables.$badge-height;
13
+ height: variables.$badge-height;
14
+ color: color-variables.color('grey', 'darken-1');
15
+ float: right;
16
+ box-sizing: border-box;
17
+
18
+ &.new {
19
+ font-weight: 300;
20
+ font-size: 0.8rem;
21
+ color: #fff;
22
+ background-color: variables.$badge-bg-color;
23
+ border-radius: 2px;
24
+ }
25
+ &.new:after {
26
+ content: " new";
27
+ }
28
+
29
+ &[data-badge-caption]::after {
30
+ content: " " attr(data-badge-caption);
31
+ }
32
+ }
33
+
34
+ // Special cases
35
+ nav ul a span.badge {
36
+ display: inline-block;
37
+ float: none;
38
+ margin-left: 4px;
39
+ line-height: variables.$badge-height;
40
+ height: variables.$badge-height;
41
+ -webkit-font-smoothing: auto;
42
+ }
43
+
44
+ // Line height centering
45
+ .collection-item span.badge {
46
+ margin-top: calc(#{math.div(variables.$collection-line-height, 2)} - #{math.div(variables.$badge-height, 2)});
47
+ }
48
+ .collapsible span.badge {
49
+ margin-left: auto;
50
+ }
51
+ .sidenav span.badge {
52
+ margin-top: calc(#{math.div(variables.$sidenav-line-height, 2)} - #{math.div(variables.$badge-height, 2)});
53
+ }
54
+
55
+ table span.badge {
56
+ display: inline-block;
57
+ float: none;
58
+ margin-left: auto;
59
+ }
@@ -0,0 +1,327 @@
1
+ @use "sass:color";
2
+ @use 'sass:math';
3
+ @use "variables";
4
+ @use "global";
5
+
6
+ // shared styles
7
+ .btn,
8
+ .btn-flat {
9
+ border: variables.$button-border;
10
+ border-radius: variables.$button-radius;
11
+ display: inline-block;
12
+ height: variables.$button-height;
13
+ line-height: variables.$button-height;
14
+ padding: variables.$button-padding;
15
+ text-transform: uppercase;
16
+ vertical-align: middle;
17
+ -webkit-tap-highlight-color: transparent; // Gets rid of tap active state
18
+ }
19
+
20
+ // Disabled shared style
21
+ .btn.disabled,
22
+ .btn-floating.disabled,
23
+ .btn-large.disabled,
24
+ .btn-small.disabled,
25
+ .btn-flat.disabled,
26
+ .btn:disabled,
27
+ .btn-floating:disabled,
28
+ .btn-large:disabled,
29
+ .btn-small:disabled,
30
+ .btn-flat:disabled,
31
+ .btn[disabled],
32
+ .btn-floating[disabled],
33
+ .btn-large[disabled],
34
+ .btn-small[disabled],
35
+ .btn-flat[disabled] {
36
+ pointer-events: none;
37
+ background-color: variables.$button-disabled-background !important;
38
+ box-shadow: none;
39
+ color: variables.$button-disabled-color !important;
40
+ cursor: default;
41
+ &:hover {
42
+ background-color: variables.$button-disabled-background !important;
43
+ color: variables.$button-disabled-color !important;
44
+ }
45
+ }
46
+
47
+ // Shared icon styles
48
+ .btn,
49
+ .btn-floating,
50
+ .btn-large,
51
+ .btn-small,
52
+ .btn-flat {
53
+ font-size: variables.$button-font-size;
54
+ outline: 0;
55
+ i {
56
+ font-size: variables.$button-icon-font-size;
57
+ line-height: inherit;
58
+ }
59
+ }
60
+
61
+ // Shared focus button style
62
+ .btn,
63
+ .btn-floating {
64
+ &:focus {
65
+ background-color: color.adjust(variables.$button-raised-background, $lightness: -10%);
66
+ }
67
+ }
68
+
69
+ // Raised Button
70
+ .btn {
71
+ text-decoration: none;
72
+ color: variables.$button-raised-color;
73
+ background-color: variables.$button-raised-background;
74
+ text-align: center;
75
+ letter-spacing: .5px;
76
+ @extend .z-depth-1 !optional;
77
+ transition: background-color .2s ease-out;
78
+ cursor: pointer;
79
+ &:hover {
80
+ background-color: variables.$button-raised-background-hover;
81
+ @extend .z-depth-1-half !optional;
82
+ }
83
+ }
84
+
85
+ // Floating button
86
+ .btn-floating {
87
+ &:hover {
88
+ background-color: variables.$button-floating-background-hover;
89
+ @extend .z-depth-1-half !optional;
90
+ }
91
+ &:before {
92
+ border-radius: 0;
93
+ }
94
+ &.btn-large {
95
+ &.halfway-fab {
96
+ bottom: math.div(-(variables.$button-floating-large-size), 2);
97
+ }
98
+ width: variables.$button-floating-large-size;
99
+ height: variables.$button-floating-large-size;
100
+ padding: 0;
101
+ i {
102
+ line-height: variables.$button-floating-large-size;
103
+ }
104
+ }
105
+
106
+ &.btn-small {
107
+ &.halfway-fab {
108
+ bottom: math.div(-(variables.$button-floating-small-size), 2);
109
+ }
110
+ width: variables.$button-floating-small-size;
111
+ height: variables.$button-floating-small-size;
112
+ i {
113
+ line-height: variables.$button-floating-small-size;
114
+ }
115
+ }
116
+
117
+ &.halfway-fab {
118
+ &.left {
119
+ right: auto;
120
+ left: 24px;
121
+ }
122
+ position: absolute;
123
+ right: 24px;
124
+ bottom: math.div(-(variables.$button-floating-size), 2);
125
+ }
126
+ display: inline-block;
127
+ color: variables.$button-floating-color;
128
+ position: relative;
129
+ overflow: hidden;
130
+ z-index: 1;
131
+ width: variables.$button-floating-size;
132
+ height: variables.$button-floating-size;
133
+ line-height: variables.$button-floating-size;
134
+ padding: 0;
135
+ background-color: variables.$button-floating-background;
136
+ border-radius: variables.$button-floating-radius;
137
+ @extend .z-depth-1 !optional;
138
+ transition: background-color .3s;
139
+ cursor: pointer;
140
+ vertical-align: middle;
141
+ i {
142
+ width: inherit;
143
+ display: inline-block;
144
+ text-align: center;
145
+ color: variables.$button-floating-color;
146
+ font-size: variables.$button-large-icon-font-size;
147
+ line-height: variables.$button-floating-size;
148
+ }
149
+ }
150
+
151
+ // button fix
152
+ button.btn-floating {
153
+ border: variables.$button-border;
154
+ }
155
+
156
+ // Fixed Action Button
157
+ .fixed-action-btn {
158
+ &.active {
159
+ ul {
160
+ visibility: visible;
161
+ }
162
+ }
163
+
164
+ // Directions
165
+ &.direction-left,
166
+ &.direction-right {
167
+ padding: 0 0 0 15px;
168
+ ul {
169
+ text-align: right;
170
+ right: 64px;
171
+ top: 50%;
172
+ transform: translateY(-50%);
173
+ height: 100%;
174
+ left: auto;
175
+ /*width 100% only goes to width of button container */
176
+ width: 500px;
177
+ li {
178
+ display: inline-block;
179
+ margin: 7.5px 15px 0 0;
180
+ }
181
+ }
182
+ }
183
+ &.direction-right {
184
+ padding: 0 15px 0 0;
185
+ ul {
186
+ text-align: left;
187
+ direction: rtl;
188
+ left: 64px;
189
+ right: auto;
190
+ li {
191
+ margin: 7.5px 0 0 15px;
192
+ }
193
+ }
194
+ }
195
+ &.direction-bottom {
196
+ padding: 0 0 15px 0;
197
+ ul {
198
+ top: 64px;
199
+ bottom: auto;
200
+ display: flex;
201
+ flex-direction: column-reverse;
202
+ li {
203
+ margin: 15px 0 0 0;
204
+ }
205
+ }
206
+ }
207
+ &.toolbar {
208
+ &.active {
209
+ &>a i {
210
+ opacity: 0;
211
+ }
212
+ }
213
+ padding: 0;
214
+ height: variables.$button-floating-large-size;
215
+ ul {
216
+ display: flex;
217
+ top: 0;
218
+ bottom: 0;
219
+ z-index: 1;
220
+ li {
221
+ flex: 1;
222
+ display: inline-block;
223
+ margin: 0;
224
+ height: 100%;
225
+ transition: none;
226
+ a {
227
+ display: block;
228
+ overflow: hidden;
229
+ position: relative;
230
+ width: 100%;
231
+ height: 100%;
232
+ background-color: transparent;
233
+ box-shadow: none;
234
+ color: #fff;
235
+ line-height: variables.$button-floating-large-size;
236
+ z-index: 1;
237
+ i {
238
+ line-height: inherit;
239
+ }
240
+ }
241
+ }
242
+ }
243
+ }
244
+ position: fixed;
245
+ right: 23px;
246
+ bottom: 23px;
247
+ padding-top: 15px;
248
+ margin-bottom: 0;
249
+ z-index: 997;
250
+ ul {
251
+ left: 0;
252
+ right: 0;
253
+ text-align: center;
254
+ position: absolute;
255
+ bottom: 64px;
256
+ margin: 0;
257
+ visibility: hidden;
258
+ li {
259
+ margin-bottom: 15px;
260
+ }
261
+ a.btn-floating {
262
+ opacity: 0;
263
+ }
264
+ }
265
+ .fab-backdrop {
266
+ position: absolute;
267
+ top: 0;
268
+ left: 0;
269
+ z-index: -1;
270
+ width: variables.$button-floating-size;
271
+ height: variables.$button-floating-size;
272
+ background-color: variables.$button-floating-background;
273
+ border-radius: variables.$button-floating-radius;
274
+ transform: scale(0);
275
+ }
276
+ }
277
+
278
+ // Flat button
279
+ .btn-flat {
280
+ box-shadow: none;
281
+ background-color: transparent;
282
+ color: variables.$button-flat-color;
283
+ cursor: pointer;
284
+ transition: background-color .2s;
285
+ &:focus,
286
+ &:hover {
287
+ box-shadow: none;
288
+ }
289
+ &:focus {
290
+ background-color: rgba(0, 0, 0, .1);
291
+ }
292
+ &.disabled,
293
+ &.btn-flat[disabled] {
294
+ background-color: transparent !important;
295
+ color: variables.$button-flat-disabled-color !important;
296
+ cursor: default;
297
+ }
298
+ }
299
+
300
+ // Large button
301
+ .btn-large {
302
+ @extend .btn !optional;
303
+ height: variables.$button-large-height;
304
+ line-height: variables.$button-large-height;
305
+ font-size: variables.$button-large-font-size;
306
+ padding: 0 28px;
307
+
308
+ i {
309
+ font-size: variables.$button-large-icon-font-size;
310
+ }
311
+ }
312
+
313
+ // Small button
314
+ .btn-small {
315
+ @extend .btn !optional;
316
+ height: variables.$button-small-height;
317
+ line-height: variables.$button-small-height;
318
+ font-size: variables.$button-small-font-size;
319
+ i {
320
+ font-size: variables.$button-small-icon-font-size;
321
+ }
322
+ }
323
+
324
+ // Block button
325
+ .btn-block {
326
+ display: block;
327
+ }
@@ -0,0 +1,197 @@
1
+ @use "variables";
2
+ @use "global";
3
+
4
+
5
+ .card-panel {
6
+ transition: box-shadow .25s;
7
+ padding: variables.$card-padding;
8
+ margin: variables.$element-top-margin 0 variables.$element-bottom-margin 0;
9
+ border-radius: 2px;
10
+ @extend .z-depth-1 !optional;
11
+ background-color: variables.$card-bg-color;
12
+ }
13
+
14
+ .card {
15
+ position: relative;
16
+ margin: variables.$element-top-margin 0 variables.$element-bottom-margin 0;
17
+ background-color: variables.$card-bg-color;
18
+ transition: box-shadow .25s;
19
+ border-radius: 2px;
20
+ @extend .z-depth-1 !optional;
21
+
22
+
23
+ .card-title {
24
+ font-size: 24px;
25
+ font-weight: 300;
26
+ &.activator {
27
+ cursor: pointer;
28
+ }
29
+ }
30
+
31
+ // Card Sizes
32
+ &.small, &.medium, &.large {
33
+ position: relative;
34
+
35
+ .card-image {
36
+ max-height: 60%;
37
+ overflow: hidden;
38
+ }
39
+ .card-image + .card-content {
40
+ max-height: 40%;
41
+ }
42
+ .card-content {
43
+ max-height: 100%;
44
+ overflow: hidden;
45
+ }
46
+ .card-action {
47
+ position: absolute;
48
+ bottom: 0;
49
+ left: 0;
50
+ right: 0;
51
+ }
52
+ }
53
+
54
+ &.small {
55
+ height: 300px;
56
+ }
57
+
58
+ &.medium {
59
+ height: 400px;
60
+ }
61
+
62
+ &.large {
63
+ height: 500px;
64
+ }
65
+
66
+ // Horizontal Cards
67
+ &.horizontal {
68
+ &.small, &.medium, &.large {
69
+ .card-image {
70
+ height: 100%;
71
+ max-height: none;
72
+ overflow: visible;
73
+
74
+ img {
75
+ height: 100%;
76
+ }
77
+ }
78
+ }
79
+
80
+ display: flex;
81
+
82
+ .card-image {
83
+ max-width: 50%;
84
+ img {
85
+ border-radius: 2px 0 0 2px;
86
+ max-width: 100%;
87
+ width: auto;
88
+ }
89
+ }
90
+
91
+ .card-stacked {
92
+ display: flex;
93
+ flex-direction: column;
94
+ flex: 1;
95
+ position: relative;
96
+
97
+ .card-content {
98
+ flex-grow: 1;
99
+ }
100
+ }
101
+ }
102
+
103
+ // Sticky Action Section
104
+ &.sticky-action {
105
+ .card-action {
106
+ z-index: 2;
107
+ }
108
+
109
+ .card-reveal {
110
+ z-index: 1;
111
+ padding-bottom: 64px;
112
+ }
113
+ }
114
+
115
+
116
+
117
+
118
+ .card-image {
119
+ position: relative;
120
+
121
+ // Image background for content
122
+ img {
123
+ display: block;
124
+ border-radius: 2px 2px 0 0;
125
+ position: relative;
126
+ left: 0;
127
+ right: 0;
128
+ top: 0;
129
+ bottom: 0;
130
+ width: 100%;
131
+ }
132
+
133
+ .card-title {
134
+ color: variables.$card-bg-color;
135
+ position: absolute;
136
+ bottom: 0;
137
+ left: 0;
138
+ max-width: 100%;
139
+ padding: variables.$card-padding;
140
+ }
141
+ }
142
+
143
+ .card-content {
144
+ padding: variables.$card-padding;
145
+ border-radius: 0 0 2px 2px;
146
+
147
+ p {
148
+ margin: 0;
149
+ }
150
+ .card-title {
151
+ display: block;
152
+ line-height: 32px;
153
+ margin-bottom: 8px;
154
+
155
+ i {
156
+ line-height: 32px;
157
+ }
158
+ }
159
+ }
160
+
161
+ .card-action {
162
+ &:last-child {
163
+ border-radius: 0 0 2px 2px;
164
+ }
165
+ background-color: inherit; // Use inherit to inherit color classes
166
+ border-top: 1px solid rgba(160,160,160,.2);
167
+ position: relative;
168
+ padding: 16px variables.$card-padding;
169
+
170
+ a:not(.btn):not(.btn-large):not(.btn-floating) {
171
+ color: variables.$card-link-color;
172
+ margin-right: variables.$card-padding;
173
+ transition: color .3s ease;
174
+ text-transform: uppercase;
175
+
176
+ &:hover { color: variables.$card-link-color-light; }
177
+ }
178
+ }
179
+
180
+ .card-reveal {
181
+ padding: variables.$card-padding;
182
+ position: absolute;
183
+ background-color: variables.$card-bg-color;
184
+ width: 100%;
185
+ overflow-y: auto;
186
+ left: 0;
187
+ top: 100%;
188
+ height: 100%;
189
+ z-index: 3;
190
+ display: none;
191
+
192
+ .card-title {
193
+ cursor: pointer;
194
+ display: block;
195
+ }
196
+ }
197
+ }