@internetarchive/ia-item-navigator 1.0.4 → 1.1.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 (57) hide show
  1. package/.github/workflows/ci.yml +4 -5
  2. package/.github/workflows/gh-pages-main.yml +39 -0
  3. package/.github/workflows/pr-preview.yml +38 -0
  4. package/demo/app-root.ts +13 -13
  5. package/dist/demo/app-root.d.ts +47 -47
  6. package/dist/demo/app-root.js +200 -199
  7. package/dist/demo/app-root.js.map +1 -1
  8. package/dist/index.d.ts +3 -3
  9. package/dist/index.js +3 -3
  10. package/dist/src/interfaces/custom-theater-interface.d.ts +20 -20
  11. package/dist/src/interfaces/custom-theater-interface.js +1 -1
  12. package/dist/src/interfaces/event-interfaces.d.ts +40 -40
  13. package/dist/src/interfaces/event-interfaces.js +1 -1
  14. package/dist/src/interfaces/menu-interfaces.d.ts +23 -22
  15. package/dist/src/interfaces/menu-interfaces.js +1 -1
  16. package/dist/src/interfaces/menu-interfaces.js.map +1 -1
  17. package/dist/src/item-navigator.d.ts +69 -69
  18. package/dist/src/item-navigator.js +259 -257
  19. package/dist/src/item-navigator.js.map +1 -1
  20. package/dist/src/loader.d.ts +9 -13
  21. package/dist/src/loader.js +35 -31
  22. package/dist/src/loader.js.map +1 -1
  23. package/dist/src/menu-slider/ia-menu-slider.d.ts +31 -30
  24. package/dist/src/menu-slider/ia-menu-slider.js +123 -124
  25. package/dist/src/menu-slider/ia-menu-slider.js.map +1 -1
  26. package/dist/src/menu-slider/menu-button.d.ts +19 -19
  27. package/dist/src/menu-slider/menu-button.js +75 -75
  28. package/dist/src/menu-slider/menu-button.js.map +1 -1
  29. package/dist/src/menu-slider/styles/menu-button.d.ts +2 -2
  30. package/dist/src/menu-slider/styles/menu-button.js +2 -2
  31. package/dist/src/menu-slider/styles/menu-slider.d.ts +2 -2
  32. package/dist/src/menu-slider/styles/menu-slider.js +5 -5
  33. package/dist/src/no-theater-available.d.ts +9 -9
  34. package/dist/src/no-theater-available.js +35 -35
  35. package/dist/src/no-theater-available.js.map +1 -1
  36. package/dist/test/ia-item-navigator.test.d.ts +1 -1
  37. package/dist/test/ia-item-navigator.test.js +296 -296
  38. package/dist/test/ia-item-navigator.test.js.map +1 -1
  39. package/dist/test/ia-stub.d.ts +22 -22
  40. package/dist/test/ia-stub.js +34 -34
  41. package/dist/test/no-theater-available.test.d.ts +1 -1
  42. package/dist/test/no-theater-available.test.js +22 -22
  43. package/dist/test/no-theater-available.test.js.map +1 -1
  44. package/dist/vite.config.d.ts +2 -0
  45. package/dist/vite.config.js +25 -0
  46. package/dist/vite.config.js.map +1 -0
  47. package/package.json +35 -21
  48. package/src/interfaces/menu-interfaces.ts +3 -1
  49. package/src/item-navigator.ts +9 -4
  50. package/src/loader.ts +5 -7
  51. package/src/menu-slider/ia-menu-slider.ts +17 -17
  52. package/src/menu-slider/menu-button.ts +3 -3
  53. package/src/no-theater-available.ts +1 -1
  54. package/test/ia-item-navigator.test.ts +24 -24
  55. package/test/no-theater-available.test.ts +2 -2
  56. package/tsconfig.json +2 -1
  57. package/vite.config.ts +25 -0
