@internetarchive/collection-browser 0.4.2 → 0.4.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 (220) hide show
  1. package/.editorconfig +29 -29
  2. package/.github/workflows/ci.yml +26 -26
  3. package/.github/workflows/gh-pages-main.yml +39 -39
  4. package/.github/workflows/npm-publish.yml +39 -39
  5. package/.github/workflows/pr-preview.yml +38 -38
  6. package/.husky/pre-commit +4 -4
  7. package/LICENSE +661 -661
  8. package/README.md +83 -83
  9. package/dist/index.d.ts +9 -9
  10. package/dist/index.js +9 -9
  11. package/dist/src/app-root.d.ts +48 -48
  12. package/dist/src/app-root.js +258 -258
  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 +315 -315
  68. package/dist/src/collection-browser.js +1278 -1270
  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 +78 -78
  79. package/dist/src/collection-facets.js +391 -391
  80. package/dist/src/empty-placeholder.d.ts +11 -11
  81. package/dist/src/empty-placeholder.js +42 -42
  82. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  83. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  84. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  85. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  86. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  87. package/dist/src/mediatype/mediatype-config.js +85 -85
  88. package/dist/src/models.d.ts +112 -112
  89. package/dist/src/models.js +125 -125
  90. package/dist/src/restoration-state-handler.d.ts +46 -45
  91. package/dist/src/restoration-state-handler.js +268 -230
  92. package/dist/src/restoration-state-handler.js.map +1 -1
  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 +429 -428
  105. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  106. package/dist/src/styles/item-image-styles.d.ts +8 -8
  107. package/dist/src/styles/item-image-styles.js +9 -9
  108. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  109. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  110. package/dist/src/tiles/grid/account-tile.d.ts +8 -8
  111. package/dist/src/tiles/grid/account-tile.js +20 -20
  112. package/dist/src/tiles/grid/collection-tile.d.ts +7 -7
  113. package/dist/src/tiles/grid/collection-tile.js +23 -23
  114. package/dist/src/tiles/grid/item-tile.d.ts +24 -24
  115. package/dist/src/tiles/grid/item-tile.js +87 -87
  116. package/dist/src/tiles/grid/tile-stats.d.ts +10 -10
  117. package/dist/src/tiles/grid/tile-stats.js +40 -40
  118. package/dist/src/tiles/image-block.d.ts +17 -17
  119. package/dist/src/tiles/image-block.js +69 -69
  120. package/dist/src/tiles/item-image.d.ts +31 -31
  121. package/dist/src/tiles/item-image.js +106 -106
  122. package/dist/src/tiles/list/account-label.d.ts +1 -1
  123. package/dist/src/tiles/list/account-label.js +6 -6
  124. package/dist/src/tiles/list/date-label.d.ts +1 -1
  125. package/dist/src/tiles/list/date-label.js +12 -12
  126. package/dist/src/tiles/list/tile-list-compact-header.d.ts +12 -12
  127. package/dist/src/tiles/list/tile-list-compact-header.js +41 -41
  128. package/dist/src/tiles/list/tile-list-compact.d.ts +21 -21
  129. package/dist/src/tiles/list/tile-list-compact.js +93 -93
  130. package/dist/src/tiles/list/tile-list.d.ts +50 -50
  131. package/dist/src/tiles/list/tile-list.js +276 -276
  132. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  133. package/dist/src/tiles/mediatype-icon.js +47 -47
  134. package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
  135. package/dist/src/tiles/overlay/icon-overlay.js +40 -40
  136. package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
  137. package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
  138. package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
  139. package/dist/src/tiles/overlay/text-overlay.js +42 -42
  140. package/dist/src/tiles/text-snippet-block.d.ts +29 -29
  141. package/dist/src/tiles/text-snippet-block.js +81 -81
  142. package/dist/src/tiles/tile-dispatcher.d.ts +36 -36
  143. package/dist/src/tiles/tile-dispatcher.js +128 -128
  144. package/dist/src/utils/analytics-events.d.ts +22 -22
  145. package/dist/src/utils/analytics-events.js +24 -24
  146. package/dist/src/utils/array-equals.d.ts +4 -0
  147. package/dist/src/utils/array-equals.js +11 -0
  148. package/dist/src/utils/array-equals.js.map +1 -0
  149. package/dist/src/utils/format-count.d.ts +7 -7
  150. package/dist/src/utils/format-count.js +76 -76
  151. package/dist/src/utils/format-date.d.ts +2 -2
  152. package/dist/src/utils/format-date.js +23 -23
  153. package/dist/test/collection-browser.test.d.ts +1 -1
  154. package/dist/test/collection-browser.test.js +646 -646
  155. package/dist/test/collection-browser.test.js.map +1 -1
  156. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  157. package/dist/test/collection-facets/facets-template.test.js +62 -62
  158. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  159. package/dist/test/collection-facets/more-facets-content.test.js +114 -114
  160. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  161. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  162. package/dist/test/collection-facets.test.d.ts +2 -2
  163. package/dist/test/collection-facets.test.js +544 -544
  164. package/dist/test/empty-placeholder.test.d.ts +1 -1
  165. package/dist/test/empty-placeholder.test.js +33 -33
  166. package/dist/test/icon-overlay.test.d.ts +1 -1
  167. package/dist/test/icon-overlay.test.js +24 -24
  168. package/dist/test/image-block.test.d.ts +1 -1
  169. package/dist/test/image-block.test.js +48 -48
  170. package/dist/test/item-image.test.d.ts +1 -1
  171. package/dist/test/item-image.test.js +80 -80
  172. package/dist/test/mediatype-config.test.d.ts +1 -1
  173. package/dist/test/mediatype-config.test.js +16 -16
  174. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  175. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  176. package/dist/test/mocks/mock-collection-name-cache.d.ts +7 -7
  177. package/dist/test/mocks/mock-collection-name-cache.js +13 -13
  178. package/dist/test/mocks/mock-search-responses.d.ts +12 -12
  179. package/dist/test/mocks/mock-search-responses.js +341 -341
  180. package/dist/test/mocks/mock-search-service.d.ts +13 -13
  181. package/dist/test/mocks/mock-search-service.js +40 -40
  182. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  183. package/dist/test/restoration-state-handler.test.js +125 -125
  184. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  185. package/dist/test/sort-filter-bar/alpha-bar.test.js +43 -43
  186. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  187. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +141 -141
  188. package/dist/test/text-overlay.test.d.ts +1 -1
  189. package/dist/test/text-overlay.test.js +48 -48
  190. package/dist/test/text-snippet-block.test.d.ts +1 -1
  191. package/dist/test/text-snippet-block.test.js +57 -57
  192. package/dist/test/tile-stats.test.d.ts +1 -1
  193. package/dist/test/tile-stats.test.js +33 -33
  194. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  195. package/dist/test/tiles/grid/item-tile.test.js +107 -107
  196. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  197. package/dist/test/tiles/list/tile-list-compact.test.js +92 -92
  198. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  199. package/dist/test/tiles/list/tile-list.test.js +123 -123
  200. package/dist/test/utils/array-equals.test.d.ts +1 -0
  201. package/dist/test/utils/array-equals.test.js +27 -0
  202. package/dist/test/utils/array-equals.test.js.map +1 -0
  203. package/dist/test/utils/format-count.test.d.ts +1 -1
  204. package/dist/test/utils/format-count.test.js +23 -23
  205. package/dist/test/utils/format-date.test.d.ts +1 -1
  206. package/dist/test/utils/format-date.test.js +17 -17
  207. package/index.html +24 -24
  208. package/local.archive.org.cert +86 -86
  209. package/local.archive.org.key +27 -27
  210. package/package.json +1 -1
  211. package/renovate.json +6 -6
  212. package/src/collection-browser.ts +60 -28
  213. package/src/restoration-state-handler.ts +68 -14
  214. package/src/sort-filter-bar/sort-filter-bar.ts +1 -0
  215. package/src/utils/array-equals.ts +8 -0
  216. package/test/collection-browser.test.ts +7 -7
  217. package/test/utils/array-equals.test.ts +31 -0
  218. package/tsconfig.json +21 -21
  219. package/web-dev-server.config.mjs +30 -30
  220. package/web-test-runner.config.mjs +41 -41
