barbican-reset 3.26.0 → 3.27.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.
@@ -1,12 +1,10 @@
1
1
  <template>
2
- <component
3
- :type="defineType(defineComponent)"
2
+ <button
3
+ :aria-busy="props.state == 'loading' ? 'true' : 'false'"
4
4
  :class="generateClassnames"
5
- :aria-busy="defineAriaBusy"
6
- :aria-live="defineAriaLive"
7
- @click="emit('click')"
8
- :is="defineComponent"
9
- :to="to"
5
+ @click="emits('click')"
6
+ :type="props.type"
7
+ aria-live="polite"
10
8
  ref="button">
11
9
  <template v-if="state == 'default'">
12
10
  <slot name="default">default</slot>
@@ -23,23 +21,17 @@
23
21
  <template v-else-if="state == 'error'">
24
22
  <slot name="error">error</slot>
25
23
  </template>
26
- </component>
24
+ </button>
27
25
  </template>
28
26
 
29
27
  <script setup>
30
28
  import { computed, useTemplateRef } from 'vue'
31
29
  import DotTyping from '#components/BrButton/dot_typing.vue'
32
- import BrLink from '#components/BrLink.vue'
33
30
 
34
- const emit = defineEmits(['click'])
31
+ const emits = defineEmits(['click'])
35
32
 
36
33
  const button = useTemplateRef('button')
37
34
 
