@internetarchive/collection-browser 0.4.8 → 0.4.9-alpha.1

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 (225) 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 +50 -50
  12. package/dist/src/app-root.js +278 -278
  13. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  14. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  15. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  16. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  17. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  18. package/dist/src/assets/img/icons/chevron.js +2 -2
  19. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  20. package/dist/src/assets/img/icons/empty-query.js +2 -2
  21. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  22. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  23. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  24. package/dist/src/assets/img/icons/eye.js +2 -2
  25. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  26. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  27. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  28. package/dist/src/assets/img/icons/login-required.js +2 -2
  29. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  30. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  31. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  32. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  33. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  34. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  35. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  36. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  37. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  38. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  39. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  40. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  41. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  42. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  43. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  44. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  45. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  46. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  47. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  48. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  49. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  50. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  51. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  52. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  53. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  54. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  55. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  56. package/dist/src/assets/img/icons/null-result.js +2 -2
  57. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  58. package/dist/src/assets/img/icons/restricted.js +2 -2
  59. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  60. package/dist/src/assets/img/icons/reviews.js +2 -2
  61. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  62. package/dist/src/assets/img/icons/upload.js +2 -2
  63. package/dist/src/assets/img/icons/views.d.ts +1 -1
  64. package/dist/src/assets/img/icons/views.js +2 -2
  65. package/dist/src/circular-activity-indicator.d.ts +5 -5
  66. package/dist/src/circular-activity-indicator.js +17 -17
  67. package/dist/src/collection-browser.d.ts +281 -277
  68. package/dist/src/collection-browser.js +1200 -1194
  69. package/dist/src/collection-browser.js.map +1 -1
  70. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  71. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  72. package/dist/src/collection-facets/facets-template.d.ts +16 -16
  73. package/dist/src/collection-facets/facets-template.js +125 -125
  74. package/dist/src/collection-facets/more-facets-content.d.ts +77 -77
  75. package/dist/src/collection-facets/more-facets-content.js +357 -357
  76. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  77. package/dist/src/collection-facets/more-facets-pagination.js +192 -192
  78. package/dist/src/collection-facets.d.ts +83 -77
  79. package/dist/src/collection-facets.js +402 -384
  80. package/dist/src/collection-facets.js.map +1 -1
  81. package/dist/src/empty-placeholder.d.ts +11 -11
  82. package/dist/src/empty-placeholder.js +42 -42
  83. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  84. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  85. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  86. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  87. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  88. package/dist/src/mediatype/mediatype-config.js +85 -85
  89. package/dist/src/models.d.ts +114 -114
  90. package/dist/src/models.js +125 -125
  91. package/dist/src/restoration-state-handler.d.ts +45 -45
  92. package/dist/src/restoration-state-handler.js +230 -230
  93. package/dist/src/sort-filter-bar/alpha-bar.d.ts +12 -12
  94. package/dist/src/sort-filter-bar/alpha-bar.js +52 -52
  95. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  96. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  97. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  98. package/dist/src/sort-filter-bar/img/list.js +2 -2
  99. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  100. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  101. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  102. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  103. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +108 -108
  104. package/dist/src/sort-filter-bar/sort-filter-bar.js +438 -438
  105. package/dist/src/styles/item-image-styles.d.ts +8 -8
  106. package/dist/src/styles/item-image-styles.js +9 -9
  107. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  108. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  109. package/dist/src/tiles/grid/account-tile.d.ts +17 -17
  110. package/dist/src/tiles/grid/account-tile.js +46 -46
  111. package/dist/src/tiles/grid/collection-tile.d.ts +14 -14
  112. package/dist/src/tiles/grid/collection-tile.js +53 -53
  113. package/dist/src/tiles/grid/item-tile.d.ts +29 -29
  114. package/dist/src/tiles/grid/item-tile.js +108 -108
  115. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  116. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +7 -7
  117. package/dist/src/tiles/grid/tile-stats.d.ts +10 -10
  118. package/dist/src/tiles/grid/tile-stats.js +40 -40
  119. package/dist/src/tiles/hover/hover-pane-controller.d.ts +197 -197
  120. package/dist/src/tiles/hover/hover-pane-controller.js +331 -331
  121. package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
  122. package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
  123. package/dist/src/tiles/image-block.d.ts +17 -17
  124. package/dist/src/tiles/image-block.js +72 -72
  125. package/dist/src/tiles/item-image.d.ts +35 -35
  126. package/dist/src/tiles/item-image.js +117 -117
  127. package/dist/src/tiles/list/account-label.d.ts +1 -1
  128. package/dist/src/tiles/list/account-label.js +6 -6
  129. package/dist/src/tiles/list/date-label.d.ts +1 -1
  130. package/dist/src/tiles/list/date-label.js +12 -12
  131. package/dist/src/tiles/list/tile-list-compact-header.d.ts +12 -12
  132. package/dist/src/tiles/list/tile-list-compact-header.js +41 -41
  133. package/dist/src/tiles/list/tile-list-compact.d.ts +21 -21
  134. package/dist/src/tiles/list/tile-list-compact.js +99 -99
  135. package/dist/src/tiles/list/tile-list.d.ts +55 -55
  136. package/dist/src/tiles/list/tile-list.js +297 -297
  137. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  138. package/dist/src/tiles/mediatype-icon.js +47 -47
  139. package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
  140. package/dist/src/tiles/overlay/icon-overlay.js +40 -40
  141. package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
  142. package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
  143. package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
  144. package/dist/src/tiles/overlay/text-overlay.js +42 -42
  145. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  146. package/dist/src/tiles/text-snippet-block.js +73 -73
  147. package/dist/src/tiles/tile-dispatcher.d.ts +55 -55
  148. package/dist/src/tiles/tile-dispatcher.js +176 -176
  149. package/dist/src/utils/analytics-events.d.ts +22 -22
  150. package/dist/src/utils/analytics-events.js +24 -24
  151. package/dist/src/utils/format-count.d.ts +7 -7
  152. package/dist/src/utils/format-count.js +76 -76
  153. package/dist/src/utils/format-date.d.ts +2 -2
  154. package/dist/src/utils/format-date.js +23 -23
  155. package/dist/src/utils/format-unit-size.d.ts +2 -2
  156. package/dist/src/utils/format-unit-size.js +33 -33
  157. package/dist/test/collection-browser.test.d.ts +1 -1
  158. package/dist/test/collection-browser.test.js +584 -584
  159. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  160. package/dist/test/collection-facets/facets-template.test.js +62 -62
  161. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  162. package/dist/test/collection-facets/more-facets-content.test.js +114 -114
  163. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  164. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  165. package/dist/test/collection-facets.test.d.ts +2 -2
  166. package/dist/test/collection-facets.test.js +508 -508
  167. package/dist/test/empty-placeholder.test.d.ts +1 -1
  168. package/dist/test/empty-placeholder.test.js +33 -33
  169. package/dist/test/icon-overlay.test.d.ts +1 -1
  170. package/dist/test/icon-overlay.test.js +24 -24
  171. package/dist/test/image-block.test.d.ts +1 -1
  172. package/dist/test/image-block.test.js +48 -48
  173. package/dist/test/item-image.test.d.ts +1 -1
  174. package/dist/test/item-image.test.js +84 -84
  175. package/dist/test/mediatype-config.test.d.ts +1 -1
  176. package/dist/test/mediatype-config.test.js +16 -16
  177. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  178. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  179. package/dist/test/mocks/mock-collection-name-cache.d.ts +7 -7
  180. package/dist/test/mocks/mock-collection-name-cache.js +13 -13
  181. package/dist/test/mocks/mock-search-responses.d.ts +12 -12
  182. package/dist/test/mocks/mock-search-responses.js +341 -341
  183. package/dist/test/mocks/mock-search-service.d.ts +13 -13
  184. package/dist/test/mocks/mock-search-service.js +40 -40
  185. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  186. package/dist/test/restoration-state-handler.test.js +125 -125
  187. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  188. package/dist/test/sort-filter-bar/alpha-bar.test.js +43 -43
  189. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  190. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +197 -197
  191. package/dist/test/text-overlay.test.d.ts +1 -1
  192. package/dist/test/text-overlay.test.js +48 -48
  193. package/dist/test/text-snippet-block.test.d.ts +1 -1
  194. package/dist/test/text-snippet-block.test.js +57 -57
  195. package/dist/test/tile-stats.test.d.ts +1 -1
  196. package/dist/test/tile-stats.test.js +33 -33
  197. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  198. package/dist/test/tiles/grid/account-tile.test.js +60 -60
  199. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  200. package/dist/test/tiles/grid/collection-tile.test.js +57 -57
  201. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  202. package/dist/test/tiles/grid/item-tile.test.js +142 -142
  203. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  204. package/dist/test/tiles/hover/hover-pane-controller.test.js +257 -257
  205. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  206. package/dist/test/tiles/hover/tile-hover-pane.test.js +13 -13
  207. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  208. package/dist/test/tiles/list/tile-list-compact.test.js +92 -92
  209. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  210. package/dist/test/tiles/list/tile-list.test.js +163 -163
  211. package/dist/test/utils/format-count.test.d.ts +1 -1
  212. package/dist/test/utils/format-count.test.js +23 -23
  213. package/dist/test/utils/format-date.test.d.ts +1 -1
  214. package/dist/test/utils/format-date.test.js +17 -17
  215. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  216. package/dist/test/utils/format-unit-size.test.js +17 -17
  217. package/local.archive.org.cert +86 -86
  218. package/local.archive.org.key +27 -27
  219. package/package.json +1 -1
  220. package/renovate.json +6 -6
  221. package/src/collection-browser.ts +7 -0
  222. package/src/collection-facets.ts +22 -1
  223. package/tsconfig.json +21 -21
  224. package/web-dev-server.config.mjs +30 -30
  225. package/web-test-runner.config.mjs +41 -41
