@internetarchive/collection-browser 0.3.2 → 0.3.3-alpha.2

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 (206) 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 +44 -43
  12. package/dist/src/app-root.js +242 -233
  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 +247 -247
  69. package/dist/src/collection-browser.js +1067 -1077
  70. package/dist/src/collection-browser.js.map +1 -1
  71. package/dist/src/collection-facets/facets-template.d.ts +16 -16
  72. package/dist/src/collection-facets/facets-template.js +125 -125
  73. package/dist/src/collection-facets/more-facets-content.d.ts +74 -74
  74. package/dist/src/collection-facets/more-facets-content.js +330 -330
  75. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  76. package/dist/src/collection-facets/more-facets-pagination.js +192 -192
  77. package/dist/src/collection-facets.d.ts +73 -73
  78. package/dist/src/collection-facets.js +359 -359
  79. package/dist/src/empty-placeholder.d.ts +11 -11
  80. package/dist/src/empty-placeholder.js +42 -42
  81. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  82. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  83. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  84. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  85. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  86. package/dist/src/mediatype/mediatype-config.js +85 -85
  87. package/dist/src/models.d.ts +97 -97
  88. package/dist/src/models.js +100 -100
  89. package/dist/src/restoration-state-handler.d.ts +46 -45
  90. package/dist/src/restoration-state-handler.js +230 -220
  91. package/dist/src/restoration-state-handler.js.map +1 -1
  92. package/dist/src/sort-filter-bar/alpha-bar.d.ts +9 -9
  93. package/dist/src/sort-filter-bar/alpha-bar.js +41 -41
  94. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  95. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  96. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  97. package/dist/src/sort-filter-bar/img/list.js +2 -2
  98. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  99. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  100. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  101. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  102. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +107 -107
  103. package/dist/src/sort-filter-bar/sort-filter-bar.js +423 -423
  104. package/dist/src/styles/item-image-styles.d.ts +8 -8
  105. package/dist/src/styles/item-image-styles.js +9 -9
  106. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  107. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  108. package/dist/src/tiles/grid/account-tile.d.ts +8 -8
  109. package/dist/src/tiles/grid/account-tile.js +20 -20
  110. package/dist/src/tiles/grid/collection-tile.d.ts +7 -7
  111. package/dist/src/tiles/grid/collection-tile.js +23 -23
  112. package/dist/src/tiles/grid/item-tile.d.ts +24 -24
  113. package/dist/src/tiles/grid/item-tile.js +87 -87
  114. package/dist/src/tiles/grid/tile-stats.d.ts +10 -10
  115. package/dist/src/tiles/grid/tile-stats.js +35 -35
  116. package/dist/src/tiles/image-block.d.ts +17 -17
  117. package/dist/src/tiles/image-block.js +69 -69
  118. package/dist/src/tiles/item-image.d.ts +31 -31
  119. package/dist/src/tiles/item-image.js +103 -103
  120. package/dist/src/tiles/list/account-label.d.ts +1 -1
  121. package/dist/src/tiles/list/account-label.js +6 -6
  122. package/dist/src/tiles/list/date-label.d.ts +1 -1
  123. package/dist/src/tiles/list/date-label.js +12 -12
  124. package/dist/src/tiles/list/tile-list-compact-header.d.ts +12 -12
  125. package/dist/src/tiles/list/tile-list-compact-header.js +41 -41
  126. package/dist/src/tiles/list/tile-list-compact.d.ts +20 -20
  127. package/dist/src/tiles/list/tile-list-compact.js +87 -87
  128. package/dist/src/tiles/list/tile-list.d.ts +50 -50
  129. package/dist/src/tiles/list/tile-list.js +264 -264
  130. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  131. package/dist/src/tiles/mediatype-icon.js +47 -47
  132. package/dist/src/tiles/overlay/icon-overlay.d.ts +7 -7
  133. package/dist/src/tiles/overlay/icon-overlay.js +30 -30
  134. package/dist/src/tiles/overlay/text-overlay.d.ts +8 -8
  135. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  136. package/dist/src/tiles/text-snippet-block.d.ts +29 -29
  137. package/dist/src/tiles/text-snippet-block.js +81 -81
  138. package/dist/src/tiles/tile-dispatcher.d.ts +36 -36
  139. package/dist/src/tiles/tile-dispatcher.js +128 -128
  140. package/dist/src/utils/analytics-events.d.ts +18 -18
  141. package/dist/src/utils/analytics-events.js +20 -20
  142. package/dist/src/utils/format-count.d.ts +7 -7
  143. package/dist/src/utils/format-count.js +76 -76
  144. package/dist/src/utils/format-date.d.ts +2 -2
  145. package/dist/src/utils/format-date.js +23 -23
  146. package/dist/test/collection-browser.test.d.ts +1 -1
  147. package/dist/test/collection-browser.test.js +356 -330
  148. package/dist/test/collection-browser.test.js.map +1 -1
  149. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  150. package/dist/test/collection-facets/facets-template.test.js +62 -62
  151. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  152. package/dist/test/collection-facets/more-facets-content.test.js +91 -91
  153. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  154. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  155. package/dist/test/collection-facets.test.d.ts +2 -2
  156. package/dist/test/collection-facets.test.js +421 -421
  157. package/dist/test/empty-placeholder.test.d.ts +1 -1
  158. package/dist/test/empty-placeholder.test.js +33 -33
  159. package/dist/test/icon-overlay.test.d.ts +1 -1
  160. package/dist/test/icon-overlay.test.js +24 -24
  161. package/dist/test/image-block.test.d.ts +1 -1
  162. package/dist/test/image-block.test.js +48 -48
  163. package/dist/test/item-image.test.d.ts +1 -1
  164. package/dist/test/item-image.test.js +56 -56
  165. package/dist/test/mediatype-config.test.d.ts +1 -1
  166. package/dist/test/mediatype-config.test.js +16 -16
  167. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  168. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  169. package/dist/test/mocks/mock-collection-name-cache.d.ts +7 -7
  170. package/dist/test/mocks/mock-collection-name-cache.js +13 -13
  171. package/dist/test/mocks/mock-search-responses.d.ts +5 -5
  172. package/dist/test/mocks/mock-search-responses.js +103 -103
  173. package/dist/test/mocks/mock-search-service.d.ts +13 -13
  174. package/dist/test/mocks/mock-search-service.js +25 -25
  175. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  176. package/dist/test/restoration-state-handler.test.js +117 -117
  177. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  178. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +113 -113
  179. package/dist/test/text-overlay.test.d.ts +1 -1
  180. package/dist/test/text-overlay.test.js +41 -41
  181. package/dist/test/text-snippet-block.test.d.ts +1 -1
  182. package/dist/test/text-snippet-block.test.js +57 -57
  183. package/dist/test/tile-stats.test.d.ts +1 -1
  184. package/dist/test/tile-stats.test.js +33 -33
  185. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  186. package/dist/test/tiles/grid/item-tile.test.js +107 -107
  187. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  188. package/dist/test/tiles/list/tile-list-compact.test.js +26 -26
  189. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  190. package/dist/test/tiles/list/tile-list.test.js +36 -36
  191. package/dist/test/utils/format-count.test.d.ts +1 -1
  192. package/dist/test/utils/format-count.test.js +23 -23
  193. package/dist/test/utils/format-date.test.d.ts +1 -1
  194. package/dist/test/utils/format-date.test.js +17 -17
  195. package/index.html +24 -24
  196. package/local.archive.org.cert +86 -86
  197. package/local.archive.org.key +27 -27
  198. package/package.json +115 -115
  199. package/renovate.json +6 -6
  200. package/src/app-root.ts +12 -1
  201. package/src/collection-browser.ts +26 -21
  202. package/src/restoration-state-handler.ts +19 -1
  203. package/test/collection-browser.test.ts +31 -2
  204. package/tsconfig.json +21 -21
  205. package/web-dev-server.config.mjs +30 -30
  206. package/web-test-runner.config.mjs +41 -41
