@sb1/ffe-cards 18.2.5 → 19.0.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.
@@ -3,7 +3,7 @@
3
3
 
4
4
  background: var(--ffe-v-cards-common-card-background-color);
5
5
  box-shadow: 0 1px 4px 0 var(--ffe-v-cards-common-card-box-shadow-color);
6
- margin: 0 0 @ffe-spacing-xs;
6
+ margin: 0 0 var(--ffe-spacing-2xs);
7
7
  border: 2px solid transparent;
8
8
  border-radius: var(--ffe-v-cards-common-card-border-radius);
9
9
  transition: border-color 0.2s;
@@ -17,33 +17,67 @@
17
17
  }
18
18
  }
19
19
 
20
- &:is(a, button, .ffe-card-base--clickable) {
20
+ button.ffe-card__action--raw {
21
+ background: none;
22
+ color: inherit;
23
+ border: none;
24
+ padding: 0;
25
+ font: inherit;
21
26
  cursor: pointer;
22
- &:visited {
23
- .native & {
24
- @media (prefers-color-scheme: dark) {
25
- color: var(--ffe-farge-hvit);
26
- }
27
- }
28
- }
27
+ outline: inherit;
28
+ }
29
29
 
30
- &:focus {
31
- box-shadow: 0 0 0 2px var(--ffe-g-primary-color);
32
- }
30
+ a.ffe-card__action--raw {
31
+ color: inherit;
32
+ text-decoration: inherit;
33
+ outline: inherit;
34
+ }
33
35
 
34
- &:focus,
35
- &:active {
36
- border-color: var(--ffe-g-primary-color);
37
- }
36
+ &:has(.ffe-card__action) {
37
+ cursor: pointer;
38
38
 
39
39
  @media (hover: hover) and (pointer: fine) {
40
40
  &:hover {
41
41
  border-color: var(--ffe-g-primary-color);
42
+ &
43
+ :where(
44
+ .ffe-card-body__card-name,
45
+ .ffe-card-body__title,
46
+ .ffe-card-body__subtext,
47
+ .ffe-card-body__text
48
+ ):has(.ffe-card__action) {
49
+ text-decoration: underline;
50
+ }
42
51
  }
43
52
  }
44
53
  }
45
54
 
55
+ .ffe-card__action--raw:visited {
56
+ .native & {
57
+ @media (prefers-color-scheme: dark) {
58
+ color: var(--ffe-farge-hvit);
59
+ }
60
+ }
61
+ }
62
+
63
+ &:has(.ffe-card__action:focus) {
64
+ box-shadow: 0 0 0 2px var(--ffe-g-primary-color);
65
+ }
66
+
67
+ &:has(.ffe-card__action:active, .ffe-card__action:focus) {
68
+ border-color: var(--ffe-g-primary-color);
69
+ &
70
+ :where(
71
+ .ffe-card-body__card-name,
72
+ .ffe-card-body__title,
73
+ .ffe-card-body__subtext,
74
+ .ffe-card-body__text
75
+ ):has(.ffe-card__action) {
76
+ text-decoration: underline;
77
+ }
78
+ }
79
+
46
80
  @media (min-width: @breakpoint-md) {
47
- margin-bottom: @ffe-spacing-md;
81
+ margin-bottom: var(--ffe-spacing-md);
48
82
  }
49
83
  }
@@ -7,16 +7,16 @@
7
7
  display: grid;
8
8
  grid-template-columns: auto 1fr;
9
9
  align-items: center;
10
- padding: @ffe-spacing-md;
10
+ padding: var(--ffe-spacing-md);
11
11
 
12
12
  & > &__icon {
13
13
  color: var(--ffe-v-cards-icon-color);
14
- margin: 0 @ffe-spacing-lg 0 @ffe-spacing-xs;
14
+ margin: 0 var(--ffe-spacing-lg) 0 var(--ffe-spacing-xs);
15
15
  }
16
16
 
17
17
  @media (min-width: @breakpoint-md) {
18
18
  .ffe-icon-card__icon {
19
- margin: 0 @ffe-spacing-md 0;
19
+ margin: 0 var(--ffe-spacing-md) 0;
20
20
  }
21
21
  }
22
22
  }
