@appartmint/mint 1.3.0 → 1.3.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 (34) hide show
  1. package/package.json +2 -2
  2. package/src/scss/imports/_index.scss +10 -0
  3. package/src/scss/imports/components/_backgrounds.scss +38 -0
  4. package/src/scss/imports/components/_buttons.scss +243 -0
  5. package/src/scss/imports/components/_cards.scss +259 -0
  6. package/src/scss/imports/components/_embed.scss +75 -0
  7. package/src/scss/imports/components/_footer.scss +134 -0
  8. package/src/scss/imports/components/_header.scss +512 -0
  9. package/src/scss/imports/components/_image.scss +37 -0
  10. package/src/scss/imports/components/_index.scss +16 -0
  11. package/src/scss/imports/components/_recaptcha.scss +17 -0
  12. package/src/scss/imports/components/_tables.scss +29 -0
  13. package/src/scss/imports/global/_animations.scss +79 -0
  14. package/src/scss/imports/global/_aspect.scss +54 -0
  15. package/src/scss/imports/global/_flex.scss +7 -0
  16. package/src/scss/imports/global/_global.scss +208 -0
  17. package/src/scss/imports/global/_grid.scss +153 -0
  18. package/src/scss/imports/global/_icons.scss +6 -0
  19. package/src/scss/imports/global/_index.scss +12 -0
  20. package/src/scss/imports/global/_inputs.scss +135 -0
  21. package/src/scss/imports/global/_structure.scss +89 -0
  22. package/src/scss/imports/global/_text.scss +62 -0
  23. package/src/scss/imports/global/_texture.scss +124 -0
  24. package/src/scss/imports/global/_themes.scss +174 -0
  25. package/src/scss/imports/overrides/_amplify.scss +48 -0
  26. package/src/scss/imports/overrides/_full-calendar.scss +46 -0
  27. package/src/scss/imports/overrides/_index.scss +11 -0
  28. package/src/scss/imports/overrides/_material.scss +24 -0
  29. package/src/scss/imports/overrides/_swiper.scss +55 -0
  30. package/src/scss/imports/util/_index.scss +9 -0
  31. package/src/scss/imports/util/_util.scss +1034 -0
  32. package/src/scss/imports/util/_vars.scss +262 -0
  33. package/src/scss/mint.scss +7 -0
  34. package/src/scss/noscript.scss +14 -0
