@internetarchive/ia-topnav 2.0.0 → 2.0.1-alpha-webdev8396.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.
Files changed (52) hide show
  1. package/dist/src/data/menus.js.map +1 -1
  2. package/dist/src/dropdown-menu.d.ts +3 -4
  3. package/dist/src/dropdown-menu.js +6 -13
  4. package/dist/src/dropdown-menu.js.map +1 -1
  5. package/dist/src/ia-topnav.d.ts +3 -0
  6. package/dist/src/ia-topnav.js +79 -69
  7. package/dist/src/ia-topnav.js.map +1 -1
  8. package/dist/src/login-button.d.ts +3 -0
  9. package/dist/src/login-button.js +28 -18
  10. package/dist/src/login-button.js.map +1 -1
  11. package/dist/src/models.js.map +1 -1
  12. package/dist/src/primary-nav.d.ts +4 -0
  13. package/dist/src/primary-nav.js +109 -90
  14. package/dist/src/primary-nav.js.map +1 -1
  15. package/dist/src/signed-out-dropdown.d.ts +1 -1
  16. package/dist/src/signed-out-dropdown.js +1 -2
  17. package/dist/src/signed-out-dropdown.js.map +1 -1
  18. package/dist/src/styles/dropdown-menu.js +1 -0
  19. package/dist/src/styles/dropdown-menu.js.map +1 -1
  20. package/dist/src/styles/ia-topnav.js +82 -82
  21. package/dist/src/styles/ia-topnav.js.map +1 -1
  22. package/dist/src/styles/primary-nav.js +353 -353
  23. package/dist/src/styles/primary-nav.js.map +1 -1
  24. package/dist/src/user-menu.d.ts +1 -2
  25. package/dist/src/user-menu.js +1 -2
  26. package/dist/src/user-menu.js.map +1 -1
  27. package/dist/test/ia-topnav.test.js +9 -9
  28. package/dist/test/ia-topnav.test.js.map +1 -1
  29. package/dist/test/primary-nav.test.js +7 -7
  30. package/dist/test/primary-nav.test.js.map +1 -1
  31. package/package.json +1 -1
  32. package/src/data/menus.ts +650 -650
  33. package/src/dropdown-menu.ts +6 -12
  34. package/src/ia-topnav.ts +332 -318
  35. package/src/login-button.ts +89 -78
  36. package/src/models.ts +58 -58
  37. package/src/primary-nav.ts +300 -277
  38. package/src/signed-out-dropdown.ts +1 -2
  39. package/src/styles/dropdown-menu.ts +1 -0
  40. package/src/styles/ia-topnav.ts +85 -85
  41. package/src/styles/primary-nav.ts +356 -356
  42. package/src/user-menu.ts +3 -4
  43. package/test/ia-topnav.test.ts +282 -282
  44. package/test/primary-nav.test.ts +135 -135
  45. package/dist/src/styles/signed-out-dropdown.d.ts +0 -2
  46. package/dist/src/styles/signed-out-dropdown.js +0 -31
  47. package/dist/src/styles/signed-out-dropdown.js.map +0 -1
  48. package/dist/src/styles/user-menu.d.ts +0 -2
  49. package/dist/src/styles/user-menu.js +0 -31
  50. package/dist/src/styles/user-menu.js.map +0 -1
  51. package/src/styles/signed-out-dropdown.ts +0 -31
  52. package/src/styles/user-menu.ts +0 -31
@@ -1,356 +1,356 @@
1
1
  import { css } from 'lit';