@@ -1 +1 @@
1
- export declare function dateLabel(sortField: string | undefined): string;
1
+ export declare function dateLabel(sortField: string | undefined): string;
@@ -1,13 +1,13 @@
1
- export function dateLabel(sortField) {
2
- switch (sortField) {
3
- case 'publicdate':
4
- return 'Archived';
5
- case 'reviewdate':
6
- return 'Reviewed';
7
- case 'addeddate':
8
- return 'Added';
9
- default:
10
- return 'Published';
11
- }
12
- }
1
+ export function dateLabel(sortField) {
2
+ switch (sortField) {
3
+ case 'publicdate':
4
+ return 'Archived';
5
+ case 'reviewdate':
6
+ return 'Reviewed';
7
+ case 'addeddate':
8
+ return 'Added';
9
+ default:
10
+ return 'Published';
11
+ }
12
+ }
13
13
  //# sourceMappingURL=date-label.js.map
@@ -1,12 +1,12 @@
1
- import { LitElement } from 'lit';
2
- import type { SortParam } from '@internetarchive/search-service';
3
- import type { TileModel } from '../../models';
4
- export declare class TileListCompactHeader extends LitElement {
5
- model?: TileModel;
6
- currentWidth?: number;
7
- sortParam: SortParam | null;
8
- mobileBreakpoint?: number;
9
- render(): import("lit-html").TemplateResult<1>;
10
- private get classSize();
11
- static get styles(): import("lit").CSSResult;
12
- }
1
+ import { LitElement } from 'lit';
2
+ import type { SortParam } from '@internetarchive/search-service';
3
+ import type { TileModel } from '../../models';
4
+ export declare class TileListCompactHeader extends LitElement {
5
+ model?: TileModel;
6
+ currentWidth?: number;
7
+ sortParam: SortParam | null;
8
+ mobileBreakpoint?: number;
9
+ render(): import("lit-html").TemplateResult<1>;
10
+ private get classSize();
11
+ static get styles(): import("lit").CSSResult;
12
+ }
@@ -1,14 +1,14 @@
1
- import { __decorate } from "tslib";
2
- import { css, html, LitElement } from 'lit';
3
- import { customElement, property } from 'lit/decorators.js';
4
- import { dateLabel } from './date-label';
5
- let TileListCompactHeader = class TileListCompactHeader extends LitElement {
6
- constructor() {
7
- super(...arguments);
8
- this.sortParam = null;
9
- }
10
- render() {
11
- var _a;
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement } from 'lit';
3
+ import { customElement, property } from 'lit/decorators.js';
4
+ import { dateLabel } from './date-label';
5
+ let TileListCompactHeader = class TileListCompactHeader extends LitElement {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.sortParam = null;
9
+ }
10
+ render() {
11
+ var _a;
12
12
  return html `
13
13
  <div id="list-line-header" class="${this.classSize}">
14
14
  <div id="thumb"></div>
@@ -18,17 +18,17 @@ let TileListCompactHeader = class TileListCompactHeader extends LitElement {
18
18
  <div id="icon">Type</div>
19
19
  <div id="views">Views</div>
20
20
  </div>
21
- `;
22
- }
23
- get classSize() {
24
- if (this.mobileBreakpoint &&
25
- this.currentWidth &&
26
- this.currentWidth < this.mobileBreakpoint) {
27
- return 'mobile';
28
- }
29
- return 'desktop';
30
- }
31
- static get styles() {
21
+ `;
22
+ }
23
+ get classSize() {
24
+ if (this.mobileBreakpoint &&
25
+ this.currentWidth &&
26
+ this.currentWidth < this.mobileBreakpoint) {
27
+ return 'mobile';
28
+ }
29
+ return 'desktop';
30
+ }
31
+ static get styles() {
32
32
  return css `
33
33
  html {
34
34
  font-size: unset;
@@ -63,23 +63,23 @@ let TileListCompactHeader = class TileListCompactHeader extends LitElement {
63
63
  #list-line-header.desktop {
64
64
  grid-template-columns: 51px 3fr 2fr 95px 30px 60px;
65
65
  }
66
- `;
67
- }
68
- };
69
- __decorate([
70
- property({ type: Object })
71
- ], TileListCompactHeader.prototype, "model", void 0);
72
- __decorate([
73
- property({ type: Number })
74
- ], TileListCompactHeader.prototype, "currentWidth", void 0);
75
- __decorate([
76
- property({ type: Object })
77
- ], TileListCompactHeader.prototype, "sortParam", void 0);
78
- __decorate([
79
- property({ type: Number })
80
- ], TileListCompactHeader.prototype, "mobileBreakpoint", void 0);
81
- TileListCompactHeader = __decorate([
82
- customElement('tile-list-compact-header')
83
- ], TileListCompactHeader);
84
- export { TileListCompactHeader };
66
+ `;
67
+ }
68
+ };
69
+ __decorate([
70
+ property({ type: Object })
71
+ ], TileListCompactHeader.prototype, "model", void 0);
72
+ __decorate([
73
+ property({ type: Number })
74
+ ], TileListCompactHeader.prototype, "currentWidth", void 0);
75
+ __decorate([
76
+ property({ type: Object })
77
+ ], TileListCompactHeader.prototype, "sortParam", void 0);
78
+ __decorate([
79
+ property({ type: Number })
80
+ ], TileListCompactHeader.prototype, "mobileBreakpoint", void 0);
81
+ TileListCompactHeader = __decorate([
82
+ customElement('tile-list-compact-header')
83
+ ], TileListCompactHeader);
84
+ export { TileListCompactHeader };
85
85
  //# sourceMappingURL=tile-list-compact-header.js.map
@@ -1,21 +1,21 @@
1
- import { LitElement } from 'lit';
2
- import type { SortParam } from '@internetarchive/search-service';
3
- import type { TileModel } from '../../models';
4
- import '../image-block';
5
- import '../mediatype-icon';
6
- export declare class TileListCompact extends LitElement {
7
- model?: TileModel;
8
- baseNavigationUrl?: string;
9
- currentWidth?: number;
10
- currentHeight?: number;
11
- sortParam: SortParam | null;
12
- mobileBreakpoint?: number;
13
- baseImageUrl?: string;
14
- loggedIn: boolean;
15
- render(): import("lit-html").TemplateResult<1>;
16
- private get date();
17
- private get views();
18
- private get classSize();
19
- private get formatSize();
20
- static get styles(): import("lit").CSSResult;
21
- }
1
+ import { LitElement } from 'lit';
2
+ import type { SortParam } from '@internetarchive/search-service';
3
+ import type { TileModel } from '../../models';
4
+ import '../image-block';
5
+ import '../mediatype-icon';
6
+ export declare class TileListCompact extends LitElement {
7
+ model?: TileModel;
8
+ baseNavigationUrl?: string;
9
+ currentWidth?: number;
10
+ currentHeight?: number;
11
+ sortParam: SortParam | null;
12
+ mobileBreakpoint?: number;
13
+ baseImageUrl?: string;
14
+ loggedIn: boolean;
15
+ render(): import("lit-html").TemplateResult<1>;
16
+ private get date();
17
+ private get views();
18
+ private get classSize();
19
+ private get formatSize();
20
+ static get styles(): import("lit").CSSResult;
21
+ }
@@ -1,20 +1,20 @@
1
- import { __decorate } from "tslib";
2
- import { css, html, LitElement } from 'lit';
3
- import { customElement, property } from 'lit/decorators.js';
4
- import DOMPurify from 'dompurify';
5
- import { formatCount } from '../../utils/format-count';
6
- import { formatDate } from '../../utils/format-date';
7
- import { accountLabel } from './account-label';
8
- import '../image-block';
9
- import '../mediatype-icon';
10
- let TileListCompact = class TileListCompact extends LitElement {
11
- constructor() {
12
- super(...arguments);
13
- this.sortParam = null;
14
- this.loggedIn = false;
15
- }
16
- render() {
17
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement } from 'lit';
3
+ import { customElement, property } from 'lit/decorators.js';
4
+ import DOMPurify from 'dompurify';
5
+ import { formatCount } from '../../utils/format-count';
6
+ import { formatDate } from '../../utils/format-date';
7
+ import { accountLabel } from './account-label';
8
+ import '../image-block';
9
+ import '../mediatype-icon';
10
+ let TileListCompact = class TileListCompact extends LitElement {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.sortParam = null;
14
+ this.loggedIn = false;
15
+ }
16
+ render() {
17
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
18
18
  return html `
19
19
  <div id="list-line" class="${this.classSize}">
20
20
  <image-block
@@ -28,8 +28,8 @@ let TileListCompact = class TileListCompact extends LitElement {
28
28
  </image-block>
29
29
  <div id="title">${DOMPurify.sanitize((_b = (_a = this.model) === null || _a === void 0 ? void 0 : _a.title) !== null && _b !== void 0 ? _b : '')}</div>
30
30
  <div id="creator">
31
- ${((_c = this.model) === null || _c === void 0 ? void 0 : _c.mediatype) === 'account'
32
- ? accountLabel((_d = this.model) === null || _d === void 0 ? void 0 : _d.dateAdded)
31
+ ${((_c = this.model) === null || _c === void 0 ? void 0 : _c.mediatype) === 'account'
32
+ ? accountLabel((_d = this.model) === null || _d === void 0 ? void 0 : _d.dateAdded)
33
33
  : DOMPurify.sanitize((_f = (_e = this.model) === null || _e === void 0 ? void 0 : _e.creator) !== null && _f !== void 0 ? _f : '')}
34
34
  </div>
35
35
  <div id="date">${formatDate(this.date, this.formatSize)}</div>
@@ -42,55 +42,55 @@ let TileListCompact = class TileListCompact extends LitElement {
42
42
  </div>
43
43
  <div id="views">${formatCount((_j = this.views) !== null && _j !== void 0 ? _j : 0, this.formatSize)}</div>
44
44
  </div>
45
- `;
46
- }
47
- /*
48
- * TODO: fix field names to match model in src/collection-browser.ts
49
- * private get dateSortSelector()
50
- * @see src/models.ts
51
- */
52
- get date() {
53
- var _a, _b, _c, _d, _e;
54
- // Note on 'publicdate' vs. 'date':
55
- // The search engine metadata uses 'publicdate' as the key for the date the item
56
- // was created on archive.org, which in the UI is referred to as "Date Archived".
57
- // In contrast, the search engine metadata uses 'date' to refer to the actual
58
- // publication date of the underlying media ("Date Published" in the UI).
59
- // Refer to the full metadata schema for more info.
60
- switch ((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field) {
61
- case 'publicdate':
62
- return (_b = this.model) === null || _b === void 0 ? void 0 : _b.dateArchived;
63
- case 'reviewdate':
64
- return (_c = this.model) === null || _c === void 0 ? void 0 : _c.dateReviewed;
65
- case 'addeddate':
66
- return (_d = this.model) === null || _d === void 0 ? void 0 : _d.dateAdded;
67
- default:
68
- return (_e = this.model) === null || _e === void 0 ? void 0 : _e.datePublished;
69
- }
70
- }
71
- get views() {
72
- var _a, _b, _c;
73
- return ((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field) === 'week'
74
- ? (_b = this.model) === null || _b === void 0 ? void 0 : _b.weeklyViewCount // weekly views
75
- : (_c = this.model) === null || _c === void 0 ? void 0 : _c.viewCount; // all-time views
76
- }
77
- get classSize() {
78
- if (this.mobileBreakpoint &&
79
- this.currentWidth &&
80
- this.currentWidth < this.mobileBreakpoint) {
81
- return 'mobile';
82
- }
83
- return 'desktop';
84
- }
85
- get formatSize() {
86
- if (this.mobileBreakpoint &&
87
- this.currentWidth &&
88
- this.currentWidth < this.mobileBreakpoint) {
89
- return 'short';
90
- }
91
- return 'long';
92
- }
93
- static get styles() {
45
+ `;
46
+ }
47
+ /*
48
+ * TODO: fix field names to match model in src/collection-browser.ts
49
+ * private get dateSortSelector()
50
+ * @see src/models.ts
51
+ */
52
+ get date() {
53
+ var _a, _b, _c, _d, _e;
54
+ // Note on 'publicdate' vs. 'date':
55
+ // The search engine metadata uses 'publicdate' as the key for the date the item
56
+ // was created on archive.org, which in the UI is referred to as "Date Archived".
57
+ // In contrast, the search engine metadata uses 'date' to refer to the actual
58
+ // publication date of the underlying media ("Date Published" in the UI).
59
+ // Refer to the full metadata schema for more info.
60
+ switch ((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field) {
61
+ case 'publicdate':
62
+ return (_b = this.model) === null || _b === void 0 ? void 0 : _b.dateArchived;
63
+ case 'reviewdate':
64
+ return (_c = this.model) === null || _c === void 0 ? void 0 : _c.dateReviewed;
65
+ case 'addeddate':
66
+ return (_d = this.model) === null || _d === void 0 ? void 0 : _d.dateAdded;
67
+ default:
68
+ return (_e = this.model) === null || _e === void 0 ? void 0 : _e.datePublished;
69
+ }
70
+ }
71
+ get views() {
72
+ var _a, _b, _c;
73
+ return ((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field) === 'week'
74
+ ? (_b = this.model) === null || _b === void 0 ? void 0 : _b.weeklyViewCount // weekly views
75
+ : (_c = this.model) === null || _c === void 0 ? void 0 : _c.viewCount; // all-time views
76
+ }
77
+ get classSize() {
78
+ if (this.mobileBreakpoint &&
79
+ this.currentWidth &&
80
+ this.currentWidth < this.mobileBreakpoint) {
81
+ return 'mobile';
82
+ }
83
+ return 'desktop';
84
+ }
85
+ get formatSize() {
86
+ if (this.mobileBreakpoint &&
87
+ this.currentWidth &&
88
+ this.currentWidth < this.mobileBreakpoint) {
89
+ return 'short';
90
+ }
91
+ return 'long';
92
+ }
93
+ static get styles() {
94
94
  return css `
95
95
  html {
96
96
  font-size: unset;
@@ -161,35 +161,35 @@ let TileListCompact = class TileListCompact extends LitElement {
161
161
  --imgHeight: 100%;
162
162
  --imgWidth: 100%;
163
163
  }
164
- `;
165
- }
166
- };
167
- __decorate([
168
- property({ type: Object })
169
- ], TileListCompact.prototype, "model", void 0);
170
- __decorate([
171
- property({ type: String })
172
- ], TileListCompact.prototype, "baseNavigationUrl", void 0);
173
- __decorate([
174
- property({ type: Number })
175
- ], TileListCompact.prototype, "currentWidth", void 0);
176
- __decorate([
177
- property({ type: Number })
178
- ], TileListCompact.prototype, "currentHeight", void 0);
179
- __decorate([
180
- property({ type: Object })
181
- ], TileListCompact.prototype, "sortParam", void 0);
182
- __decorate([
183
- property({ type: Number })
184
- ], TileListCompact.prototype, "mobileBreakpoint", void 0);
185
- __decorate([
186
- property({ type: String })
187
- ], TileListCompact.prototype, "baseImageUrl", void 0);
188
- __decorate([
189
- property({ type: Boolean })
190
- ], TileListCompact.prototype, "loggedIn", void 0);
191
- TileListCompact = __decorate([
192
- customElement('tile-list-compact')
193
- ], TileListCompact);
194
- export { TileListCompact };
164
+ `;
165
+ }
166
+ };
167
+ __decorate([
168
+ property({ type: Object })
169
+ ], TileListCompact.prototype, "model", void 0);
170
+ __decorate([
171
+ property({ type: String })
172
+ ], TileListCompact.prototype, "baseNavigationUrl", void 0);
173
+ __decorate([
174
+ property({ type: Number })
175
+ ], TileListCompact.prototype, "currentWidth", void 0);
176
+ __decorate([
177
+ property({ type: Number })
178
+ ], TileListCompact.prototype, "currentHeight", void 0);
179
+ __decorate([
180
+ property({ type: Object })
181
+ ], TileListCompact.prototype, "sortParam", void 0);
182
+ __decorate([
183
+ property({ type: Number })
184
+ ], TileListCompact.prototype, "mobileBreakpoint", void 0);
185
+ __decorate([
186
+ property({ type: String })
187
+ ], TileListCompact.prototype, "baseImageUrl", void 0);
188
+ __decorate([
189
+ property({ type: Boolean })
190
+ ], TileListCompact.prototype, "loggedIn", void 0);
191
+ TileListCompact = __decorate([
192
+ customElement('tile-list-compact')
193
+ ], TileListCompact);
194
+ export { TileListCompact };
195
195
  //# sourceMappingURL=tile-list-compact.js.map
@@ -1,55 +1,55 @@
1
- import { LitElement, PropertyValues, TemplateResult } from 'lit';
2
- import type { CollectionNameCacheInterface } from '@internetarchive/collection-name-cache';
3
- import type { SortParam } from '@internetarchive/search-service';
4
- import { TileModel } from '../../models';
5
- import '../image-block';
6
- import '../mediatype-icon';
7
- export declare class TileList extends LitElement {
8
- model?: TileModel;
9
- baseNavigationUrl?: string;
10
- collectionNameCache?: CollectionNameCacheInterface;
11
- currentWidth?: number;
12
- currentHeight?: number;
13
- sortParam: SortParam | null;
14
- mobileBreakpoint?: number;
15
- private collectionLinks;
16
- baseImageUrl?: string;
17
- loggedIn: boolean;
18
- render(): TemplateResult<1>;
19
- /**
20
- * Templates
21
- */
22
- private get mobileTemplate();
23
- private get desktopTemplate();
24
- private get imageBlockTemplate();
25
- private get detailsTemplate();
26
- private get iconRightTemplate();
27
- private get titleTemplate();
28
- private get itemLineTemplate();
29
- private get sourceTemplate();
30
- private get volumeTemplate();
31
- private get issueTemplate();
32
- private get creatorTemplate();
33
- private get datePublishedTemplate();
34
- private get dateSortByTemplate();
35
- private get viewsTemplate();
36
- private get ratingTemplate();
37
- private get reviewsTemplate();
38
- private get topicsTemplate();
39
- private get collectionsTemplate();
40
- private get descriptionTemplate();
41
- private get textSnippetsTemplate();
42
- private get hasSnippets();
43
- private metadataTemplate;
44
- private labelTemplate;
45
- private searchLink;
46
- private detailsLink;
47
- /** The URL of this item's mediatype collection, if defined. */
48
- private get mediatypeURL();
49
- protected updated(changed: PropertyValues): void;
50
- private fetchCollectionNames;
51
- private get date();
52
- private get classSize();
53
- private get formatSize();
54
- static get styles(): import("lit").CSSResult;
55
- }
1
+ import { LitElement, PropertyValues, TemplateResult } from 'lit';
2
+ import type { CollectionNameCacheInterface } from '@internetarchive/collection-name-cache';
3
+ import type { SortParam } from '@internetarchive/search-service';
4
+ import { TileModel } from '../../models';
5
+ import '../image-block';
6
+ import '../mediatype-icon';
7
+ export declare class TileList extends LitElement {
8
+ model?: TileModel;
9
+ baseNavigationUrl?: string;
10
+ collectionNameCache?: CollectionNameCacheInterface;
11
+ currentWidth?: number;
12
+ currentHeight?: number;
13
+ sortParam: SortParam | null;
14
+ mobileBreakpoint?: number;
15
+ private collectionLinks;
16
+ baseImageUrl?: string;
17
+ loggedIn: boolean;
18
+ render(): TemplateResult<1>;
19
+ /**
20
+ * Templates
21
+ */
22
+ private get mobileTemplate();
23
+ private get desktopTemplate();
24
+ private get imageBlockTemplate();
25
+ private get detailsTemplate();
26
+ private get iconRightTemplate();
27
+ private get titleTemplate();
28
+ private get itemLineTemplate();
29
+ private get sourceTemplate();
30
+ private get volumeTemplate();
31
+ private get issueTemplate();
32
+ private get creatorTemplate();
33
+ private get datePublishedTemplate();
34
+ private get dateSortByTemplate();
35
+ private get viewsTemplate();
36
+ private get ratingTemplate();
37
+ private get reviewsTemplate();
38
+ private get topicsTemplate();
39
+ private get collectionsTemplate();
40
+ private get descriptionTemplate();
41
+ private get textSnippetsTemplate();
42
+ private get hasSnippets();
43
+ private metadataTemplate;
44
+ private labelTemplate;
45
+ private searchLink;
46
+ private detailsLink;
47
+ /** The URL of this item's mediatype collection, if defined. */
48
+ private get mediatypeURL();
49
+ protected updated(changed: PropertyValues): void;
50
+ private fetchCollectionNames;
51
+ private get date();
52
+ private get classSize();
53
+ private get formatSize();
54
+ static get styles(): import("lit").CSSResult;
55
+ }