@internetarchive/collection-browser 0.3.4 → 0.3.5-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) 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 +43 -43
  12. package/dist/src/app-root.js +233 -233
  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 +245 -247
  68. package/dist/src/collection-browser.js +1359 -1398
  69. package/dist/src/collection-browser.js.map +1 -1
  70. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -0
  71. package/dist/src/collection-facets/facet-tombstone-row.js +43 -0
  72. package/dist/src/collection-facets/facet-tombstone-row.js.map +1 -0
  73. package/dist/src/collection-facets/facets-template.d.ts +16 -16
  74. package/dist/src/collection-facets/facets-template.js +125 -125
  75. package/dist/src/collection-facets/more-facets-content.d.ts +76 -76
  76. package/dist/src/collection-facets/more-facets-content.js +353 -353
  77. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  78. package/dist/src/collection-facets/more-facets-pagination.js +192 -192
  79. package/dist/src/collection-facets.d.ts +77 -75
  80. package/dist/src/collection-facets.js +551 -525
  81. package/dist/src/collection-facets.js.map +1 -1
  82. package/dist/src/empty-placeholder.d.ts +11 -11
  83. package/dist/src/empty-placeholder.js +42 -42
  84. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  85. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  86. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  87. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  88. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  89. package/dist/src/mediatype/mediatype-config.js +85 -85
  90. package/dist/src/models.d.ts +102 -102
  91. package/dist/src/models.js +117 -117
  92. package/dist/src/restoration-state-handler.d.ts +45 -45
  93. package/dist/src/restoration-state-handler.js +220 -220
  94. package/dist/src/sort-filter-bar/alpha-bar.d.ts +9 -9
  95. package/dist/src/sort-filter-bar/alpha-bar.js +41 -41
  96. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  97. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  98. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  99. package/dist/src/sort-filter-bar/img/list.js +2 -2
  100. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  101. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  102. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  103. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  104. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +107 -107
  105. package/dist/src/sort-filter-bar/sort-filter-bar.js +423 -423
  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 +35 -35
  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 +103 -103
  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 +20 -20
  129. package/dist/src/tiles/list/tile-list-compact.js +87 -87
  130. package/dist/src/tiles/list/tile-list.d.ts +50 -50
  131. package/dist/src/tiles/list/tile-list.js +268 -268
  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 +7 -7
  135. package/dist/src/tiles/overlay/icon-overlay.js +30 -30
  136. package/dist/src/tiles/overlay/text-overlay.d.ts +8 -8
  137. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  138. package/dist/src/tiles/text-snippet-block.d.ts +29 -29
  139. package/dist/src/tiles/text-snippet-block.js +81 -81
  140. package/dist/src/tiles/tile-dispatcher.d.ts +36 -36
  141. package/dist/src/tiles/tile-dispatcher.js +128 -128
  142. package/dist/src/utils/analytics-events.d.ts +22 -22
  143. package/dist/src/utils/analytics-events.js +24 -24
  144. package/dist/src/utils/format-count.d.ts +7 -7
  145. package/dist/src/utils/format-count.js +76 -76
  146. package/dist/src/utils/format-date.d.ts +2 -2
  147. package/dist/src/utils/format-date.js +23 -23
  148. package/dist/test/collection-browser.test.d.ts +1 -1
  149. package/dist/test/collection-browser.test.js +415 -359
  150. package/dist/test/collection-browser.test.js.map +1 -1
  151. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  152. package/dist/test/collection-facets/facets-template.test.js +62 -62
  153. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  154. package/dist/test/collection-facets/more-facets-content.test.js +114 -114
  155. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  156. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  157. package/dist/test/collection-facets.test.d.ts +2 -2
  158. package/dist/test/collection-facets.test.js +498 -498
  159. package/dist/test/empty-placeholder.test.d.ts +1 -1
  160. package/dist/test/empty-placeholder.test.js +33 -33
  161. package/dist/test/icon-overlay.test.d.ts +1 -1
  162. package/dist/test/icon-overlay.test.js +24 -24
  163. package/dist/test/image-block.test.d.ts +1 -1
  164. package/dist/test/image-block.test.js +48 -48
  165. package/dist/test/item-image.test.d.ts +1 -1
  166. package/dist/test/item-image.test.js +56 -56
  167. package/dist/test/mediatype-config.test.d.ts +1 -1
  168. package/dist/test/mediatype-config.test.js +16 -16
  169. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  170. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  171. package/dist/test/mocks/mock-collection-name-cache.d.ts +7 -7
  172. package/dist/test/mocks/mock-collection-name-cache.js +13 -13
  173. package/dist/test/mocks/mock-search-responses.d.ts +8 -5
  174. package/dist/test/mocks/mock-search-responses.js +198 -103
  175. package/dist/test/mocks/mock-search-responses.js.map +1 -1
  176. package/dist/test/mocks/mock-search-service.d.ts +13 -13
  177. package/dist/test/mocks/mock-search-service.js +32 -25
  178. package/dist/test/mocks/mock-search-service.js.map +1 -1
  179. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  180. package/dist/test/restoration-state-handler.test.js +117 -117
  181. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  182. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +113 -113
  183. package/dist/test/text-overlay.test.d.ts +1 -1
  184. package/dist/test/text-overlay.test.js +41 -41
  185. package/dist/test/text-snippet-block.test.d.ts +1 -1
  186. package/dist/test/text-snippet-block.test.js +57 -57
  187. package/dist/test/tile-stats.test.d.ts +1 -1
  188. package/dist/test/tile-stats.test.js +33 -33
  189. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  190. package/dist/test/tiles/grid/item-tile.test.js +107 -107
  191. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  192. package/dist/test/tiles/list/tile-list-compact.test.js +26 -26
  193. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  194. package/dist/test/tiles/list/tile-list.test.js +47 -47
  195. package/dist/test/utils/format-count.test.d.ts +1 -1
  196. package/dist/test/utils/format-count.test.js +23 -23
  197. package/dist/test/utils/format-date.test.d.ts +1 -1
  198. package/dist/test/utils/format-date.test.js +17 -17
  199. package/index.html +24 -24
  200. package/local.archive.org.cert +86 -86
  201. package/local.archive.org.key +27 -27
  202. package/package.json +115 -115
  203. package/renovate.json +6 -6
  204. package/src/collection-browser.ts +1488 -1525
  205. package/src/collection-facets/facet-tombstone-row.ts +40 -0
  206. package/src/collection-facets.ts +635 -604
  207. package/test/collection-browser.test.ts +599 -513
  208. package/test/mocks/mock-search-responses.ts +226 -119
  209. package/test/mocks/mock-search-service.ts +61 -53
  210. package/tsconfig.json +21 -21
  211. package/web-dev-server.config.mjs +30 -30
  212. package/web-test-runner.config.mjs +41 -41