@@ -1,22 +1,22 @@
1
- import { __decorate } from "tslib";
2
- /* eslint-disable import/no-duplicates */
3
- import { css, html, LitElement, nothing, } from 'lit';
4
- import { customElement, property } from 'lit/decorators.js';
5
- import { ifDefined } from 'lit/directives/if-defined.js';
6
- import { formatDate } from '../../utils/format-date';
7
- import '../image-block';
8
- import '../text-snippet-block';
9
- import '../item-image';
10
- import '../mediatype-icon';
11
- import './tile-stats';
12
- let ItemTile = class ItemTile extends LitElement {
13
- constructor() {
14
- super(...arguments);
15
- this.loggedIn = false;
16
- }
17
- render() {
18
- var _a, _b, _c, _d, _e;
19
- const itemTitle = (_a = this.model) === null || _a === void 0 ? void 0 : _a.title;
1
+ import { __decorate } from "tslib";
2
+ /* eslint-disable import/no-duplicates */
3
+ import { css, html, LitElement, nothing, } from 'lit';
4
+ import { customElement, property } from 'lit/decorators.js';
5
+ import { ifDefined } from 'lit/directives/if-defined.js';
6
+ import { formatDate } from '../../utils/format-date';
7
+ import '../image-block';
8
+ import '../text-snippet-block';
9
+ import '../item-image';
10
+ import '../mediatype-icon';
11
+ import './tile-stats';
12
+ let ItemTile = class ItemTile extends LitElement {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.loggedIn = false;
16
+ }
17
+ render() {
18
+ var _a, _b, _c, _d, _e;
19
+ const itemTitle = (_a = this.model) === null || _a === void 0 ? void 0 : _a.title;
20
20
  return html `
21
21
  <div class="container">
22
22
  <div class="item-info">
@@ -38,8 +38,8 @@ let ItemTile = class ItemTile extends LitElement {
38
38
 
39
39
  ${this.textSnippetsTemplate}
40
40
 
41
- ${this.doesSortedByDate
42
- ? this.sortedDateInfoTemplate
41
+ ${this.doesSortedByDate
42
+ ? this.sortedDateInfoTemplate
43
43
  : this.creatorTemplate}
44
44
  </div>
45
45
 
@@ -51,66 +51,66 @@ let ItemTile = class ItemTile extends LitElement {
51
51
  </tile-stats>
52
52
  </div>
53
53
  </div>
54
- `;
55
- }
56
- /**
57
- * Templates
58
- */
59
- get doesSortedByDate() {
60
- var _a;
61
- return ['date', 'reviewdate', 'addeddate', 'publicdate'].includes((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field);
62
- }
63
- get sortedDateInfoTemplate() {
64
- var _a, _b, _c, _d, _e;
65
- let sortedValue;
66
- switch ((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field) {
67
- case 'date':
68
- sortedValue = { field: 'published', value: (_b = this.model) === null || _b === void 0 ? void 0 : _b.datePublished };
69
- break;
70
- case 'reviewdate':
71
- sortedValue = { field: 'reviewed', value: (_c = this.model) === null || _c === void 0 ? void 0 : _c.dateReviewed };
72
- break;
73
- case 'addeddate':
74
- sortedValue = { field: 'added', value: (_d = this.model) === null || _d === void 0 ? void 0 : _d.dateAdded };
75
- break;
76
- case 'publicdate':
77
- sortedValue = { field: 'archived', value: (_e = this.model) === null || _e === void 0 ? void 0 : _e.dateArchived };
78
- break;
79
- default:
80
- break;
81
- }
54
+ `;
55
+ }
56
+ /**
57
+ * Templates
58
+ */
59
+ get doesSortedByDate() {
60
+ var _a;
61
+ return ['date', 'reviewdate', 'addeddate', 'publicdate'].includes((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field);
62
+ }
63
+ get sortedDateInfoTemplate() {
64
+ var _a, _b, _c, _d, _e;
65
+ let sortedValue;
66
+ switch ((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field) {
67
+ case 'date':
68
+ sortedValue = { field: 'published', value: (_b = this.model) === null || _b === void 0 ? void 0 : _b.datePublished };
69
+ break;
70
+ case 'reviewdate':
71
+ sortedValue = { field: 'reviewed', value: (_c = this.model) === null || _c === void 0 ? void 0 : _c.dateReviewed };
72
+ break;
73
+ case 'addeddate':
74
+ sortedValue = { field: 'added', value: (_d = this.model) === null || _d === void 0 ? void 0 : _d.dateAdded };
75
+ break;
76
+ case 'publicdate':
77
+ sortedValue = { field: 'archived', value: (_e = this.model) === null || _e === void 0 ? void 0 : _e.dateArchived };
78
+ break;
79
+ default:
80
+ break;
81
+ }
82
82
  return html `
83
83
  <div class="date-sorted-by truncated">
84
84
  <span>
85
85
  ${sortedValue === null || sortedValue === void 0 ? void 0 : sortedValue.field} ${formatDate(sortedValue === null || sortedValue === void 0 ? void 0 : sortedValue.value, 'long')}
86
86
  </span>
87
87
  </div>
88
- `;
89
- }
90
- get creatorTemplate() {
91
- var _a, _b;
88
+ `;
89
+ }
90
+ get creatorTemplate() {
91
+ var _a, _b;
92
92
  return html `
93
93
  <div class="created-by truncated">
94
- ${((_a = this.model) === null || _a === void 0 ? void 0 : _a.creator)
95
- ? html `<span>by&nbsp;${(_b = this.model) === null || _b === void 0 ? void 0 : _b.creator}</span>`
94
+ ${((_a = this.model) === null || _a === void 0 ? void 0 : _a.creator)
95
+ ? html `<span>by&nbsp;${(_b = this.model) === null || _b === void 0 ? void 0 : _b.creator}</span>`
96
96
  : nothing}
97
97
  </div>
98
- `;
99
- }
100
- get textSnippetsTemplate() {
101
- var _a;
102
- if (!this.hasSnippets)
103
- return nothing;
98
+ `;
99
+ }
100
+ get textSnippetsTemplate() {
101
+ var _a;
102
+ if (!this.hasSnippets)
103
+ return nothing;
104
104
  return html `<text-snippet-block
105
105
  viewsize="grid"
106
106
  .snippets=${(_a = this.model) === null || _a === void 0 ? void 0 : _a.snippets}
107
- ></text-snippet-block>`;
108
- }
109
- get hasSnippets() {
110
- var _a, _b;
111
- return !!((_b = (_a = this.model) === null || _a === void 0 ? void 0 : _a.snippets) === null || _b === void 0 ? void 0 : _b.length);
112
- }
113
- static get styles() {
107
+ ></text-snippet-block>`;
108
+ }
109
+ get hasSnippets() {
110
+ var _a, _b;
111
+ return !!((_b = (_a = this.model) === null || _a === void 0 ? void 0 : _a.snippets) === null || _b === void 0 ? void 0 : _b.length);
112
+ }
113
+ static get styles() {
114
114
  return css `
115
115
  .container {
116
116
  background-color: #ffffff;
@@ -189,23 +189,23 @@ let ItemTile = class ItemTile extends LitElement {
189
189
  height: 4rem;
190
190
  display: -webkit-box;
191
191
  }
192
- `;
193
- }
194
- };
195
- __decorate([
196
- property({ type: String })
197
- ], ItemTile.prototype, "baseImageUrl", void 0);
198
- __decorate([
199
- property({ type: Boolean })
200
- ], ItemTile.prototype, "loggedIn", void 0);
201
- __decorate([
202
- property({ type: Object })
203
- ], ItemTile.prototype, "model", void 0);
204
- __decorate([
205
- property({ type: Object })
206
- ], ItemTile.prototype, "sortParam", void 0);
207
- ItemTile = __decorate([
208
- customElement('item-tile')
209
- ], ItemTile);
210
- export { ItemTile };
192
+ `;
193
+ }
194
+ };
195
+ __decorate([
196
+ property({ type: String })
197
+ ], ItemTile.prototype, "baseImageUrl", void 0);
198
+ __decorate([
199
+ property({ type: Boolean })
200
+ ], ItemTile.prototype, "loggedIn", void 0);
201
+ __decorate([
202
+ property({ type: Object })
203
+ ], ItemTile.prototype, "model", void 0);
204
+ __decorate([
205
+ property({ type: Object })
206
+ ], ItemTile.prototype, "sortParam", void 0);
207
+ ItemTile = __decorate([
208
+ customElement('item-tile')
209
+ ], ItemTile);
210
+ export { ItemTile };
211
211
  //# sourceMappingURL=item-tile.js.map
@@ -1,10 +1,10 @@
1
- import { CSSResultGroup, LitElement } from 'lit';
2
- export declare class TileStats extends LitElement {
3
- mediatype?: string;
4
- itemCount?: number;
5
- viewCount?: number;
6
- favCount?: number;
7
- commentCount?: number;
8
- render(): import("lit-html").TemplateResult<1>;
9
- static get styles(): CSSResultGroup;
10
- }
1
+ import { CSSResultGroup, LitElement } from 'lit';
2
+ export declare class TileStats extends LitElement {
3
+ mediatype?: string;
4
+ itemCount?: number;
5
+ viewCount?: number;
6
+ favCount?: number;
7
+ commentCount?: number;
8
+ render(): import("lit-html").TemplateResult<1>;
9
+ static get styles(): CSSResultGroup;
10
+ }
@@ -1,18 +1,18 @@
1
- import { __decorate } from "tslib";
2
- import { css, html, LitElement } from 'lit';
3
- import { customElement, property } from 'lit/decorators.js';
4
- import { favoriteFilledIcon } from '../../assets/img/icons/favorite-filled';
5
- import { reviewsIcon } from '../../assets/img/icons/reviews';
6
- import { uploadIcon } from '../../assets/img/icons/upload';
7
- import { viewsIcon } from '../../assets/img/icons/views';
8
- import { formatCount } from '../../utils/format-count';
9
- let TileStats = class TileStats extends LitElement {
10
- render() {
11
- const formattedFavCount = formatCount(this.favCount, 'short', 'short');
12
- const formattedReviewCount = formatCount(this.commentCount, 'short', 'short');
13
- const uploadsOrViewsTitle = this.mediatype === 'account'
14
- ? `${this.itemCount} uploads`
15
- : `${this.viewCount} all-time views`;
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement } from 'lit';
3
+ import { customElement, property } from 'lit/decorators.js';
4
+ import { favoriteFilledIcon } from '../../assets/img/icons/favorite-filled';
5
+ import { reviewsIcon } from '../../assets/img/icons/reviews';
6
+ import { uploadIcon } from '../../assets/img/icons/upload';
7
+ import { viewsIcon } from '../../assets/img/icons/views';
8
+ import { formatCount } from '../../utils/format-count';
9
+ let TileStats = class TileStats extends LitElement {
10
+ render() {
11
+ const formattedFavCount = formatCount(this.favCount, 'short', 'short');
12
+ const formattedReviewCount = formatCount(this.commentCount, 'short', 'short');
13
+ const uploadsOrViewsTitle = this.mediatype === 'account'
14
+ ? `${this.itemCount} uploads`
15
+ : `${this.viewCount} all-time views`;
16
16
  return html `
17
17
  <div class="item-stats">
18
18
  <p class="sr-only">
@@ -48,9 +48,9 @@ let TileStats = class TileStats extends LitElement {
48
48
  </li>
49
49
  </ul>
50
50
  </div>
51
- `;
52
- }
53
- static get styles() {
51
+ `;
52
+ }
53
+ static get styles() {
54
54
  return css `
55
55
  mediatype-icon {
56
56
  --iconHeight: 25px;
@@ -115,26 +115,26 @@ let TileStats = class TileStats extends LitElement {
115
115
  display: block;
116
116
  text-align: center;
117
117
  }
118
- `;
119
- }
120
- };
121
- __decorate([
122
- property({ type: String })
123
- ], TileStats.prototype, "mediatype", void 0);
124
- __decorate([
125
- property({ type: Number })
126
- ], TileStats.prototype, "itemCount", void 0);
127
- __decorate([
128
- property({ type: Number })
129
- ], TileStats.prototype, "viewCount", void 0);
130
- __decorate([
131
- property({ type: Number })
132
- ], TileStats.prototype, "favCount", void 0);
133
- __decorate([
134
- property({ type: Number })
135
- ], TileStats.prototype, "commentCount", void 0);
136
- TileStats = __decorate([
137
- customElement('tile-stats')
138
- ], TileStats);
139
- export { TileStats };
118
+ `;
119
+ }
120
+ };
121
+ __decorate([
122
+ property({ type: String })
123
+ ], TileStats.prototype, "mediatype", void 0);
124
+ __decorate([
125
+ property({ type: Number })
126
+ ], TileStats.prototype, "itemCount", void 0);
127
+ __decorate([
128
+ property({ type: Number })
129
+ ], TileStats.prototype, "viewCount", void 0);
130
+ __decorate([
131
+ property({ type: Number })
132
+ ], TileStats.prototype, "favCount", void 0);
133
+ __decorate([
134
+ property({ type: Number })
135
+ ], TileStats.prototype, "commentCount", void 0);
136
+ TileStats = __decorate([
137
+ customElement('tile-stats')
138
+ ], TileStats);
139
+ export { TileStats };
140
140
  //# sourceMappingURL=tile-stats.js.map
@@ -1,17 +1,17 @@
1
- import { CSSResultGroup, LitElement, nothing } from 'lit';
2
- import type { TileModel } from '../models';
3
- import './overlay/icon-overlay';
4
- import './overlay/text-overlay';
5
- export declare class ImageBlock extends LitElement {
6
- baseImageUrl?: string;
7
- isCompactTile: boolean;
8
- isListTile: boolean;
9
- loggedIn: boolean;
10
- model?: TileModel;
11
- viewSize: string;
12
- render(): import("lit-html").TemplateResult<1> | typeof nothing;
13
- private get baseClass();
14
- private get iconOverlayTemplate();
15
- private get textOverlayTemplate();
16
- static get styles(): CSSResultGroup;
17
- }
1
+ import { CSSResultGroup, LitElement, nothing } from 'lit';
2
+ import type { TileModel } from '../models';
3
+ import './overlay/icon-overlay';
4
+ import './overlay/text-overlay';
5
+ export declare class ImageBlock extends LitElement {
6
+ baseImageUrl?: string;
7
+ isCompactTile: boolean;
8
+ isListTile: boolean;
9
+ loggedIn: boolean;
10
+ model?: TileModel;
11
+ viewSize: string;
12
+ render(): import("lit-html").TemplateResult<1> | typeof nothing;
13
+ private get baseClass();
14
+ private get iconOverlayTemplate();
15
+ private get textOverlayTemplate();
16
+ static get styles(): CSSResultGroup;
17
+ }
@@ -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,21 +29,21 @@ 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}
@@ -51,14 +51,14 @@ let ImageBlock = class ImageBlock extends LitElement {
51
51
  .isCompactTile=${this.isCompactTile}
52
52
  >
53
53
  </icon-overlay>
54
- `;
55
- }
56
- get textOverlayTemplate() {
57
- var _a, _b, _c;
58
- if (this.isListTile)
59
- return nothing;
60
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.loginRequired) && !((_b = this.model) === null || _b === void 0 ? void 0 : _b.contentWarning))
61
- return nothing;
54
+ `;
55
+ }
56
+ get textOverlayTemplate() {
57
+ var _a, _b, _c;
58
+ if (this.isListTile)
59
+ return nothing;
60
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.loginRequired) && !((_b = this.model) === null || _b === void 0 ? void 0 : _b.contentWarning))
61
+ return nothing;
62
62
  return html `