@@ -4,26 +4,30 @@
4
4
  .ffe-image-card {
5
5
  .common-card-styling();
6
6
 
7
+ --border-color: transparent;
8
+
7
9
  display: flex;
8
10
  padding: 0;
9
11
  max-width: 290px;
10
12
  border: 0;
11
13
  flex-flow: column nowrap;
12
14
 
13
- @media (hover: hover) and (pointer: fine) {
14
- &:hover {
15
- .ffe-image-card__image-overlay,
16
- .ffe-image-card__body {
17
- border-color: var(--ffe-v-cards-image-card-border-hover-color);
18
- }
19
- }
15
+ .ffe-image-card__image-overlay,
16
+ .ffe-image-card__body {
17
+ border-color: var(--border-color);
20
18
  }
21
19
 
22
- &:focus,
23
- &:active {
24
- .ffe-image-card__image-overlay,
25
- .ffe-image-card__body {
26
- border-color: var(--ffe-v-cards-image-card-border-hover-color);
20
+ &:has(.ffe-card__action:active, .ffe-card__action:focus) {
21
+ --border-color: var(--ffe-v-cards-image-card-border-hover-color);
22
+ }
23
+
24
+ &:has(.ffe-card__action) {
25
+ @media (hover: hover) and (pointer: fine) {
26
+ &:hover {
27
+ --border-color: var(
28
+ --ffe-v-cards-image-card-border-hover-color
29
+ );
30
+ }
27
31
  }
28
32
  }
29
33
 
@@ -44,7 +48,7 @@
44
48
  width: 100%;
45
49
  overflow: hidden;
46
50
  border: 2px solid transparent;
47
- transition: border-color @ffe-transition-duration;
51
+ transition: border-color var(--ffe-transition-duration);
48
52
  }
49
53
 
50
54
  &__image-overlay {
@@ -58,7 +62,8 @@
58
62
 
59
63
  &__body {
60
64
  text-align: center;
61
- padding: @ffe-spacing-sm @ffe-spacing-sm @ffe-spacing-xs @ffe-spacing-sm;
65
+ padding: var(--ffe-spacing-sm) var(--ffe-spacing-sm)
66
+ var(--ffe-spacing-xs) var(--ffe-spacing-sm);
62
67
  border-top: 0;
63
68
  border-bottom-left-radius: var(--ffe-v-cards-common-card-border-radius);
64
69
  border-bottom-right-radius: var(
@@ -69,13 +74,13 @@
69
74
 
70
75
  @media (min-width: @breakpoint-md) {
71
76
  .ffe-image-card__icon {
72
- margin: 0 @ffe-spacing-md 0;
77
+ margin: 0 var(--ffe-spacing-md) 0;
73
78
  }
74
79
  }
75
80
 
76
81
  @media (min-width: @breakpoint-lg) {
77
82
  .ffe-image-card__icon {
78
- margin: 0 @ffe-spacing-lg 0 @ffe-spacing-xs;
83
+ margin: 0 var(--ffe-spacing-lg) 0 var(--ffe-spacing-xs);
79
84
  }
80
85
  }
81
86
  }
@@ -10,22 +10,23 @@
10
10
  display: grid;
11
11
  grid-template-columns: auto 1fr;
12
12
  align-items: center;
13
- padding: @ffe-spacing-md;
14
- gap: @ffe-spacing-sm;
13
+ padding: var(--ffe-spacing-md);
14
+ gap: var(--ffe-spacing-sm);
15
15
 
16
- @media (hover: hover) and (pointer: fine) {
17
- &:hover {
18
- border-style: solid;
19
- box-shadow: none;
20
- }
21
- }
22
-
23
- &:focus,
24
- &:active {
16
+ &:has(.ffe-card__action:active, .ffe-card__action:focus) {
25
17
  border-style: solid;
26
18
  box-shadow: none;
27
19
  }
28
20
 
21
+ &:has(.ffe-card__action) {
22
+ @media (hover: hover) and (pointer: fine) {
23
+ &:hover {
24
+ border-style: solid;
25
+ box-shadow: none;
26
+ }
27
+ }
28
+ }
29
+
29
30
  .native & {
30
31
  @media (prefers-color-scheme: dark) {
31
32
  box-shadow: none;
@@ -34,15 +35,15 @@
34
35
  }
35
36
 
36
37
  .ffe-stippled-card__img--icon {
37
- margin: 0 @ffe-spacing-md 0 @ffe-spacing-xs;
38
+ margin: 0 var(--ffe-spacing-md) 0 var(--ffe-spacing-xs);
38
39
  }
39
40
 
40
41
  .ffe-stippled-card--condensed {
41
- padding: @ffe-spacing-sm;
42
+ padding: var(--ffe-spacing-sm);
42
43
  }
43
44
 
44
45
  .ffe-stippled-card--condensed .ffe-stippled-card__img--icon {
45
- margin: 0 @ffe-spacing-2xs 0 0;
46
+ margin: 0 var(--ffe-spacing-2xs) 0 0;
46
47
  }
47
48
 
48
49
  .ffe-stippled-card .ffe-icons {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sb1/ffe-cards",
3
- "version": "18.2.5",
3
+ "version": "19.0.0",
4
4
  "description": "Kort for bruk i oversikter",
5
5
  "license": "MIT",
6
6
  "author": "SpareBank 1",
@@ -16,13 +16,13 @@
16
16
  "test": "npm run lint"
17
17
  },
18
18
  "dependencies": {
19
- "@sb1/ffe-core": "^27.5.1"
19
+ "@sb1/ffe-core": "^27.5.2"
20
20
  },
21
21
  "devDependencies": {
22
- "@sb1/ffe-buildtool": "^0.6.3"
22
+ "@sb1/ffe-buildtool": "^0.6.4"
23
23
  },
24
24
  "publishConfig": {
25
25
  "access": "public"
26
26
  },
27
- "gitHead": "835f1460b808243328ea4599d9b7abb75fb1a7f9"
27
+ "gitHead": "1a06e8ffb30f92e91b7825ccebada746d7f60abc"
28
28
  }