@internetarchive/collection-browser 3.4.1-alpha-webdev7761.2 → 3.4.1-alpha-webdev7761.4

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 (208) hide show
  1. package/dist/src/app-root.js +19 -28
  2. package/dist/src/app-root.js.map +1 -1
  3. package/dist/src/collection-browser.d.ts +14 -10
  4. package/dist/src/collection-browser.js +870 -886
  5. package/dist/src/collection-browser.js.map +1 -1
  6. package/dist/src/collection-facets/facet-row.js +3 -4
  7. package/dist/src/collection-facets/facet-row.js.map +1 -1
  8. package/dist/src/collection-facets/models.js.map +1 -1
  9. package/dist/src/collection-facets/more-facets-content.js +145 -156
  10. package/dist/src/collection-facets/more-facets-content.js.map +1 -1
  11. package/dist/src/collection-facets/more-facets-pagination.js +6 -10
  12. package/dist/src/collection-facets/more-facets-pagination.js.map +1 -1
  13. package/dist/src/collection-facets/smart-facets/heuristics/wikidata/wikidata-heuristic.js +16 -21
  14. package/dist/src/collection-facets/smart-facets/heuristics/wikidata/wikidata-heuristic.js.map +1 -1
  15. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +7 -10
  16. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
  17. package/dist/src/collection-facets/smart-facets/smart-facet-button.js +3 -2
  18. package/dist/src/collection-facets/smart-facets/smart-facet-button.js.map +1 -1
  19. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +9 -11
  20. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js.map +1 -1
  21. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js +7 -7
  22. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js.map +1 -1
  23. package/dist/src/collection-facets/toggle-switch.js +4 -6
  24. package/dist/src/collection-facets/toggle-switch.js.map +1 -1
  25. package/dist/src/collection-facets.js +34 -50
  26. package/dist/src/collection-facets.js.map +1 -1
  27. package/dist/src/combo-box/caret-closed.js +5 -11
  28. package/dist/src/combo-box/caret-closed.js.map +1 -1
  29. package/dist/src/combo-box/caret-open.js +5 -11
  30. package/dist/src/combo-box/caret-open.js.map +1 -1
  31. package/dist/src/combo-box/clear.d.ts +2 -0
  32. package/dist/src/combo-box/clear.js +11 -0
  33. package/dist/src/combo-box/clear.js.map +1 -0
  34. package/dist/src/combo-box/ia-combo-box.d.ts +40 -9
  35. package/dist/src/combo-box/ia-combo-box.js +363 -272
  36. package/dist/src/combo-box/ia-combo-box.js.map +1 -1
  37. package/dist/src/combo-box/models.d.ts +14 -0
  38. package/dist/src/combo-box/models.js +32 -1
  39. package/dist/src/combo-box/models.js.map +1 -1
  40. package/dist/src/data-source/collection-browser-data-source.js +35 -47
  41. package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
  42. package/dist/src/empty-placeholder.js +19 -18
  43. package/dist/src/empty-placeholder.js.map +1 -1
  44. package/dist/src/expanded-date-picker.js +6 -10
  45. package/dist/src/expanded-date-picker.js.map +1 -1
  46. package/dist/src/language-code-handler/language-code-handler.js +2 -2
  47. package/dist/src/language-code-handler/language-code-handler.js.map +1 -1
  48. package/dist/src/manage/manage-bar.js +86 -92
  49. package/dist/src/manage/manage-bar.js.map +1 -1
  50. package/dist/src/manage/remove-items-modal-content.js +2 -2
  51. package/dist/src/manage/remove-items-modal-content.js.map +1 -1
  52. package/dist/src/models.js +36 -40
  53. package/dist/src/models.js.map +1 -1
  54. package/dist/src/restoration-state-handler.js +9 -10
  55. package/dist/src/restoration-state-handler.js.map +1 -1
  56. package/dist/src/sort-filter-bar/alpha-bar.js +9 -14
  57. package/dist/src/sort-filter-bar/alpha-bar.js.map +1 -1
  58. package/dist/src/sort-filter-bar/sort-filter-bar.js +14 -24
  59. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  60. package/dist/src/tiles/base-tile-component.js +1 -2
  61. package/dist/src/tiles/base-tile-component.js.map +1 -1
  62. package/dist/src/tiles/grid/account-tile.js +36 -38
  63. package/dist/src/tiles/grid/account-tile.js.map +1 -1
  64. package/dist/src/tiles/grid/collection-tile.js +79 -82
  65. package/dist/src/tiles/grid/collection-tile.js.map +1 -1
  66. package/dist/src/tiles/grid/item-tile.js +154 -164
  67. package/dist/src/tiles/grid/item-tile.js.map +1 -1
  68. package/dist/src/tiles/grid/search-tile.js +42 -43
  69. package/dist/src/tiles/grid/search-tile.js.map +1 -1
  70. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +119 -119
  71. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js.map +1 -1
  72. package/dist/src/tiles/grid/tile-stats.js +2 -3
  73. package/dist/src/tiles/grid/tile-stats.js.map +1 -1
  74. package/dist/src/tiles/hover/hover-pane-controller.js +42 -49
  75. package/dist/src/tiles/hover/hover-pane-controller.js.map +1 -1
  76. package/dist/src/tiles/hover/tile-hover-pane.js +113 -114
  77. package/dist/src/tiles/hover/tile-hover-pane.js.map +1 -1
  78. package/dist/src/tiles/image-block.js +5 -8
  79. package/dist/src/tiles/image-block.js.map +1 -1
  80. package/dist/src/tiles/item-image.js +12 -19
  81. package/dist/src/tiles/item-image.js.map +1 -1
  82. package/dist/src/tiles/list/tile-list-compact.js +114 -122
  83. package/dist/src/tiles/list/tile-list-compact.js.map +1 -1
  84. package/dist/src/tiles/list/tile-list.js +326 -347
  85. package/dist/src/tiles/list/tile-list.js.map +1 -1
  86. package/dist/src/tiles/overlay/icon-overlay.js +1 -2
  87. package/dist/src/tiles/overlay/icon-overlay.js.map +1 -1
  88. package/dist/src/tiles/overlay/text-overlay.js +2 -4
  89. package/dist/src/tiles/overlay/text-overlay.js.map +1 -1
  90. package/dist/src/tiles/text-snippet-block.js +2 -4
  91. package/dist/src/tiles/text-snippet-block.js.map +1 -1
  92. package/dist/src/tiles/tile-dispatcher.js +233 -241
  93. package/dist/src/tiles/tile-dispatcher.js.map +1 -1
  94. package/dist/src/tiles/tile-display-value-provider.js +5 -9
  95. package/dist/src/tiles/tile-display-value-provider.js.map +1 -1
  96. package/dist/src/tiles/tile-mediatype-icon.js +12 -19
  97. package/dist/src/tiles/tile-mediatype-icon.js.map +1 -1
  98. package/dist/src/utils/collapse-repeated-quotes.js +1 -1
  99. package/dist/src/utils/collapse-repeated-quotes.js.map +1 -1
  100. package/dist/src/utils/facet-utils.js +3 -5
  101. package/dist/src/utils/facet-utils.js.map +1 -1
  102. package/dist/src/utils/format-count.js +10 -10
  103. package/dist/src/utils/format-count.js.map +1 -1
  104. package/dist/src/utils/format-date.js.map +1 -1
  105. package/dist/src/utils/resolve-mediatype.js +2 -3
  106. package/dist/src/utils/resolve-mediatype.js.map +1 -1
  107. package/dist/test/collection-browser.test.js +131 -185
  108. package/dist/test/collection-browser.test.js.map +1 -1
  109. package/dist/test/collection-facets/facet-row.test.js +60 -75
  110. package/dist/test/collection-facets/facet-row.test.js.map +1 -1
  111. package/dist/test/collection-facets/facets-template.test.js +17 -23
  112. package/dist/test/collection-facets/facets-template.test.js.map +1 -1
  113. package/dist/test/collection-facets/more-facets-content.test.js +22 -32
  114. package/dist/test/collection-facets/more-facets-content.test.js.map +1 -1
  115. package/dist/test/collection-facets/more-facets-pagination.test.js +16 -22
  116. package/dist/test/collection-facets/more-facets-pagination.test.js.map +1 -1
  117. package/dist/test/collection-facets/toggle-switch.test.js +22 -19
  118. package/dist/test/collection-facets/toggle-switch.test.js.map +1 -1
  119. package/dist/test/collection-facets.test.js +80 -97
  120. package/dist/test/collection-facets.test.js.map +1 -1
  121. package/dist/test/empty-placeholder.test.js +11 -17
  122. package/dist/test/empty-placeholder.test.js.map +1 -1
  123. package/dist/test/expanded-date-picker.test.js +8 -14
  124. package/dist/test/expanded-date-picker.test.js.map +1 -1
  125. package/dist/test/icon-overlay.test.js +7 -6
  126. package/dist/test/icon-overlay.test.js.map +1 -1
  127. package/dist/test/image-block.test.js +16 -26
  128. package/dist/test/image-block.test.js.map +1 -1
  129. package/dist/test/item-image.test.js +23 -32
  130. package/dist/test/item-image.test.js.map +1 -1
  131. package/dist/test/manage/manage-bar.test.js +21 -33
  132. package/dist/test/manage/manage-bar.test.js.map +1 -1
  133. package/dist/test/manage/remove-items-modal-content.test.js +10 -15
  134. package/dist/test/manage/remove-items-modal-content.test.js.map +1 -1
  135. package/dist/test/mocks/mock-search-service.js +2 -3
  136. package/dist/test/mocks/mock-search-service.js.map +1 -1
  137. package/dist/test/restoration-state-handler.test.js +13 -21
  138. package/dist/test/restoration-state-handler.test.js.map +1 -1
  139. package/dist/test/review-block.test.js +16 -18
  140. package/dist/test/review-block.test.js.map +1 -1
  141. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +2 -3
  142. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js.map +1 -1
  143. package/dist/test/sort-filter-bar/alpha-bar.test.js +18 -24
  144. package/dist/test/sort-filter-bar/alpha-bar.test.js.map +1 -1
  145. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +178 -180
  146. package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +1 -1
  147. package/dist/test/text-overlay.test.js +16 -15
  148. package/dist/test/text-overlay.test.js.map +1 -1
  149. package/dist/test/text-snippet-block.test.js +14 -19
  150. package/dist/test/text-snippet-block.test.js.map +1 -1
  151. package/dist/test/tile-stats.test.js +73 -34
  152. package/dist/test/tile-stats.test.js.map +1 -1
  153. package/dist/test/tiles/grid/account-tile.test.js +25 -25
  154. package/dist/test/tiles/grid/account-tile.test.js.map +1 -1
  155. package/dist/test/tiles/grid/collection-tile.test.js +13 -19
  156. package/dist/test/tiles/grid/collection-tile.test.js.map +1 -1
  157. package/dist/test/tiles/grid/item-tile.test.js +141 -168
  158. package/dist/test/tiles/grid/item-tile.test.js.map +1 -1
  159. package/dist/test/tiles/grid/search-tile.test.js +9 -13
  160. package/dist/test/tiles/grid/search-tile.test.js.map +1 -1
  161. package/dist/test/tiles/hover/hover-pane-controller.test.js +50 -62
  162. package/dist/test/tiles/hover/hover-pane-controller.test.js.map +1 -1
  163. package/dist/test/tiles/hover/tile-hover-pane.test.js +12 -16
  164. package/dist/test/tiles/hover/tile-hover-pane.test.js.map +1 -1
  165. package/dist/test/tiles/list/tile-list-compact.test.js +104 -118
  166. package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
  167. package/dist/test/tiles/list/tile-list.test.js +202 -231
  168. package/dist/test/tiles/list/tile-list.test.js.map +1 -1
  169. package/dist/test/tiles/tile-dispatcher.test.js +97 -110
  170. package/dist/test/tiles/tile-dispatcher.test.js.map +1 -1
  171. package/dist/test/tiles/tile-mediatype-icon.test.js +12 -24
  172. package/dist/test/tiles/tile-mediatype-icon.test.js.map +1 -1
  173. package/dist/test/utils/format-date.test.js.map +1 -1
  174. package/index.html +1 -1
  175. package/package.json +5 -3
  176. package/src/collection-browser.ts +3060 -3030
  177. package/src/collection-facets/models.ts +10 -10
  178. package/src/collection-facets/more-facets-content.ts +639 -639
  179. package/src/collection-facets.ts +1 -1
  180. package/src/combo-box/caret-closed.ts +5 -11
  181. package/src/combo-box/caret-open.ts +5 -11
  182. package/src/combo-box/clear.ts +11 -0
  183. package/src/combo-box/ia-combo-box.ts +1288 -1180
  184. package/src/combo-box/models.ts +31 -1
  185. package/src/manage/manage-bar.ts +247 -247
  186. package/src/restoration-state-handler.ts +5 -1
  187. package/src/tiles/base-tile-component.ts +65 -65
  188. package/src/tiles/grid/account-tile.ts +113 -113
  189. package/src/tiles/grid/collection-tile.ts +163 -163
  190. package/src/tiles/grid/item-tile.ts +340 -340
  191. package/src/tiles/grid/search-tile.ts +90 -90
  192. package/src/tiles/grid/styles/tile-grid-shared-styles.ts +130 -130
  193. package/src/tiles/hover/hover-pane-controller.ts +613 -613
  194. package/src/tiles/hover/tile-hover-pane.ts +184 -184
  195. package/src/tiles/list/tile-list-compact.ts +239 -239
  196. package/src/tiles/list/tile-list.ts +700 -700
  197. package/src/tiles/tile-dispatcher.ts +517 -517
  198. package/src/utils/format-date.ts +62 -62
  199. package/test/collection-facets/facet-row.test.ts +375 -375
  200. package/test/collection-facets.test.ts +928 -928
  201. package/test/tiles/grid/item-tile.test.ts +520 -520
  202. package/test/tiles/hover/hover-pane-controller.test.ts +418 -418
  203. package/test/tiles/list/tile-list-compact.test.ts +282 -282
  204. package/test/tiles/list/tile-list.test.ts +552 -552
  205. package/test/tiles/tile-dispatcher.test.ts +283 -283
  206. package/test/utils/format-date.test.ts +89 -89
  207. package/tsconfig.json +8 -3
  208. package/vite.config.ts +29 -22