@@ -1,21 +1,21 @@
1
- import { __decorate } from "tslib";
2
- import { css, html, LitElement, nothing } from 'lit';
3
- import { customElement, property } from 'lit/decorators.js';
4
- import { classMap } from 'lit/directives/class-map.js';
5
- import './overlay/icon-overlay';
6
- import './overlay/text-overlay';
7
- let ImageBlock = class ImageBlock extends LitElement {
8
- constructor() {
9
- super(...arguments);
10
- this.isCompactTile = false;
11
- this.isListTile = false;
12
- this.loggedIn = false;
13
- this.viewSize = 'desktop';
14
- }
15
- render() {
16
- var _a;
17
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier))
18
- return nothing;
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement, nothing } from 'lit';
3
+ import { customElement, property } from 'lit/decorators.js';
4
+ import { classMap } from 'lit/directives/class-map.js';
5
+ import './overlay/icon-overlay';
6
+ import './overlay/text-overlay';
7
+ let ImageBlock = class ImageBlock extends LitElement {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.isCompactTile = false;
11
+ this.isListTile = false;
12
+ this.loggedIn = false;
13
+ this.viewSize = 'desktop';
14
+ }
15
+ render() {
16
+ var _a;
17
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier))
18
+ return nothing;
19
19
  return html `
20
20
  <div class=${classMap(this.baseClass)}>
21
21
  <item-image
@@ -29,44 +29,44 @@ let ImageBlock = class ImageBlock extends LitElement {
29
29
  </item-image>
30
30
  ${this.textOverlayTemplate} ${this.iconOverlayTemplate}
31
31
  </div>
32
- `;
33
- }
34
- get baseClass() {
35
- return {
36
- list: this.isListTile && !this.isCompactTile,
37
- 'list-compact': this.isListTile && this.isCompactTile,
38
- [this.viewSize]: true,
39
- };
40
- }
41
- get iconOverlayTemplate() {
42
- var _a, _b, _c;
43
- if (!this.isListTile)
44
- return nothing;
45
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.loginRequired) && !((_b = this.model) === null || _b === void 0 ? void 0 : _b.contentWarning))
46
- return nothing;
32
+ `;
33
+ }
34
+ get baseClass() {
35
+ return {
36
+ list: this.isListTile && !this.isCompactTile,
37
+ 'list-compact': this.isListTile && this.isCompactTile,
38
+ [this.viewSize]: true,
39
+ };
40
+ }
41
+ get iconOverlayTemplate() {
42
+ var _a, _b, _c;
43
+ if (!this.isListTile)
44
+ return nothing;
45
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.loginRequired) && !((_b = this.model) === null || _b === void 0 ? void 0 : _b.contentWarning))
46
+ return nothing;
47
47
  return html `
