@theseam/ui-common 0.4.0-beta.1 → 0.4.0-beta.2

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.
@@ -0,0 +1,5 @@
1
+ @import './styles/utilities';
2
+
3
+ @import './side-nav.component';
4
+ @import './side-nav-item/side-nav-item.component';
5
+ @import './side-nav-toggle/side-nav-toggle.component';
@@ -0,0 +1,185 @@
1
+ @import '../styles/utilities';
2
+
3
+ seam-side-nav-item {
4
+ display: block;
5
+ transition: 250ms ease-in-out background-color;
6
+
7
+ &.seam-side-nav-item--active {
8
+ background-color: $seam-side-nav-item-bg-color-active;
9
+
10
+ .active,
11
+ &:active,
12
+ .side-nav-item.active:hover {
13
+ background-color: $seam-side-nav-item-bg-color-active;
14
+ }
15
+
16
+ .side-nav-item {
17
+ &:hover {
18
+ background-color: $seam-side-nav-item-bg-color-hover;
19
+ }
20
+ }
21
+
22
+ .nav-link {
23
+ color: $seam-side-nav-item-color-active;
24
+ }
25
+ }
26
+
27
+ .badge {
28
+ vertical-align: middle;
29
+ }
30
+
31
+ &:not(.side-nav-item--icon) {
32
+ .side-nav-item--badge {
33
+ pointer-events: all;
34
+ margin-left: 5px;
35
+ margin-right: 3px;
36
+ }
37
+ }
38
+
39
+ .side-nav-item--icon {
40
+ position: relative;
41
+ width: 24px;
42
+ max-width: 24px;
43
+ min-width: 24px;
44
+ height: 24px;
45
+ max-height: 24px;
46
+ min-height: 24px;
47
+ text-align: center;
48
+
49
+ .side-nav-item--badge {
50
+ top: -4px;
51
+ right: -4px;
52
+ position: absolute;
53
+
54
+ .badge:empty {
55
+ display: block;
56
+ width: 8px;
57
+ height: 8px;
58
+ padding: 0;
59
+ }
60
+
61
+ &.side-nav-item--badge-no-icon {
62
+ top: 0px;
63
+ right: 0px;
64
+ }
65
+ }
66
+ }
67
+
68
+ .side-nav-item {
69
+ min-height: 45px;
70
+ transition: 250ms ease-in-out background-color;
71
+
72
+ &:hover {
73
+ background-color: $seam-side-nav-item-bg-color-hover;
74
+ }
75
+
76
+ &.active {
77
+ pointer-events: none;
78
+ cursor: default;
79
+ }
80
+ }
81
+
82
+ a.side-nav-item:not([href]):not([tabindex]) {
83
+ color: $seam-side-nav-item-disabled-color;
84
+
85
+ &:hover {
86
+ background-color: transparent;
87
+ }
88
+ }
89
+
90
+ .nav-link {
91
+ color: $seam-side-nav-item-color;
92
+ padding-right: 2px;
93
+ &__compact {
94
+ padding-right: 0;
95
+ padding-left: 12px;
96
+ }
97
+ &:last-child {
98
+ padding-right: 8px;
99
+ }
100
+ }
101
+
102
+ .side-nav-btn {
103
+ font-weight: $font-weight-normal;
104
+ color: $seam-side-nav-item-color;
105
+ text-decoration: $link-decoration;
106
+
107
+ @include hover {
108
+ color: $seam-side-nav-item-bg-color-hover;
109
+ text-decoration: $link-hover-decoration;
110
+ }
111
+
112
+ &:focus,
113
+ &.focus {
114
+ text-decoration: $link-hover-decoration;
115
+ box-shadow: none;
116
+ }
117
+
118
+ &:disabled,
119
+ &.disabled {
120
+ color: $seam-side-nav-item-disabled-color;
121
+ pointer-events: none;
122
+ }
123
+ }
124
+
125
+ // Add the button focus like a link when navigating with keyboard.
126
+ .cdk-keyboard-focused {
127
+ // outline: -webkit-focus-ring-color auto 1px;
128
+ outline: 1px dotted;
129
+ outline: 5px auto -webkit-focus-ring-color;
130
+ }
131
+
132
+ .side-nav-item--toggle-btn-container {
133
+ transition: 250ms ease-in-out background-color;
134
+ padding: 0.5rem 1rem;
135
+ }
136
+ button.side-nav-item--toggle-btn-container {
137
+ &:hover {
138
+ background-color: $seam-side-nav-item-bg-color-hover;
139
+ }
140
+ }
141
+
142
+ .side-nav-item--toggle-btn {
143
+ color: $seam-side-nav-item-color-active;
144
+
145
+ .svg-inline--fa {
146
+ transition: 100ms ease-in-out transform;
147
+ }
148
+
149
+ &.side-nav-item--toggle-btn-expanded {
150
+ .svg-inline--fa {
151
+ transform: rotate(-90deg);
152
+ }
153
+ }
154
+ }
155
+
156
+ .side-nav--group {
157
+ will-change: height;
158
+ overflow: hidden;
159
+ }
160
+
161
+ @for $i from 1 through 9 {
162
+ .side-nav--group--level-#{$i} {
163
+ background-color: darken($seam-side-nav-bg-color, ($i * $seam-side-nav-group-bg-variation-amount));
164
+ }
165
+ }
166
+
167
+ .side-nav-item--divider {
168
+ display: block;
169
+ border-top: $seam-side-nav-divider-size solid $seam-side-nav-divider-color;
170
+ width: 100%;
171
+ }
172
+
173
+ .side-nav-item--title {
174
+ color: $seam-side-nav-title-color;
175
+ font-size: $seam-side-nav-title-font-size;
176
+ padding-left: $seam-side-nav-title-padding-left;
177
+ }
178
+
179
+ // without a set position, these labels can cause unnecessary scrollbars
180
+ .sr-only {
181
+ top: 0;
182
+ left: 0;
183
+ }
184
+ }
185
+
@@ -0,0 +1,32 @@
1
+ @import '../styles/utilities';
2
+
3
+ seam-side-nav-toggle {
4
+ display: flex;
5
+ flex-direction: row;
6
+ flex-shrink: 0;
7
+
8
+ // &.side-nav-toggle--compact {
9
+ // width: 50px;
10
+ // }
11
+ position: relative;
12
+ height: 45px;
13
+ width: 100%;
14
+
15
+ //
16
+ .side-nav-toggle--content {
17
+ flex: 1 1 0;
18
+ }
19
+
20
+ .side-nav-toggle--btn {
21
+ // flex: 0 0 auto;
22
+ // align-self: flex-end;
23
+ position: absolute;
24
+ top: 0;
25
+ right: 5px;
26
+ color: $seam-side-nav-toggle-btn-color;
27
+
28
+ seam-icon {
29
+ padding: 5px;
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,47 @@
1
+ @import './styles/utilities';
2
+
3
+ seam-side-nav,
4
+ .seam-side-nav {
5
+ display: block;
6
+ height: 100%;
7
+
8
+ // Prevent main page content layer overlapping the side-nav while animating.
9
+ position: relative;
10
+ z-index: 2;
11
+
12
+ .side-nav-inner-wrapper {
13
+ background: $seam-side-nav-bg;
14
+ height: 100%;
15
+ }
16
+
17
+ .side-nav-backdrop {
18
+ background: $seam-side-nav-background-bg-color;
19
+ width: 100vw;
20
+ height: 100vh;
21
+
22
+ &.side-nav-backdrop-hidden {
23
+ display: none;
24
+ width: 0;
25
+ height: 0;
26
+ padding: 0;
27
+ margin: 0;
28
+ }
29
+ }
30
+
31
+ overflow: hidden;
32
+
33
+ //
34
+ .side-nav-content {
35
+ display: flex;
36
+ flex-direction: column;
37
+ height: 100%;
38
+ flex-wrap: nowrap;
39
+ }
40
+
41
+ .side-nav-items-container {
42
+ display: flex;
43
+ flex-direction: column;
44
+ width: 100%;
45
+ flex: 1 1 100%;
46
+ }
47
+ }
@@ -0,0 +1,29 @@
1
+ $seam-side-nav-bg-color: $gray-200;
2
+
3
+ $seam-side-nav-background-bg-color: rgba($dark, 0.6);
4
+
5
+ // Group
6
+ $seam-side-nav-group-bg-variation-amount: 3%;
7
+
8
+ // Item
9
+ $seam-side-nav-item-bg-color-active: $white;
10
+ $seam-side-nav-item-bg-color-hover: rgba($primary, 0.4);
11
+
12
+ $seam-side-nav-item-color: $black;
13
+ $seam-side-nav-item-color-active: $black;
14
+
15
+ $seam-side-nav-item-disabled-color: $text-muted;
16
+
17
+ // Divider
18
+ $seam-side-nav-divider-color: $gray-500;
19
+ $seam-side-nav-divider-size: 1px;
20
+
21
+ // Title
22
+ $seam-side-nav-title-color: $black;
23
+
24
+ $seam-side-nav-title-font-size: 24px;
25
+
26
+ $seam-side-nav-title-padding-left: 10px;
27
+
28
+ // Toggle
29
+ $seam-side-nav-toggle-btn-color: $seam-side-nav-item-color;
@@ -0,0 +1,31 @@
1
+ $seam-side-nav-bg-color: $primary !default;
2
+ $seam-side-nav-bg: $seam-side-nav-bg-color !default;
3
+
4
+ // Backdrop
5
+ $seam-side-nav-background-bg-color: rgba($dark, 0.6) !default;
6
+
7
+ // Group
8
+ $seam-side-nav-group-bg-variation-amount: 3% !default;
9
+
10
+ // Item
11
+ $seam-side-nav-item-bg-color-active: darken($seam-side-nav-bg-color, 10%) !default;
12
+ $seam-side-nav-item-bg-color-hover: darken($seam-side-nav-bg-color, 5%) !default;
13
+
14
+ $seam-side-nav-item-color: $white !default;
15
+ $seam-side-nav-item-color-active: $seam-side-nav-item-color !default;
16
+
17
+ $seam-side-nav-item-disabled-color: darken($seam-side-nav-item-color, 20%) !default;
18
+
19
+ // Divider
20
+ $seam-side-nav-divider-color: darken($seam-side-nav-bg-color, 10%) !default;
21
+ $seam-side-nav-divider-size: 1px !default;
22
+
23
+ // Title
24
+ $seam-side-nav-title-color: $seam-side-nav-item-color !default;
25
+
26
+ $seam-side-nav-title-font-size: 24px !default;
27
+
28
+ $seam-side-nav-title-padding-left: 10px !default;
29
+
30
+ // Toggle
31
+ $seam-side-nav-toggle-btn-color: $seam-side-nav-item-color !default;
@@ -0,0 +1,3 @@
1
+ @import '../../../styles/utilities';
2
+
3
+ @import './variables';
@@ -0,0 +1,2 @@
1
+ // @import './_themes/light/_variables';
2
+ @import './_themes/primary/_variables';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theseam/ui-common",
3
- "version": "0.4.0-beta.1",
3
+ "version": "0.4.0-beta.2",
4
4
  "peerDependencies": {
5
5
  "@angular/cdk": "^15.0.0",
6
6
  "@angular/common": "^15.0.0",