@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,90 +1,90 @@
1
- import { css, CSSResultGroup, html, TemplateResult } from 'lit';
2
- import { customElement, property } from 'lit/decorators.js';
3
- import { baseTileStyles } from './styles/tile-grid-shared-styles';
4
- import { BaseTileComponent } from '../base-tile-component';
5
- import '../image-block';
6
-
7
- @customElement('search-tile')
8
- export class SearchTile extends BaseTileComponent {
9
- /*
10
- * Reactive properties inherited from BaseTileComponent:
11
- * - model?: TileModel;
12
- * - currentWidth?: number;
13
- * - currentHeight?: number;
14
- * - baseNavigationUrl?: string;
15
- * - baseImageUrl?: string;
16
- * - collectionPagePath?: string;
17
- * - sortParam: SortParam | null = null;
18
- * - creatorFilter?: string;
19
- * - mobileBreakpoint?: number;
20
- * - loggedIn = false;
21
- * - suppressBlurring = false;
22
- */
23
-
24
- @property({ type: Boolean }) showInfoButton = false;
25
-
26
- render() {
27
- return html`
28
- <div class="container">
29
- <div class="tile-details">
30
- <div class="item-info">
31
- ${this.getImageBlockTemplate} ${this.getTitleTemplate}
32
- </div>
33
- </div>
34
- </div>
35
- `;
36
- }
37
-
38
- private get getImageBlockTemplate(): TemplateResult {
39
- return html`
40
- <image-block
41
- .model=${this.model}
42
- .baseImageUrl=${this.baseImageUrl}
43
- .viewSize=${'grid'}
44
- .suppressBlurring=${this.suppressBlurring}
45
- >
46
- </image-block>
47
- `;
48
- }
49
-
50
- private get getTitleTemplate() {
51
- return html`<div id="title">
52
- <h3 class="truncated">${this.model?.title}</h3>
53
- </div>`;
54
- }
55
-
56
- static get styles(): CSSResultGroup {
57
- const tileBorderColor = css`var(--tileBorderColor, #555555)`;
58
- const tileBackgroundColor = css`var(--tileBackgroundColor, #666666)`;
59
- const whiteColor = css`#fff`;
60
-
61
- return [
62
- baseTileStyles,
63
- css`
64
- .container {
65
- background-color: ${tileBackgroundColor};
66
- border: 1px solid ${tileBorderColor};
67
- }
68
-
69
- .item-info {
70
- flex-grow: initial;
71
- }
72
-
73
- h4.truncated,
74
- h3.truncated {
75
- color: ${whiteColor};
76
- -webkit-line-clamp: 4;
77
- }
78
-
79
- .container:hover > #title {
80
- text-decoration: underline;
81
- }
82
-
83
- /* this is a workaround for Safari 15 where the hover effects are not working */
84
- image-block:hover > #title {
85
- text-decoration: underline;
86
- }
87
- `,
88
- ];
89
- }
90
- }
1
+ import { css, CSSResultGroup, html, TemplateResult } from 'lit';
2
+ import { customElement, property } from 'lit/decorators.js';
3
+ import { baseTileStyles } from './styles/tile-grid-shared-styles';
4
+ import { BaseTileComponent } from '../base-tile-component';
5
+ import '../image-block';
6
+
7
+ @customElement('search-tile')
8
+ export class SearchTile extends BaseTileComponent {
9
+ /*
10
+ * Reactive properties inherited from BaseTileComponent:
11
+ * - model?: TileModel;
12
+ * - currentWidth?: number;
13
+ * - currentHeight?: number;
14
+ * - baseNavigationUrl?: string;
15
+ * - baseImageUrl?: string;
16
+ * - collectionPagePath?: string;
17
+ * - sortParam: SortParam | null = null;
18
+ * - creatorFilter?: string;
19
+ * - mobileBreakpoint?: number;
20
+ * - loggedIn = false;
21
+ * - suppressBlurring = false;
22
+ */
23
+
24
+ @property({ type: Boolean }) showInfoButton = false;
25
+
26
+ render() {
27
+ return html`
28
+ <div class="container">
29
+ <div class="tile-details">
30
+ <div class="item-info">
31
+ ${this.getImageBlockTemplate} ${this.getTitleTemplate}
32
+ </div>
33
+ </div>
34
+ </div>
35
+ `;
36
+ }
37
+
38
+ private get getImageBlockTemplate(): TemplateResult {
39
+ return html`
40
+ <image-block
41
+ .model=${this.model}
42
+ .baseImageUrl=${this.baseImageUrl}
43
+ .viewSize=${'grid'}
44
+ .suppressBlurring=${this.suppressBlurring}
45
+ >
46
+ </image-block>
47
+ `;
48
+ }
49
+
50
+ private get getTitleTemplate() {
51
+ return html`<div id="title">
52
+ <h3 class="truncated">${this.model?.title}</h3>
53
+ </div>`;
54
+ }
55
+
56
+ static get styles(): CSSResultGroup {
57
+ const tileBorderColor = css`var(--tileBorderColor, #555555)`;
58
+ const tileBackgroundColor = css`var(--tileBackgroundColor, #666666)`;
59
+ const whiteColor = css`#fff`;
60
+
61
+ return [
62
+ baseTileStyles,
63
+ css`
64
+ .container {
65
+ background-color: ${tileBackgroundColor};
66
+ border: 1px solid ${tileBorderColor};
67
+ }
68
+
69
+ .item-info {
70
+ flex-grow: initial;
71
+ }
72
+
73
+ h4.truncated,
74
+ h3.truncated {
75
+ color: ${whiteColor};
76
+ -webkit-line-clamp: 4;
77
+ }
78
+
79
+ .container:hover > #title {
80
+ text-decoration: underline;
81
+ }
82
+
83
+ /* this is a workaround for Safari 15 where the hover effects are not working */
84
+ image-block:hover > #title {
85
+ text-decoration: underline;
86
+ }
87
+ `,
88
+ ];
89
+ }
90
+ }
@@ -1,130 +1,130 @@
1
- import { css } from 'lit';
2
- import { srOnlyStyle } from '../../../styles/sr-only';
3
-
4
- /**
5
- * Base tile styles
6
- */
7
-
8
- const tileBackgroundColor = css`var(--tileBackgroundColor, #ffffff)`;
9
- const tileCornerRadius = css`var(--tileCornerRadius, 4px)`;
10
-
11
- export const baseTileStyles = css`
12
- /* Include .sr-only styles for all tiles */
13
- ${srOnlyStyle}
14
-
15
- .container {
16
- background-color: ${tileBackgroundColor};
17
- border: 1px #2c2c2c;
18
- border-radius: ${tileCornerRadius};
19
- box-shadow: var(--tileBoxShadow, 1px 1px 2px 0);
20
- box-sizing: border-box;
21
- height: 100%;
22
- display: flex;
23
- flex-direction: column;
24
- width: 100%;
25
- }
26
-
27
- image-block {
28
- display: block;
29
- position: relative;
30
- text-align: center;
31
- }
32
-
33
- .tile-details {
34
- display: flex;
35
- flex-direction: column;
36
- height: 100%;
37
- row-gap: 10px;
38
- font-family: 'Helvetica Neue', ui-sans-serif, system-ui, sans-serif;
39
- }
40
-
41
- .item-info {
42
- display: flex;
43
- flex-direction: column;
44
- row-gap: 5px;
45
- flex-grow: 1;
46
- }
47
-
48
- #title {
49
- padding: 0 5px;
50
- }
51
-
52
- .created-by,
53
- .date-sorted-by,
54
- .volume-issue,
55
- .archivist-since {
56
- display: flex;
57
- justify-content: left;
58
- align-items: flex-start;
59
- padding: 0 5px;
60
- }
61
-
62
- .truncated {
63
- flex: 1;
64
- color: #2c2c2c;
65
- min-width: 0; /* Important for long words! */
66
- text-align: left;
67
- line-height: 15px;
68
- text-overflow: ellipsis;
69
- overflow: hidden;
70
- word-wrap: break-word;
71
- -webkit-line-clamp: 3;
72
- -webkit-box-orient: vertical;
73
- }
74
-
75
- h4.truncated,
76
- h3.truncated {
77
- display: -webkit-box;
78
- margin: 0px;
79
- line-height: 15px;
80
- font-size: 14px;
81
- font-weight: 500;
82
- padding-bottom: 1px;
83
- }
84
-
85
- span {
86
- display: -webkit-box;
87
- font-size: 1.4rem;
88
- line-height: 15px;
89
- overflow: hidden;
90
- word-wrap: break-word;
91
- -webkit-line-clamp: 1;
92
- -webkit-box-orient: vertical;
93
- padding-bottom: 1px;
94
- }
95
-
96
- .container:hover > .tile-details > .item-info > #title > .truncated {
97
- text-decoration: underline;
98
- }
99
-
100
- /** this is a workaround for Safari 15 where the hover effects are not working */
101
- #title:hover > .truncated {
102
- text-decoration: underline;
103
- }
104
-
105
- .info-button {
106
- position: absolute;
107
- right: 10px;
108
- top: 10px;
109
- margin: 0;
110
- padding: 0;
111
- border: none;
112
- border-radius: 50%;
113
- display: flex;
114
- justify-content: center;
115
- align-items: center;
116
- background: rgba(220, 220, 220, 0.5);
117
- color: white;
118
- font-size: 2.4rem;
119
- font-weight: bold;
120
- line-height: 1;
121
- text-shadow: black 1px 1px 3px;
122
- overflow: visible;
123
- aspect-ratio: 1 / 1;
124
- z-index: 1;
125
- }
126
-
127
- .hidden {
128
- display: none;
129
- }
130
- `;
1
+ import { css } from 'lit';
2
+ import { srOnlyStyle } from '../../../styles/sr-only';
3
+
4
+ /**
5
+ * Base tile styles
6
+ */
7
+
8
+ const tileBackgroundColor = css`var(--tileBackgroundColor, #ffffff)`;
9
+ const tileCornerRadius = css`var(--tileCornerRadius, 4px)`;
10
+
11
+ export const baseTileStyles = css`
12
+ /* Include .sr-only styles for all tiles */
13
+ ${srOnlyStyle}
14
+
15
+ .container {
16
+ background-color: ${tileBackgroundColor};
17
+ border: 1px #2c2c2c;
18
+ border-radius: ${tileCornerRadius};
19
+ box-shadow: var(--tileBoxShadow, 1px 1px 2px 0);
20
+ box-sizing: border-box;
21
+ height: 100%;
22
+ display: flex;
23
+ flex-direction: column;
24
+ width: 100%;
25
+ }
26
+
27
+ image-block {
28
+ display: block;
29
+ position: relative;
30
+ text-align: center;
31
+ }
32
+
33
+ .tile-details {
34
+ display: flex;
35
+ flex-direction: column;
36
+ height: 100%;
37
+ row-gap: 10px;
38
+ font-family: 'Helvetica Neue', ui-sans-serif, system-ui, sans-serif;
39
+ }
40
+
41
+ .item-info {
42
+ display: flex;
43
+ flex-direction: column;
44
+ row-gap: 5px;
45
+ flex-grow: 1;
46
+ }
47
+
48
+ #title {
49
+ padding: 0 5px;
50
+ }
51
+
52
+ .created-by,
53
+ .date-sorted-by,
54
+ .volume-issue,
55
+ .archivist-since {
56
+ display: flex;
57
+ justify-content: left;
58
+ align-items: flex-start;
59
+ padding: 0 5px;
60
+ }
61
+
62
+ .truncated {
63
+ flex: 1;
64
+ color: #2c2c2c;
65
+ min-width: 0; /* Important for long words! */
66
+ text-align: left;
67
+ line-height: 15px;
68
+ text-overflow: ellipsis;
69
+ overflow: hidden;
70
+ word-wrap: break-word;
71
+ -webkit-line-clamp: 3;
72
+ -webkit-box-orient: vertical;
73
+ }
74
+
75
+ h4.truncated,
76
+ h3.truncated {
77
+ display: -webkit-box;
78
+ margin: 0px;
79
+ line-height: 15px;
80
+ font-size: 14px;
81
+ font-weight: 500;
82
+ padding-bottom: 1px;
83
+ }
84
+
85
+ span {
86
+ display: -webkit-box;
87
+ font-size: 1.4rem;
88
+ line-height: 15px;
89
+ overflow: hidden;
90
+ word-wrap: break-word;
91
+ -webkit-line-clamp: 1;
92
+ -webkit-box-orient: vertical;
93
+ padding-bottom: 1px;
94
+ }
95
+
96
+ .container:hover > .tile-details > .item-info > #title > .truncated {
97
+ text-decoration: underline;
98
+ }
99
+
100
+ /** this is a workaround for Safari 15 where the hover effects are not working */
101
+ #title:hover > .truncated {
102
+ text-decoration: underline;
103
+ }
104
+
105
+ .info-button {
106
+ position: absolute;
107
+ right: 10px;
108
+ top: 10px;
109
+ margin: 0;
110
+ padding: 0;
111
+ border: none;
112
+ border-radius: 50%;
113
+ display: flex;
114
+ justify-content: center;
115
+ align-items: center;
116
+ background: rgba(220, 220, 220, 0.5);
117
+ color: white;
118
+ font-size: 2.4rem;
119
+ font-weight: bold;
120
+ line-height: 1;
121
+ text-shadow: black 1px 1px 3px;
122
+ overflow: visible;
123
+ aspect-ratio: 1 / 1;
124
+ z-index: 1;
125
+ }
126
+
127
+ .hidden {
128
+ display: none;
129
+ }
130
+ `;