48
48
  <icon-overlay
49
49
  .loggedIn=${this.loggedIn}
50
50
  .loginRequired=${(_c = this.model) === null || _c === void 0 ? void 0 : _c.loginRequired}
51
51
  >
52
52
  </icon-overlay>
53
- `;
54
- }
55
- get textOverlayTemplate() {
56
- var _a, _b, _c;
57
- if (this.isListTile)
58
- return nothing;
59
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.loginRequired) && !((_b = this.model) === null || _b === void 0 ? void 0 : _b.contentWarning))
60
- return nothing;
53
+ `;
54
+ }
55
+ get textOverlayTemplate() {
56
+ var _a, _b, _c;
57
+ if (this.isListTile)
58
+ return nothing;
59
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.loginRequired) && !((_b = this.model) === null || _b === void 0 ? void 0 : _b.contentWarning))
60
+ return nothing;
61
61
  return html `
62
62
  <text-overlay
63
63
  .loggedIn=${this.loggedIn}
64
64
  .loginRequired=${(_c = this.model) === null || _c === void 0 ? void 0 : _c.loginRequired}
65
65
  >
66
66
  </text-overlay>
67
- `;
68
- }
69
- static get styles() {
67
+ `;
68
+ }
69
+ static get styles() {
70
70
  return css `
71
71
  div {
72
72
  display: flex;
@@ -104,29 +104,29 @@ let ImageBlock = class ImageBlock extends LitElement {
104
104
  width: 30px;
105
105
  height: 30px;
106
106
  }
107
- `;
108
- }
109
- };
110
- __decorate([
111
- property({ type: String })
112
- ], ImageBlock.prototype, "baseImageUrl", void 0);
113
- __decorate([
114
- property({ type: Boolean })
115
- ], ImageBlock.prototype, "isCompactTile", void 0);
116
- __decorate([
117
- property({ type: Boolean })
118
- ], ImageBlock.prototype, "isListTile", void 0);
119
- __decorate([
120
- property({ type: Boolean })
121
- ], ImageBlock.prototype, "loggedIn", void 0);
122
- __decorate([
123
- property({ type: Object })
124
- ], ImageBlock.prototype, "model", void 0);
125
- __decorate([
126
- property({ type: String })
127
- ], ImageBlock.prototype, "viewSize", void 0);
128
- ImageBlock = __decorate([
129
- customElement('image-block')
130
- ], ImageBlock);
131
- export { ImageBlock };
107
+ `;
108
+ }
109
+ };
110
+ __decorate([
111
+ property({ type: String })
112
+ ], ImageBlock.prototype, "baseImageUrl", void 0);
113
+ __decorate([
114
+ property({ type: Boolean })
115
+ ], ImageBlock.prototype, "isCompactTile", void 0);
116
+ __decorate([
117
+ property({ type: Boolean })
118
+ ], ImageBlock.prototype, "isListTile", void 0);
119
+ __decorate([
120
+ property({ type: Boolean })
121
+ ], ImageBlock.prototype, "loggedIn", void 0);
122
+ __decorate([
123
+ property({ type: Object })
124
+ ], ImageBlock.prototype, "model", void 0);
125
+ __decorate([
126
+ property({ type: String })
127
+ ], ImageBlock.prototype, "viewSize", void 0);
128
+ ImageBlock = __decorate([
129
+ customElement('image-block')
130
+ ], ImageBlock);
131
+ export { ImageBlock };
132
132
  //# sourceMappingURL=image-block.js.map