@@ -1,163 +1,163 @@
1
- import { css, CSSResultGroup, html, nothing, TemplateResult } from 'lit';
2
- import { customElement, property } from 'lit/decorators.js';
3
- import { msg } from '@lit/localize';
4
- import { collectionIcon } from '../../assets/img/icons/mediatype/collection';
5
- import { formatUnitSize } from '../../utils/format-unit-size';
6
- import { baseTileStyles } from './styles/tile-grid-shared-styles';
7
- import { BaseTileComponent } from '../base-tile-component';
8
- import '../image-block';
9
-
10
- @customElement('collection-tile')
11
- export class CollectionTile extends BaseTileComponent {
12
- /*
13
- * Reactive properties inherited from BaseTileComponent:
14
- * - model?: TileModel;
15
- * - currentWidth?: number;
16
- * - currentHeight?: number;
17
- * - baseNavigationUrl?: string;
18
- * - baseImageUrl?: string;
19
- * - collectionPagePath?: string;
20
- * - sortParam: SortParam | null = null;
21
- * - creatorFilter?: string;
22
- * - mobileBreakpoint?: number;
23
- * - loggedIn = false;
24
- * - suppressBlurring = false;
25
- * - useLocalTime = false;
26
- */
27
-
28
- @property({ type: Boolean }) showInfoButton = false;
29
-
30
- render() {
31
- return html`
32
- <div class="container">
33
- ${this.infoButtonTemplate}
34
- <div class="tile-details">
35
- <div class="item-info">
36
- ${this.getImageBlockTemplate} ${this.getTitleTemplate}
37
- </div>
38
- </div>
39
-
40
- ${this.getTileStatsTemplate}
41
- </div>
42
- `;
43
- }
44
-
45
- private get getImageBlockTemplate(): TemplateResult {
46
- return html`
47
- <image-block
48
- .model=${this.model}
49
- .baseImageUrl=${this.baseImageUrl}
50
- .viewSize=${'grid'}
51
- .suppressBlurring=${this.suppressBlurring}
52
- >
53
- </image-block>
54
- `;
55
- }
56
-
57
- private get getTitleTemplate() {
58
- return html`<div id="title">
59
- <h3 class="truncated">${this.model?.title}</h3>
60
- </div>`;
61
- }
62
-
63
- private get getTileStatsTemplate() {
64
- return html`
65
- <div id="item-stats">
66
- <div id="item-mediatype">${collectionIcon}</div>
67
-
68
- <div id="stats-row">
69
- ${this.getItemsTemplate} ${this.getSizeTemplate}
70
- </div>
71
- </div>
72
- `;
73
- }
74
-
75
- private get getItemsTemplate() {
76
- const collectionItems = this.model?.itemCount?.toLocaleString();
77
-
78
- return html`<span id="item-count"
79
- >${collectionItems} item${Number(collectionItems) !== 1 ? 's' : ''}</span
80
- >`;
81
- }
82
-
83
- private get getSizeTemplate() {
84
- const collectionSize = this.model?.collectionSize ?? 0;
85
-
86
- return collectionSize
87
- ? html`<span id="item-size">${formatUnitSize(collectionSize, 1)}</span>`
88
- : ``;
89
- }
90
-
91
- private get infoButtonTemplate(): TemplateResult | typeof nothing {
92
- // &#9432; is an information icon
93
- return this.showInfoButton
94
- ? html`<button class="info-button" @click=${this.infoButtonPressed}>
95
- &#9432;
96
- <span class="sr-only">${msg('More info')}</span>
97
- </button>`
98
- : nothing;
99
- }
100
-
101
- private infoButtonPressed(e: PointerEvent) {
102
- e.preventDefault();
103
- const event = new CustomEvent<{ x: number; y: number }>(
104
- 'infoButtonPressed',
105
- { detail: { x: e.clientX, y: e.clientY } },
106
- );
107
- this.dispatchEvent(event);
108
- }
109
-
110
- static get styles(): CSSResultGroup {
111
- const tileBorderColor = css`var(--tileBorderColor, #555555)`;
112
- const tileBackgroundColor = css`var(--tileBackgroundColor, #666666)`;
113
- const whiteColor = css`#fff`;
114
-
115
- return [
116
- baseTileStyles,
117
- css`
118
- .container {
119
- background-color: ${tileBackgroundColor};
120
- border: 1px solid ${tileBorderColor};
121
- }
122
-
123
- .item-info {
124
- flex-grow: initial;
125
- }
126
-
127
- h4.truncated,
128
- h3.truncated {
129
- color: ${whiteColor};
130
- }
131
-
132
- #item-mediatype svg {
133
- filter: invert(100%);
134
- height: 2.5rem;
135
- align-items: baseline;
136
- }
137
-
138
- .container:hover > #title {
139
- text-decoration: underline;
140
- }
141
-
142
- /* this is a workaround for Safari 15 where the hover effects are not working */
143
- image-block:hover > #title {
144
- text-decoration: underline;
145
- }
146
-
147
- #item-stats {
148
- display: flex;
149
- padding: 0 5px 5px;
150
- align-items: center;
151
- }
152
-
153
- #stats-row {
154
- display: flex;
155
- align-items: baseline;
156
- color: ${whiteColor};
157
- flex-direction: column;
158
- margin-left: 10px;
159
- }
160
- `,
161
- ];
162
- }
163
- }
1
+ import { css, CSSResultGroup, html, nothing, TemplateResult } from 'lit';
2
+ import { customElement, property } from 'lit/decorators.js';
3
+ import { msg } from '@lit/localize';
4
+ import { collectionIcon } from '../../assets/img/icons/mediatype/collection';
5
+ import { formatUnitSize } from '../../utils/format-unit-size';
6
+ import { baseTileStyles } from './styles/tile-grid-shared-styles';
7
+ import { BaseTileComponent } from '../base-tile-component';
8
+ import '../image-block';
9
+
10
+ @customElement('collection-tile')
11
+ export class CollectionTile extends BaseTileComponent {
12
+ /*
13
+ * Reactive properties inherited from BaseTileComponent:
14
+ * - model?: TileModel;
15
+ * - currentWidth?: number;
16
+ * - currentHeight?: number;
17
+ * - baseNavigationUrl?: string;
18
+ * - baseImageUrl?: string;
19
+ * - collectionPagePath?: string;
20
+ * - sortParam: SortParam | null = null;
21
+ * - creatorFilter?: string;
22
+ * - mobileBreakpoint?: number;
23
+ * - loggedIn = false;
24
+ * - suppressBlurring = false;
25
+ * - useLocalTime = false;
26
+ */
27
+
28
+ @property({ type: Boolean }) showInfoButton = false;
29
+
30
+ render() {
31
+ return html`
32
+ <div class="container">
33
+ ${this.infoButtonTemplate}
34
+ <div class="tile-details">
35
+ <div class="item-info">
36
+ ${this.getImageBlockTemplate} ${this.getTitleTemplate}
37
+ </div>
38
+ </div>
39
+
40
+ ${this.getTileStatsTemplate}
41
+ </div>
42
+ `;
43
+ }
44
+
45
+ private get getImageBlockTemplate(): TemplateResult {
46
+ return html`
47
+ <image-block
48
+ .model=${this.model}
49
+ .baseImageUrl=${this.baseImageUrl}
50
+ .viewSize=${'grid'}
51
+ .suppressBlurring=${this.suppressBlurring}
52
+ >
53
+ </image-block>
54
+ `;
55
+ }
56
+
57
+ private get getTitleTemplate() {
58
+ return html`<div id="title">
59
+ <h3 class="truncated">${this.model?.title}</h3>
60
+ </div>`;
61
+ }
62
+
63
+ private get getTileStatsTemplate() {
64
+ return html`
65
+ <div id="item-stats">
66
+ <div id="item-mediatype">${collectionIcon}</div>
67
+
68
+ <div id="stats-row">
69
+ ${this.getItemsTemplate} ${this.getSizeTemplate}
70
+ </div>
71
+ </div>
72
+ `;
73
+ }
74
+
75
+ private get getItemsTemplate() {
76
+ const collectionItems = this.model?.itemCount?.toLocaleString();
77
+
78
+ return html`<span id="item-count"
79
+ >${collectionItems} item${Number(collectionItems) !== 1 ? 's' : ''}</span
80
+ >`;
81
+ }
82
+
83
+ private get getSizeTemplate() {
84
+ const collectionSize = this.model?.collectionSize ?? 0;
85
+
86
+ return collectionSize
87
+ ? html`<span id="item-size">${formatUnitSize(collectionSize, 1)}</span>`
88
+ : ``;
89
+ }
90
+
91
+ private get infoButtonTemplate(): TemplateResult | typeof nothing {
92
+ // &#9432; is an information icon
93
+ return this.showInfoButton
94
+ ? html`<button class="info-button" @click=${this.infoButtonPressed}>
95
+ &#9432;
96
+ <span class="sr-only">${msg('More info')}</span>
97
+ </button>`
98
+ : nothing;
99
+ }
100
+
101
+ private infoButtonPressed(e: PointerEvent) {
102
+ e.preventDefault();
103
+ const event = new CustomEvent<{ x: number; y: number }>(
104
+ 'infoButtonPressed',
105
+ { detail: { x: e.clientX, y: e.clientY } },
106
+ );
107
+ this.dispatchEvent(event);
108
+ }
109
+
110
+ static get styles(): CSSResultGroup {
111
+ const tileBorderColor = css`var(--tileBorderColor, #555555)`;
112
+ const tileBackgroundColor = css`var(--tileBackgroundColor, #666666)`;
113
+ const whiteColor = css`#fff`;
114
+
115
+ return [
116
+ baseTileStyles,
117
+ css`
118
+ .container {
119
+ background-color: ${tileBackgroundColor};
120
+ border: 1px solid ${tileBorderColor};
121
+ }
122
+
123
+ .item-info {
124
+ flex-grow: initial;
125
+ }
126
+
127
+ h4.truncated,
128
+ h3.truncated {
129
+ color: ${whiteColor};
130
+ }
131
+
132
+ #item-mediatype svg {
133
+ filter: invert(100%);
134
+ height: 2.5rem;
135
+ align-items: baseline;
136
+ }
137
+
138
+ .container:hover > #title {
139
+ text-decoration: underline;
140
+ }
141
+
142
+ /* this is a workaround for Safari 15 where the hover effects are not working */
143
+ image-block:hover > #title {
144
+ text-decoration: underline;
145
+ }
146
+
147
+ #item-stats {
148
+ display: flex;
149
+ padding: 0 5px 5px;
150
+ align-items: center;
151
+ }
152
+
153
+ #stats-row {
154
+ display: flex;
155
+ align-items: baseline;
156
+ color: ${whiteColor};
157
+ flex-direction: column;
158
+ margin-left: 10px;
159
+ }
160
+ `,
161
+ ];
162
+ }
163
+ }