@@ -1,30 +1,30 @@
1
- import { __decorate } from "tslib";
2
- import { css, html, LitElement, nothing } from 'lit';
3
- import { customElement, property, query } from 'lit/decorators.js';
4
- import { ifDefined } from 'lit/directives/if-defined.js';
5
- import './grid/collection-tile';
6
- import './grid/item-tile';
7
- import './grid/account-tile';
8
- import './list/tile-list';
9
- import './list/tile-list-compact';
10
- import './list/tile-list-compact-header';
11
- let TileDispatcher = class TileDispatcher extends LitElement {
12
- constructor() {
13
- super(...arguments);
14
- this.sortParam = null;
15
- this.loggedIn = false;
16
- }
17
- render() {
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement, nothing } from 'lit';
3
+ import { customElement, property, query } from 'lit/decorators.js';
4
+ import { ifDefined } from 'lit/directives/if-defined.js';
5
+ import './grid/collection-tile';
6
+ import './grid/item-tile';
7
+ import './grid/account-tile';
8
+ import './list/tile-list';
9
+ import './list/tile-list-compact';
10
+ import './list/tile-list-compact-header';
11
+ let TileDispatcher = class TileDispatcher extends LitElement {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.sortParam = null;
15
+ this.loggedIn = false;
16
+ }
17
+ render() {
18
18
  return html `
19
19
  <div id="container">
20
- ${this.tileDisplayMode === 'list-header'
21
- ? this.headerTemplate
20
+ ${this.tileDisplayMode === 'list-header'
21
+ ? this.headerTemplate
22
22
  : this.tileTemplate}
23
23
  </div>
24
- `;
25
- }
26
- get headerTemplate() {
27
- const { currentWidth, sortParam, mobileBreakpoint } = this;
24
+ `;
25
+ }
26
+ get headerTemplate() {
27
+ const { currentWidth, sortParam, mobileBreakpoint } = this;
28
28
  return html `
29
29
  <tile-list-compact-header
30
30
  class="header"
@@ -33,17 +33,17 @@ let TileDispatcher = class TileDispatcher extends LitElement {
33
33
  .mobileBreakpoint=${mobileBreakpoint}
34
34
  >
35
35
  </tile-list-compact-header>
36
- `;
37
- }
38
- get tileTemplate() {
36
+ `;
37
+ }
38
+ get tileTemplate() {
39
39
  return html `
40
- ${this.tileDisplayMode === 'list-detail'
41
- ? this.tile
40
+ ${this.tileDisplayMode === 'list-detail'
41
+ ? this.tile
42
42
  : this.linkTileTemplate}
43
- `;
44
- }
45
- get linkTileTemplate() {
46
- var _a, _b;
43
+ `;
44
+ }
45
+ get linkTileTemplate() {
46
+ var _a, _b;
47
47
  return html `
48
48
  <a
49
49
  href="${this.baseNavigationUrl}/details/${(_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier}"
@@ -52,58 +52,58 @@ let TileDispatcher = class TileDispatcher extends LitElement {
52
52
  >
53
53
  ${this.tile}
54
54
  </a>
55
- `;
56
- }
57
- handleResize(entry) {
58
- this.currentWidth = entry.contentRect.width;
59
- this.currentHeight = entry.contentRect.height;
60
- }
61
- disconnectedCallback() {
62
- this.stopResizeObservation(this.resizeObserver);
63
- }
64
- stopResizeObservation(observer) {
65
- observer === null || observer === void 0 ? void 0 : observer.removeObserver({
66
- handler: this,
67
- target: this.container,
68
- });
69
- }
70
- startResizeObservation() {
71
- var _a;
72
- this.stopResizeObservation(this.resizeObserver);
73
- (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.addObserver({
74
- handler: this,
75
- target: this.container,
76
- });
77
- }
78
- updated(props) {
79
- if (props.has('resizeObserver')) {
80
- const previousObserver = props.get('resizeObserver');
81
- this.stopResizeObservation(previousObserver);
82
- this.startResizeObservation();
83
- }
84
- }
85
- get tile() {
86
- const { model, baseNavigationUrl, currentWidth, currentHeight, sortParam, mobileBreakpoint, } = this;
87
- if (!model)
88
- return nothing;
89
- switch (this.tileDisplayMode) {
90
- case 'grid':
91
- switch (model.mediatype) {
92
- case 'collection':
55
+ `;
56
+ }
57
+ handleResize(entry) {
58
+ this.currentWidth = entry.contentRect.width;
59
+ this.currentHeight = entry.contentRect.height;
60
+ }
61
+ disconnectedCallback() {
62
+ this.stopResizeObservation(this.resizeObserver);
63
+ }
64
+ stopResizeObservation(observer) {
65
+ observer === null || observer === void 0 ? void 0 : observer.removeObserver({
66
+ handler: this,
67
+ target: this.container,
68
+ });
69
+ }
70
+ startResizeObservation() {
71
+ var _a;
72
+ this.stopResizeObservation(this.resizeObserver);
73
+ (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.addObserver({
74
+ handler: this,
75
+ target: this.container,
76
+ });
77
+ }
78
+ updated(props) {
79
+ if (props.has('resizeObserver')) {
80
+ const previousObserver = props.get('resizeObserver');
81
+ this.stopResizeObservation(previousObserver);
82
+ this.startResizeObservation();
83
+ }
84
+ }
85
+ get tile() {
86
+ const { model, baseNavigationUrl, currentWidth, currentHeight, sortParam, mobileBreakpoint, } = this;
87
+ if (!model)
88
+ return nothing;
89
+ switch (this.tileDisplayMode) {
90
+ case 'grid':
91
+ switch (model.mediatype) {
92
+ case 'collection':
93
93
  return html `<collection-tile
94
94
  .model=${model}
95
95
  .currentWidth=${currentWidth}
96
96
  .currentHeight=${currentHeight}
97
97
  >
98
- </collection-tile>`;
99
- case 'account':
98
+ </collection-tile>`;
99
+ case 'account':
100
100
  return html `<account-tile
101
101
  .model=${model}
102
102
  .currentWidth=${currentWidth}
103
103
  .currentHeight=${currentHeight}
104
104
  >
105
- </account-tile>`;
106
- default:
105
+ </account-tile>`;
106
+ default:
107
107
  return html `<item-tile
108
108
  .model=${model}
109
109
  .currentWidth=${this.currentWidth}
@@ -113,9 +113,9 @@ let TileDispatcher = class TileDispatcher extends LitElement {
113
113
  .sortParam=${sortParam}
114
114
  .loggedIn=${this.loggedIn}
115
115
  >
116
- </item-tile>`;
117
- }
118
- case 'list-compact':
116
+ </item-tile>`;
117
+ }
118
+ case 'list-compact':
119
119
  return html `<tile-list-compact
120
120
  .model=${model}
121
121
  .currentWidth=${currentWidth}
@@ -126,8 +126,8 @@ let TileDispatcher = class TileDispatcher extends LitElement {
126
126
  .baseImageUrl=${this.baseImageUrl}
127
127
  .loggedIn=${this.loggedIn}
128
128
  >
129
- </tile-list-compact>`;
130
- case 'list-detail':
129
+ </tile-list-compact>`;
130
+ case 'list-detail':
131
131
  return html `<tile-list
132
132
  .model=${model}
133
133
  .collectionNameCache=${this.collectionNameCache}
@@ -139,12 +139,12 @@ let TileDispatcher = class TileDispatcher extends LitElement {
139
139
  .baseImageUrl=${this.baseImageUrl}
140
140
  .loggedIn=${this.loggedIn}
141
141
  >
142
- </tile-list>`;
143
- default:
144
- return nothing;
145
- }
146
- }
147
- static get styles() {
142
+ </tile-list>`;
143
+ default:
144
+ return nothing;
145
+ }
146
+ }
147
+ static get styles() {
148
148
  return css `
149
149
  :host {
150
150
  display: block;
@@ -170,47 +170,47 @@ let TileDispatcher = class TileDispatcher extends LitElement {
170
170
  display: block;
171
171
  height: 100%;
172
172
  }
173
- `;
174
- }
175
- };
176
- __decorate([
177
- property({ type: String })
178
- ], TileDispatcher.prototype, "tileDisplayMode", void 0);
179
- __decorate([
180
- property({ type: Object })
181
- ], TileDispatcher.prototype, "model", void 0);
182
- __decorate([
183
- property({ type: String })
184
- ], TileDispatcher.prototype, "baseNavigationUrl", void 0);
185
- __decorate([
186
- property({ type: Number })
187
- ], TileDispatcher.prototype, "currentWidth", void 0);
188
- __decorate([
189
- property({ type: Number })
190
- ], TileDispatcher.prototype, "currentHeight", void 0);
191
- __decorate([
192
- property({ type: Object })
193
- ], TileDispatcher.prototype, "resizeObserver", void 0);
194
- __decorate([
195
- property({ type: Object })
196
- ], TileDispatcher.prototype, "collectionNameCache", void 0);
197
- __decorate([
198
- property({ type: Object })
199
- ], TileDispatcher.prototype, "sortParam", void 0);
200
- __decorate([
201
- query('#container')
202
- ], TileDispatcher.prototype, "container", void 0);
203
- __decorate([
204
- property({ type: Number })
205
- ], TileDispatcher.prototype, "mobileBreakpoint", void 0);
206
- __decorate([
207
- property({ type: String })
208
- ], TileDispatcher.prototype, "baseImageUrl", void 0);
209
- __decorate([
210
- property({ type: Boolean })
211
- ], TileDispatcher.prototype, "loggedIn", void 0);
212
- TileDispatcher = __decorate([
213
- customElement('tile-dispatcher')
214
- ], TileDispatcher);
215
- export { TileDispatcher };
173
+ `;
174
+ }
175
+ };
176
+ __decorate([
177
+ property({ type: String })
178
+ ], TileDispatcher.prototype, "tileDisplayMode", void 0);
179
+ __decorate([
180
+ property({ type: Object })
181
+ ], TileDispatcher.prototype, "model", void 0);
182
+ __decorate([
183
+ property({ type: String })
184
+ ], TileDispatcher.prototype, "baseNavigationUrl", void 0);
185
+ __decorate([
186
+ property({ type: Number })
187
+ ], TileDispatcher.prototype, "currentWidth", void 0);
188
+ __decorate([
189
+ property({ type: Number })
190
+ ], TileDispatcher.prototype, "currentHeight", void 0);
191
+ __decorate([
192
+ property({ type: Object })
193
+ ], TileDispatcher.prototype, "resizeObserver", void 0);
194
+ __decorate([
195
+ property({ type: Object })
196
+ ], TileDispatcher.prototype, "collectionNameCache", void 0);
197
+ __decorate([
198
+ property({ type: Object })
199
+ ], TileDispatcher.prototype, "sortParam", void 0);
200
+ __decorate([
201
+ query('#container')
202
+ ], TileDispatcher.prototype, "container", void 0);
203
+ __decorate([
204
+ property({ type: Number })
205
+ ], TileDispatcher.prototype, "mobileBreakpoint", void 0);
206
+ __decorate([
207
+ property({ type: String })
208
+ ], TileDispatcher.prototype, "baseImageUrl", void 0);
209
+ __decorate([
210
+ property({ type: Boolean })
211
+ ], TileDispatcher.prototype, "loggedIn", void 0);
212
+ TileDispatcher = __decorate([
213
+ customElement('tile-dispatcher')
214
+ ], TileDispatcher);
215
+ export { TileDispatcher };
216
216
  //# sourceMappingURL=tile-dispatcher.js.map
@@ -1,22 +1,22 @@
1
- /**
2
- * Analytics categories and events. Used when building actions in
3
- */
4
- export declare enum analyticsCategories {
5
- default = "collection-browser"
6
- }
7
- export declare enum analyticsActions {
8
- sortBy = "sortBy",
9
- filterByCreator = "filterByCreator",
10
- filterByTitle = "filterByTitle",
11
- displayMode = "displayMode",
12
- facetSelected = "facetSelected",
13
- facetDeselected = "facetDeselected",
14
- facetNegativeSelected = "facetNegativeSelected",
15
- facetNegativeDeselected = "facetNegativeDeselected",
16
- histogramChanged = "histogramChanged",
17
- resultSelected = "resultSelected",
18
- moreFacetsPageChange = "moreFacetsPageChange",
19
- showMoreFacetsModal = "showMoreFacetsModal",
20
- closeMoreFacetsModal = "closeMoreFacetsModal",
21
- applyMoreFacetsModal = "applyMoreFacetsModal"
22
- }
1
+ /**
2
+ * Analytics categories and events. Used when building actions in
3
+ */
4
+ export declare enum analyticsCategories {
5
+ default = "collection-browser"
6
+ }
7
+ export declare enum analyticsActions {
8
+ sortBy = "sortBy",
9
+ filterByCreator = "filterByCreator",
10
+ filterByTitle = "filterByTitle",
11
+ displayMode = "displayMode",
12
+ facetSelected = "facetSelected",
13
+ facetDeselected = "facetDeselected",
14
+ facetNegativeSelected = "facetNegativeSelected",
15
+ facetNegativeDeselected = "facetNegativeDeselected",
16
+ histogramChanged = "histogramChanged",
17
+ resultSelected = "resultSelected",
18
+ moreFacetsPageChange = "moreFacetsPageChange",
19
+ showMoreFacetsModal = "showMoreFacetsModal",
20
+ closeMoreFacetsModal = "closeMoreFacetsModal",
21
+ applyMoreFacetsModal = "applyMoreFacetsModal"
22
+ }
@@ -1,25 +1,25 @@
1
- /**
2
- * Analytics categories and events. Used when building actions in
3
- */
4
- export var analyticsCategories;
5
- (function (analyticsCategories) {
6
- analyticsCategories["default"] = "collection-browser";
7
- })(analyticsCategories || (analyticsCategories = {}));
8
- export var analyticsActions;
9
- (function (analyticsActions) {
10
- analyticsActions["sortBy"] = "sortBy";
11
- analyticsActions["filterByCreator"] = "filterByCreator";
12
- analyticsActions["filterByTitle"] = "filterByTitle";
13
- analyticsActions["displayMode"] = "displayMode";
14
- analyticsActions["facetSelected"] = "facetSelected";
15
- analyticsActions["facetDeselected"] = "facetDeselected";
16
- analyticsActions["facetNegativeSelected"] = "facetNegativeSelected";
17
- analyticsActions["facetNegativeDeselected"] = "facetNegativeDeselected";
18
- analyticsActions["histogramChanged"] = "histogramChanged";
19
- analyticsActions["resultSelected"] = "resultSelected";
20
- analyticsActions["moreFacetsPageChange"] = "moreFacetsPageChange";
21
- analyticsActions["showMoreFacetsModal"] = "showMoreFacetsModal";
22
- analyticsActions["closeMoreFacetsModal"] = "closeMoreFacetsModal";
23
- analyticsActions["applyMoreFacetsModal"] = "applyMoreFacetsModal";
24
- })(analyticsActions || (analyticsActions = {}));
1
+ /**
2
+ * Analytics categories and events. Used when building actions in
3
+ */
4
+ export var analyticsCategories;
5
+ (function (analyticsCategories) {
6
+ analyticsCategories["default"] = "collection-browser";
7
+ })(analyticsCategories || (analyticsCategories = {}));
8
+ export var analyticsActions;
9
+ (function (analyticsActions) {
10
+ analyticsActions["sortBy"] = "sortBy";
11
+ analyticsActions["filterByCreator"] = "filterByCreator";
12
+ analyticsActions["filterByTitle"] = "filterByTitle";
13
+ analyticsActions["displayMode"] = "displayMode";
14
+ analyticsActions["facetSelected"] = "facetSelected";
15
+ analyticsActions["facetDeselected"] = "facetDeselected";
16
+ analyticsActions["facetNegativeSelected"] = "facetNegativeSelected";
17
+ analyticsActions["facetNegativeDeselected"] = "facetNegativeDeselected";
18
+ analyticsActions["histogramChanged"] = "histogramChanged";
19
+ analyticsActions["resultSelected"] = "resultSelected";
20
+ analyticsActions["moreFacetsPageChange"] = "moreFacetsPageChange";
21
+ analyticsActions["showMoreFacetsModal"] = "showMoreFacetsModal";
22
+ analyticsActions["closeMoreFacetsModal"] = "closeMoreFacetsModal";
23
+ analyticsActions["applyMoreFacetsModal"] = "applyMoreFacetsModal";
24
+ })(analyticsActions || (analyticsActions = {}));
25
25
  //# sourceMappingURL=analytics-events.js.map
@@ -1,7 +1,7 @@
1
- export declare type NumberFormat = 'short' | 'long';
2
- export declare type LabelFormat = 'short' | 'long';
3
- /**
4
- * Format a "count" number into short "icon" or longer text string.
5
- * For positive numbers only.
6
- */
7
- export declare function formatCount(count: number | undefined, numberFormat?: NumberFormat, labelFormat?: LabelFormat, locale?: string): string;
1
+ export declare type NumberFormat = 'short' | 'long';
2
+ export declare type LabelFormat = 'short' | 'long';
3
+ /**
4
+ * Format a "count" number into short "icon" or longer text string.
5
+ * For positive numbers only.
6
+ */
7
+ export declare function formatCount(count: number | undefined, numberFormat?: NumberFormat, labelFormat?: LabelFormat, locale?: string): string;
@@ -1,77 +1,77 @@
1
- /*
2
- * Replaces Petabox www/common/Util::number_format()
3
- * For positive numbers only.
4
- */
5
- import { msg, str } from '@lit/localize';
6
- /**
7
- * Return the magnitude of a number.
8
- */
9
- function magnitude(number, numberFormat) {
10
- let divisor = 1;
11
- if (number >= 1000000000) {
12
- divisor = 1000000000;
13
- }
14
- else if (number >= 1000000) {
15
- divisor = 1000000;
16
- }
17
- else if (number >= 1000 && numberFormat === 'short') {
18
- divisor = 1000;
19
- }
20
- return divisor;
21
- }
22
- /**
23
- * Round a number given passed magnitude.
24
- * Significant digits of value less than 10 get a decimal.
25
- */
26
- // eslint-disable-next-line default-param-last
27
- function round(number = 0, divisor) {
28
- const result = number / divisor;
29
- const roundToOne = result < 10;
30
- let rounded = 0;
31
- if (roundToOne) {
32
- rounded = Math.round((result + Number.EPSILON) * 10) / 10;
33
- }
34
- else {
35
- rounded = Math.round(result);
36
- }
37
- return rounded;
38
- }
39
- /**
40
- * Return a label for a number and format.
41
- */
42
- function labelize(rounded, divisor, format, locale) {
43
- switch (divisor) {
44
- case 1000000000:
45
- if (format === 'short') {
46
- return msg(str `${rounded}B`);
47
- }
48
- return msg(str `${rounded} billion`);
49
- case 1000000:
50
- if (format === 'short') {
51
- return msg(str `${rounded}M`);
52
- }
53
- return msg(str `${rounded} million`);
54
- case 1000:
55
- if (format === 'short') {
56
- return msg(str `${rounded}K`);
57
- }
58
- return msg(str `${rounded} thousand`);
59
- default:
60
- return new Intl.NumberFormat(locale).format(rounded);
61
- }
62
- }
63
- /**
64
- * Format a "count" number into short "icon" or longer text string.
65
- * For positive numbers only.
66
- */
67
- export function formatCount(count, numberFormat = 'long', labelFormat = 'short', locale = 'en-US') {
68
- // Return blank if undefined
69
- const number = count !== null && count !== void 0 ? count : -1;
70
- if (number < 0) {
71
- return '';
72
- }
73
- const divisor = magnitude(number, numberFormat);
74
- const rounded = round(number, divisor);
75
- return labelize(rounded, divisor, labelFormat, locale);
76
- }
1
+ /*
2
+ * Replaces Petabox www/common/Util::number_format()
3
+ * For positive numbers only.
4
+ */
5
+ import { msg, str } from '@lit/localize';
6
+ /**
7
+ * Return the magnitude of a number.
8
+ */
9
+ function magnitude(number, numberFormat) {
10
+ let divisor = 1;
11
+ if (number >= 1000000000) {
12
+ divisor = 1000000000;
13
+ }
14
+ else if (number >= 1000000) {
15
+ divisor = 1000000;
16
+ }
17
+ else if (number >= 1000 && numberFormat === 'short') {
18
+ divisor = 1000;
19
+ }
20
+ return divisor;
21
+ }
22
+ /**
23
+ * Round a number given passed magnitude.
24
+ * Significant digits of value less than 10 get a decimal.
25
+ */
26
+ // eslint-disable-next-line default-param-last
27
+ function round(number = 0, divisor) {
28
+ const result = number / divisor;
29
+ const roundToOne = result < 10;
30
+ let rounded = 0;
31
+ if (roundToOne) {
32
+ rounded = Math.round((result + Number.EPSILON) * 10) / 10;
33
+ }
34
+ else {
35
+ rounded = Math.round(result);
36
+ }
37
+ return rounded;
38
+ }
39
+ /**
40
+ * Return a label for a number and format.
41
+ */
42
+ function labelize(rounded, divisor, format, locale) {
43
+ switch (divisor) {
44
+ case 1000000000:
45
+ if (format === 'short') {
46
+ return msg(str `${rounded}B`);
47
+ }
48
+ return msg(str `${rounded} billion`);
49
+ case 1000000:
50
+ if (format === 'short') {
51
+ return msg(str `${rounded}M`);
52
+ }
53
+ return msg(str `${rounded} million`);
54
+ case 1000:
55
+ if (format === 'short') {
56
+ return msg(str `${rounded}K`);
57
+ }
58
+ return msg(str `${rounded} thousand`);
59
+ default:
60
+ return new Intl.NumberFormat(locale).format(rounded);
61
+ }
62
+ }
63
+ /**
64
+ * Format a "count" number into short "icon" or longer text string.
65
+ * For positive numbers only.
66
+ */
67
+ export function formatCount(count, numberFormat = 'long', labelFormat = 'short', locale = 'en-US') {
68
+ // Return blank if undefined
69
+ const number = count !== null && count !== void 0 ? count : -1;
70
+ if (number < 0) {
71
+ return '';
72
+ }
73
+ const divisor = magnitude(number, numberFormat);
74
+ const rounded = round(number, divisor);
75
+ return labelize(rounded, divisor, labelFormat, locale);
76
+ }
77
77
  //# sourceMappingURL=format-count.js.map
@@ -1,2 +1,2 @@
1
- export declare type DateFormat = 'short' | 'long';
2
- export declare function formatDate(date: Date | undefined, format?: DateFormat, locale?: string): string;
1
+ export declare type DateFormat = 'short' | 'long';
2
+ export declare function formatDate(date: Date | undefined, format?: DateFormat, locale?: string): string;
@@ -1,24 +1,24 @@
1
- export function formatDate(date, format = 'short', locale = 'en-US') {
2
- // Return blank if undefined
3
- if (!date)
4
- return '';
5
- const options = {
6
- timeZone: 'UTC', // Override browser timezone
7
- };
8
- switch (format) {
9
- case 'short':
10
- options.month = 'short';
11
- options.year = 'numeric';
12
- break;
13
- case 'long':
14
- options.year = 'numeric';
15
- options.month = 'short';
16
- options.day = '2-digit';
17
- break;
18
- default:
19
- break;
20
- }
21
- const dateFormatter = new Intl.DateTimeFormat(locale, options);
22
- return dateFormatter.format(date);
23
- }
1
+ export function formatDate(date, format = 'short', locale = 'en-US') {
2
+ // Return blank if undefined
3
+ if (!date)
4
+ return '';
5
+ const options = {
6
+ timeZone: 'UTC', // Override browser timezone
7
+ };
8
+ switch (format) {
9
+ case 'short':
10
+ options.month = 'short';
11
+ options.year = 'numeric';
12
+ break;
13
+ case 'long':
14
+ options.year = 'numeric';
15
+ options.month = 'short';
16
+ options.day = '2-digit';
17
+ break;
18
+ default:
19
+ break;
20
+ }
21
+ const dateFormatter = new Intl.DateTimeFormat(locale, options);
22
+ return dateFormatter.format(date);
23
+ }
24
24
  //# sourceMappingURL=format-date.js.map
@@ -1 +1 @@
1
- import '../src/collection-browser';
1
+ import '../src/collection-browser';