@@ -1,31 +1,31 @@
1
- import { CSSResultGroup, LitElement } from 'lit';
2
- import type { TileModel } from '../models';
3
- export declare class ItemImage extends LitElement {
4
- model?: TileModel;
5
- baseImageUrl?: string;
6
- isListTile: boolean;
7
- isCompactTile: boolean;
8
- loggedIn: boolean;
9
- private isWaveform;
10
- private baseImage;
11
- render(): import("lit-html").TemplateResult<1>;
12
- /**
13
- * Helpers
14
- */
15
- private get imageSrc();
16
- private get hashBasedGradient();
17
- private hashStrToInt;
18
- /**
19
- * Classes
20
- */
21
- private get itemBaseClass();
22
- private get itemImageClass();
23
- /**
24
- * Event listener sets isWaveform true if image is waveform
25
- */
26
- private onLoad;
27
- /**
28
- * CSS
29
- */
30
- static get styles(): CSSResultGroup;
31
- }
1
+ import { CSSResultGroup, LitElement } from 'lit';
2
+ import type { TileModel } from '../models';
3
+ export declare class ItemImage extends LitElement {
4
+ model?: TileModel;
5
+ baseImageUrl?: string;
6
+ isListTile: boolean;
7
+ isCompactTile: boolean;
8
+ loggedIn: boolean;
9
+ private isWaveform;
10
+ private baseImage;
11
+ render(): import("lit-html").TemplateResult<1>;
12
+ /**
13
+ * Helpers
14
+ */
15
+ private get imageSrc();
16
+ private get hashBasedGradient();
17
+ private hashStrToInt;
18
+ /**
19
+ * Classes
20
+ */
21
+ private get itemBaseClass();
22
+ private get itemImageClass();
23
+ /**
24
+ * Event listener sets isWaveform true if image is waveform
25
+ */
26
+ private onLoad;
27
+ /**
28
+ * CSS
29
+ */
30
+ static get styles(): CSSResultGroup;
31
+ }
@@ -1,17 +1,17 @@
1
- import { __decorate } from "tslib";
2
- import { css, html, LitElement } from 'lit';
3
- import { customElement, property, query, state } from 'lit/decorators.js';
4
- import { classMap } from 'lit/directives/class-map.js';
5
- import { baseItemImageStyles, waveformGradientStyles, } from '../styles/item-image-styles';
6
- let ItemImage = class ItemImage extends LitElement {
7
- constructor() {
8
- super(...arguments);
9
- this.isListTile = false;
10
- this.isCompactTile = false;
11
- this.loggedIn = false;
12
- this.isWaveform = false;
13
- }
14
- render() {
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement } from 'lit';
3
+ import { customElement, property, query, state } from 'lit/decorators.js';
4
+ import { classMap } from 'lit/directives/class-map.js';
5
+ import { baseItemImageStyles, waveformGradientStyles, } from '../styles/item-image-styles';
6
+ let ItemImage = class ItemImage extends LitElement {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.isListTile = false;
10
+ this.isCompactTile = false;
11
+ this.loggedIn = false;
12
+ this.isWaveform = false;
13
+ }
14
+ render() {
15
15
  return html `
16
16
  <div class=${classMap(this.itemBaseClass)}>
17
17
  <img
@@ -21,98 +21,98 @@ let ItemImage = class ItemImage extends LitElement {
21
21
  @load=${this.onLoad}
22
22
  />
23
23
  </div>
24
- `;
25
- }
26
- /**
27
- * Helpers
28
- */
29
- get imageSrc() {
30
- var _a;
31
- return `${this.baseImageUrl}/services/img/${(_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier}`;
32
- }
33
- get hashBasedGradient() {
34
- var _a;
35
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier)) {
36
- return 'waveform-grad0';
37
- }
38
- const gradient = this.hashStrToInt(this.model.identifier) % 6; // returns 0-5
39
- return `waveform-grad${gradient}`;
40
- }
41
- hashStrToInt(str) {
42
- return str
43
- .split('')
44
- .reduce((acc, char) => acc + char.charCodeAt(0), 0);
45
- }
46
- /**
47
- * Classes
48
- */
49
- get itemBaseClass() {
50
- return {
51
- 'drop-shadow': true,
52
- 'list-box': this.isListTile,
53
- [this.hashBasedGradient]: this.isWaveform,
54
- };
55
- }
56
- get itemImageClass() {
57
- var _a, _b;
58
- const toBlur = ((_a = this.model) === null || _a === void 0 ? void 0 : _a.contentWarning) || ((_b = this.model) === null || _b === void 0 ? void 0 : _b.loginRequired);
59
- return {
60
- contain: !this.isCompactTile && !this.isWaveform,
61
- cover: this.isCompactTile,
62
- blur: toBlur || false,
63
- waveform: this.isWaveform,
64
- };
65
- }
66
- /**
67
- * Event listener sets isWaveform true if image is waveform
68
- */
69
- onLoad() {
70
- var _a, _b;
71
- if ((((_a = this.model) === null || _a === void 0 ? void 0 : _a.mediatype) === 'audio' ||
72
- ((_b = this.model) === null || _b === void 0 ? void 0 : _b.mediatype) === 'etree') &&
73
- this.baseImage.naturalWidth / this.baseImage.naturalHeight === 4) {
74
- this.isWaveform = true;
75
- }
76
- }
77
- /**
78
- * CSS
79
- */
80
- static get styles() {
81
- return [
82
- baseItemImageStyles,
83
- waveformGradientStyles,
24
+ `;
25
+ }
26
+ /**
27
+ * Helpers
28
+ */
29
+ get imageSrc() {
30
+ var _a;
31
+ return `${this.baseImageUrl}/services/img/${(_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier}`;
32
+ }
33
+ get hashBasedGradient() {
34
+ var _a;
35
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier)) {
36
+ return 'waveform-grad0';
37
+ }
38
+ const gradient = this.hashStrToInt(this.model.identifier) % 6; // returns 0-5
39
+ return `waveform-grad${gradient}`;
40
+ }
41
+ hashStrToInt(str) {
42
+ return str
43
+ .split('')
44
+ .reduce((acc, char) => acc + char.charCodeAt(0), 0);
45
+ }
46
+ /**
47
+ * Classes
48
+ */
49
+ get itemBaseClass() {
50
+ return {
51
+ 'drop-shadow': true,
52
+ 'list-box': this.isListTile,
53
+ [this.hashBasedGradient]: this.isWaveform,
54
+ };
55
+ }
56
+ get itemImageClass() {
57
+ var _a, _b;
58
+ const toBlur = ((_a = this.model) === null || _a === void 0 ? void 0 : _a.contentWarning) || ((_b = this.model) === null || _b === void 0 ? void 0 : _b.loginRequired);
59
+ return {
60
+ contain: !this.isCompactTile && !this.isWaveform,
61
+ cover: this.isCompactTile,
62
+ blur: toBlur || false,
63
+ waveform: this.isWaveform,
64
+ };
65
+ }
66
+ /**
67
+ * Event listener sets isWaveform true if image is waveform
68
+ */
69
+ onLoad() {
70
+ var _a, _b;
71
+ if ((((_a = this.model) === null || _a === void 0 ? void 0 : _a.mediatype) === 'audio' ||
72
+ ((_b = this.model) === null || _b === void 0 ? void 0 : _b.mediatype) === 'etree') &&
73
+ this.baseImage.naturalWidth / this.baseImage.naturalHeight === 4) {
74
+ this.isWaveform = true;
75
+ }
76
+ }
77
+ /**
78
+ * CSS
79
+ */
80
+ static get styles() {
81
+ return [
82
+ baseItemImageStyles,
83
+ waveformGradientStyles,
84
84
  css `
85
85
  img {
86
86
  height: var(--imgHeight, 16rem);
87
87
  width: var(--imgWidth, 16rem);
88
88
  }
89
- `,
90
- ];
91
- }
92
- };
93
- __decorate([
94
- property({ type: Object })
95
- ], ItemImage.prototype, "model", void 0);
96
- __decorate([
97
- property({ type: String })
98
- ], ItemImage.prototype, "baseImageUrl", void 0);
99
- __decorate([
100
- property({ type: Boolean })
101
- ], ItemImage.prototype, "isListTile", void 0);
102
- __decorate([
103
- property({ type: Boolean })
104
- ], ItemImage.prototype, "isCompactTile", void 0);
105
- __decorate([
106
- property({ type: Boolean })
107
- ], ItemImage.prototype, "loggedIn", void 0);
108
- __decorate([
109
- state()
110
- ], ItemImage.prototype, "isWaveform", void 0);
111
- __decorate([
112
- query('img')
113
- ], ItemImage.prototype, "baseImage", void 0);
114
- ItemImage = __decorate([
115
- customElement('item-image')
116
- ], ItemImage);
117
- export { ItemImage };
89
+ `,
90
+ ];
91
+ }
92
+ };
93
+ __decorate([
94
+ property({ type: Object })
95
+ ], ItemImage.prototype, "model", void 0);
96
+ __decorate([
97
+ property({ type: String })
98
+ ], ItemImage.prototype, "baseImageUrl", void 0);
99
+ __decorate([
100
+ property({ type: Boolean })
101
+ ], ItemImage.prototype, "isListTile", void 0);
102
+ __decorate([
103
+ property({ type: Boolean })
104
+ ], ItemImage.prototype, "isCompactTile", void 0);
105
+ __decorate([
106
+ property({ type: Boolean })
107
+ ], ItemImage.prototype, "loggedIn", void 0);
108
+ __decorate([
109
+ state()
110
+ ], ItemImage.prototype, "isWaveform", void 0);
111
+ __decorate([
112
+ query('img')
113
+ ], ItemImage.prototype, "baseImage", void 0);
114
+ ItemImage = __decorate([
115
+ customElement('item-image')
116
+ ], ItemImage);
117
+ export { ItemImage };
118
118
  //# sourceMappingURL=item-image.js.map
