@internetarchive/collection-browser 0.3.7 → 0.3.8

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 (218) hide show
  1. package/.editorconfig +29 -29
  2. package/.github/workflows/ci.yml +26 -26
  3. package/.github/workflows/gh-pages-main.yml +39 -39
  4. package/.github/workflows/npm-publish.yml +39 -39
  5. package/.github/workflows/pr-preview.yml +38 -38
  6. package/.husky/pre-commit +4 -4
  7. package/LICENSE +661 -661
  8. package/README.md +83 -83
  9. package/dist/index.d.ts +9 -9
  10. package/dist/index.js +9 -9
  11. package/dist/src/app-root.d.ts +48 -47
  12. package/dist/src/app-root.js +271 -250
  13. package/dist/src/app-root.js.map +1 -1
  14. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  15. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  16. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  17. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  18. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  19. package/dist/src/assets/img/icons/chevron.js +2 -2
  20. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  21. package/dist/src/assets/img/icons/empty-query.js +2 -2
  22. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  23. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  24. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  25. package/dist/src/assets/img/icons/eye.js +2 -2
  26. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  27. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  28. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  29. package/dist/src/assets/img/icons/login-required.js +2 -2
  30. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  31. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  32. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  33. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  34. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  35. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  36. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  37. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  38. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  39. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  40. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  41. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  42. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  43. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  44. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  45. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  46. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  47. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  48. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  49. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  50. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  51. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  52. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  53. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  54. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  55. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  56. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  57. package/dist/src/assets/img/icons/null-result.js +2 -2
  58. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  59. package/dist/src/assets/img/icons/restricted.js +2 -2
  60. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  61. package/dist/src/assets/img/icons/reviews.js +2 -2
  62. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  63. package/dist/src/assets/img/icons/upload.js +2 -2
  64. package/dist/src/assets/img/icons/views.d.ts +1 -1
  65. package/dist/src/assets/img/icons/views.js +2 -2
  66. package/dist/src/circular-activity-indicator.d.ts +5 -5
  67. package/dist/src/circular-activity-indicator.js +17 -17
  68. package/dist/src/collection-browser.d.ts +278 -246
  69. package/dist/src/collection-browser.js +1105 -1031
  70. package/dist/src/collection-browser.js.map +1 -1
  71. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  72. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  73. package/dist/src/collection-facets/facets-template.d.ts +16 -16
  74. package/dist/src/collection-facets/facets-template.js +125 -125
  75. package/dist/src/collection-facets/more-facets-content.d.ts +76 -76
  76. package/dist/src/collection-facets/more-facets-content.js +353 -353
  77. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  78. package/dist/src/collection-facets/more-facets-pagination.js +192 -192
  79. package/dist/src/collection-facets.d.ts +77 -77
  80. package/dist/src/collection-facets.js +388 -389
  81. package/dist/src/collection-facets.js.map +1 -1
  82. package/dist/src/empty-placeholder.d.ts +11 -11
  83. package/dist/src/empty-placeholder.js +42 -42
  84. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  85. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  86. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  87. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  88. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  89. package/dist/src/mediatype/mediatype-config.js +85 -85
  90. package/dist/src/models.d.ts +103 -103
  91. package/dist/src/models.js +117 -117
  92. package/dist/src/restoration-state-handler.d.ts +46 -46
  93. package/dist/src/restoration-state-handler.js +230 -230
  94. package/dist/src/sort-filter-bar/alpha-bar.d.ts +9 -9
  95. package/dist/src/sort-filter-bar/alpha-bar.js +41 -41
  96. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  97. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  98. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  99. package/dist/src/sort-filter-bar/img/list.js +2 -2
  100. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  101. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  102. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  103. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  104. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +107 -107
  105. package/dist/src/sort-filter-bar/sort-filter-bar.js +423 -423
  106. package/dist/src/styles/item-image-styles.d.ts +8 -8
  107. package/dist/src/styles/item-image-styles.js +9 -9
  108. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  109. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  110. package/dist/src/tiles/grid/account-tile.d.ts +8 -8
  111. package/dist/src/tiles/grid/account-tile.js +20 -20
  112. package/dist/src/tiles/grid/collection-tile.d.ts +7 -7
  113. package/dist/src/tiles/grid/collection-tile.js +23 -23
  114. package/dist/src/tiles/grid/item-tile.d.ts +24 -24
  115. package/dist/src/tiles/grid/item-tile.js +87 -87
  116. package/dist/src/tiles/grid/tile-stats.d.ts +10 -10
  117. package/dist/src/tiles/grid/tile-stats.js +40 -40
  118. package/dist/src/tiles/image-block.d.ts +17 -17
  119. package/dist/src/tiles/image-block.js +69 -69
  120. package/dist/src/tiles/item-image.d.ts +31 -31
  121. package/dist/src/tiles/item-image.js +103 -103
  122. package/dist/src/tiles/list/account-label.d.ts +1 -1
  123. package/dist/src/tiles/list/account-label.js +6 -6
  124. package/dist/src/tiles/list/date-label.d.ts +1 -1
  125. package/dist/src/tiles/list/date-label.js +12 -12
  126. package/dist/src/tiles/list/tile-list-compact-header.d.ts +12 -12
  127. package/dist/src/tiles/list/tile-list-compact-header.js +41 -41
  128. package/dist/src/tiles/list/tile-list-compact.d.ts +21 -21
  129. package/dist/src/tiles/list/tile-list-compact.js +93 -93
  130. package/dist/src/tiles/list/tile-list.d.ts +50 -50
  131. package/dist/src/tiles/list/tile-list.js +275 -272
  132. package/dist/src/tiles/list/tile-list.js.map +1 -1
  133. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  134. package/dist/src/tiles/mediatype-icon.js +47 -47
  135. package/dist/src/tiles/overlay/icon-overlay.d.ts +7 -7
  136. package/dist/src/tiles/overlay/icon-overlay.js +30 -30
  137. package/dist/src/tiles/overlay/text-overlay.d.ts +8 -8
  138. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  139. package/dist/src/tiles/text-snippet-block.d.ts +29 -29
  140. package/dist/src/tiles/text-snippet-block.js +81 -81
  141. package/dist/src/tiles/tile-dispatcher.d.ts +36 -36
  142. package/dist/src/tiles/tile-dispatcher.js +128 -128
  143. package/dist/src/utils/analytics-events.d.ts +22 -22
  144. package/dist/src/utils/analytics-events.js +24 -24
  145. package/dist/src/utils/format-count.d.ts +7 -7
  146. package/dist/src/utils/format-count.js +76 -76
  147. package/dist/src/utils/format-date.d.ts +2 -2
  148. package/dist/src/utils/format-date.js +23 -23
  149. package/dist/test/collection-browser.test.d.ts +1 -1
  150. package/dist/test/collection-browser.test.js +583 -444
  151. package/dist/test/collection-browser.test.js.map +1 -1
  152. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  153. package/dist/test/collection-facets/facets-template.test.js +62 -62
  154. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  155. package/dist/test/collection-facets/more-facets-content.test.js +114 -114
  156. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  157. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  158. package/dist/test/collection-facets.test.d.ts +2 -2
  159. package/dist/test/collection-facets.test.js +544 -498
  160. package/dist/test/collection-facets.test.js.map +1 -1
  161. package/dist/test/empty-placeholder.test.d.ts +1 -1
  162. package/dist/test/empty-placeholder.test.js +33 -33
  163. package/dist/test/icon-overlay.test.d.ts +1 -1
  164. package/dist/test/icon-overlay.test.js +24 -24
  165. package/dist/test/image-block.test.d.ts +1 -1
  166. package/dist/test/image-block.test.js +48 -48
  167. package/dist/test/item-image.test.d.ts +1 -1
  168. package/dist/test/item-image.test.js +56 -56
  169. package/dist/test/mediatype-config.test.d.ts +1 -1
  170. package/dist/test/mediatype-config.test.js +16 -16
  171. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  172. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  173. package/dist/test/mocks/mock-collection-name-cache.d.ts +7 -7
  174. package/dist/test/mocks/mock-collection-name-cache.js +13 -13
  175. package/dist/test/mocks/mock-search-responses.d.ts +10 -8
  176. package/dist/test/mocks/mock-search-responses.js +271 -198
  177. package/dist/test/mocks/mock-search-responses.js.map +1 -1
  178. package/dist/test/mocks/mock-search-service.d.ts +13 -13
  179. package/dist/test/mocks/mock-search-service.js +36 -32
  180. package/dist/test/mocks/mock-search-service.js.map +1 -1
  181. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  182. package/dist/test/restoration-state-handler.test.js +126 -126
  183. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  184. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +113 -113
  185. package/dist/test/text-overlay.test.d.ts +1 -1
  186. package/dist/test/text-overlay.test.js +41 -41
  187. package/dist/test/text-snippet-block.test.d.ts +1 -1
  188. package/dist/test/text-snippet-block.test.js +57 -57
  189. package/dist/test/tile-stats.test.d.ts +1 -1
  190. package/dist/test/tile-stats.test.js +33 -33
  191. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  192. package/dist/test/tiles/grid/item-tile.test.js +107 -107
  193. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  194. package/dist/test/tiles/list/tile-list-compact.test.js +92 -92
  195. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  196. package/dist/test/tiles/list/tile-list.test.js +96 -67
  197. package/dist/test/tiles/list/tile-list.test.js.map +1 -1
  198. package/dist/test/utils/format-count.test.d.ts +1 -1
  199. package/dist/test/utils/format-count.test.js +23 -23
  200. package/dist/test/utils/format-date.test.d.ts +1 -1
  201. package/dist/test/utils/format-date.test.js +17 -17
  202. package/index.html +24 -24
  203. package/local.archive.org.cert +86 -86
  204. package/local.archive.org.key +27 -27
  205. package/package.json +3 -3
  206. package/renovate.json +6 -6
  207. package/src/app-root.ts +32 -9
  208. package/src/collection-browser.ts +130 -35
  209. package/src/collection-facets.ts +2 -3
  210. package/src/tiles/list/tile-list.ts +6 -2
  211. package/test/collection-browser.test.ts +207 -0
  212. package/test/collection-facets.test.ts +67 -0
  213. package/test/mocks/mock-search-responses.ts +82 -0
  214. package/test/mocks/mock-search-service.ts +6 -0
  215. package/test/tiles/list/tile-list.test.ts +40 -0
  216. package/tsconfig.json +21 -21
  217. package/web-dev-server.config.mjs +30 -30
  218. package/web-test-runner.config.mjs +41 -41