63
63
  <text-overlay
64
64
  .loggedIn=${this.loggedIn}
@@ -66,9 +66,9 @@ let ImageBlock = class ImageBlock extends LitElement {
66
66
  ?iconRequired=${true}
67
67
  >
68
68
  </text-overlay>
69
- `;
70
- }
71
- static get styles() {
69
+ `;
70
+ }
71
+ static get styles() {
72
72
  return css `
73
73
  div {
74
74
  display: flex;
@@ -111,29 +111,29 @@ let ImageBlock = class ImageBlock extends LitElement {
111
111
  width: 30px;
112
112
  height: 30px;
113
113
  }
114
- `;
115
- }
116
- };
117
- __decorate([
118
- property({ type: String })
119
- ], ImageBlock.prototype, "baseImageUrl", void 0);
120
- __decorate([
121
- property({ type: Boolean })
122
- ], ImageBlock.prototype, "isCompactTile", void 0);
123
- __decorate([
124
- property({ type: Boolean })
125
- ], ImageBlock.prototype, "isListTile", void 0);
126
- __decorate([
127
- property({ type: Boolean })
128
- ], ImageBlock.prototype, "loggedIn", void 0);
129
- __decorate([
130
- property({ type: Object })
131
- ], ImageBlock.prototype, "model", void 0);
132
- __decorate([
133
- property({ type: String })
134
- ], ImageBlock.prototype, "viewSize", void 0);
135
- ImageBlock = __decorate([
136
- customElement('image-block')
137
- ], ImageBlock);
138
- export { ImageBlock };
114
+ `;
115
+ }
116
+ };
117
+ __decorate([
118
+ property({ type: String })
119
+ ], ImageBlock.prototype, "baseImageUrl", void 0);
120
+ __decorate([
121
+ property({ type: Boolean })
122
+ ], ImageBlock.prototype, "isCompactTile", void 0);
123
+ __decorate([
124
+ property({ type: Boolean })
125
+ ], ImageBlock.prototype, "isListTile", void 0);
126
+ __decorate([
127
+ property({ type: Boolean })
128
+ ], ImageBlock.prototype, "loggedIn", void 0);
129
+ __decorate([
130
+ property({ type: Object })
131
+ ], ImageBlock.prototype, "model", void 0);
132
+ __decorate([
133
+ property({ type: String })
134
+ ], ImageBlock.prototype, "viewSize", void 0);
135
+ ImageBlock = __decorate([
136
+ customElement('image-block')
137
+ ], ImageBlock);
138
+ export { ImageBlock };
139
139
  //# 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
+ }