@@ -1 +1 @@
1
- export declare function accountLabel(date: Date | undefined): string;
1
+ export declare function accountLabel(date: Date | undefined): string;
@@ -1,7 +1,7 @@
1
- export function accountLabel(date) {
2
- if (!date) {
3
- return '';
4
- }
5
- return `Archivist since ${date.getFullYear()}`;
6
- }
1
+ export function accountLabel(date) {
2
+ if (!date) {
3
+ return '';
4
+ }
5
+ return `Archivist since ${date.getFullYear()}`;
6
+ }
7
7
  //# sourceMappingURL=account-label.js.map
@@ -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 'date':
4
- return 'Published';
5
- case 'reviewdate':
6
- return 'Reviewed';
7
- case 'addeddate':
8
- return 'Added';
9
- default:
10
- return 'Archived';
11
- }
12
- }
1
+ export function dateLabel(sortField) {
2
+ switch (sortField) {
3
+ case 'date':
4
+ return 'Published';
5
+ case 'reviewdate':
6
+ return 'Reviewed';
7
+ case 'addeddate':
8
+ return 'Added';
9
+ default:
10
+ return 'Archived';
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"></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;
@@ -62,23 +62,23 @@ let TileListCompactHeader = class TileListCompactHeader extends LitElement {
62
62
  #list-line-header.desktop {
63
63
  grid-template-columns: 51px 3fr 2fr 100px 20px 60px;
64
64
  }
65
- `;
66
- }
67
- };
68
- __decorate([
69
- property({ type: Object })
70
- ], TileListCompactHeader.prototype, "model", void 0);
71
- __decorate([
72
- property({ type: Number })
73
- ], TileListCompactHeader.prototype, "currentWidth", void 0);
74
- __decorate([
75
- property({ type: Object })
76
- ], TileListCompactHeader.prototype, "sortParam", void 0);
77
- __decorate([
78
- property({ type: Number })
79
- ], TileListCompactHeader.prototype, "mobileBreakpoint", void 0);
80
- TileListCompactHeader = __decorate([
81
- customElement('tile-list-compact-header')
82
- ], TileListCompactHeader);
83
- export { TileListCompactHeader };
65
+ `;
66
+ }
67
+ };
68
+ __decorate([
69
+ property({ type: Object })
70
+ ], TileListCompactHeader.prototype, "model", void 0);
71
+ __decorate([
72
+ property({ type: Number })
73
+ ], TileListCompactHeader.prototype, "currentWidth", void 0);
74
+ __decorate([
75
+ property({ type: Object })
76
+ ], TileListCompactHeader.prototype, "sortParam", void 0);
77
+ __decorate([
78
+ property({ type: Number })
79
+ ], TileListCompactHeader.prototype, "mobileBreakpoint", void 0);
80
+ TileListCompactHeader = __decorate([
81
+ customElement('tile-list-compact-header')
82
+ ], TileListCompactHeader);
83
+ export { TileListCompactHeader };
84
84
  //# sourceMappingURL=tile-list-compact-header.js.map
@@ -1,20 +1,20 @@
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 classSize();
18
- private get formatSize();
19
- static get styles(): import("lit").CSSResult;
20
- }
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 classSize();
18
+ private get formatSize();
19
+ static get styles(): import("lit").CSSResult;
20
+ }