@internetarchive/ia-topnav 1.1.18-a1 → 1.1.18
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.
- package/README.md +10 -20
- package/demo.html +41 -0
- package/index.d.ts +7 -7
- package/package.json +18 -25
- package/src/assets/img/hamburger.js +3 -3
- package/src/assets/img/ia-icon.js +2 -2
- package/src/assets/img/icon-audio.js +1 -1
- package/src/assets/img/icon-close.js +1 -1
- package/src/assets/img/icon-donate.js +1 -1
- package/src/assets/img/icon-ellipses.js +1 -1
- package/src/assets/img/icon-ia-logo.js +1 -1
- package/src/assets/img/icon-images.js +1 -1
- package/src/assets/img/icon-search.js +1 -1
- package/src/assets/img/icon-software.js +1 -1
- package/src/assets/img/icon-texts.js +1 -1
- package/src/assets/img/icon-upload.js +1 -1
- package/src/assets/img/icon-user.js +1 -1
- package/src/assets/img/icon-video.js +1 -1
- package/src/assets/img/icon-web.js +1 -1
- package/src/assets/img/icon.js +1 -1
- package/src/assets/img/icons.js +13 -13
- package/src/assets/img/user.js +2 -2
- package/src/assets/img/wordmark-stacked.js +1 -1
- package/src/data/menus.js +589 -506
- package/src/desktop-subnav.js +5 -5
- package/src/dropdown-menu.js +4 -4
- package/src/ia-topnav.js +35 -12
- package/src/login-button.js +5 -5
- package/src/media-button.js +5 -5
- package/src/media-menu.js +5 -5
- package/src/media-slider.js +48 -8
- package/src/media-subnav.js +28 -23
- package/src/more-slider.js +5 -5
- package/src/nav-search.js +5 -5
- package/src/primary-nav.js +12 -12
- package/src/save-page-form.js +3 -3
- package/src/search-menu.js +5 -5
- package/src/signed-out-dropdown.js +2 -2
- package/src/styles/base.js +1 -1
- package/src/styles/desktop-subnav.js +1 -1
- package/src/styles/dropdown-menu.js +1 -1
- package/src/styles/ia-topnav.js +5 -1
- package/src/styles/login-button.js +1 -1
- package/src/styles/media-button.js +1 -1
- package/src/styles/media-menu.js +5 -5
- package/src/styles/media-slider.js +5 -1
- package/src/styles/media-subnav.js +2 -2
- package/src/styles/more-slider.js +1 -1
- package/src/styles/nav-search.js +1 -1
- package/src/styles/primary-nav.js +1 -1
- package/src/styles/save-page-form.js +1 -1
- package/src/styles/search-menu.js +4 -4
- package/src/styles/signed-out-dropdown.js +1 -1
- package/src/styles/user-menu.js +1 -1
- package/src/styles/wayback-search.js +1 -1
- package/src/styles/wayback-slider.js +2 -2
- package/src/tracked-element.js +1 -1
- package/src/user-menu.js +3 -3
- package/src/wayback-search.js +7 -1
- package/src/wayback-slider.js +8 -8
- package/test/data/menus.test.js +2 -1
- package/test/ia-topnav.test.js +17 -27
- package/test/media-slider.test.js +24 -8
- package/test/more-slider.test.js +3 -2
- package/test/search-menu.test.js +1 -1
- package/test/user-menu.test.js +11 -26
- package/base64_encoded_menus.html +0 -72
- package/index.html +0 -251
- package/karma.bs.config.js +0 -16
- package/karma.conf.js +0 -25
- package/src/data/petabox_signedout_menus.js +0 -514
package/src/desktop-subnav.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { html, nothing } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import desktopSubnavCSS from './styles/desktop-subnav';
|
|
4
|
-
import icons from './assets/img/icons';
|
|
5
|
-
import formatUrl from './lib/formatUrl';
|
|
1
|
+
import { html, nothing } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import desktopSubnavCSS from './styles/desktop-subnav.js';
|
|
4
|
+
import icons from './assets/img/icons.js';
|
|
5
|
+
import formatUrl from './lib/formatUrl.js';
|
|
6
6
|
|
|
7
7
|
class DesktopSubnav extends TrackedElement {
|
|
8
8
|
static get styles() {
|
package/src/dropdown-menu.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { html, nothing } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import dropdownMenuCSS from './styles/dropdown-menu';
|
|
4
|
-
import formatUrl from './lib/formatUrl';
|
|
1
|
+
import { html, nothing } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import dropdownMenuCSS from './styles/dropdown-menu.js';
|
|
4
|
+
import formatUrl from './lib/formatUrl.js';
|
|
5
5
|
|
|
6
6
|
class DropdownMenu extends TrackedElement {
|
|
7
7
|
static get styles() {
|
package/src/ia-topnav.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { LitElement, html, nothing } from 'lit';
|
|
1
|
+
import { LitElement, html, nothing } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
2
|
|
|
3
|
-
import './primary-nav';
|
|
4
|
-
import './user-menu';
|
|
5
|
-
import './search-menu';
|
|
6
|
-
import './media-slider';
|
|
7
|
-
import './desktop-subnav';
|
|
8
|
-
import './dropdown-menu';
|
|
9
|
-
import './signed-out-dropdown';
|
|
10
|
-
import iaTopNavCSS from './styles/ia-topnav';
|
|
3
|
+
import './primary-nav.js';
|
|
4
|
+
import './user-menu.js';
|
|
5
|
+
import './search-menu.js';
|
|
6
|
+
import './media-slider.js';
|
|
7
|
+
import './desktop-subnav.js';
|
|
8
|
+
import './dropdown-menu.js';
|
|
9
|
+
import './signed-out-dropdown.js';
|
|
10
|
+
import iaTopNavCSS from './styles/ia-topnav.js';
|
|
11
|
+
import { buildTopNavMenus, defaultTopNavConfig } from './data/menus.js';
|
|
11
12
|
|
|
12
13
|
export default class IATopNav extends LitElement {
|
|
13
14
|
static get styles() {
|
|
@@ -19,6 +20,10 @@ export default class IATopNav extends LitElement {
|
|
|
19
20
|
// so Typescript can find them
|
|
20
21
|
static get properties() {
|
|
21
22
|
return {
|
|
23
|
+
// we default to fully-qualified `https://archive.org` urls in nav, set to false for relatives
|
|
24
|
+
localLinks: Boolean,
|
|
25
|
+
// @see `data/menus.js` for a description:
|
|
26
|
+
waybackPagesArchived: String,
|
|
22
27
|
// the base host is for navigation, so may be empty for relative links
|
|
23
28
|
baseHost: { type: String },
|
|
24
29
|
// the media base host is the base host for images, such as the profile picture
|
|
@@ -57,20 +62,38 @@ export default class IATopNav extends LitElement {
|
|
|
57
62
|
|
|
58
63
|
constructor() {
|
|
59
64
|
super();
|
|
60
|
-
this.
|
|
65
|
+
this.menuSetup();
|
|
61
66
|
this.mediaBaseHost = 'https://archive.org';
|
|
62
67
|
this.userProfileImagePath = '/services/img/user/profile';
|
|
63
68
|
this.userProfileLastModified = '';
|
|
64
|
-
this.config =
|
|
69
|
+
this.config = defaultTopNavConfig;
|
|
65
70
|
this.hideSearch = false;
|
|
66
71
|
this.mediaSliderOpen = false;
|
|
67
|
-
this.menus = {};
|
|
68
72
|
this.openMenu = '';
|
|
69
73
|
this.searchIn = '';
|
|
70
74
|
this.selectedMenuOption = '';
|
|
71
75
|
this.secondIdentitySlotMode = '';
|
|
72
76
|
}
|
|
73
77
|
|
|
78
|
+
updated(props) {
|
|
79
|
+
if (props.has('username') || props.has('localLinks') || props.has('baseHost') ||
|
|
80
|
+
props.has('waybackPagesArchived')) {
|
|
81
|
+
this.menuSetup();
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
menuSetup() {
|
|
86
|
+
this.localLinks = this.getAttribute('localLinks') !== 'false' && this.getAttribute('localLinks') !== false;
|
|
87
|
+
this.username = this.getAttribute('username')
|
|
88
|
+
this.waybackPagesArchived = this.getAttribute('waybackPagesArchived') ?? ''
|
|
89
|
+
|
|
90
|
+
// ensure we update other components that use `baseHost`
|
|
91
|
+
this.baseHost = this.localLinks ? '' : 'https://archive.org';
|
|
92
|
+
|
|
93
|
+
// re/build the nav
|
|
94
|
+
this.menus = buildTopNavMenus(this.username, this.localLinks, this.waybackPagesArchived);
|
|
95
|
+
}
|
|
96
|
+
|
|
74
97
|
menuToggled({ detail }) {
|
|
75
98
|
const currentMenu = this.openMenu;
|
|
76
99
|
this.openMenu = currentMenu === detail.menuName ? '' : detail.menuName;
|
package/src/login-button.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { html } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import icons from './assets/img/icons';
|
|
4
|
-
import loginButtonCSS from './styles/login-button';
|
|
5
|
-
import formatUrl from './lib/formatUrl';
|
|
1
|
+
import { html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import icons from './assets/img/icons.js';
|
|
4
|
+
import loginButtonCSS from './styles/login-button.js';
|
|
5
|
+
import formatUrl from './lib/formatUrl.js';
|
|
6
6
|
|
|
7
7
|
class LoginButton extends TrackedElement {
|
|
8
8
|
static get styles() {
|
package/src/media-button.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { html } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import icons from './assets/img/icons';
|
|
4
|
-
import toSentenceCase from './lib/toSentenceCase';
|
|
5
|
-
import mediaButtonCSS from './styles/media-button';
|
|
1
|
+
import { html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import icons from './assets/img/icons.js';
|
|
4
|
+
import toSentenceCase from './lib/toSentenceCase.js';
|
|
5
|
+
import mediaButtonCSS from './styles/media-button.js';
|
|
6
6
|
|
|
7
7
|
class MediaButton extends TrackedElement {
|
|
8
8
|
static get styles() {
|
package/src/media-menu.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { LitElement, html } from 'lit';
|
|
1
|
+
import { LitElement, html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
2
|
|
|
3
|
-
import './media-button';
|
|
4
|
-
import mediaMenuCSS from './styles/media-menu';
|
|
5
|
-
import formatUrl from './lib/formatUrl';
|
|
3
|
+
import './media-button.js';
|
|
4
|
+
import mediaMenuCSS from './styles/media-menu.js';
|
|
5
|
+
import formatUrl from './lib/formatUrl.js';
|
|
6
6
|
|
|
7
7
|
const menuSelection = [
|
|
8
8
|
{
|
|
@@ -116,7 +116,7 @@ class MediaMenu extends LitElement {
|
|
|
116
116
|
<div class="media-menu-container ${this.menuClass}">
|
|
117
117
|
<div class="overflow-clip">
|
|
118
118
|
<nav
|
|
119
|
-
class="media-menu"
|
|
119
|
+
class="media-menu-inner"
|
|
120
120
|
aria-hidden="${!this.menuOpened}"
|
|
121
121
|
aria-expanded="${this.menuOpened}"
|
|
122
122
|
>
|
package/src/media-slider.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { LitElement, html } from 'lit';
|
|
2
|
-
import './media-subnav';
|
|
3
|
-
import mediaSliderCSS from './styles/media-slider';
|
|
1
|
+
import { LitElement, html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import './media-subnav.js';
|
|
3
|
+
import mediaSliderCSS from './styles/media-slider.js';
|
|
4
4
|
|
|
5
5
|
class MediaSlider extends LitElement {
|
|
6
6
|
static get styles() {
|
|
@@ -35,9 +35,6 @@ class MediaSlider extends LitElement {
|
|
|
35
35
|
return true;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
get selectedMenuItems() {
|
|
39
|
-
return this.menus[this.selectedMenuOption];
|
|
40
|
-
}
|
|
41
38
|
|
|
42
39
|
render() {
|
|
43
40
|
const sliderDetailsClass = this.mediaSliderOpen ? 'open' : 'closed';
|
|
@@ -50,8 +47,51 @@ class MediaSlider extends LitElement {
|
|
|
50
47
|
<media-subnav
|
|
51
48
|
.baseHost=${this.baseHost}
|
|
52
49
|
.config=${this.config}
|
|
53
|
-
|
|
54
|
-
|
|
50
|
+
class="${this.selectedMenuOption === 'audio' ? '' : 'hidden'}"
|
|
51
|
+
menu="audio"
|
|
52
|
+
.menuItems=${this.menus.audio}
|
|
53
|
+
></media-subnav>
|
|
54
|
+
<media-subnav
|
|
55
|
+
.baseHost=${this.baseHost}
|
|
56
|
+
.config=${this.config}
|
|
57
|
+
class="${this.selectedMenuOption === 'images' ? '' : 'hidden'}"
|
|
58
|
+
menu="images"
|
|
59
|
+
.menuItems=${this.menus.images}
|
|
60
|
+
></media-subnav>
|
|
61
|
+
<media-subnav
|
|
62
|
+
.baseHost=${this.baseHost}
|
|
63
|
+
.config=${this.config}
|
|
64
|
+
class="${this.selectedMenuOption === 'software' ? '' : 'hidden'}"
|
|
65
|
+
menu="software"
|
|
66
|
+
.menuItems=${this.menus.software}
|
|
67
|
+
></media-subnav>
|
|
68
|
+
<media-subnav
|
|
69
|
+
.baseHost=${this.baseHost}
|
|
70
|
+
.config=${this.config}
|
|
71
|
+
class="${this.selectedMenuOption === 'texts' ? '' : 'hidden'}"
|
|
72
|
+
menu="texts"
|
|
73
|
+
.menuItems=${this.menus.texts}
|
|
74
|
+
></media-subnav>
|
|
75
|
+
<media-subnav
|
|
76
|
+
.baseHost=${this.baseHost}
|
|
77
|
+
.config=${this.config}
|
|
78
|
+
class="${this.selectedMenuOption === 'video' ? '' : 'hidden'}"
|
|
79
|
+
menu="video"
|
|
80
|
+
.menuItems=${this.menus.video}
|
|
81
|
+
></media-subnav>
|
|
82
|
+
<media-subnav
|
|
83
|
+
.baseHost=${this.baseHost}
|
|
84
|
+
.config=${this.config}
|
|
85
|
+
class="${this.selectedMenuOption === 'web' ? '' : 'hidden'}"
|
|
86
|
+
menu="web"
|
|
87
|
+
.menuItems=${this.menus.web}
|
|
88
|
+
></media-subnav>
|
|
89
|
+
<media-subnav
|
|
90
|
+
.baseHost=${this.baseHost}
|
|
91
|
+
.config=${this.config}
|
|
92
|
+
class="${this.selectedMenuOption === 'more' ? '' : 'hidden'}"
|
|
93
|
+
menu="more"
|
|
94
|
+
.menuItems=${this.menus.more}
|
|
55
95
|
></media-subnav>
|
|
56
96
|
</div>
|
|
57
97
|
</div>
|
package/src/media-subnav.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { html } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import './wayback-slider';
|
|
4
|
-
import './more-slider';
|
|
5
|
-
import mediaSubnavCSS from './styles/media-subnav';
|
|
6
|
-
import toSentenceCase from './lib/toSentenceCase';
|
|
7
|
-
import formatUrl from './lib/formatUrl';
|
|
1
|
+
import { html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import './wayback-slider.js';
|
|
4
|
+
import './more-slider.js';
|
|
5
|
+
import mediaSubnavCSS from './styles/media-subnav.js';
|
|
6
|
+
import toSentenceCase from './lib/toSentenceCase.js';
|
|
7
|
+
import formatUrl from './lib/formatUrl.js';
|
|
8
8
|
|
|
9
9
|
class MediaSubnav extends TrackedElement {
|
|
10
10
|
static get styles() {
|
|
@@ -16,7 +16,7 @@ class MediaSubnav extends TrackedElement {
|
|
|
16
16
|
baseHost: { type: String },
|
|
17
17
|
config: { type: Object },
|
|
18
18
|
menu: { type: String },
|
|
19
|
-
menuItems: { type:
|
|
19
|
+
menuItems: { type: Object },
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
22
|
|
|
@@ -25,20 +25,10 @@ class MediaSubnav extends TrackedElement {
|
|
|
25
25
|
|
|
26
26
|
this.config = {};
|
|
27
27
|
this.menu = '';
|
|
28
|
-
this.menuItems =
|
|
28
|
+
this.menuItems = {};
|
|
29
29
|
|
|
30
30
|
// Begin properties not monitored by LitElement
|
|
31
31
|
this.links = MediaSubnav.defaultLinks;
|
|
32
|
-
this.templates = {
|
|
33
|
-
web: () => html`<wayback-slider
|
|
34
|
-
.baseHost=${this.baseHost}
|
|
35
|
-
.config=${this.config}
|
|
36
|
-
.archiveItLinks=${this.menuItems.archiveItLinks}
|
|
37
|
-
.browserExtensionsLinks=${this.menuItems.browserExtensionsLinks}
|
|
38
|
-
.mobileAppsLinks=${this.menuItems.mobileAppsLinks}
|
|
39
|
-
></wayback-slider>`,
|
|
40
|
-
more: () => html`<more-slider .baseHost=${this.baseHost} .config=${this.config} .menuItems=${this.menuItems}></more-slider>`,
|
|
41
|
-
};
|
|
42
32
|
}
|
|
43
33
|
|
|
44
34
|
shouldUpdate() {
|
|
@@ -73,14 +63,29 @@ class MediaSubnav extends TrackedElement {
|
|
|
73
63
|
}
|
|
74
64
|
|
|
75
65
|
render() {
|
|
76
|
-
const template = this.templates[this.menu];
|
|
77
|
-
|
|
78
66
|
if (!this.menu) {
|
|
79
67
|
return html``;
|
|
80
68
|
}
|
|
81
69
|
|
|
82
|
-
if (
|
|
83
|
-
|
|
70
|
+
if (this.menuItems) {
|
|
71
|
+
this.links = this.menuItems;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
if (this.menu === 'web') {
|
|
75
|
+
return html`
|
|
76
|
+
<wayback-slider
|
|
77
|
+
.baseHost=${this.baseHost}
|
|
78
|
+
.config=${this.config}
|
|
79
|
+
.archiveItLinks=${this.menuItems.archiveItLinks}
|
|
80
|
+
.browserExtensionsLinks=${this.menuItems.browserExtensionsLinks}
|
|
81
|
+
.mobileAppsLinks=${this.menuItems.mobileAppsLinks}
|
|
82
|
+
></wayback-slider>`;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
if (this.menu === 'more') {
|
|
86
|
+
return html`
|
|
87
|
+
<more-slider .baseHost=${this.baseHost} .config=${this.config} .menuItems=${this.menuItems}>
|
|
88
|
+
</more-slider>`;
|
|
84
89
|
}
|
|
85
90
|
|
|
86
91
|
return html`
|
package/src/more-slider.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { html } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import toSentenceCase from './lib/toSentenceCase';
|
|
4
|
-
import moreSliderCSS from './styles/more-slider';
|
|
5
|
-
import formatUrl from './lib/formatUrl';
|
|
1
|
+
import { html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import toSentenceCase from './lib/toSentenceCase.js';
|
|
4
|
+
import moreSliderCSS from './styles/more-slider.js';
|
|
5
|
+
import formatUrl from './lib/formatUrl.js';
|
|
6
6
|
|
|
7
7
|
class MoreSlider extends TrackedElement {
|
|
8
8
|
static get properties() {
|
package/src/nav-search.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { nothing, html } from 'lit';
|
|
1
|
+
import { nothing, html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
2
|
|
|
3
|
-
import TrackedElement from './tracked-element';
|
|
4
|
-
import navSearchCSS from './styles/nav-search';
|
|
5
|
-
import icons from './assets/img/icons';
|
|
6
|
-
import formatUrl from './lib/formatUrl';
|
|
3
|
+
import TrackedElement from './tracked-element.js';
|
|
4
|
+
import navSearchCSS from './styles/nav-search.js';
|
|
5
|
+
import icons from './assets/img/icons.js';
|
|
6
|
+
import formatUrl from './lib/formatUrl.js';
|
|
7
7
|
|
|
8
8
|
class NavSearch extends TrackedElement {
|
|
9
9
|
static get styles() {
|
package/src/primary-nav.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { html, nothing } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import icons from './assets/img/icons';
|
|
4
|
-
import './assets/img/hamburger';
|
|
5
|
-
import './login-button';
|
|
6
|
-
import './nav-search';
|
|
7
|
-
import './media-menu';
|
|
8
|
-
import logoWordmarkStacked from './assets/img/wordmark-stacked';
|
|
9
|
-
import primaryNavCSS from './styles/primary-nav';
|
|
10
|
-
import locationHandler from './lib/location-handler';
|
|
11
|
-
import formatUrl from './lib/formatUrl';
|
|
1
|
+
import { html, nothing } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import icons from './assets/img/icons.js';
|
|
4
|
+
import './assets/img/hamburger.js';
|
|
5
|
+
import './login-button.js';
|
|
6
|
+
import './nav-search.js';
|
|
7
|
+
import './media-menu.js';
|
|
8
|
+
import logoWordmarkStacked from './assets/img/wordmark-stacked.js';
|
|
9
|
+
import primaryNavCSS from './styles/primary-nav.js';
|
|
10
|
+
import locationHandler from './lib/location-handler.js';
|
|
11
|
+
import formatUrl from './lib/formatUrl.js';
|
|
12
12
|
|
|
13
13
|
class PrimaryNav extends TrackedElement {
|
|
14
14
|
static get styles() {
|
|
@@ -179,7 +179,7 @@ class PrimaryNav extends TrackedElement {
|
|
|
179
179
|
${this.secondLogoSlot}
|
|
180
180
|
</div>
|
|
181
181
|
${this.searchMenu}
|
|
182
|
-
<a href="${formatUrl(
|
|
182
|
+
<a href="${formatUrl('/create', this.baseHost)}" class="upload">
|
|
183
183
|
${icons.upload}
|
|
184
184
|
<span>Upload</span>
|
|
185
185
|
</a>
|
package/src/save-page-form.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { html } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import savePageFormCSS from './styles/save-page-form';
|
|
1
|
+
import { html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import savePageFormCSS from './styles/save-page-form.js';
|
|
4
4
|
|
|
5
5
|
class SavePageForm extends TrackedElement {
|
|
6
6
|
static get styles() {
|
package/src/search-menu.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { html } from 'lit';
|
|
2
|
-
import TrackedElement from './tracked-element';
|
|
3
|
-
import searchMenuCSS from './styles/search-menu';
|
|
4
|
-
import formatUrl from './lib/formatUrl';
|
|
1
|
+
import { html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import TrackedElement from './tracked-element.js';
|
|
3
|
+
import searchMenuCSS from './styles/search-menu.js';
|
|
4
|
+
import formatUrl from './lib/formatUrl.js';
|
|
5
5
|
|
|
6
6
|
class SearchMenu extends TrackedElement {
|
|
7
7
|
static get styles() {
|
|
@@ -94,7 +94,7 @@ class SearchMenu extends TrackedElement {
|
|
|
94
94
|
return html`
|
|
95
95
|
<div class="menu-wrapper">
|
|
96
96
|
<div
|
|
97
|
-
class="search-menu tx-slide ${this.menuClass}"
|
|
97
|
+
class="search-menu-inner tx-slide ${this.menuClass}"
|
|
98
98
|
aria-hidden="${searchMenuHidden}"
|
|
99
99
|
aria-expanded="${searchMenuExpanded}"
|
|
100
100
|
>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import DropdownMenu from './dropdown-menu';
|
|
2
|
-
import signedOutDropdownStyles from './styles/signed-out-dropdown';
|
|
1
|
+
import DropdownMenu from './dropdown-menu.js';
|
|
2
|
+
import signedOutDropdownStyles from './styles/signed-out-dropdown.js';
|
|
3
3
|
|
|
4
4
|
class SignedOutDropdown extends DropdownMenu {
|
|
5
5
|
static get styles() {
|
package/src/styles/base.js
CHANGED
package/src/styles/ia-topnav.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { css } from 'lit';
|
|
1
|
+
import { css } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
2
|
|
|
3
3
|
export default css`
|
|
4
4
|
:host {
|
|
@@ -58,6 +58,10 @@ export default css`
|
|
|
58
58
|
font-family: var(--themeFontFamily);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
+
primary-nav:focus {
|
|
62
|
+
outline: none !important;
|
|
63
|
+
}
|
|
64
|
+
|
|
61
65
|
#close-layer {
|
|
62
66
|
display: none;
|
|
63
67
|
position: fixed;
|
package/src/styles/media-menu.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { css } from 'lit';
|
|
1
|
+
import { css } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
2
|
|
|
3
3
|
export default css`
|
|
4
4
|
:host {
|
|
5
5
|
outline: none;
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
.media-menu {
|
|
8
|
+
.media-menu-inner {
|
|
9
9
|
z-index: -1;
|
|
10
10
|
top: -40rem;
|
|
11
11
|
background-color: var(--mediaMenuBg);
|
|
@@ -27,12 +27,12 @@ export default css`
|
|
|
27
27
|
position: relative;
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
.media-menu {
|
|
30
|
+
.media-menu-inner {
|
|
31
31
|
position: absolute;
|
|
32
32
|
width: 100%;
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
-
.open .media-menu {
|
|
35
|
+
.open .media-menu-inner {
|
|
36
36
|
top: 0;
|
|
37
37
|
}
|
|
38
38
|
|
|
@@ -55,7 +55,7 @@ export default css`
|
|
|
55
55
|
|
|
56
56
|
/* Desktop view styles */
|
|
57
57
|
@media (min-width: 890px) {
|
|
58
|
-
.media-menu {
|
|
58
|
+
.media-menu-inner {
|
|
59
59
|
display: inline-block;
|
|
60
60
|
position: static;
|
|
61
61
|
width: auto;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { css } from 'lit';
|
|
1
|
+
import { css } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
2
|
|
|
3
3
|
export default css`
|
|
4
4
|
.media-slider-container {
|
|
@@ -32,6 +32,10 @@ export default css`
|
|
|
32
32
|
display: block;
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
.hidden {
|
|
36
|
+
display: none;
|
|
37
|
+
}
|
|
38
|
+
|
|
35
39
|
.info-box {
|
|
36
40
|
padding: 1rem;
|
|
37
41
|
}
|
package/src/styles/nav-search.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { css } from 'lit';
|
|
1
|
+
import { css } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
2
|
|
|
3
3
|
export default css`
|
|
4
4
|
:host {
|
|
@@ -15,7 +15,7 @@ export default css`
|
|
|
15
15
|
outline-width: 0.16rem;
|
|
16
16
|
outline-style: auto;
|
|
17
17
|
}
|
|
18
|
-
.search-menu {
|
|
18
|
+
.search-menu-inner {
|
|
19
19
|
position: absolute;
|
|
20
20
|
right: 0;
|
|
21
21
|
left: 0;
|
|
@@ -50,7 +50,7 @@ export default css`
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
@media (min-width: 890px) {
|
|
53
|
-
.search-menu {
|
|
53
|
+
.search-menu-inner {
|
|
54
54
|
overflow: visible;
|
|
55
55
|
right: 2rem;
|
|
56
56
|
left: auto;
|
|
@@ -64,7 +64,7 @@ export default css`
|
|
|
64
64
|
box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.15);
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
.search-menu:after {
|
|
67
|
+
.search-menu-inner:after {
|
|
68
68
|
position: absolute;
|
|
69
69
|
right: 7px;
|
|
70
70
|
top: -7px;
|
package/src/styles/user-menu.js
CHANGED
package/src/tracked-element.js
CHANGED
package/src/user-menu.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { html } from 'lit';
|
|
2
|
-
import DropdownMenu from './dropdown-menu';
|
|
3
|
-
import userMenuCSS from './styles/user-menu';
|
|
1
|
+
import { html } from 'https://offshoot.ux.archive.org/lit.js';
|
|
2
|
+
import DropdownMenu from './dropdown-menu.js';
|
|
3
|
+
import userMenuCSS from './styles/user-menu.js';
|
|
4
4
|
|
|
5
5
|
class UserMenu extends DropdownMenu {
|
|
6
6
|
static get styles() {
|