@@ -0,0 +1,134 @@
1
+ /// _footer.scss - Footer styles
2
+ /// @author App Art Mint LLC
3
+ ///
4
+ /// @group Components
5
+ @charset 'utf-8';
6
+
7
+ /// Imports
8
+ @use '../util' as *;
9
+
10
+
11
+ /// Footer styles
12
+ #{class(footer)} {
13
+ display: flex;
14
+ flex-direction: column;
15
+ max-width: 100%;
16
+ background: css-var($footer-back);
17
+ transition: transform 300ms;
18
+ z-index: 999;
19
+ overflow: hidden;
20
+
21
+ @if ($footer-shadow) {
22
+ box-shadow: $footer-shadow css-var($footer-back);
23
+ }
24
+
25
+ &#{class(hide)} {
26
+ display: flex;
27
+ transform: translateY(100%);
28
+ }
29
+
30
+ * {
31
+ max-width: 100%;
32
+ }
33
+
34
+ p {
35
+ margin: 0;
36
+ }
37
+
38
+ &-content {
39
+ display: flex;
40
+ flex-direction: column;
41
+ flex-wrap: wrap;
42
+ align-items: center;
43
+ justify-content: space-between;
44
+
45
+ @include break(sm) {
46
+ flex-direction: row;
47
+ align-items: flex-start;
48
+ }
49
+
50
+ &>p {
51
+ margin: 0 auto;
52
+ text-align: center;
53
+ align-self: center;
54
+
55
+ a {
56
+ display: block;
57
+ }
58
+ }
59
+
60
+ [label="Footer"] {
61
+ width: 100%;
62
+ margin: auto;
63
+
64
+ @include break(sm) {
65
+ width: auto;
66
+ }
67
+
68
+ &>ul {
69
+ flex-direction: column;
70
+ flex-wrap: wrap;
71
+ justify-content: space-around;
72
+ text-align: center;
73
+
74
+ @include break(xs) {
75
+ flex-direction: row;
76
+ }
77
+
78
+ &>ul {
79
+ li:last-child {
80
+ #{class(pill)} {
81
+ margin-bottom: 0;
82
+ }
83
+ }
84
+ }
85
+ }
86
+
87
+ #{class(pill)} {
88
+ margin-bottom: 0.5rem;
89
+ }
90
+ }
91
+ }
92
+
93
+ &-heel {
94
+ display: flex;
95
+ flex-direction: column;
96
+ align-items: center;
97
+ justify-content: space-between;
98
+ padding: 0.4rem 1rem;
99
+ color: css-var($footer-heel-fore);
100
+ background: css-var($footer-heel-back);
101
+ text-align: center;
102
+
103
+ @include break(sm) {
104
+ flex-direction: row;
105
+ }
106
+ }
107
+
108
+ &-message {
109
+ display: flex;
110
+ align-items: center;
111
+ justify-content: center;
112
+ flex-wrap: wrap;
113
+
114
+ @include break(xs) {
115
+ flex-wrap: nowrap;
116
+ }
117
+
118
+ &>#{class(pill)} {
119
+ margin: 0 0.25rem;
120
+ }
121
+
122
+ &>* {
123
+ margin: 0 0.5rem;
124
+
125
+ &:first-child {
126
+ margin-left: 0;
127
+ }
128
+
129
+ &:last-child {
130
+ margin-right: 0;
131
+ }
132
+ }
133
+ }
134
+ }
@@ -0,0 +1,512 @@
1
+ /// _header.scss - Header styles
2
+ /// @author App Art Mint LLC
3
+ ///
4
+ /// @group Components
5
+ @charset 'utf-8';
6
+
7
+ /// Imports
8
+ @use 'sass:math';
9
+ @use '../util' as *;
10
+
11
+ /// CSS Variables
12
+ :root {
13
+ @include css-var(header-height, $header-height);
14
+ @include css-var-ref(header-back, $header-back);
15
+ @include css-var-ref(header-fore, $header-fore);
16
+ }
17
+
18
+ /// Header Styles
19
+ #{id(header)} {
20
+ position: relative;
21
+ width: 100%;
22
+ color: css-var(header-fore);
23
+ background-color: css-var(header-back);
24
+ z-index: 10000;
25
+ height: css-var(header-height);
26
+
27
+ &#{class(right)} {
28
+ #{id(wrapper)} {
29
+ top: css-var(header-height);
30
+ right: -100%;
31
+ left: unset;
32
+
33
+ &#{class(open)} {
34
+ right: 0;
35
+ }
36
+ }
37
+ }
38
+
39
+ &#{class(bottom)} {
40
+ #{id(wrapper)} {
41
+ top: unset;
42
+ bottom: -100%;
43
+
44
+ &#{class(open)} {
45
+ top: unset;
46
+ bottom: 0;
47
+ }
48
+ }
49
+ }
50
+
51
+ &#{class(left)} {
52
+ #{id(wrapper)} {
53
+ top: css-var(header-height);
54
+ left: -100%;
55
+
56
+ &#{class(open)} {
57
+ left: 0;
58
+ }
59
+ }
60
+ }
61
+
62
+ &#{class(expand)} {
63
+ @include break($header-break) {
64
+ #{class(buttons)} {
65
+ width: auto;
66
+
67
+ #{controls(wrapper)} {
68
+ display: none;
69
+ }
70
+ }
71
+
72
+ #{id(wrapper)} {
73
+ position: static;
74
+ display: flex !important;
75
+ height: 100%;
76
+ padding: 0;
77
+ z-index: 0;
78
+
79
+ &,
80
+ & nav {
81
+ height: $header-height;
82
+ background: css-var(glow-0) !important;
83
+ overflow: visible;
84
+ }
85
+
86
+ nav {
87
+ border: none;
88
+
89
+ &::before {
90
+ display: none;
91
+ }
92
+
93
+ &>ul {
94
+ flex-direction: row;
95
+ justify-content: flex-end;
96
+ flex-wrap: nowrap;
97
+ overflow: visible;
98
+
99
+ &>li {
100
+ position: relative;
101
+ display: flex;
102
+ width: 100%;
103
+ max-width: 200px;
104
+ text-align: center;
105
+
106
+ button,
107
+ ul {
108
+ width: 100%;
109
+ max-width: 200px;
110
+ }
111
+
112
+ button {
113
+ font-size: 1.5rem;
114
+
115
+ $arrow-size: 1rem;
116
+ $arrow-margin: 1rem;
117
+ padding-right: $arrow-margin + $arrow-size;
118
+
119
+ &::after {
120
+ content: '\f054';
121
+ font-family: 'Font Awesome 6 Pro';
122
+ font-weight: 900;
123
+ font-size: $arrow-size;
124
+ position: absolute;
125
+ top: 50%;
126
+ transform: translateY(-50%);
127
+ margin-left: $arrow-margin;
128
+ transition: transform css-var(delay-default);
129
+ }
130
+
131
+ @include states(hover, focus, expanded) {
132
+ &::after {
133
+ transform: translateY(-50%) rotate(90deg);
134
+ }
135
+ }
136
+ }
137
+
138
+ ul {
139
+ position: absolute;
140
+ top: 100%;
141
+ left: 50%;
142
+ transform: translateX(-50%);
143
+ background-color: css-var($header-back);
144
+ }
145
+ }
146
+ }
147
+ }
148
+
149
+ a {
150
+ font-size: 1.25rem;
151
+ }
152
+
153
+ a, button {
154
+ margin: 0.25rem 0;
155
+ }
156
+ }
157
+ }
158
+ }
159
+
160
+ &#{class(spread)} {
161
+ @include break-max($header-break) {
162
+ #{id(wrapper)} {
163
+ #{$has-controls} {
164
+ display: none;
165
+
166
+ &+ul {
167
+ display: flex !important;
168
+ height: auto !important;
169
+ margin-bottom: 3rem !important;
170
+
171
+ &>li:first-child {
172
+ font-size: 1.5em;
173
+ }
174
+ }
175
+ }
176
+ }
177
+ }
178
+
179
+ &#{neg(class(expand))} {
180
+ #{id(wrapper)} {
181
+ #{$has-controls} {
182
+ display: none;
183
+
184
+ &+ul {
185
+ display: flex !important;
186
+ height: auto !important;
187
+ margin-bottom: 3rem;
188
+
189
+ &>li:first-child {
190
+ font-size: 1.5em;
191
+ }
192
+ }
193
+ }
194
+ }
195
+ }
196
+ }
197
+
198
+ &#{class(tray)} {
199
+ #{id(wrapper)} {
200
+ gap: 1.5rem;
201
+ font-size: 0.5em;
202
+
203
+ @include break(sm) {
204
+ max-width: 512px;
205
+ }
206
+
207
+ a, button {
208
+ padding: 0.75rem;
209
+ margin: 0.25rem 0;
210
+ line-height: 1;
211
+ font-size: 4em;
212
+ }
213
+
214
+ nav {
215
+ &>ul {
216
+ flex-direction: column;
217
+ flex-wrap: nowrap;
218
+ justify-content: flex-start;
219
+ }
220
+
221
+ li {
222
+ width: 100%;
223
+ }
224
+ }
225
+ }
226
+ }
227
+
228
+ &#{neg(class(border))} {
229
+ &::before {
230
+ content: '';
231
+ position: absolute;
232
+ top: 0;
233
+ left: 0;
234
+ width: 100%;
235
+ background: css-var(header-back);
236
+ }
237
+ }
238
+
239
+ &::before {
240
+ height: css-var(header-height);
241
+ z-index: -1;
242
+ }
243
+
244
+ nav {
245
+ &>ul {
246
+ display: flex;
247
+ flex-direction: column;
248
+ }
249
+ }
250
+
251
+ ul {
252
+ list-style: none;
253
+ margin-top: 0;
254
+ margin-bottom: 1rem;
255
+ padding-left: 0;
256
+ }
257
+
258
+ a,
259
+ button {
260
+ margin: 0;
261
+ border: 0;
262
+ color: css-var($header-link-fore);
263
+ background: css-var(trans);
264
+ transition-property: color, background;
265
+ transition-duration: css-var(delay-default);
266
+
267
+ @include states(hover) {
268
+ color: css-var($header-link-fore-hover);
269
+ }
270
+ }
271
+
272
+ h1 {
273
+ display: flex;
274
+ white-space: nowrap;
275
+ align-items: center;
276
+ gap: 1rem;
277
+ margin: 0;
278
+ }
279
+
280
+ #{id(navbar)} {
281
+ display: flex;
282
+ align-items: center;
283
+ justify-content: space-between;
284
+ height: 100%;
285
+ }
286
+
287
+ #{class(logo)} {
288
+ display: flex;
289
+ align-items: center;
290
+ width: auto;
291
+ text-decoration: none;
292
+
293
+ img {
294
+ max-height: css-var(header-height);
295
+ width: auto;
296
+ }
297
+ }
298
+
299
+ #{controls(wrapper)} {
300
+ display: inline-block;
301
+ position: relative;
302
+ padding: $menu-btn-padding;
303
+ width: $menu-bar-width + $menu-btn-padding * 2;
304
+ height: $menu-btn-height + $menu-btn-padding * 2;
305
+ border-radius: $border-radius;
306
+ background: css-var($menu-btn-color);
307
+ box-shadow: $menu-btn-shadow-size css-var($menu-btn-shadow-color);
308
+ z-index: 1000;
309
+
310
+ @include states(hover) {
311
+ background: css-var($header-link-back-hover);
312
+
313
+ #{class(menu-icon)} {
314
+
315
+ &,
316
+ &::before,
317
+ &::after {
318
+ background-color: css-var($header-link-fore-hover);
319
+ }
320
+ }
321
+ }
322
+
323
+ #{class(menu-icon)} {
324
+ top: 50%;
325
+ left: 50%;
326
+ transform: translate(-50%, -50%);
327
+
328
+ &,
329
+ &::before,
330
+ &::after {
331
+ content: '';
332
+ display: block;
333
+ position: absolute;
334
+ left: 50%;
335
+ height: $menu-bar-height;
336
+ width: $menu-bar-width;
337
+ background-color: css-var($menu-bar-color);
338
+ transition: delay(default);
339
+ }
340
+
341
+ &::before {
342
+ transform: translate(-50%, -200%);
343
+ }
344
+
345
+ &::after {
346
+ transform: translate(-50%, 200%);
347
+ }
348
+ }
349
+
350
+ &#{expanded(true)} {
351
+ #{class(menu-icon)} {
352
+ background: transparent;
353
+
354
+ &::before {
355
+ transform: translate(-50%, 0) rotate(45deg);
356
+ }
357
+
358
+ &::after {
359
+ transform: translate(-50%, 0) rotate(-45deg);
360
+ }
361
+ }
362
+ }
363
+ }
364
+
365
+ #{id(wrapper)} {
366
+ display: flex;
367
+ flex-direction: column;
368
+ position: fixed;
369
+ top: -100%;
370
+ left: 0;
371
+ width: 100%;
372
+ height: calc(100vh - css-var(header-height));
373
+ height: calc(100dvh - css-var(header-height));
374
+ z-index: -2;
375
+ background: css-var(header-back);
376
+ transition-duration: css-var(delay-default);
377
+ transition-property: top, right, bottom, left;
378
+ overflow: auto;
379
+
380
+ &#{class(open)} {
381
+ top: css-var(header-height);
382
+ }
383
+
384
+ nav {
385
+ height: calc(100vh - css-var(header-height));
386
+ height: calc(100dvh - css-var(header-height));
387
+ overflow: auto;
388
+ background: css-var(back);
389
+
390
+ @include break(xl) {
391
+ display: flex;
392
+ align-items: center;
393
+ justify-content: center;
394
+ }
395
+
396
+ &> :last-child {
397
+ margin-bottom: 0;
398
+ }
399
+
400
+ &>ul {
401
+ height: 100%;
402
+ overflow: auto;
403
+
404
+ @include break(md) {
405
+ display: flex;
406
+ flex-direction: row;
407
+ flex-wrap: wrap;
408
+ align-items: center;
409
+ justify-content: space-evenly;
410
+ width: 100%;
411
+ }
412
+ }
413
+ }
414
+
415
+ a {
416
+ display: flex;
417
+ }
418
+
419
+ a,
420
+ button {
421
+ //display: flex;
422
+ align-items: center;
423
+ justify-content: center;
424
+ font-family: $font-secondary, $font-backups !important;
425
+ font-size: 3em;
426
+ padding: 0.5rem;
427
+ margin: 0.5rem 0;
428
+ text-align: center;
429
+ border-radius: $header-link-border-radius;
430
+
431
+ @include break(xs) {
432
+ padding: 1rem 1.5rem;
433
+
434
+ i {
435
+ font-size: 0.5em;
436
+ }
437
+ }
438
+
439
+ @include states(hover, focus) {
440
+ background-color: css-var($header-link-back-hover);
441
+ color: css-var($header-link-fore-hover);
442
+ }
443
+
444
+ @include states(active) {
445
+ text-decoration: underline;
446
+ }
447
+ }
448
+
449
+ ul {
450
+ li {
451
+ &:last-child {
452
+ margin-bottom: 0;
453
+
454
+ ul {
455
+ margin-bottom: 0;
456
+ }
457
+ }
458
+ }
459
+ }
460
+ }
461
+
462
+ #{class(buttons)} {
463
+ flex-wrap: nowrap;
464
+ flex-shrink: 0;
465
+ justify-content: flex-end;
466
+ margin-left: auto;
467
+
468
+ a,
469
+ button {
470
+ &#{neg(controls(wrapper))} {
471
+ display: flex;
472
+ width: auto;
473
+ padding: 0.5rem;
474
+ }
475
+ }
476
+ }
477
+
478
+ #{class(dropdown)} {
479
+ background: css-var(header-back);
480
+
481
+ button {
482
+ display: flex;
483
+ align-items: center;
484
+ justify-content: center;
485
+ min-width: css-var(header-height);
486
+ height: css-var(header-height);
487
+ padding: calc(css-var(header-height) / 2);
488
+ }
489
+
490
+ li {
491
+ padding: calc(css-var(header-height) / 2);
492
+ line-height: 1;
493
+ cursor: pointer;
494
+ }
495
+ }
496
+
497
+ #{$has-controls + neg(controls(wrapper))} {
498
+ &+ul {
499
+ display: flex;
500
+ flex-direction: column;
501
+ height: 0;
502
+ overflow: hidden;
503
+ transition: height css-var(delay-default), margin css-var(delay-default);
504
+ }
505
+
506
+ &#{$has-expanded + neg(expanded(true))} {
507
+ &+ul {
508
+ margin: 0;
509
+ }
510
+ }
511
+ }
512
+ }
@@ -0,0 +1,37 @@
1
+ /// _image.scss - Image styles
2
+ /// @author App Art Mint LLC
3
+ ///
4
+ /// @group Components
5
+ @charset 'utf-8';
6
+
7
+ /// Imports
8
+ @use '../util' as *;
9
+
10
+ /// A basic image
11
+ #{class(image)} {
12
+
13
+ /// A placeholder image warning
14
+ &#{class(error)} {
15
+ &::after {
16
+ content: '❌ Image failed to load. This is a placeholder.';
17
+ position: absolute;
18
+ bottom: 0;
19
+ left: 0;
20
+ width: 100%;
21
+ padding: 0 $image-shadow-size $image-shadow-size $image-shadow-size;
22
+ background: css-var($shadow-color);
23
+ box-shadow: 0 0 $image-shadow-size $image-shadow-size css-var($shadow-color);
24
+ text-align: center;
25
+ }
26
+ }
27
+
28
+ img {
29
+ display: block;
30
+ }
31
+ }
32
+
33
+ /// Banner images
34
+ #{class(banner)} {
35
+ position: relative;
36
+ width: 100%;
37
+ }
@@ -0,0 +1,16 @@
1
+ /// _index.scss - Forward all overrides
2
+ /// @author App Art Mint LLC
3
+ ///
4
+ /// @group Index
5
+ @charset 'utf-8';
6
+
7
+ /// Imports
8
+ @use './backgrounds';
9
+ @use './buttons';
10
+ @use './cards';
11
+ @use './embed';
12
+ @use './footer';
13
+ @use './header';
14
+ @use './image';
15
+ @use './recaptcha';
16
+ @use './tables';
@@ -0,0 +1,17 @@
1
+ /// _recaptcha.scss - Recaptcha styles
2
+ /// @author App Art Mint LLC
3
+ ///
4
+ /// @group Components
5
+ @charset 'utf-8';
6
+
7
+ /// Recaptcha styles
8
+
9
+ /// Hide the badge
10
+ /// Requires this on form:
11
+ ///
12
+ /// This site is protected by reCAPTCHA and the Google
13
+ /// <a href="https://policies.google.com/privacy">Privacy Policy</a> and
14
+ /// <a href="https://policies.google.com/terms">Terms of Service</a> apply.
15
+ .grecaptcha-badge {
16
+ visibility: hidden;
17
+ }