@@ -1,34 +1,34 @@
1
- import { __decorate } from "tslib";
2
- import { LitElement, html, css, nothing, } from 'lit';
3
- import { customElement, property, query, state } from 'lit/decorators.js';
4
- import { SortField, SortFieldDisplayName, } from '../models';
5
- import './alpha-bar';
6
- import { sortIcon } from './img/sort-triangle';
7
- import { tileIcon } from './img/tile';
8
- import { listIcon } from './img/list';
9
- import { compactIcon } from './img/compact';
10
- let SortFilterBar = class SortFilterBar extends LitElement {
11
- constructor() {
12
- super(...arguments);
13
- this.sortDirection = null;
14
- this.selectedSort = SortField.relevance;
15
- this.selectedTitleFilter = null;
16
- this.selectedCreatorFilter = null;
17
- this.showRelevance = true;
18
- this.alphaSelectorVisible = null;
19
- this.dateSortSelectorVisible = false;
20
- this.viewSortSelectorVisible = false;
21
- this.desktopSelectorBarWidth = 0;
22
- this.selectorBarContainerWidth = 0;
23
- this.hoveringOverDateSortOptions = false;
24
- this.boundSortBarSelectorEscapeListener = (e) => {
25
- if (e.key === 'Escape') {
26
- this.viewSortSelectorVisible = false;
27
- this.dateSortSelectorVisible = false;
28
- }
29
- };
30
- }
31
- render() {
1
+ import { __decorate } from "tslib";
2
+ import { LitElement, html, css, nothing, } from 'lit';
3
+ import { customElement, property, query, state } from 'lit/decorators.js';
4
+ import { SortField, SortFieldDisplayName, } from '../models';
5
+ import './alpha-bar';
6
+ import { sortIcon } from './img/sort-triangle';
7
+ import { tileIcon } from './img/tile';
8
+ import { listIcon } from './img/list';
9
+ import { compactIcon } from './img/compact';
10
+ let SortFilterBar = class SortFilterBar extends LitElement {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.sortDirection = null;
14
+ this.selectedSort = SortField.relevance;
15
+ this.selectedTitleFilter = null;
16
+ this.selectedCreatorFilter = null;
17
+ this.showRelevance = true;
18
+ this.alphaSelectorVisible = null;
19
+ this.dateSortSelectorVisible = false;
20
+ this.viewSortSelectorVisible = false;
21
+ this.desktopSelectorBarWidth = 0;
22
+ this.selectorBarContainerWidth = 0;
23
+ this.hoveringOverDateSortOptions = false;
24
+ this.boundSortBarSelectorEscapeListener = (e) => {
25
+ if (e.key === 'Escape') {
26
+ this.viewSortSelectorVisible = false;
27
+ this.dateSortSelectorVisible = false;
28
+ }
29
+ };
30
+ }
31
+ render() {
32
32
  return html `
33
33
  <div id="container">
34
34
  <div id="sort-bar">
@@ -44,113 +44,113 @@ let SortFilterBar = class SortFilterBar extends LitElement {
44
44
  <div id="display-style-selector">${this.displayOptionTemplate}</div>
45
45
  </div>
46
46
 
47
- ${this.viewSortSelectorVisible && !this.mobileSelectorVisible
48
- ? this.viewSortSelector
47
+ ${this.viewSortSelectorVisible && !this.mobileSelectorVisible
48
+ ? this.viewSortSelector
49
49
  : nothing}
50
- ${this.dateSortSelectorVisible && !this.mobileSelectorVisible
51
- ? this.dateSortSelector
50
+ ${this.dateSortSelectorVisible && !this.mobileSelectorVisible
51
+ ? this.dateSortSelector
52
52
  : nothing}
53
53
  ${this.alphaBarTemplate}
54
54
 
55
55
  <div id="bottom-shadow"></div>
56
56
  </div>
57
- `;
58
- }
59
- updated(changed) {
60
- if (changed.has('displayMode')) {
61
- this.displayModeChanged();
62
- }
63
- if (changed.has('selectedSort') && this.sortDirection === null) {
64
- this.sortDirection = 'desc';
65
- }
66
- if (changed.has('selectedTitleFilter') && this.selectedTitleFilter) {
67
- this.alphaSelectorVisible = 'title';
68
- }
69
- if (changed.has('selectedCreatorFilter') && this.selectedCreatorFilter) {
70
- this.alphaSelectorVisible = 'creator';
71
- }
72
- if (changed.has('dateSortSelectorVisible') ||
73
- changed.has('viewSortSelectorVisible')) {
74
- this.setupEscapeListeners();
75
- }
76
- if (changed.has('resizeObserver')) {
77
- const oldObserver = changed.get('resizeObserver');
78
- if (oldObserver)
79
- this.disconnectResizeObserver(oldObserver);
80
- this.setupResizeObserver();
81
- }
82
- }
83
- setupEscapeListeners() {
84
- if (this.dateSortSelectorVisible || this.viewSortSelectorVisible) {
85
- document.addEventListener('keydown', this.boundSortBarSelectorEscapeListener);
86
- }
87
- else {
88
- document.removeEventListener('keydown', this.boundSortBarSelectorEscapeListener);
89
- }
90
- }
91
- disconnectedCallback() {
92
- if (this.resizeObserver) {
93
- this.disconnectResizeObserver(this.resizeObserver);
94
- }
95
- }
96
- disconnectResizeObserver(resizeObserver) {
97
- resizeObserver.removeObserver({
98
- target: this.sortSelectorContainer,
99
- handler: this,
100
- });
101
- resizeObserver.removeObserver({
102
- target: this.desktopSortSelector,
103
- handler: this,
104
- });
105
- }
106
- setupResizeObserver() {
107
- if (!this.resizeObserver)
108
- return;
109
- this.resizeObserver.addObserver({
110
- target: this.sortSelectorContainer,
111
- handler: this,
112
- });
113
- this.resizeObserver.addObserver({
114
- target: this.desktopSortSelector,
115
- handler: this,
116
- });
117
- }
118
- get mobileSelectorVisible() {
119
- return this.selectorBarContainerWidth - 10 < this.desktopSelectorBarWidth;
120
- }
121
- get alphaBarTemplate() {
122
- if (!['title', 'creator'].includes(this.selectedSort))
123
- return nothing;
124
- if (this.alphaSelectorVisible === null) {
125
- if (this.selectedSort === 'creator')
126
- return this.creatorSelectorBar;
127
- if (this.selectedSort === 'title')
128
- return this.titleSelectorBar;
129
- }
130
- else {
131
- return this.alphaSelectorVisible === 'creator'
132
- ? this.creatorSelectorBar
133
- : this.titleSelectorBar;
134
- }
135
- return nothing;
136
- }
137
- handleResize(entry) {
138
- if (entry.target === this.desktopSortSelector) {
139
- this.desktopSelectorBarWidth = entry.contentRect.width;
140
- }
141
- else if (entry.target === this.sortSelectorContainer) {
142
- this.selectorBarContainerWidth = entry.contentRect.width;
143
- }
144
- }
145
- get sortDirectionSelectorTemplate() {
57
+ `;
58
+ }
59
+ updated(changed) {
60
+ if (changed.has('displayMode')) {
61
+ this.displayModeChanged();
62
+ }
63
+ if (changed.has('selectedSort') && this.sortDirection === null) {
64
+ this.sortDirection = 'desc';
65
+ }
66
+ if (changed.has('selectedTitleFilter') && this.selectedTitleFilter) {
67
+ this.alphaSelectorVisible = 'title';
68
+ }
69
+ if (changed.has('selectedCreatorFilter') && this.selectedCreatorFilter) {
70
+ this.alphaSelectorVisible = 'creator';
71
+ }
72
+ if (changed.has('dateSortSelectorVisible') ||
73
+ changed.has('viewSortSelectorVisible')) {
74
+ this.setupEscapeListeners();
75
+ }
76
+ if (changed.has('resizeObserver')) {
77
+ const oldObserver = changed.get('resizeObserver');
78
+ if (oldObserver)
79
+ this.disconnectResizeObserver(oldObserver);
80
+ this.setupResizeObserver();
81
+ }
82
+ }
83
+ setupEscapeListeners() {
84
+ if (this.dateSortSelectorVisible || this.viewSortSelectorVisible) {
85
+ document.addEventListener('keydown', this.boundSortBarSelectorEscapeListener);
86
+ }
87
+ else {
88
+ document.removeEventListener('keydown', this.boundSortBarSelectorEscapeListener);
89
+ }
90
+ }
91
+ disconnectedCallback() {
92
+ if (this.resizeObserver) {
93
+ this.disconnectResizeObserver(this.resizeObserver);
94
+ }
95
+ }
96
+ disconnectResizeObserver(resizeObserver) {
97
+ resizeObserver.removeObserver({
98
+ target: this.sortSelectorContainer,
99
+ handler: this,
100
+ });
101
+ resizeObserver.removeObserver({
102
+ target: this.desktopSortSelector,
103
+ handler: this,
104
+ });
105
+ }
106
+ setupResizeObserver() {
107
+ if (!this.resizeObserver)
108
+ return;
109
+ this.resizeObserver.addObserver({
110
+ target: this.sortSelectorContainer,
111
+ handler: this,
112
+ });
113
+ this.resizeObserver.addObserver({
114
+ target: this.desktopSortSelector,
115
+ handler: this,
116
+ });
117
+ }
118
+ get mobileSelectorVisible() {
119
+ return this.selectorBarContainerWidth - 10 < this.desktopSelectorBarWidth;
120
+ }
121
+ get alphaBarTemplate() {
122
+ if (!['title', 'creator'].includes(this.selectedSort))
123
+ return nothing;
124
+ if (this.alphaSelectorVisible === null) {
125
+ if (this.selectedSort === 'creator')
126
+ return this.creatorSelectorBar;
127
+ if (this.selectedSort === 'title')
128
+ return this.titleSelectorBar;
129
+ }
130
+ else {
131
+ return this.alphaSelectorVisible === 'creator'
132
+ ? this.creatorSelectorBar
133
+ : this.titleSelectorBar;
134
+ }
135
+ return nothing;
136
+ }
137
+ handleResize(entry) {
138
+ if (entry.target === this.desktopSortSelector) {
139
+ this.desktopSelectorBarWidth = entry.contentRect.width;
140
+ }
141
+ else if (entry.target === this.sortSelectorContainer) {
142
+ this.selectorBarContainerWidth = entry.contentRect.width;
143
+ }
144
+ }
145
+ get sortDirectionSelectorTemplate() {
146
146
  return html `
147
147
  <div id="sort-direction-selector">
148
148
  <button
149
149
  id="sort-ascending-btn"
150
150
  class="sort-button ${this.sortDirection === 'asc' ? 'selected' : ''}"
151
151
  ?disabled=${this.selectedSort === 'relevance'}
152
- @click=${() => {
153
- this.setSortDirections('asc');
152
+ @click=${() => {
153
+ this.setSortDirections('asc');
154
154
  }}
155
155
  >
156
156
  ${sortIcon}
@@ -159,16 +159,16 @@ let SortFilterBar = class SortFilterBar extends LitElement {
159
159
  id="sort-descending-btn"
160
160
  class="sort-button ${this.sortDirection === 'desc' ? 'selected' : ''}"
161
161
  ?disabled=${this.selectedSort === 'relevance'}
162
- @click=${() => {
163
- this.setSortDirections('desc');
162
+ @click=${() => {
163
+ this.setSortDirections('desc');
164
164
  }}
165
165
  >
166
166
  ${sortIcon}
167
167
  </button>
168
168
  </div>
169
- `;
170
- }
171
- get desktopSortSelectorTemplate() {
169
+ `;
170
+ }
171
+ get desktopSortSelectorTemplate() {
172
172
  return html `
173
173
  <ul
174
174
  id="desktop-sort-selector"
@@ -176,112 +176,112 @@ let SortFilterBar = class SortFilterBar extends LitElement {
176
176
  >
177
177
  <li id="sort-by-text">Sort By</li>
178
178
  <li>
179
- ${this.showRelevance
180
- ? this.getSortDisplayOption(SortField.relevance)
179
+ ${this.showRelevance
180
+ ? this.getSortDisplayOption(SortField.relevance)
181
181
  : nothing}
182
182
  </li>
183
183
  <li>
184
- ${this.getSortDisplayOption(SortField.weeklyview, {
185
- clickEvent: () => {
186
- if (!this.viewOptionSelected)
187
- this.setSelectedSort(SortField.weeklyview);
188
- this.viewSortSelectorVisible = !this.viewSortSelectorVisible;
189
- this.dateSortSelectorVisible = false;
190
- this.alphaSelectorVisible = null;
191
- this.selectedTitleFilter = null;
192
- this.selectedCreatorFilter = null;
193
- this.emitTitleLetterChangedEvent();
194
- this.emitCreatorLetterChangedEvent();
195
- },
196
- displayName: html `${this.viewSortField}`,
197
- isSelected: () => this.viewOptionSelected,
184
+ ${this.getSortDisplayOption(SortField.weeklyview, {
185
+ clickEvent: () => {
186
+ if (!this.viewOptionSelected)
187
+ this.setSelectedSort(SortField.weeklyview);
188
+ this.viewSortSelectorVisible = !this.viewSortSelectorVisible;
189
+ this.dateSortSelectorVisible = false;
190
+ this.alphaSelectorVisible = null;
191
+ this.selectedTitleFilter = null;
192
+ this.selectedCreatorFilter = null;
193
+ this.emitTitleLetterChangedEvent();
194
+ this.emitCreatorLetterChangedEvent();
195
+ },
196
+ displayName: html `${this.viewSortField}`,
197
+ isSelected: () => this.viewOptionSelected,
198
198
  })}
199
199
  </li>
200
200
  <li>
201
- ${this.getSortDisplayOption(SortField.title, {
202
- clickEvent: () => {
203
- this.alphaSelectorVisible = 'title';
204
- this.selectedCreatorFilter = null;
205
- this.dateSortSelectorVisible = false;
206
- this.viewSortSelectorVisible = false;
207
- this.setSelectedSort(SortField.title);
208
- this.emitCreatorLetterChangedEvent();
209
- },
201
+ ${this.getSortDisplayOption(SortField.title, {
202
+ clickEvent: () => {
203
+ this.alphaSelectorVisible = 'title';
204
+ this.selectedCreatorFilter = null;
205
+ this.dateSortSelectorVisible = false;
206
+ this.viewSortSelectorVisible = false;
207
+ this.setSelectedSort(SortField.title);
208
+ this.emitCreatorLetterChangedEvent();
209
+ },
210
210
  })}
211
211
  </li>
212
212
  <li>
213
- ${this.getSortDisplayOption(SortField.date, {
214
- clickEvent: () => {
215
- if (!this.dateOptionSelected)
216
- this.setSelectedSort(SortField.date);
217
- this.dateSortSelectorVisible = !this.dateSortSelectorVisible;
218
- this.viewSortSelectorVisible = false;
219
- this.alphaSelectorVisible = null;
220
- this.selectedTitleFilter = null;
221
- this.selectedCreatorFilter = null;
222
- this.emitTitleLetterChangedEvent();
223
- this.emitCreatorLetterChangedEvent();
224
- },
225
- displayName: html `${this.dateSortField}`,
226
- isSelected: () => this.dateOptionSelected,
213
+ ${this.getSortDisplayOption(SortField.date, {
214
+ clickEvent: () => {
215
+ if (!this.dateOptionSelected)
216
+ this.setSelectedSort(SortField.date);
217
+ this.dateSortSelectorVisible = !this.dateSortSelectorVisible;
218
+ this.viewSortSelectorVisible = false;
219
+ this.alphaSelectorVisible = null;
220
+ this.selectedTitleFilter = null;
221
+ this.selectedCreatorFilter = null;
222
+ this.emitTitleLetterChangedEvent();
223
+ this.emitCreatorLetterChangedEvent();
224
+ },
225
+ displayName: html `${this.dateSortField}`,
226
+ isSelected: () => this.dateOptionSelected,
227
227
  })}
228
228
  </li>
229
229
  <li>
230
- ${this.getSortDisplayOption(SortField.creator, {
231
- clickEvent: () => {
232
- this.alphaSelectorVisible = 'creator';
233
- this.selectedTitleFilter = null;
234
- this.dateSortSelectorVisible = false;
235
- this.setSelectedSort(SortField.creator);
236
- this.emitTitleLetterChangedEvent();
237
- },
230
+ ${this.getSortDisplayOption(SortField.creator, {
231
+ clickEvent: () => {
232
+ this.alphaSelectorVisible = 'creator';
233
+ this.selectedTitleFilter = null;
234
+ this.dateSortSelectorVisible = false;
235
+ this.setSelectedSort(SortField.creator);
236
+ this.emitTitleLetterChangedEvent();
237
+ },
238
238
  })}
239
239
  </li>
240
240
  </ul>
241
- `;
242
- }
243
- /**
244
- * This generates each of the sort option links.
245
- *
246
- * It manages the display value and the selected state of the option.
247
- *
248
- * @param sortField
249
- * @param options {
250
- * additionalClickEvent?: () => void; If this is provided, it will also be called when the option is clicked.
251
- * displayName?: TemplateResult; The name to display for the option. Defaults to the sortField display name.
252
- * isSelected?: () => boolean; A function that returns true if the option is selected. Defaults to the selectedSort === sortField.
253
- * }
254
- * @returns
255
- */
256
- getSortDisplayOption(sortField, options) {
257
- var _a, _b;
258
- const isSelected = (_a = options === null || options === void 0 ? void 0 : options.isSelected) !== null && _a !== void 0 ? _a : (() => this.selectedSort === sortField);
259
- const displayName = (_b = options === null || options === void 0 ? void 0 : options.displayName) !== null && _b !== void 0 ? _b : SortFieldDisplayName[sortField];
241
+ `;
242
+ }
243
+ /**
244
+ * This generates each of the sort option links.
245
+ *
246
+ * It manages the display value and the selected state of the option.
247
+ *
248
+ * @param sortField
249
+ * @param options {
250
+ * additionalClickEvent?: () => void; If this is provided, it will also be called when the option is clicked.
251
+ * displayName?: TemplateResult; The name to display for the option. Defaults to the sortField display name.
252
+ * isSelected?: () => boolean; A function that returns true if the option is selected. Defaults to the selectedSort === sortField.
253
+ * }
254
+ * @returns
255
+ */
256
+ getSortDisplayOption(sortField, options) {
257
+ var _a, _b;
258
+ const isSelected = (_a = options === null || options === void 0 ? void 0 : options.isSelected) !== null && _a !== void 0 ? _a : (() => this.selectedSort === sortField);
259
+ const displayName = (_b = options === null || options === void 0 ? void 0 : options.displayName) !== null && _b !== void 0 ? _b : SortFieldDisplayName[sortField];
260
260
  return html `
261
261
  <a
262
262
  href="#"
263
- @click=${(e) => {
264
- e.preventDefault();
265
- if (options === null || options === void 0 ? void 0 : options.clickEvent) {
266
- options.clickEvent(e);
267
- }
268
- else {
269
- this.alphaSelectorVisible = null;
270
- this.dateSortSelectorVisible = false;
271
- this.selectedTitleFilter = null;
272
- this.selectedCreatorFilter = null;
273
- this.setSelectedSort(sortField);
274
- this.emitTitleLetterChangedEvent();
275
- this.emitCreatorLetterChangedEvent();
276
- }
263
+ @click=${(e) => {
264
+ e.preventDefault();
265
+ if (options === null || options === void 0 ? void 0 : options.clickEvent) {
266
+ options.clickEvent(e);
267
+ }
268
+ else {
269
+ this.alphaSelectorVisible = null;
270
+ this.dateSortSelectorVisible = false;
271
+ this.selectedTitleFilter = null;
272
+ this.selectedCreatorFilter = null;
273
+ this.setSelectedSort(sortField);
274
+ this.emitTitleLetterChangedEvent();
275
+ this.emitCreatorLetterChangedEvent();
276
+ }
277
277
  }}
278
278
  class=${isSelected() ? 'selected' : ''}
279
279
  >
280
280
  ${displayName}
281
281
  </a>
282
- `;
283
- }
284
- get mobileSortSelectorTemplate() {
282
+ `;
283
+ }
284
+ get mobileSortSelectorTemplate() {
285
285
  return html `
286
286
  <select
287
287
  id="mobile-sort-selector"
@@ -294,20 +294,20 @@ let SortFilterBar = class SortFilterBar extends LitElement {
294
294
  </option>
295
295
  `)}
296
296
  </select>
297
- `;
298
- }
299
- mobileSortChanged(e) {
300
- const target = e.target;
301
- this.setSelectedSort(target.value);
302
- }
303
- get displayOptionTemplate() {
297
+ `;
298
+ }
299
+ mobileSortChanged(e) {
300
+ const target = e.target;
301
+ this.setSelectedSort(target.value);
302
+ }
303
+ get displayOptionTemplate() {
304
304
  return html `
305
305
  <ul>
306
306
  <li>
307
307
  <button
308
308
  id="grid-button"
309
- @click=${() => {
310
- this.displayMode = 'grid';
309
+ @click=${() => {
310
+ this.displayMode = 'grid';
311
311
  }}
312
312
  class=${this.displayMode === 'grid' ? 'active' : ''}
313
313
  title="Tile view"
@@ -318,8 +318,8 @@ let SortFilterBar = class SortFilterBar extends LitElement {
318
318
  <li>
319
319
  <button
320
320
  id="list-detail-button"
321
- @click=${() => {
322
- this.displayMode = 'list-detail';
321
+ @click=${() => {
322
+ this.displayMode = 'list-detail';
323
323
  }}
324
324
  class=${this.displayMode === 'list-detail' ? 'active' : ''}
325
325
  title="List view"
@@ -330,8 +330,8 @@ let SortFilterBar = class SortFilterBar extends LitElement {
330
330
  <li>
331
331
  <button
332
332
  id="list-compact-button"
333
- @click=${() => {
334
- this.displayMode = 'list-compact';
333
+ @click=${() => {
334
+ this.displayMode = 'list-compact';
335
335
  }}
336
336
  class=${this.displayMode === 'list-compact' ? 'active' : ''}
337
337
  title="Compact list view"
@@ -340,17 +340,17 @@ let SortFilterBar = class SortFilterBar extends LitElement {
340
340
  </button>
341
341
  </li>
342
342
  </ul>
343
- `;
344
- }
345
- get dateSortSelector() {
343
+ `;
344
+ }
345
+ get dateSortSelector() {
346
346
  return html `
347
347
  <div
348
348
  id="date-sort-selector-backdrop"
349
- @keyup=${() => {
350
- this.dateSortSelectorVisible = false;
349
+ @keyup=${() => {
350
+ this.dateSortSelectorVisible = false;
351
351
  }}
352
- @click=${() => {
353
- this.dateSortSelectorVisible = false;
352
+ @click=${() => {
353
+ this.dateSortSelectorVisible = false;
354
354
  }}
355
355
  ></div>
356
356
  <div id="date-sort-selector">
@@ -361,17 +361,17 @@ let SortFilterBar = class SortFilterBar extends LitElement {
361
361
  <li>${this.getDateSortButton(SortField.dateadded)}</li>
362
362
  </ul>
363
363
  </div>
364
- `;
365
- }
366
- get viewSortSelector() {
364
+ `;
365
+ }
366
+ get viewSortSelector() {
367
367
  return html `
368
368
  <div
369
369
  id="view-sort-selector-backdrop"
370
- @keyup=${() => {
371
- this.viewSortSelectorVisible = false;
370
+ @keyup=${() => {
371
+ this.viewSortSelectorVisible = false;
372
372
  }}
373
- @click=${() => {
374
- this.viewSortSelectorVisible = false;
373
+ @click=${() => {
374
+ this.viewSortSelectorVisible = false;
375
375
  }}
376
376
  ></div>
377
377
  <div id="view-sort-selector">
@@ -380,151 +380,151 @@ let SortFilterBar = class SortFilterBar extends LitElement {
380
380
  <li>${this.getDateSortButton(SortField.weeklyview)}</li>
381
381
  </ul>
382
382
  </div>
383
- `;
384
- }
385
- getDateSortButton(sortField) {
383
+ `;
384
+ }
385
+ getDateSortButton(sortField) {
386
386
  return html `
387
387
  <button
388
- @click=${() => {
389
- this.selectDateSort(sortField);
388
+ @click=${() => {
389
+ this.selectDateSort(sortField);
390
390
  }}
391
391
  class=${this.selectedSort === sortField ? 'selected' : ''}
392
392
  >
393
393
  ${SortFieldDisplayName[sortField]}
394
394
  </button>
395
- `;
396
- }
397
- selectDateSort(sortField) {
398
- this.dateSortSelectorVisible = false;
399
- this.viewSortSelectorVisible = false;
400
- this.setSelectedSort(sortField);
401
- }
402
- setSortDirections(sortDirection) {
403
- this.sortDirection = sortDirection;
404
- this.emitSortChangedEvent();
405
- }
406
- setSelectedSort(sort) {
407
- this.selectedSort = sort;
408
- this.emitSortChangedEvent();
409
- }
410
- /**
411
- * There are four date sort options.
412
- *
413
- * This checks to see if the current sort is one of them.
414
- *
415
- * @readonly
416
- * @private
417
- * @type {boolean}
418
- * @memberof SortFilterBar
419
- */
420
- get dateOptionSelected() {
421
- const dateSortFields = [
422
- SortField.datearchived,
423
- SortField.date,
424
- SortField.datereviewed,
425
- SortField.dateadded,
426
- ];
427
- return dateSortFields.includes(this.selectedSort);
428
- }
429
- /**
430
- * There are two view sort options.
431
- *
432
- * This checks to see if the current sort is one of them.
433
- *
434
- * @readonly
435
- * @private
436
- * @type {boolean}
437
- * @memberof SortFilterBar
438
- */
439
- get viewOptionSelected() {
440
- const viewSortFields = [
441
- SortField.alltimeview,
442
- SortField.weeklyview,
443
- ];
444
- return viewSortFields.includes(this.selectedSort);
445
- }
446
- /**
447
- * The display name of the current date field
448
- *
449
- * @readonly
450
- * @private
451
- * @type {string}
452
- * @memberof SortFilterBar
453
- */
454
- get dateSortField() {
455
- var _a;
456
- const defaultSort = SortFieldDisplayName[SortField.date];
457
- const name = this.dateOptionSelected
458
- ? (_a = SortFieldDisplayName[this.selectedSort]) !== null && _a !== void 0 ? _a : defaultSort
459
- : defaultSort;
460
- return name;
461
- }
462
- /**
463
- * The display name of the current view field
464
- *
465
- * @readonly
466
- * @private
467
- * @type {string}
468
- * @memberof SortFilterBar
469
- */
470
- get viewSortField() {
471
- var _a;
472
- const defaultSort = SortFieldDisplayName[SortField.weeklyview];
473
- const name = this.viewOptionSelected
474
- ? (_a = SortFieldDisplayName[this.selectedSort]) !== null && _a !== void 0 ? _a : defaultSort
475
- : defaultSort;
476
- return name;
477
- }
478
- get titleSelectorBar() {
395
+ `;
396
+ }
397
+ selectDateSort(sortField) {
398
+ this.dateSortSelectorVisible = false;
399
+ this.viewSortSelectorVisible = false;
400
+ this.setSelectedSort(sortField);
401
+ }
402
+ setSortDirections(sortDirection) {
403
+ this.sortDirection = sortDirection;
404
+ this.emitSortChangedEvent();
405
+ }
406
+ setSelectedSort(sort) {
407
+ this.selectedSort = sort;
408
+ this.emitSortChangedEvent();
409
+ }
410
+ /**
411
+ * There are four date sort options.
412
+ *
413
+ * This checks to see if the current sort is one of them.
414
+ *
415
+ * @readonly
416
+ * @private
417
+ * @type {boolean}
418
+ * @memberof SortFilterBar
419
+ */
420
+ get dateOptionSelected() {
421
+ const dateSortFields = [
422
+ SortField.datearchived,
423
+ SortField.date,
424
+ SortField.datereviewed,
425
+ SortField.dateadded,
426
+ ];
427
+ return dateSortFields.includes(this.selectedSort);
428
+ }
429
+ /**
430
+ * There are two view sort options.
431
+ *
432
+ * This checks to see if the current sort is one of them.
433
+ *
434
+ * @readonly
435
+ * @private
436
+ * @type {boolean}
437
+ * @memberof SortFilterBar
438
+ */
439
+ get viewOptionSelected() {
440
+ const viewSortFields = [
441
+ SortField.alltimeview,
442
+ SortField.weeklyview,
443
+ ];
444
+ return viewSortFields.includes(this.selectedSort);
445
+ }
446
+ /**
447
+ * The display name of the current date field
448
+ *
449
+ * @readonly
450
+ * @private
451
+ * @type {string}
452
+ * @memberof SortFilterBar
453
+ */
454
+ get dateSortField() {
455
+ var _a;
456
+ const defaultSort = SortFieldDisplayName[SortField.date];
457
+ const name = this.dateOptionSelected
458
+ ? (_a = SortFieldDisplayName[this.selectedSort]) !== null && _a !== void 0 ? _a : defaultSort
459
+ : defaultSort;
460
+ return name;
461
+ }
462
+ /**
463
+ * The display name of the current view field
464
+ *
465
+ * @readonly
466
+ * @private
467
+ * @type {string}
468
+ * @memberof SortFilterBar
469
+ */
470
+ get viewSortField() {
471
+ var _a;
472
+ const defaultSort = SortFieldDisplayName[SortField.weeklyview];
473
+ const name = this.viewOptionSelected
474
+ ? (_a = SortFieldDisplayName[this.selectedSort]) !== null && _a !== void 0 ? _a : defaultSort
475
+ : defaultSort;
476
+ return name;
477
+ }
478
+ get titleSelectorBar() {
479
479
  return html ` <alpha-bar
480
480
  .selectedLetter=${this.selectedTitleFilter}
481
481
  @letterChanged=${this.titleLetterChanged}
482
- ></alpha-bar>`;
483
- }
484
- get creatorSelectorBar() {
482
+ ></alpha-bar>`;
483
+ }
484
+ get creatorSelectorBar() {
485
485
  return html ` <alpha-bar
486
486
  .selectedLetter=${this.selectedCreatorFilter}
487
487
  @letterChanged=${this.creatorLetterChanged}
488
- ></alpha-bar>`;
489
- }
490
- titleLetterChanged(e) {
491
- var _a;
492
- this.selectedTitleFilter = (_a = e.detail.selectedLetter) !== null && _a !== void 0 ? _a : null;
493
- this.emitTitleLetterChangedEvent();
494
- }
495
- creatorLetterChanged(e) {
496
- var _a;
497
- this.selectedCreatorFilter = (_a = e.detail.selectedLetter) !== null && _a !== void 0 ? _a : null;
498
- this.emitCreatorLetterChangedEvent();
499
- }
500
- emitTitleLetterChangedEvent() {
501
- const event = new CustomEvent('titleLetterChanged', {
502
- detail: { selectedLetter: this.selectedTitleFilter },
503
- });
504
- this.dispatchEvent(event);
505
- }
506
- emitCreatorLetterChangedEvent() {
507
- const event = new CustomEvent('creatorLetterChanged', {
508
- detail: { selectedLetter: this.selectedCreatorFilter },
509
- });
510
- this.dispatchEvent(event);
511
- }
512
- displayModeChanged() {
513
- const event = new CustomEvent('displayModeChanged', {
514
- detail: { displayMode: this.displayMode },
515
- });
516
- this.dispatchEvent(event);
517
- }
518
- emitSortChangedEvent() {
519
- const event = new CustomEvent('sortChanged', {
520
- detail: {
521
- selectedSort: this.selectedSort,
522
- sortDirection: this.sortDirection,
523
- },
524
- });
525
- this.dispatchEvent(event);
526
- }
527
- };
488
+ ></alpha-bar>`;
489
+ }
490
+ titleLetterChanged(e) {
491
+ var _a;
492
+ this.selectedTitleFilter = (_a = e.detail.selectedLetter) !== null && _a !== void 0 ? _a : null;
493
+ this.emitTitleLetterChangedEvent();
494
+ }
495
+ creatorLetterChanged(e) {
496
+ var _a;
497
+ this.selectedCreatorFilter = (_a = e.detail.selectedLetter) !== null && _a !== void 0 ? _a : null;
498
+ this.emitCreatorLetterChangedEvent();
499
+ }
500
+ emitTitleLetterChangedEvent() {
501
+ const event = new CustomEvent('titleLetterChanged', {
502
+ detail: { selectedLetter: this.selectedTitleFilter },
503
+ });
504
+ this.dispatchEvent(event);
505
+ }
506
+ emitCreatorLetterChangedEvent() {
507
+ const event = new CustomEvent('creatorLetterChanged', {
508
+ detail: { selectedLetter: this.selectedCreatorFilter },
509
+ });
510
+ this.dispatchEvent(event);
511
+ }
512
+ displayModeChanged() {
513
+ const event = new CustomEvent('displayModeChanged', {
514
+ detail: { displayMode: this.displayMode },
515
+ });
516
+ this.dispatchEvent(event);
517
+ }
518
+ emitSortChangedEvent() {
519
+ const event = new CustomEvent('sortChanged', {
520
+ detail: {
521
+ selectedSort: this.selectedSort,
522
+ sortDirection: this.sortDirection,
523
+ },
524
+ });
525
+ this.dispatchEvent(event);
526
+ }
527
+ };
528
528
  SortFilterBar.styles = css `
529
529
  #container {
530
530
  position: relative;
@@ -729,54 +729,54 @@ SortFilterBar.styles = css `
729
729
  width: 24px;
730
730
  height: 24px;
731
731
  }
732
- `;
733
- __decorate([
734
- property({ type: String })
735
- ], SortFilterBar.prototype, "displayMode", void 0);
736
- __decorate([
737
- property({ type: String })
738
- ], SortFilterBar.prototype, "sortDirection", void 0);
739
- __decorate([
740
- property({ type: String })
741
- ], SortFilterBar.prototype, "selectedSort", void 0);
742
- __decorate([
743
- property({ type: String })
744
- ], SortFilterBar.prototype, "selectedTitleFilter", void 0);
745
- __decorate([
746
- property({ type: String })
747
- ], SortFilterBar.prototype, "selectedCreatorFilter", void 0);
748
- __decorate([
749
- property({ type: Boolean })
750
- ], SortFilterBar.prototype, "showRelevance", void 0);
751
- __decorate([
752
- property({ type: Object })
753
- ], SortFilterBar.prototype, "resizeObserver", void 0);
754
- __decorate([
755
- state()
756
- ], SortFilterBar.prototype, "alphaSelectorVisible", void 0);
757
- __decorate([
758
- state()
759
- ], SortFilterBar.prototype, "dateSortSelectorVisible", void 0);
760
- __decorate([
761
- state()
762
- ], SortFilterBar.prototype, "viewSortSelectorVisible", void 0);
763
- __decorate([
764
- state()
765
- ], SortFilterBar.prototype, "desktopSelectorBarWidth", void 0);
766
- __decorate([
767
- state()
768
- ], SortFilterBar.prototype, "selectorBarContainerWidth", void 0);
769
- __decorate([
770
- state()
771
- ], SortFilterBar.prototype, "hoveringOverDateSortOptions", void 0);
772
- __decorate([
773
- query('#desktop-sort-selector')
774
- ], SortFilterBar.prototype, "desktopSortSelector", void 0);
775
- __decorate([
776
- query('#sort-selector-container')
777
- ], SortFilterBar.prototype, "sortSelectorContainer", void 0);
778
- SortFilterBar = __decorate([
779
- customElement('sort-filter-bar')
780
- ], SortFilterBar);
781
- export { SortFilterBar };
732
+ `;
733
+ __decorate([
734
+ property({ type: String })
735
+ ], SortFilterBar.prototype, "displayMode", void 0);
736
+ __decorate([
737
+ property({ type: String })
738
+ ], SortFilterBar.prototype, "sortDirection", void 0);
739
+ __decorate([
740
+ property({ type: String })
741
+ ], SortFilterBar.prototype, "selectedSort", void 0);
742
+ __decorate([
743
+ property({ type: String })
744
+ ], SortFilterBar.prototype, "selectedTitleFilter", void 0);
745
+ __decorate([
746
+ property({ type: String })
747
+ ], SortFilterBar.prototype, "selectedCreatorFilter", void 0);
748
+ __decorate([
749
+ property({ type: Boolean })
750
+ ], SortFilterBar.prototype, "showRelevance", void 0);
751
+ __decorate([
752
+ property({ type: Object })
753
+ ], SortFilterBar.prototype, "resizeObserver", void 0);
754
+ __decorate([
755
+ state()
756
+ ], SortFilterBar.prototype, "alphaSelectorVisible", void 0);
757
+ __decorate([
758
+ state()
759
+ ], SortFilterBar.prototype, "dateSortSelectorVisible", void 0);
760
+ __decorate([
761
+ state()
762
+ ], SortFilterBar.prototype, "viewSortSelectorVisible", void 0);
763
+ __decorate([
764
+ state()
765
+ ], SortFilterBar.prototype, "desktopSelectorBarWidth", void 0);
766
+ __decorate([
767
+ state()
768
+ ], SortFilterBar.prototype, "selectorBarContainerWidth", void 0);
769
+ __decorate([
770
+ state()
771
+ ], SortFilterBar.prototype, "hoveringOverDateSortOptions", void 0);
772
+ __decorate([
773
+ query('#desktop-sort-selector')
774
+ ], SortFilterBar.prototype, "desktopSortSelector", void 0);
775
+ __decorate([
776
+ query('#sort-selector-container')
777
+ ], SortFilterBar.prototype, "sortSelectorContainer", void 0);
778
+ SortFilterBar = __decorate([
779
+ customElement('sort-filter-bar')
780
+ ], SortFilterBar);
781
+ export { SortFilterBar };
782
782
  //# sourceMappingURL=sort-filter-bar.js.map