38
- const defineComponent = computed(() => {
39
- if (props.to && !props.disabled) return BrLink
40
- return 'button'
41
- })
42
-
43
35
  const generateClassnames = computed(() => {
44
36
  let classnames = ['btn', 'btn-' + props.variant]
45
37
 
@@ -51,36 +43,10 @@ const generateClassnames = computed(() => {
51
43
  classnames.push('btn-slim')
52
44
  }
53
45
 
54
- if (props.active) {
55
- classnames.push('btn-active')
56
- }
57
-
58
46
  return classnames
59
47
  })
60
48
 
61
- const defineAriaBusy = computed(() => {
62
- if (props.to) return
63
- return props.state == 'loading' ? 'true' : 'false'
64
- })
65
-
66
- const defineAriaLive = computed(() => {
67
- if (props.to) return
68
- return 'polite'
69
- })
70
-
71
- const focusButton = () => {
72
- if (defineComponent.value == 'button' && button) {
73
- button.value.focus()
74
- }
75
- }
76
-
77
- const defineType = function (component) {
78
- if (props.type) return props.type
79
-
80
- if (component == 'button') return 'button'
81
-
82
- return null
83
- }
49
+ const focusButton = () => button.value.focus()
84
50
 
85
51
  const props = defineProps({
86
52
  state: {
@@ -93,13 +59,7 @@ const props = defineProps({
93
59
  },
94
60
  type: {
95
61
  type: String,
96
- },
97
- to: {
98
- type: [Object, String],
99
- },
100
- disabled: {
101
- type: Boolean,
102
- default: false,
62
+ default: 'button',
103
63
  },
104
64
  inline: {
105
65
  type: Boolean,
@@ -109,10 +69,6 @@ const props = defineProps({
109
69
  type: Boolean,
110
70
  default: false,
111
71
  },
112
- active: {
113
- type: Boolean,
114
- default: false,
115
- },
116
72
  })
117
73
 
118
74
  defineExpose({
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <component :class="generateClassnames" :is="defineComponent" :to="defineTo">
2
+ <div :class="generateClassnames">
3
3
  <div v-if="$slots.header" class="br-card-header">
4
4
  <slot name="header" />
5
5
  </div>
@@ -11,49 +11,21 @@
11
11
  <slot />
12
12
  </br-card-body>
13
13
  </template>
14
- </component>
14
+ </div>
15
15
  </template>
16
16
 
17
17
  <script setup>
18
18
  import { computed } from 'vue'
19
19
  import BrCardBody from '#components/BrCardBody.vue'
20
- import BrLink from '#components/BrLink.vue'
21
-
22
- const defineComponent = computed(() => {
23
- if (props.to && !props.disabled) return BrLink
24
- return 'div'
25
- })
26
-
27
- const defineTo = computed(() => {
28
- if (props.disabled) return
29
- return props.to
30
- })
31
20
 
32
21
  const generateClassnames = computed(() => {
33
22
  let classnames = ['br-card']
34
23
 
35
24
  if (props.inline) classnames.push('inline')
36
- if (props.navcard) classnames.push('navcard')
37
- if (props.navlink) classnames.push('navlink')
38
25
  if (props.membership) classnames.push('membership')
39
26
  if (props.qrcode) classnames.push('qrcode')
40
27
 
41
- if (props.navitem) {
42
- classnames.push('navitem')
43
-
44
- if (props.disabled) {
45
- classnames.push('disabled')
46
- }
47
- }
48
-
49
- if (
50
- !props.inline &&
51
- !props.navcard &&
52
- !props.navitem &&
53
- !props.navlink &&
54
- !props.membership &&
55
- !props.qrcode
56
- ) {
28
+ if (!props.inline && !props.membership && !props.qrcode) {
57
29
  classnames.push('default')
58
30
  }
59
31
 
@@ -61,44 +33,10 @@ const generateClassnames = computed(() => {
61
33
  })
62
34
 
63
35
  const props = defineProps({
64
- inline: {
65
- type: Boolean,
66
- default: false,
67
- },
68
- navcard: {
69
- type: Boolean,
70
- default: false,
71
- },
72
- navitem: {
73
- type: Boolean,
74
- default: false,
75
- },
76
- navlink: {
77
- type: Boolean,
78
- default: false,
79
- },
80
- membership: {
81
- type: Boolean,
82
- default: false,
83
- },
84
- qrcode: {
85
- type: Boolean,
86
- default: false,
87
- },
88
- center: {
89
- type: Boolean,
90
- default: false,
91
- },
92
- noBody: {
93
- type: Boolean,
94
- default: false,
95
- },
96
- to: {
97
- type: [Object, String],
98
- },
99
- disabled: {
100
- type: Boolean,
101
- default: false,
102
- },
36
+ inline: Boolean,
37
+ membership: Boolean,
38
+ qrcode: Boolean,
39
+ center: Boolean,
40
+ noBody: Boolean,
103
41
  })
104
42
  </script>
@@ -1,8 +1,8 @@
1
1
  <template>
2
- <a v-if="isExternal" :href="to">
2
+ <a v-if="isExternal" :href="to" :class="generateClassnames">
3
3
  <slot />
4
4
  </a>
5
- <router-link v-else :to="to">
5
+ <router-link v-else :to="to" :class="generateClassnames">
6
6
  <slot />
7
7
  </router-link>
8
8
  </template>
@@ -14,9 +14,35 @@ import { computed } from 'vue'
14
14
 
15
15
  const isExternal = computed(() => typeof props.to == 'string')
16
16
 
17
+ const generateClassnames = computed(() => {
18
+ let classnames = ['br-link']
19
+
20
+ if (props.navcard) classnames.push('navcard')
21
+
22
+ if (props.external) classnames.push('external')
23
+
24
+ if (props.slim) classnames.push('slim')
25
+
26
+ if (props.active) classnames.push('active')
27
+
28
+ return classnames
29
+ })
30
+
17
31
  const props = defineProps({
18
32
  to: {
19
33
  type: [Object, String],
20
34
  },
35
+ navcard: {
36
+ type: Boolean,
37
+ },
38
+ external: {
39
+ type: Boolean,
40
+ },
41
+ slim: {
42
+ type: Boolean,
43
+ },
44
+ active: {
45
+ type: Boolean,
46
+ },
21
47
  })
22
48
  </script>
@@ -16,13 +16,19 @@ const generateComponentClasses = computed(() => {
16
16
 
17
17
  if (props.cluster) {
18
18
  classnames.push('cluster')
19
+ classnames.push('align-' + props.align)
19
20
  }
20
21
 
21
22
  if (props.orders) {
22
23
  classnames.push('orders')
24
+ classnames.push('align-' + props.align)
23
25
  }
24
26
 
25
- if (!props.navcard && !props.cluster && !props.orders) {
27
+ if (props.preferences) {
28
+ classnames.push('preferences')
29
+ }
30
+
31
+ if (!props.navcard && !props.cluster && !props.orders && !props.preferences) {
26
32
  classnames.push('default')
27
33
  }
28
34
 
@@ -30,17 +36,13 @@ const generateComponentClasses = computed(() => {
30
36
  })
31
37
 
32
38
  const props = defineProps({
33
- navcard: {
34
- type: Boolean,
35
- default: false,
36
- },
37
- cluster: {
38
- type: Boolean,
39
- default: false,
40
- },
41
- orders: {
42
- type: Boolean,
43
- default: false,
39
+ navcard: Boolean,
40
+ cluster: Boolean,
41
+ orders: Boolean,
42
+ preferences: Boolean,
43
+ align: {
44
+ type: String,
45
+ default: 'middle',
44
46
  },
45
47
  })
46
48
  </script>
package/index.js CHANGED
@@ -37,6 +37,7 @@ import BrFormTextarea from '#components/BrFormTextarea.vue'
37
37
  import BrFormToggle from '#components/BrFormToggle.vue'
38
38
  import BrFormUpdate from '#components/BrFormUpdate.vue'
39
39
  import BrFormVisible from '#components/BrFormVisible.vue'
40
+ import BrLink from '#components/BrLink.vue'
40
41
 
41
42
  import BrOverlay from '#components/BrOverlay.vue'
42
43
 
@@ -81,6 +82,7 @@ export {
81
82
  BrFormToggle,
82
83
  BrFormUpdate,
83
84
  BrFormVisible,
85
+ BrLink,
84
86
  BrLoader,
85
87
  BrOverlay,
86
88
  BrSkiplink,
package/package.json CHANGED
@@ -137,5 +137,5 @@
137
137
  "style:patterns": "cd patterns && gulp build:css",
138
138
  "build:patterns": "cd patterns && rm -rf html && pug views --out html"
139
139
  },
140
- "version": "3.26.0"
140
+ "version": "3.27.0"
141
141
  }
package/scss/_atomic.scss CHANGED
@@ -44,4 +44,8 @@
44
44
  @include large-up {
45
45
  display: none;
46
46
  }
47
+ }
48
+
49
+ .display-inline-block {
50
+ display: inline-block;
47
51
  }
@@ -229,10 +229,6 @@ button.btn:active {
229
229
  @include btn-outline-alert-neutral;
230
230
  }
231
231
 
232
- &.btn-navcard {
233
- @include btn-navcard;
234
- }
235
-
236
232
  &.btn-summary {
237
233
  @include btn-summary;
238
234
  }
@@ -21,7 +21,7 @@
21
21
  }
22
22
 
23
23
  .br-card-body {
24
- @include br-card-body;
24
+ @include br-card--body;
25
25
  }
26
26
 
27
27
  .br-card-img {
@@ -23,7 +23,7 @@ fieldset,
23
23
 
24
24
  @include small-up {
25
25
  .fieldset.table {
26
- grid-template-columns: auto repeat(2, 5rem);
26
+ grid-template-columns: auto calc(var(--width-column) * 2);
27
27
  margin-top: var(--margin-sm);
28
28
  border-radius: 0;
29
29
  display: grid;
@@ -0,0 +1,2 @@
1
+ @forward "br-link/navcard";
2
+ @forward "br-link/navlink";
@@ -15,4 +15,8 @@
15
15
 
16
16
  .br-wrap.orders {
17
17
  @include br-wrap--orders;
18
+ }
19
+
20
+ .br-wrap.preferences {
21
+ @include br-wrap--preferences;
18
22
  }
@@ -3,6 +3,7 @@
3
3
  --border-radius-lg: 0.375rem;
4
4
  --border-width-sm: 0.0625rem;
5
5
  --border-width-lg: 0.125rem;
6
+ --border-width-xl: 0.25rem;
6
7
  --box-shadow-card: 0 0 var(--padding-sm) rgba(0, 0, 0, 0.125);
7
8
  --color-black-80-lighten: color-mix(in oklab, black 80%, white);
8
9
  --color-black-60-lighten: color-mix(in oklab, black 60%, white);
@@ -140,7 +141,7 @@
140
141
  --font-size-h1: 2.25rem;
141
142
  --font-size-h2: 2rem;
142
143
  --font-size-h3: 1.75rem;
143
- --font-size-h4: 1.375rem;
144
+ --font-size-h4: 1.5rem;
144
145
  --font-size-h5: 1.25rem;
145
146
  --font-size-h6: 1rem;
146
147
  --font-size-sm: 0.875rem;
@@ -166,6 +167,7 @@
166
167
  --min-height-button: 2.5rem;
167
168
  --min-height-iframe-sm: 27.5rem;
168
169
  --min-height-iframe-lg: 36.875rem;
170
+ --offset-navlink: calc(var(--border-width-sm) * -1);
169
171
  --outline-offset-sm: 0.0625rem;
170
172
  --outline-offset-md: 0.125rem;
171
173
  --outline-offset-lg: 0.1875rem;
@@ -183,6 +185,7 @@
183
185
  --padding-layout-sm: 5%;
184
186
  --padding-layout-lg: 10%;
185
187
  --scale-click: scale(0.98);
188
+ --width-column: 5rem;
186
189
  --width-icon: 10rem;
187
190
  --width-title: 20rem;
188
191
  --width-layout-xs: 24rem;
@@ -0,0 +1,61 @@
1
+ @use "../mixins/br-card" as *;
2
+ @use "../mixins/br-link/navlink" as *;
3
+ @use "../mixins/breakpoints" as *;
4
+ @use "../mixins/buttons/slim" as *;
5
+ @use "../mixins/br-link/navlink" as *;
6
+
7
+ .br-link.navcard {
8
+ @include br-card--setup;
9
+ @include br-card--body;
10
+ }
11
+
12
+ .br-link.navcard.slim {
13
+ @include btn-slim;
14
+ }
15
+
16
+ .br-link.navcard.active {
17
+ @include navlink--focus;
18
+ @include navlink--outline;
19
+
20
+ & {
21
+ outline-color: var(--color-brand-generic);
22
+ }
23
+ }
24
+
25
+ .br-link.navcard.active:hover,
26
+ .br-link.navcard.active:focus {
27
+ @include navlink--disabled;
28
+
29
+ & {
30
+ outline-color: var(--color-brand-generic);
31
+ }
32
+ }
33
+
34
+ .br-link.navcard:hover,
35
+ .br-link.navcard:focus {
36
+ @include navlink--focus;
37
+ @include navlink--outline;
38
+
39
+ & {
40
+ outline-color: currentColor;
41
+ }
42
+ }
43
+
44
+ @include small-down {
45
+ .br-link.navcard.external {
46
+ background-color: transparent;
47
+ justify-self: start;
48
+ border-width: 0;
49
+ padding: 0;
50
+ }
51
+
52
+ .br-link.navcard.external:hover,
53
+ .br-link.navcard.external:focus {
54
+ background-color: var(--color-black-80-lighten);
55
+ outline-color: var(--color-black-80-lighten);
56
+ outline-width: var(--border-width-xl);
57
+ outline-offset: 0;
58
+ border-radius: 0;
59
+ color: white;
60
+ }
61
+ }
@@ -0,0 +1,61 @@
1
+ @use "../mixins/br-card" as *;
2
+ @use "../mixins/br-link/navlink" as *;
3
+
4
+ .navlink {
5
+ @include br-card--setup;
6
+
7
+ & {
8
+ padding-bottom: var(--padding-md);
9
+ padding-right: var(--padding-lg);
10
+ padding-left: var(--padding-lg);
11
+ padding-top: var(--padding-md);
12
+ text-decoration: underline;
13
+ font-weight: bold;
14
+ display: block;
15
+ }
16
+ }
17
+
18
+ .navlink:not(.first) {
19
+ border-top-right-radius: 0;
20
+ border-top-left-radius: 0;
21
+ border-top-width: 0;
22
+ }
23
+
24
+ .navlink:not(.last) {
25
+ border-bottom-right-radius: 0;
26
+ border-bottom-left-radius: 0;
27
+ }
28
+
29
+ div.navlink {
30
+ @include navlink--disabled;
31
+ @include navlink--outline;
32
+
33
+ & {
34
+ outline-color: var(--color-brand-generic);
35
+ cursor: default;
36
+ }
37
+ }
38
+
39
+ a.navlink:hover,
40
+ a.navlink:focus {
41
+ @include navlink--focus;
42
+ @include navlink--outline;
43
+
44
+ & {
45
+ outline-color: currentColor;
46
+ }
47
+ }
48
+
49
+ a.navlink.router-link-active {
50
+ @include navlink--focus;
51
+ @include navlink--outline;
52
+
53
+ & {
54
+ outline-color: var(--color-brand-generic);
55
+ }
56
+ }
57
+
58
+ a.navlink.router-link-active:hover,
59
+ a.navlink.router-link-active:focus {
60
+ @include navlink--disabled;
61
+ }
package/scss/index.scss CHANGED
@@ -15,6 +15,7 @@
15
15
  @use "br-form-toggle";
16
16
  @use "br-form-update";
17
17
  @use "br-form-visible";
18
+ @use "br-link";
18
19
  @use "br-loader";
19
20
  @use "br-overlay";
20
21
  @use "br-promo";
@@ -1,19 +1,20 @@
1
1
  @use "../mixins/breakpoints" as *;
2
2
  @use "card/default" as *;
3
3
  @use "card/inline" as *;
4
- @use "card/navcard" as *;
5
- @use "card/navlink" as *;
6
- @use "card/navitem" as *;
7
4
  @use "card/membership" as *;
8
5
  @use "card/qrcode" as *;
9
6
 
10
- @mixin br-card {
7
+ @mixin br-card--setup {
11
8
  border-color: var(--color-black-25-lighten);
12
9
  border-radius: var(--border-radius-lg);
13
10
  border-width: var(--border-width-sm);
14
11
  background-color: white;
15
12
  border-style: solid;
16
13
  overflow: hidden;
14
+ }
15
+
16
+ @mixin br-card {
17
+ @include br-card--setup;
17
18
 
18
19
  &.default {
19
20
  @include br-card--default;
@@ -23,18 +24,6 @@
23
24
  @include br-card--inline;
24
25
  }
25
26
 
26
- &.navcard {
27
- @include br-card--navcard;
28
- }
29
-
30
- &.navlink {
31
- @include br-card--navlink;
32
- }
33
-
34
- &.navitem {
35
- @include br-card--navitem;
36
- }
37
-
38
27
  &.membership {
39
28
  @include br-card--membership;
40
29
  }
@@ -68,10 +57,6 @@
68
57
  text-align: left;
69
58
 
70
59
  @include small-up {
71
- font-size: var(--font-size-h3);
72
- }
73
-
74
- @include medium-up {
75
60
  font-size: var(--font-size-h2);
76
61
  }
77
62
  }
@@ -84,7 +69,7 @@
84
69
  }
85
70
  }
86
71
 
87
- @mixin br-card-body {
72
+ @mixin br-card--body {
88
73
  padding: var(--padding-card-sm);
89
74
 
90
75
  @include large-up {
@@ -117,7 +102,7 @@
117
102
  }
118
103
 
119
104
  .br-card-body {
120
- @include br-card-body;
105
+ @include br-card--body;
121
106
  }
122
107
  }
123
108
 
@@ -21,8 +21,26 @@
21
21
 
22
22
  >* {
23
23
  margin: var(--margin-xs);
24
+ }
25
+
26
+ &.align-middle>* {
24
27
  vertical-align: middle;
25
28
  }
29
+
30
+ &.align-top>* {
31
+ vertical-align: top;
32
+ }
33
+ }
34
+
35
+ @mixin br-wrap--preferences {
36
+ @include small-up {
37
+ grid-template-columns: var(--width-column) var(--width-column);
38
+ display: grid;
39
+ }
40
+
41
+ @include small-down {
42
+ @include br-wrap--cluster
43
+ }
26
44
  }
27
45
 
28
46
  @mixin br-wrap--orders {
@@ -0,0 +1,17 @@
1
+ @mixin navlink--focus {
2
+ background-color: var(--color-brand-generic-15-lighten);
3
+ color: var(--color-brand-generic-90-darken);
4
+ border-color: currentColor;
5
+ }
6
+
7
+ @mixin navlink--disabled {
8
+ background-color: var(--color-brand-generic);
9
+ border-color: var(--color-brand-generic);
10
+ color: white;
11
+ }
12
+
13
+ @mixin navlink--outline {
14
+ outline-offset: var(--offset-navlink);
15
+ outline-width: var(--border-width-lg);
16
+ outline-style: solid;
17
+ }
@@ -17,7 +17,6 @@
17
17
  @forward "custom/exit-overlay";
18
18
  @forward "custom/invisible";
19
19
  @forward "custom/manage-order";
20
- @forward "custom/navcard";
21
20
  @forward "custom/outline-alert-neutral";
22
21
  @forward "custom/outline-primary";
23
22
  @forward "custom/outline-secondary";
@@ -1,26 +1,27 @@
1
1
  @use "../../../mixins/core" as *;
2
2
  @use "../../../mixins/focus" as *;
3
+ @use "../../../mixins/buttons/custom/invisible" as *;
3
4
 
4
5
  @mixin btn-exit-overlay {
5
- // @include invisible-button; causing a module loop
6
+ @include btn-invisible;
6
7
  @include inset;
7
8
 
8
9
  & {
9
- background-color: transparent;
10
- border: none;
11
- padding: 0;
12
-
13
- border-radius: 0;
14
10
  position: fixed;
15
- height: 100%;
16
- width: 100%;
17
- z-index: 1;
11
+ z-index: 1;
12
+ }
13
+
14
+ &:active {
15
+ transform: scale(1);
16
+ }
17
+
18
+ &:active .close-icon {
19
+ transform: var(--scale-click);
18
20
  }
19
21
 
20
- &:hover, &:focus {
21
- .close-icon {
22
- @include close-icon-focus;
23
- }
22
+ &:hover .close-icon,
23
+ &:focus .close-icon {
24
+ @include close-icon-focus;
24
25
  }
25
26
 
26
27
  .close-icon {
@@ -13,7 +13,7 @@
13
13
 
14
14
  &:hover,
15
15
  &:focus {
16
- .br-summary-icon {
16
+ .wrap-icon {
17
17
  outline-style: dashed;
18
18
  }
19
19
  }
@@ -1,32 +0,0 @@
1
- @use "../slim" as *;
2
-
3
- @mixin btn-tint {
4
- background-color: var(--color-brand-generic-15-lighten);
5
- color: var(--color-brand-generic-90-darken);
6
- border-color: currentColor;
7
- }
8
-
9
- @mixin btn-navcard {
10
- @include btn-slim;
11
-
12
- & {
13
- border-width: var(--border-width-sm);
14
- background-color: white;
15
- }
16
-
17
- &.btn-active {
18
- @include btn-tint;
19
- }
20
-
21
- &.btn-active:hover,
22
- &.btn-active:focus {
23
- background-color: var(--color-brand-generic);
24
- border-color: var(--color-brand-generic);
25
- color: white;
26
- }
27
-
28
- &:not(.btn-active):hover,
29
- &:not(.btn-active):focus {
30
- @include btn-tint;
31
- }
32
- }
@@ -1,66 +0,0 @@
1
- @use "../../mixins/breakpoints" as *;
2
-
3
- @mixin br-card--navcard {
4
- cursor: pointer;
5
- display: block;
6
-
7
- &:hover,
8
- &:focus {
9
- background-color: var(--color-brand-generic-15-lighten);
10
- outline-color: var(--color-brand-generic-90-darken);
11
- outline-offset: calc(var(--border-width-sm) * -1);
12
- color: var(--color-brand-generic-90-darken);
13
- outline-width: var(--border-width-lg);
14
- outline-style: solid;
15
- }
16
-
17
- &:active {
18
- transform: var(--scale-click);
19
- }
20
-
21
- &:not(.ticket) {
22
- text-decoration: underline;
23
-
24
- .br-card-body {
25
- gap: var(--gap-md);
26
- display: flex;
27
- }
28
-
29
- .br-card-title+.br-card-text {
30
- margin-top: var(--margin-sm);
31
- }
32
- }
33
-
34
- svg {
35
- flex: none;
36
- }
37
-
38
- @include small-up {
39
- .br-card-body.center {
40
- align-items: center;
41
- }
42
-
43
- .br-card-body:not(.center) svg {
44
- margin-top: var(--margin-xs);
45
- }
46
- }
47
-
48
- @include small-down {
49
- .br-card-body {
50
- align-items: center;
51
- }
52
-
53
- .br-card-text {
54
- display: none;
55
- }
56
- }
57
-
58
- @include medium-up {
59
- &:not(.ticket) {
60
- .br-card-title+.br-card-text {
61
- margin-top: var(--margin-md);
62
- }
63
- }
64
-
65
- }
66
- }
@@ -1,59 +0,0 @@
1
- @use "../../mixins/breakpoints" as *;
2
- @use "navcard" as *;
3
-
4
- @mixin br-card--navitem {
5
- @include br-card--navcard;
6
-
7
- & {
8
- text-decoration: none;
9
- font-weight: bold;
10
- }
11
-
12
- &:active {
13
- transform: scale(1);
14
- }
15
-
16
- &.disabled {
17
- outline-offset: calc(var(--border-width-sm) * -1);
18
- background-color: var(--color-brand-generic);
19
- outline-color: var(--color-brand-generic);
20
- border-color: var(--color-brand-generic);
21
- outline-width: var(--border-width-lg);
22
- outline-style: solid;
23
- cursor: default;
24
- color: white;
25
- }
26
-
27
- &.router-link-active:not(.router-link-exact-active) {
28
- background-color: var(--color-brand-generic-15-lighten);
29
- color: var(--color-brand-generic-90-darken);
30
- outline-color: var(--color-brand-generic);
31
- text-decoration: underline;
32
- border-color: currentColor;
33
- }
34
-
35
- &:not(.disabled):hover {
36
- color: var(--color-brand-generic-90-darken);
37
- outline-color: var(--color-brand-generic);
38
- text-decoration: underline;
39
- border-color: currentColor;
40
- }
41
-
42
- &:not(:last-child) {
43
- border-bottom-right-radius: 0;
44
- border-bottom-left-radius: 0;
45
- }
46
-
47
- &:not(:first-child) {
48
- border-top-right-radius: 0;
49
- border-top-left-radius: 0;
50
- border-top-width: 0;
51
- }
52
-
53
- .br-card-body {
54
- padding-bottom: var(--padding-md);
55
- padding-right: var(--padding-lg);
56
- padding-left: var(--padding-lg);
57
- padding-top: var(--padding-md);
58
- }
59
- }
@@ -1,30 +0,0 @@
1
- @use "../../mixins/breakpoints" as *;
2
- @use "navcard" as *;
3
-
4
- @mixin br-card--navlink {
5
- @include br-card--navcard;
6
-
7
- @include small-down {
8
- background-color: transparent;
9
- justify-self: start;
10
- border-radius: 0;
11
- border-width: 0;
12
-
13
- &:hover,
14
- &:focus {
15
- background-color: var(--color-black-80-lighten);
16
- outline-color: var(--color-black-80-lighten);
17
- outline-width: 0.25rem;
18
- outline-style: solid;
19
- color: white;
20
- }
21
-
22
- .br-card-body {
23
- padding: 0;
24
- }
25
-
26
- svg {
27
- display: none;
28
- }
29
- }
30
- }