@@ -1,92 +1,94 @@
1
- import { __decorate } from "tslib";
2
- import { css, html, LitElement, nothing, } from 'lit';
3
- import { customElement, property, state, query } from 'lit/decorators.js';
4
- import { MetadataResponse } from '@internetarchive/search-service';
5
- import '@internetarchive/icon-ellipses/icon-ellipses';
6
- import './menu-slider/ia-menu-slider';
7
- import './loader';
8
- import './no-theater-available';
9
- let ItemNavigator = class ItemNavigator extends LitElement {
10
- constructor() {
11
- super(...arguments);
12
- this.viewAvailable = true;
13
- this.baseHost = 'archive.org';
14
- this.signedIn = false;
15
- this.menuContents = [];
16
- this.menuShortcuts = [];
17
- this.viewportInFullscreen = null;
18
- this.menuOpened = false;
19
- this.loaded = null;
20
- this.openMenuState = 'shift';
21
- }
22
- disconnectedCallback() {
23
- this.removeResizeObserver();
24
- }
25
- updated(changed) {
26
- if (changed.has('sharedObserver')) {
27
- const oldObserver = changed.get('sharedObserver');
28
- oldObserver === null || oldObserver === void 0 ? void 0 : oldObserver.removeObserver(this.resizeObserverConfig);
29
- this.setResizeObserver();
30
- }
31
- }
32
- /** Shared observer */
33
- handleResize(entry) {
34
- const { width } = entry.contentRect;
35
- if (width <= 600) {
36
- this.openMenuState = 'overlay';
37
- return;
38
- }
39
- this.openMenuState = 'shift';
40
- }
41
- setResizeObserver() {
42
- var _a, _b;
43
- (_a = this.sharedObserver) === null || _a === void 0 ? void 0 : _a.addObserver(this.resizeObserverConfig);
44
- (_b = this.sharedObserver) === null || _b === void 0 ? void 0 : _b.addObserver({
45
- target: this.headerSlot,
46
- handler: {
47
- handleResize: ({ contentRect }) => {
48
- if (contentRect.height) {
49
- this.requestUpdate();
50
- }
51
- },
52
- },
53
- });
54
- }
55
- removeResizeObserver() {
56
- var _a;
57
- (_a = this.sharedObserver) === null || _a === void 0 ? void 0 : _a.removeObserver(this.resizeObserverConfig);
58
- }
59
- get resizeObserverConfig() {
60
- return {
61
- handler: this,
62
- target: this.frame,
63
- };
64
- }
65
- /** End shared observer */
66
- get loaderTitle() {
67
- return this.viewportInFullscreen ? 'Internet Archive' : '';
68
- }
69
- get loadingArea() {
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement, nothing, } from 'lit';
3
+ import { customElement, property, state, query } from 'lit/decorators.js';
4
+ import { MetadataResponse } from '@internetarchive/search-service';
5
+ import '@internetarchive/icon-ellipses/icon-ellipses';
6
+ import './menu-slider/ia-menu-slider';
7
+ import './loader';
8
+ import './no-theater-available';
9
+ let ItemNavigator = class ItemNavigator extends LitElement {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.viewAvailable = true;
13
+ this.baseHost = 'archive.org';
14
+ this.signedIn = false;
15
+ this.menuContents = [];
16
+ this.menuShortcuts = [];
17
+ this.viewportInFullscreen = null;
18
+ this.menuOpened = false;
19
+ this.loaded = null;
20
+ this.openMenuState = 'shift';
21
+ }
22
+ disconnectedCallback() {
23
+ this.removeResizeObserver();
24
+ }
25
+ updated(changed) {
26
+ if (changed.has('sharedObserver')) {
27
+ const oldObserver = changed.get('sharedObserver');
28
+ oldObserver === null || oldObserver === void 0 ? void 0 : oldObserver.removeObserver(this.resizeObserverConfig);
29
+ this.setResizeObserver();
30
+ }
31
+ }
32
+ /** Shared observer */
33
+ handleResize(entry) {
34
+ const { width } = entry.contentRect;
35
+ if (width <= 600) {
36
+ this.openMenuState = 'overlay';
37
+ return;
38
+ }
39
+ this.openMenuState = 'shift';
40
+ }
41
+ setResizeObserver() {
42
+ var _a, _b;
43
+ (_a = this.sharedObserver) === null || _a === void 0 ? void 0 : _a.addObserver(this.resizeObserverConfig);
44
+ (_b = this.sharedObserver) === null || _b === void 0 ? void 0 : _b.addObserver({
45
+ target: this.headerSlot,
46
+ handler: {
47
+ handleResize: ({ contentRect }) => {
48
+ if (contentRect.height) {
49
+ this.requestUpdate();
50
+ }
51
+ },
52
+ },
53
+ });
54
+ }
55
+ removeResizeObserver() {
56
+ var _a;
57
+ (_a = this.sharedObserver) === null || _a === void 0 ? void 0 : _a.removeObserver(this.resizeObserverConfig);
58
+ }
59
+ get resizeObserverConfig() {
60
+ return {
61
+ handler: this,
62
+ target: this.frame,
63
+ };
64
+ }
65
+ /** End shared observer */
66
+ get loaderTitle() {
67
+ return this.viewportInFullscreen ? 'Internet Archive' : '';
68
+ }
69
+ get loadingArea() {
70
70
  return html `
71
71
  <div class="loading-area">
72
72
  <div class="loading-view">
73
- <ia-itemnav-loader .title=${this.loaderTitle}></ia-itemnav-loader>
73
+ <ia-itemnav-loader
74
+ .loaderMessage=${this.loaderTitle}
75
+ ></ia-itemnav-loader>
74
76
  </div>
75
77
  </div>
76
- `;
77
- }
78
- slotChange(e, type) {
79
- var _a;
80
- const slottedContent = (_a = e.target.assignedNodes()) === null || _a === void 0 ? void 0 : _a[0];
81
- this.dispatchEvent(new CustomEvent('slotChange', {
82
- detail: { slot: slottedContent, type },
83
- }));
84
- this.requestUpdate();
85
- }
86
- render() {
87
- var _a, _b;
88
- const displayReaderClass = this.loaded ? '' : 'hidden';
89
- const headerHeight = ((_b = (_a = this.headerSlot) === null || _a === void 0 ? void 0 : _a.assignedNodes()[0]) === null || _b === void 0 ? void 0 : _b.offsetHeight) || 0;
78
+ `;
79
+ }
80
+ slotChange(e, type) {
81
+ var _a;
82
+ const slottedContent = (_a = e.target.assignedNodes()) === null || _a === void 0 ? void 0 : _a[0];
83
+ this.dispatchEvent(new CustomEvent('slotChange', {
84
+ detail: { slot: slottedContent, type },
85
+ }));
86
+ this.requestUpdate();
87
+ }
88
+ render() {
89
+ var _a, _b;
90
+ const displayReaderClass = this.loaded ? '' : 'hidden';
91
+ const headerHeight = ((_b = (_a = this.headerSlot) === null || _a === void 0 ? void 0 : _a.assignedNodes()[0]) === null || _b === void 0 ? void 0 : _b.offsetHeight) || 0;
90
92
  return html `
91
93
  <div id="frame" class=${this.menuClass}>
92
94
  <slot
@@ -102,20 +104,20 @@ let ItemNavigator = class ItemNavigator extends LitElement {
102
104
  ${!this.loaded ? this.loadingArea : nothing}
103
105
  </div>
104
106
  </div>
105
- `;
106
- }
107
- get noTheaterView() {
108
- var _a, _b;
107
+ `;
108
+ }
109
+ get noTheaterView() {
110
+ var _a, _b;
109
111
  return html `<ia-no-theater-available
110
112
  .identifier=${(_b = (_a = this.item) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.identifier}
111
113
  @loadingStateUpdated=${this.loadingStateUpdated}
112
- ></ia-no-theater-available>`;
113
- }
114
- get renderViewport() {
115
- if (!this.viewAvailable) {
116
- return this.noTheaterView;
117
- }
118
- const slotVisibility = !this.loaded ? 'opacity: 0;' : 'opacity: 1;';
114
+ ></ia-no-theater-available>`;
115
+ }
116
+ get renderViewport() {
117
+ if (!this.viewAvailable) {
118
+ return this.noTheaterView;
119
+ }
120
+ const slotVisibility = !this.loaded ? 'opacity: 0;' : 'opacity: 1;';
119
121
  return html `
120
122
  <div slot="main" style=${slotVisibility}>
121
123
  <slot
@@ -123,59 +125,59 @@ let ItemNavigator = class ItemNavigator extends LitElement {
123
125
  @slotchange=${(e) => this.slotChange(e, 'main')}
124
126
  ></slot>
125
127
  </div>
126
- `;
127
- }
128
- loadingStateUpdated(e) {
129
- const { loaded } = e.detail;
130
- this.loaded = loaded || null;
131
- }
132
- /** Fullscreen Management */
133
- manageViewportFullscreen(e) {
134
- const fullscreenStatus = !!e.detail.isFullScreen;
135
- this.viewportInFullscreen = !fullscreenStatus ? null : fullscreenStatus;
136
- const event = new CustomEvent('fullscreenToggled', {
137
- detail: e.detail,
138
- });
139
- this.dispatchEvent(event);
140
- }
141
- /** End Fullscreen Management */
142
- /** Side menu */
143
- get shouldRenderMenu() {
144
- var _a;
145
- return !!((_a = this.menuContents) === null || _a === void 0 ? void 0 : _a.length);
146
- }
147
- toggleMenu() {
148
- this.menuOpened = !this.menuOpened;
149
- }
150
- closeMenu() {
151
- this.menuOpened = false;
152
- }
153
- setOpenMenu(e) {
154
- const { id } = e.detail;
155
- this.openMenu = id !== this.openMenu ? id : undefined;
156
- }
157
- setMenuContents(e) {
158
- const updatedContents = [...e.detail];
159
- this.menuContents = updatedContents;
160
- }
161
- setMenuShortcuts(e) {
162
- this.menuShortcuts = [...e.detail];
163
- }
164
- /** Toggles Side Menu & Sets viewable subpanel */
165
- manageSideMenuEvents(e) {
166
- const { menuId, action } = e.detail;
167
- if (!menuId) {
168
- return;
169
- }
170
- if (action === 'open') {
171
- this.openShortcut(menuId);
172
- }
173
- else if (action === 'toggle') {
174
- this.openMenu = menuId;
175
- this.toggleMenu();
176
- }
177
- }
178
- get menuToggleButton() {
128
+ `;
129
+ }
130
+ loadingStateUpdated(e) {
131
+ const { loaded } = e.detail;
132
+ this.loaded = loaded || null;
133
+ }
134
+ /** Fullscreen Management */
135
+ manageViewportFullscreen(e) {
136
+ const fullscreenStatus = !!e.detail.isFullScreen;
137
+ this.viewportInFullscreen = !fullscreenStatus ? null : fullscreenStatus;
138
+ const event = new CustomEvent('fullscreenToggled', {
139
+ detail: e.detail,
140
+ });
141
+ this.dispatchEvent(event);
142
+ }
143
+ /** End Fullscreen Management */
144
+ /** Side menu */
145
+ get shouldRenderMenu() {
146
+ var _a;
147
+ return !!((_a = this.menuContents) === null || _a === void 0 ? void 0 : _a.length);
148
+ }
149
+ toggleMenu() {
150
+ this.menuOpened = !this.menuOpened;
151
+ }
152
+ closeMenu() {
153
+ this.menuOpened = false;
154
+ }
155
+ setOpenMenu(e) {
156
+ const { id } = e.detail;
157
+ this.openMenu = id !== this.openMenu ? id : undefined;
158
+ }
159
+ setMenuContents(e) {
160
+ const updatedContents = [...e.detail];
161
+ this.menuContents = updatedContents;
162
+ }
163
+ setMenuShortcuts(e) {
164
+ this.menuShortcuts = [...e.detail];
165
+ }
166
+ /** Toggles Side Menu & Sets viewable subpanel */
167
+ manageSideMenuEvents(e) {
168
+ const { menuId, action } = e.detail;
169
+ if (!menuId) {
170
+ return;
171
+ }
172
+ if (action === 'open') {
173
+ this.openShortcut(menuId);
174
+ }
175
+ else if (action === 'toggle') {
176
+ this.openMenu = menuId;
177
+ this.toggleMenu();
178
+ }
179
+ }
180
+ get menuToggleButton() {
179
181
  return html `
180
182
  <button
181
183
  class="toggle-menu"
@@ -188,13 +190,13 @@ let ItemNavigator = class ItemNavigator extends LitElement {
188
190
  ></ia-icon-ellipses>
189
191
  </div>
190
192
  </button>
191
- `;
192
- }
193
- get selectedMenuId() {
194
- return this.openMenu || '';
195
- }
196
- get renderSideMenu() {
197
- const drawerState = this.menuOpened ? '' : 'hidden';
193
+ `;
194
+ }
195
+ get selectedMenuId() {
196
+ return this.openMenu || '';
197
+ }
198
+ get renderSideMenu() {
199
+ const drawerState = this.menuOpened ? '' : 'hidden';
198
200
  return html `
199
201
  <nav>
200
202
  <div class="minimized">${this.shortcuts} ${this.menuToggleButton}</div>
@@ -209,42 +211,42 @@ let ItemNavigator = class ItemNavigator extends LitElement {
209
211
  ></ia-menu-slider>
210
212
  </div>
211
213
  </nav>
212
- `;
213
- }
214
- /** End Side menu */
215
- /** Menu Shortcuts */
216
- openShortcut(selectedMenuId = '') {
217
- this.openMenu = selectedMenuId;
218
- this.menuOpened = true;
219
- }
220
- get shortcuts() {
221
- const shortcuts = this.menuShortcuts.map(({ icon, id }) => {
222
- if (id === 'fullscreen') {
223
- return html `${icon}`;
224
- }
214
+ `;
215
+ }
216
+ /** End Side menu */
217
+ /** Menu Shortcuts */
218
+ openShortcut(selectedMenuId = '') {
219
+ this.openMenu = selectedMenuId;
220
+ this.menuOpened = true;
221
+ }
222
+ get shortcuts() {
223
+ const shortcuts = this.menuShortcuts.map(({ icon, id }) => {
224
+ if (id === 'fullscreen') {
225
+ return html `${icon}`;
226
+ }
225
227
  return html `
226
228
  <button class="shortcut ${id}" @click="${() => this.openShortcut(id)}">
227
229
  ${icon}
228
230
  </button>
229
- `;
230
- });
231
- return html `<div class="shortcuts">${shortcuts}</div>`;
232
- }
233
- /** End Menu Shortcuts */
234
- /** Misc Render */
235
- get menuClass() {
236
- var _a, _b;
237
- const hasMenuOrShortcuts = ((_a = this.menuContents) === null || _a === void 0 ? void 0 : _a.length) || ((_b = this.menuShortcuts) === null || _b === void 0 ? void 0 : _b.length);
238
- const drawerState = this.menuOpened && hasMenuOrShortcuts ? 'open' : '';
239
- const fullscreenState = this.viewportInFullscreen ? 'fullscreen' : '';
240
- return `${drawerState} ${fullscreenState} ${this.openMenuState}`;
241
- }
242
- static get styles() {
243
- const subnavWidth = css `var(--menuWidth, 320px)`;
244
- const transitionTiming = css `var(--animationTiming, 200ms)`;
245
- const transitionEffect = css `transform ${transitionTiming} ease-out`;
246
- const menuMargin = css `var(--theaterMenuMargin, 42px)`;
247
- const theaterBg = css `var(--theaterBgColor, #000)`;
231
+ `;
232
+ });
233
+ return html `<div class="shortcuts">${shortcuts}</div>`;
234
+ }
235
+ /** End Menu Shortcuts */
236
+ /** Misc Render */
237
+ get menuClass() {
238
+ var _a, _b;
239
+ const hasMenuOrShortcuts = ((_a = this.menuContents) === null || _a === void 0 ? void 0 : _a.length) || ((_b = this.menuShortcuts) === null || _b === void 0 ? void 0 : _b.length);
240
+ const drawerState = this.menuOpened && hasMenuOrShortcuts ? 'open' : '';
241
+ const fullscreenState = this.viewportInFullscreen ? 'fullscreen' : '';
242
+ return `${drawerState} ${fullscreenState} ${this.openMenuState}`;
243
+ }
244
+ static get styles() {
245
+ const subnavWidth = css `var(--menuWidth, 320px)`;
246
+ const transitionTiming = css `var(--animationTiming, 200ms)`;
247
+ const transitionEffect = css `transform ${transitionTiming} ease-out`;
248
+ const menuMargin = css `var(--theaterMenuMargin, 42px)`;
249
+ const theaterBg = css `var(--theaterBgColor, #000)`;
248
250
  return css `
249
251
  :host,
250
252
  #frame,
@@ -409,74 +411,74 @@ let ItemNavigator = class ItemNavigator extends LitElement {
409
411
  margin-left: ${subnavWidth};
410
412
  transition: ${transitionEffect};
411
413
  }
412
- `;
413
- }
414
- };
415
- __decorate([
416
- property({
417
- type: Object,
418
- converter: (value) => {
419
- if (value && typeof value === 'string') {
420
- return new MetadataResponse(JSON.parse(atob(value)));
421
- }
422
- return value;
423
- },
424
- })
425
- ], ItemNavigator.prototype, "item", void 0);
426
- __decorate([
427
- property({ type: Boolean })
428
- ], ItemNavigator.prototype, "viewAvailable", void 0);
429
- __decorate([
430
- property({ type: String })
431
- ], ItemNavigator.prototype, "baseHost", void 0);
432
- __decorate([
433
- property({
434
- converter: (arg) => {
435
- if (typeof arg === 'boolean') {
436
- return arg;
437
- }
438
- return arg === 'true';
439
- },
440
- })
441
- ], ItemNavigator.prototype, "signedIn", void 0);
442
- __decorate([
443
- property({ type: Array })
444
- ], ItemNavigator.prototype, "menuContents", void 0);
445
- __decorate([
446
- property({ type: Array })
447
- ], ItemNavigator.prototype, "menuShortcuts", void 0);
448
- __decorate([
449
- property({ type: Boolean, reflect: true, attribute: true })
450
- ], ItemNavigator.prototype, "viewportInFullscreen", void 0);
451
- __decorate([
452
- property({ type: Boolean })
453
- ], ItemNavigator.prototype, "menuOpened", void 0);
454
- __decorate([
455
- property({ type: String })
456
- ], ItemNavigator.prototype, "openMenu", void 0);
457
- __decorate([
458
- property({ attribute: false })
459
- ], ItemNavigator.prototype, "modal", void 0);
460
- __decorate([
461
- property({ attribute: false })
462
- ], ItemNavigator.prototype, "sharedObserver", void 0);
463
- __decorate([
464
- property({ type: Boolean, reflect: true, attribute: true })
465
- ], ItemNavigator.prototype, "loaded", void 0);
466
- __decorate([
467
- state()
468
- ], ItemNavigator.prototype, "openMenuState", void 0);
469
- __decorate([
470
- query('#frame')
471
- ], ItemNavigator.prototype, "frame", void 0);
472
- __decorate([
473
- query('slot[name="header"]')
474
- ], ItemNavigator.prototype, "headerSlot", void 0);
475
- __decorate([
476
- query('slot[name="main"]')
477
- ], ItemNavigator.prototype, "mainSlot", void 0);
478
- ItemNavigator = __decorate([
479
- customElement('ia-item-navigator')
480
- ], ItemNavigator);
481
- export { ItemNavigator };
414
+ `;
415
+ }
416
+ };
417
+ __decorate([
418
+ property({
419
+ type: Object,
420
+ converter: (value) => {
421
+ if (value && typeof value === 'string') {
422
+ return new MetadataResponse(JSON.parse(atob(value)));
423
+ }
424
+ return value;
425
+ },
426
+ })
427
+ ], ItemNavigator.prototype, "item", void 0);
428
+ __decorate([
429
+ property({ type: Boolean })
430
+ ], ItemNavigator.prototype, "viewAvailable", void 0);
431
+ __decorate([
432
+ property({ type: String })
433
+ ], ItemNavigator.prototype, "baseHost", void 0);
434
+ __decorate([
435
+ property({
436
+ converter: (arg) => {
437
+ if (typeof arg === 'boolean') {
438
+ return arg;
439
+ }
440
+ return arg === 'true';
441
+ },
442
+ })
443
+ ], ItemNavigator.prototype, "signedIn", void 0);
444
+ __decorate([
445
+ property({ type: Array })
446
+ ], ItemNavigator.prototype, "menuContents", void 0);
447
+ __decorate([
448
+ property({ type: Array })
449
+ ], ItemNavigator.prototype, "menuShortcuts", void 0);
450
+ __decorate([
451
+ property({ type: Boolean, reflect: true, attribute: true })
452
+ ], ItemNavigator.prototype, "viewportInFullscreen", void 0);
453
+ __decorate([
454
+ property({ type: Boolean })
455
+ ], ItemNavigator.prototype, "menuOpened", void 0);
456
+ __decorate([
457
+ property({ type: String })
458
+ ], ItemNavigator.prototype, "openMenu", void 0);
459
+ __decorate([
460
+ property({ attribute: false })
461
+ ], ItemNavigator.prototype, "modal", void 0);
462
+ __decorate([
463
+ property({ attribute: false })
464
+ ], ItemNavigator.prototype, "sharedObserver", void 0);
465
+ __decorate([
466
+ property({ type: Boolean, reflect: true, attribute: true })
467
+ ], ItemNavigator.prototype, "loaded", void 0);
468
+ __decorate([
469
+ state()
470
+ ], ItemNavigator.prototype, "openMenuState", void 0);
471
+ __decorate([
472
+ query('#frame')
473
+ ], ItemNavigator.prototype, "frame", void 0);
474
+ __decorate([
475
+ query('slot[name="header"]')
476
+ ], ItemNavigator.prototype, "headerSlot", void 0);
477
+ __decorate([
478
+ query('slot[name="main"]')
479
+ ], ItemNavigator.prototype, "mainSlot", void 0);
480
+ ItemNavigator = __decorate([
481
+ customElement('ia-item-navigator')
482
+ ], ItemNavigator);
483
+ export { ItemNavigator };
482
484
  //# sourceMappingURL=item-navigator.js.map