2
- export default css `
3
- button:focus,
4
- input:focus {
5
- outline: none;
6
- }
7
-
8
- nav {
9
- position: relative;
10
- display: flex;
11
- height: 4rem;
12
- grid-template-areas: 'hamburger empty heart search user';
13
- -ms-grid-columns: 4rem minmax(1rem, 100%) 4rem 4rem 4rem;
14
- grid-template-columns: 4rem auto 4rem 4rem 4rem;
15
- -ms-grid-rows: 100%;
16
- grid-template-rows: 100%;
17
- background: var(--primaryNavBg);
18
- border-bottom: 1px solid var(--primaryNavBottomBorder);
19
- }
20
-
21
- nav.hide-search {
22
- grid-template-areas: 'hamburger empty heart user';
23
- -ms-grid-columns: 4rem minmax(1rem, 100%) 4rem 4rem;
24
- grid-template-columns: 4rem auto 4rem 4rem;
25
- }
26
-
27
- .right-side-section {
28
- display: flex;
29
- margin-left: auto;
30
- user-select: none;
31
- }
32
- button {
33
- background: none;
34
- color: inherit;
35
- border: none;
36
- font: inherit;
37
- cursor: pointer;
38
- }
39
-
40
- .branding {
41
- position: static;
42
- float: left;
43
- margin: 0 !important;
44
- padding: 0 5px 0 10px;
45
- -webkit-transform: translate(0, 0);
46
- -ms-transform: translate(0, 0);
47
- transform: translate(0, 0);
48
- }
49
-
50
- slot,
51
- .branding {
52
- display: flex;
53
- justify-content: left;
54
- align-items: center;
55
- }
56
-
57
- media-menu {
58
- flex: 1;
59
- justify-self: stretch;
60
- }
61
-
62
- .ia-logo {
63
- height: 3rem;
64
- width: 2.7rem;
65
- display: inline-block;
66
- }
67
- .ia-wordmark {
68
- height: 3rem;
69
- width: 9.5rem;
70
- }
71
- .ia-logo,
72
- .ia-wordmark {
73
- margin-right: 5px;
74
- }
75
-
76
- .hamburger {
77
- -ms-grid-row: 1;
78
- -ms-grid-column: 1;
79
- grid-area: hamburger;
80
- padding: 0;
81
- }
82
- .hamburger svg {
83
- height: 4rem;
84
- width: 4rem;
85
- fill: var(--activeColor);
86
- }
87
-
88
- .mobile-donate-link {
89
- display: inline-block;
90
- }
91
- .mobile-donate-link svg {
92
- height: 4rem;
93
- width: 4rem;
94
- }
95
- .mobile-donate-link .fill-color {
96
- fill: rgb(255, 0, 0);
97
- }
98
-
99
- .sr-only {
100
- position: absolute;
101
- width: 1px;
102
- height: 1px;
103
- margin: -1px;
104
- padding: 0;
105
- border: 0;
106
- overflow: hidden;
107
- white-space: nowrap;
108
- clip: rect(1px, 1px, 1px, 1px);
109
- -webkit-clip-path: inset(50%);
110
- clip-path: inset(50%);
111
- user-select: none;
112
- }
113
-
114
- .search-trigger {
115
- padding: 0;
116
- }
117
- .search-trigger svg {
118
- height: 4rem;
119
- width: 4rem;
120
- }
121
- .search-trigger .fill-color {
122
- fill: var(--iconFill);
123
- }
124
-
125
- .search-container {
126
- display: none;
127
- }
128
-
129
- .search-container.open {
130
- display: flex;
131
- position: absolute;
132
- top: 0;
133
- right: 4rem;
134
- bottom: 0;
135
- left: 4rem;
136
- z-index: 3;
137
- padding: 0.5rem;
138
- border-radius: 1rem 1rem 0 0;
139
- background: var(--primaryNavBg);
140
- align-items: center;
141
- animation: fade-in 0.2s forwards;
142
- }
143
-
144
- .search-container ::slotted(*) {
145
- display: block;
146
- }
147
-
148
- .search-container slot {
149
- width: 100%;
150
- }
151
-
152
- @keyframes fade-in {
153
- 0% {
154
- opacity: 0;
155
- }
156
- 100% {
157
- opacity: 1;
158
- }
159
- }
160
-
161
- .upload {
162
- display: none;
163
- }
164
-
165
- .upload span {
166
- display: none;
167
- }
168
-
169
- .upload svg {
170
- height: 3rem;
171
- width: 3rem;
172
- }
173
-
174
- .screen-name {
175
- display: none;
176
- font-size: 1.3rem;
177
- vertical-align: middle;
178
- text-transform: uppercase;
179
- }
180
-
181
- .user-menu {
182
- color: var(--lightTextColor);
183
- padding: 0.5rem;
184
- height: 100%;
185
- }
186
-
187
- button.user-menu:hover,
188
- button.user-menu:focus {
189
- color: var(--linkHoverColor);
190
- outline: none;
191
- }
192
-
193
- .user-menu.active {
194
- border-radius: 1rem 1rem 0 0;
195
- background: var(--activeButtonBg);
196
- }
197
-
198
- .user-menu img {
199
- display: block;
200
- width: 3rem;
201
- height: 3rem;
202
- }
203
-
204
- .link-home {
205
- text-decoration: none;
206
- display: inline-flex;
207
- }
208
- a.link-home:focus,
209
- a.link-home:focus-visible {
210
- outline-offset: 1px;
211
- }
212
-
213
- @media only screen and (min-width: 890px) and (max-device-width: 905px) {
214
- .branding.second-logo {
215
- padding-right: 0;
216
- }
217
- }
218
-
219
- @media (min-width: 906px) {
220
- .branding.second-logo {
221
- padding-right: 20px;
222
- }
223
- }
224
-
225
- @media (max-width: 889px) {
226
- slot[name='opt-sec-logo'] {
227
- display: none;
228
- }
229
-
230
- .right-side-section {
231
- display: initial;
232
- }
233
- .right-side-section .user-info {
234
- float: right;
235
- }
236
- }
237
-
238
- @media (min-width: 890px) {
239
- :host {
240
- --userIconWidth: 3.2rem;
241
- --userIconHeight: 3.2rem;
242
- }
243
-
244
- nav {
245
- display: flex;
246
- z-index: 4;
247
- height: 5rem;
248
- padding-right: 1.5rem;
249
- }
250
-
251
- slot[name='opt-sec-logo-mobile'] {
252
- display: none;
253
- }
254
-
255
- .ia-logo,
256
- .ia-wordmark {
257
- margin-right: 10px;
258
- }
259
-
260
- .hamburger,
261
- .search-trigger,
262
- .mobile-donate-link {
263
- display: none;
264
- }
265
-
266
- .user-info {
267
- display: block;
268
- float: right;
269
- vertical-align: middle;
270
- height: 100%;
271
- }
272
-
273
- .user-info .user-menu img {
274
- height: 3rem;
275
- width: 3rem;
276
- margin-right: 0.5rem;
277
- }
278
-
279
- .user-menu {
280
- padding: 1rem 0.5rem;
281
- }
282
- .user-menu.active {
283
- background: transparent;
284
- }
285
-
286
- .user-menu img {
287
- display: inline-block;
288
- vertical-align: middle;
289
- margin-right: 0.5rem;
290
- }
291
-
292
- .upload {
293
- display: block;
294
- padding: 1rem 0.5rem;
295
- float: right;
296
- font-size: 1.4rem;
297
- text-transform: uppercase;
298
- text-decoration: none;
299
- color: var(--lightTextColor);
300
- }
301
- .upload:active,
302
- .upload:focus,
303
- .upload:hover {
304
- color: var(--linkHoverColor);
305
- }
306
- .upload:focus-visible {
307
- outline: none;
308
- }
309
-
310
- .upload svg {
311
- vertical-align: middle;
312
- fill: var(--iconFill);
313
- }
314
-
315
- .upload:hover svg,
316
- .upload:focus svg,
317
- .upload:active svg {
318
- fill: var(--linkHoverColor);
319
- }
320
-
321
- .search-container,
322
- .search-container.open {
323
- display: flex;
324
- position: static;
325
- top: auto;
326
- right: auto;
327
- bottom: auto;
328
- left: auto;
329
- align-items: center;
330
- padding: 0 0 0 1rem;
331
- background: transparent;
332
- border-radius: 0;
333
- z-index: auto;
334
- }
335
-
336
- .search-container slot {
337
- width: auto;
338
- }
339
- }
340
-
341
- @media (min-width: 990px) {
342
- .screen-name {
343
- display: inline-block;
344
- text-overflow: ellipsis;
345
- overflow: hidden;
346
- white-space: nowrap;
347
- max-width: 165px;
348
- }
349
-
350
- .upload span {
351
- display: inline-block;
352
- vertical-align: middle;
353
- }
354
- }
2
+ export default css `
3
+ button:focus,
4
+ input:focus {
5
+ outline: none;
6
+ }
7
+
8
+ nav {
9
+ position: relative;
10
+ display: flex;
11
+ height: 4rem;
12
+ grid-template-areas: 'hamburger empty heart search user';
13
+ -ms-grid-columns: 4rem minmax(1rem, 100%) 4rem 4rem 4rem;
14
+ grid-template-columns: 4rem auto 4rem 4rem 4rem;
15
+ -ms-grid-rows: 100%;
16
+ grid-template-rows: 100%;
17
+ background: var(--primaryNavBg);
18
+ border-bottom: 1px solid var(--primaryNavBottomBorder);
19
+ }
20
+
21
+ nav.hide-search {
22
+ grid-template-areas: 'hamburger empty heart user';
23
+ -ms-grid-columns: 4rem minmax(1rem, 100%) 4rem 4rem;
24
+ grid-template-columns: 4rem auto 4rem 4rem;
25
+ }
26
+
27
+ .right-side-section {
28
+ display: flex;
29
+ margin-left: auto;
30
+ user-select: none;
31
+ }
32
+ button {
33
+ background: none;
34
+ color: inherit;
35
+ border: none;
36
+ font: inherit;
37
+ cursor: pointer;
38
+ }
39
+
40
+ .branding {
41
+ position: static;
42
+ float: left;
43
+ margin: 0 !important;
44
+ padding: 0 5px 0 10px;
45
+ -webkit-transform: translate(0, 0);
46
+ -ms-transform: translate(0, 0);
47
+ transform: translate(0, 0);
48
+ }
49
+
50
+ slot,
51
+ .branding {
52
+ display: flex;
53
+ justify-content: left;
54
+ align-items: center;
55
+ }
56
+
57
+ media-menu {
58
+ flex: 1;
59
+ justify-self: stretch;
60
+ }
61
+
62
+ .ia-logo {
63
+ height: 3rem;
64
+ width: 2.7rem;
65
+ display: inline-block;
66
+ }
67
+ .ia-wordmark {
68
+ height: 3rem;
69
+ width: 9.5rem;
70
+ }
71
+ .ia-logo,
72
+ .ia-wordmark {
73
+ margin-right: 5px;
74
+ }
75
+
76
+ .hamburger {
77
+ -ms-grid-row: 1;
78
+ -ms-grid-column: 1;
79
+ grid-area: hamburger;
80
+ padding: 0;
81
+ }
82
+ .hamburger svg {
83
+ height: 4rem;
84
+ width: 4rem;
85
+ fill: var(--activeColor);
86
+ }
87
+
88
+ .mobile-donate-link {
89
+ display: inline-block;
90
+ }
91
+ .mobile-donate-link svg {
92
+ height: 4rem;
93
+ width: 4rem;
94
+ }
95
+ .mobile-donate-link .fill-color {
96
+ fill: rgb(255, 0, 0);
97
+ }
98
+
99
+ .sr-only {
100
+ position: absolute;
101
+ width: 1px;
102
+ height: 1px;
103
+ margin: -1px;
104
+ padding: 0;
105
+ border: 0;
106
+ overflow: hidden;
107
+ white-space: nowrap;
108
+ clip: rect(1px, 1px, 1px, 1px);
109
+ -webkit-clip-path: inset(50%);
110
+ clip-path: inset(50%);
111
+ user-select: none;
112
+ }
113
+
114
+ .search-trigger {
115
+ padding: 0;
116
+ }
117
+ .search-trigger svg {
118
+ height: 4rem;
119
+ width: 4rem;
120
+ }
121
+ .search-trigger .fill-color {
122
+ fill: var(--iconFill);
123
+ }
124
+
125
+ .search-container {
126
+ display: none;
127
+ }
128
+
129
+ .search-container.open {
130
+ display: flex;
131
+ position: absolute;
132
+ top: 0;
133
+ right: 4rem;
134
+ bottom: 0;
135
+ left: 4rem;
136
+ z-index: 3;
137
+ padding: 0.5rem;
138
+ border-radius: 1rem 1rem 0 0;
139
+ background: var(--primaryNavBg);
140
+ align-items: center;
141
+ animation: fade-in 0.2s forwards;
142
+ }
143
+
144
+ .search-container ::slotted(*) {
145
+ display: block;
146
+ }
147
+
148
+ .search-container slot {
149
+ width: 100%;
150
+ }
151
+
152
+ @keyframes fade-in {
153
+ 0% {
154
+ opacity: 0;
155
+ }
156
+ 100% {
157
+ opacity: 1;
158
+ }
159
+ }
160
+
161
+ .upload {
162
+ display: none;
163
+ }
164
+
165
+ .upload span {
166
+ display: none;
167
+ }
168
+
169
+ .upload svg {
170
+ height: 3rem;
171
+ width: 3rem;
172
+ }
173
+
174
+ .screen-name {
175
+ display: none;
176
+ font-size: 1.3rem;
177
+ vertical-align: middle;
178
+ text-transform: uppercase;
179
+ }
180
+
181
+ .user-menu {
182
+ color: var(--lightTextColor);
183
+ padding: 0.5rem;
184
+ height: 100%;
185
+ }
186
+
187
+ button.user-menu:hover,
188
+ button.user-menu:focus {
189
+ color: var(--linkHoverColor);
190
+ outline: none;
191
+ }
192
+
193
+ .user-menu.active {
194
+ border-radius: 1rem 1rem 0 0;
195
+ background: var(--activeButtonBg);
196
+ }
197
+
198
+ .user-menu img {
199
+ display: block;
200
+ width: 3rem;
201
+ height: 3rem;
202
+ }
203
+
204
+ .link-home {
205
+ text-decoration: none;
206
+ display: inline-flex;
207
+ }
208
+ a.link-home:focus,
209
+ a.link-home:focus-visible {
210
+ outline-offset: 1px;
211
+ }
212
+
213
+ @media only screen and (min-width: 890px) and (max-device-width: 905px) {
214
+ .branding.second-logo {
215
+ padding-right: 0;
216
+ }
217
+ }
218
+
219
+ @media (min-width: 906px) {
220
+ .branding.second-logo {
221
+ padding-right: 20px;
222
+ }
223
+ }
224
+
225
+ @media (max-width: 889px) {
226
+ slot[name='opt-sec-logo'] {
227
+ display: none;
228
+ }
229
+
230
+ .right-side-section {
231
+ display: initial;
232
+ }
233
+ .right-side-section .user-info {
234
+ float: right;
235
+ }
236
+ }
237
+
238
+ @media (min-width: 890px) {
239
+ :host {
240
+ --userIconWidth: 3.2rem;
241
+ --userIconHeight: 3.2rem;
242
+ }
243
+
244
+ nav {
245
+ display: flex;
246
+ z-index: 4;
247
+ height: 5rem;
248
+ padding-right: 1.5rem;
249
+ }
250
+
251
+ slot[name='opt-sec-logo-mobile'] {
252
+ display: none;
253
+ }
254
+
255
+ .ia-logo,
256
+ .ia-wordmark {
257
+ margin-right: 10px;
258
+ }
259
+
260
+ .hamburger,
261
+ .search-trigger,
262
+ .mobile-donate-link {
263
+ display: none;
264
+ }
265
+
266
+ .user-info {
267
+ display: block;
268
+ float: right;
269
+ vertical-align: middle;
270
+ height: 100%;
271
+ }
272
+
273
+ .user-info .user-menu img {
274
+ height: 3rem;
275
+ width: 3rem;
276
+ margin-right: 0.5rem;
277
+ }
278
+
279
+ .user-menu {
280
+ padding: 1rem 0.5rem;
281
+ }
282
+ .user-menu.active {
283
+ background: transparent;
284
+ }
285
+
286
+ .user-menu img {
287
+ display: inline-block;
288
+ vertical-align: middle;
289
+ margin-right: 0.5rem;
290
+ }
291
+
292
+ .upload {
293
+ display: block;
294
+ padding: 1rem 0.5rem;
295
+ float: right;
296
+ font-size: 1.4rem;
297
+ text-transform: uppercase;
298
+ text-decoration: none;
299
+ color: var(--lightTextColor);
300
+ }
301
+ .upload:active,
302
+ .upload:focus,
303
+ .upload:hover {
304
+ color: var(--linkHoverColor);
305
+ }
306
+ .upload:focus-visible {
307
+ outline: none;
308
+ }
309
+
310
+ .upload svg {
311
+ vertical-align: middle;
312
+ fill: var(--iconFill);
313
+ }
314
+
315
+ .upload:hover svg,
316
+ .upload:focus svg,
317
+ .upload:active svg {
318
+ fill: var(--linkHoverColor);
319
+ }
320
+
321
+ .search-container,
322
+ .search-container.open {
323
+ display: flex;
324
+ position: static;
325
+ top: auto;
326
+ right: auto;
327
+ bottom: auto;
328
+ left: auto;
329
+ align-items: center;
330
+ padding: 0 0 0 1rem;
331
+ background: transparent;
332
+ border-radius: 0;
333
+ z-index: auto;
334
+ }
335
+
336
+ .search-container slot {
337
+ width: auto;
338
+ }
339
+ }
340
+
341
+ @media (min-width: 990px) {
342
+ .screen-name {
343
+ display: inline-block;
344
+ text-overflow: ellipsis;
345
+ overflow: hidden;
346
+ white-space: nowrap;
347
+ max-width: 165px;
348
+ }
349
+
350
+ .upload span {
351
+ display: inline-block;
352
+ vertical-align: middle;
353
+ }
354
+ }
355
355
  `;
356
356
  //# sourceMappingURL=primary-nav.js.map