@internetarchive/collection-browser 1.14.9-alpha.2 → 1.14.9-alpha10
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.
- package/.editorconfig +29 -29
- package/.husky/pre-commit +4 -4
- package/LICENSE +661 -661
- package/README.md +83 -83
- package/dist/index.d.ts +9 -9
- package/dist/index.js +9 -9
- package/dist/src/app-root.d.ts +73 -72
- package/dist/src/app-root.js +501 -429
- package/dist/src/app-root.js.map +1 -1
- package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
- package/dist/src/assets/img/icons/arrow-left.js +2 -2
- package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
- package/dist/src/assets/img/icons/arrow-right.js +2 -2
- package/dist/src/assets/img/icons/chevron.d.ts +2 -2
- package/dist/src/assets/img/icons/chevron.js +2 -2
- package/dist/src/assets/img/icons/contract.d.ts +2 -2
- package/dist/src/assets/img/icons/contract.js +2 -2
- package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
- package/dist/src/assets/img/icons/empty-query.js +2 -2
- package/dist/src/assets/img/icons/expand.d.ts +2 -2
- package/dist/src/assets/img/icons/expand.js +2 -2
- package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
- package/dist/src/assets/img/icons/eye-closed.js +2 -2
- package/dist/src/assets/img/icons/eye.d.ts +2 -2
- package/dist/src/assets/img/icons/eye.js +2 -2
- package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
- package/dist/src/assets/img/icons/favorite-filled.js +2 -2
- package/dist/src/assets/img/icons/login-required.d.ts +1 -1
- package/dist/src/assets/img/icons/login-required.js +2 -2
- package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/account.js +2 -2
- package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
- package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
- package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/data.js +2 -2
- package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
- package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/film.js +2 -2
- package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/images.js +2 -2
- package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
- package/dist/src/assets/img/icons/mediatype/search.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/search.js +2 -2
- package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/software.js +2 -2
- package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
- package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
- package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/video.js +2 -2
- package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/web.js +2 -2
- package/dist/src/assets/img/icons/null-result.d.ts +2 -2
- package/dist/src/assets/img/icons/null-result.js +2 -2
- package/dist/src/assets/img/icons/restricted.d.ts +1 -1
- package/dist/src/assets/img/icons/restricted.js +2 -2
- package/dist/src/assets/img/icons/reviews.d.ts +1 -1
- package/dist/src/assets/img/icons/reviews.js +2 -2
- package/dist/src/assets/img/icons/upload.d.ts +1 -1
- package/dist/src/assets/img/icons/upload.js +2 -2
- package/dist/src/assets/img/icons/views.d.ts +1 -1
- package/dist/src/assets/img/icons/views.js +2 -2
- package/dist/src/circular-activity-indicator.d.ts +5 -5
- package/dist/src/circular-activity-indicator.js +17 -17
- package/dist/src/collection-browser.d.ts +533 -533
- package/dist/src/collection-browser.js +1894 -1893
- package/dist/src/collection-browser.js.map +1 -1
- package/dist/src/collection-facets/facet-row.d.ts +30 -0
- package/dist/src/collection-facets/facet-row.js +245 -0
- package/dist/src/collection-facets/facet-row.js.map +1 -0
- package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
- package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
- package/dist/src/collection-facets/facets-template.d.ts +17 -20
- package/dist/src/collection-facets/facets-template.js +122 -264
- package/dist/src/collection-facets/facets-template.js.map +1 -1
- package/dist/src/collection-facets/more-facets-content.d.ts +77 -77
- package/dist/src/collection-facets/more-facets-content.js +359 -359
- package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
- package/dist/src/collection-facets/more-facets-pagination.js +196 -196
- package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
- package/dist/src/collection-facets/toggle-switch.js +94 -94
- package/dist/src/collection-facets.d.ts +104 -104
- package/dist/src/collection-facets.js +506 -506
- package/dist/src/empty-placeholder.d.ts +23 -23
- package/dist/src/empty-placeholder.js +74 -74
- package/dist/src/expanded-date-picker.d.ts +43 -43
- package/dist/src/expanded-date-picker.js +109 -109
- package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
- package/dist/src/language-code-handler/language-code-handler.js +26 -26
- package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
- package/dist/src/language-code-handler/language-code-mapping.js +562 -562
- package/dist/src/manage/manage-bar.d.ts +26 -26
- package/dist/src/manage/manage-bar.js +53 -53
- package/dist/src/mediatype/mediatype-config.d.ts +3 -3
- package/dist/src/mediatype/mediatype-config.js +91 -91
- package/dist/src/models.d.ts +180 -164
- package/dist/src/models.js +269 -269
- package/dist/src/models.js.map +1 -1
- package/dist/src/restoration-state-handler.d.ts +70 -70
- package/dist/src/restoration-state-handler.js +355 -355
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
- package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
- package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
- package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/compact.js +2 -2
- package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/list.js +2 -2
- package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
- package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
- package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
- package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
- package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/tile.js +2 -2
- package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +208 -208
- package/dist/src/sort-filter-bar/sort-filter-bar.js +637 -637
- package/dist/src/styles/item-image-styles.d.ts +8 -8
- package/dist/src/styles/item-image-styles.js +9 -9
- package/dist/src/styles/sr-only.d.ts +1 -1
- package/dist/src/styles/sr-only.js +2 -2
- package/dist/src/tiles/base-tile-component.d.ts +19 -19
- package/dist/src/tiles/base-tile-component.js +63 -63
- package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
- package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
- package/dist/src/tiles/grid/account-tile.d.ts +18 -18
- package/dist/src/tiles/grid/account-tile.js +72 -72
- package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
- package/dist/src/tiles/grid/collection-tile.js +80 -80
- package/dist/src/tiles/grid/item-tile.d.ts +27 -27
- package/dist/src/tiles/grid/item-tile.js +134 -134
- package/dist/src/tiles/grid/search-tile.d.ts +10 -10
- package/dist/src/tiles/grid/search-tile.js +51 -51
- package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
- package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
- package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
- package/dist/src/tiles/grid/tile-stats.js +48 -48
- package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
- package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
- package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
- package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
- package/dist/src/tiles/image-block.d.ts +17 -17
- package/dist/src/tiles/image-block.js +73 -73
- package/dist/src/tiles/item-image.d.ts +36 -36
- package/dist/src/tiles/item-image.js +127 -127
- package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
- package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
- package/dist/src/tiles/list/tile-list-compact.d.ts +15 -15
- package/dist/src/tiles/list/tile-list-compact.js +114 -114
- package/dist/src/tiles/list/tile-list.d.ts +46 -46
- package/dist/src/tiles/list/tile-list.js +302 -302
- package/dist/src/tiles/mediatype-icon.d.ts +9 -9
- package/dist/src/tiles/mediatype-icon.js +47 -47
- package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
- package/dist/src/tiles/overlay/icon-overlay.js +40 -40
- package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
- package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
- package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
- package/dist/src/tiles/overlay/text-overlay.js +42 -42
- package/dist/src/tiles/text-snippet-block.d.ts +27 -27
- package/dist/src/tiles/text-snippet-block.js +73 -73
- package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
- package/dist/src/tiles/tile-dispatcher.js +231 -231
- package/dist/src/tiles/tile-display-value-provider.d.ts +43 -43
- package/dist/src/tiles/tile-display-value-provider.js +80 -80
- package/dist/src/utils/analytics-events.d.ts +25 -25
- package/dist/src/utils/analytics-events.js +27 -27
- package/dist/src/utils/array-equals.d.ts +4 -4
- package/dist/src/utils/array-equals.js +10 -10
- package/dist/src/utils/format-count.d.ts +7 -7
- package/dist/src/utils/format-count.js +76 -76
- package/dist/src/utils/format-date.d.ts +2 -2
- package/dist/src/utils/format-date.js +25 -25
- package/dist/src/utils/format-unit-size.d.ts +2 -2
- package/dist/src/utils/format-unit-size.js +33 -33
- package/dist/src/utils/local-date-from-utc.d.ts +9 -9
- package/dist/src/utils/local-date-from-utc.js +15 -15
- package/dist/src/utils/sha1.d.ts +2 -2
- package/dist/src/utils/sha1.js +8 -8
- package/dist/test/collection-browser.test.d.ts +1 -1
- package/dist/test/collection-browser.test.js +1130 -1098
- package/dist/test/collection-browser.test.js.map +1 -1
- package/dist/test/collection-facets/facet-row.test.d.ts +1 -0
- package/dist/test/collection-facets/facet-row.test.js +235 -0
- package/dist/test/collection-facets/facet-row.test.js.map +1 -0
- package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
- package/dist/test/collection-facets/facets-template.test.js +110 -141
- package/dist/test/collection-facets/facets-template.test.js.map +1 -1
- package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
- package/dist/test/collection-facets/more-facets-content.test.js +133 -133
- package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
- package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
- package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
- package/dist/test/collection-facets/toggle-switch.test.js +73 -73
- package/dist/test/collection-facets.test.d.ts +2 -2
- package/dist/test/collection-facets.test.js +651 -682
- package/dist/test/collection-facets.test.js.map +1 -1
- package/dist/test/empty-placeholder.test.d.ts +1 -1
- package/dist/test/empty-placeholder.test.js +63 -63
- package/dist/test/expanded-date-picker.test.d.ts +1 -1
- package/dist/test/expanded-date-picker.test.js +95 -95
- package/dist/test/icon-overlay.test.d.ts +1 -1
- package/dist/test/icon-overlay.test.js +24 -24
- package/dist/test/image-block.test.d.ts +1 -1
- package/dist/test/image-block.test.js +48 -48
- package/dist/test/item-image.test.d.ts +1 -1
- package/dist/test/item-image.test.js +86 -86
- package/dist/test/manage/manage-bar.test.d.ts +1 -1
- package/dist/test/manage/manage-bar.test.js +72 -72
- package/dist/test/mediatype-config.test.d.ts +1 -1
- package/dist/test/mediatype-config.test.js +16 -16
- package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
- package/dist/test/mocks/mock-analytics-handler.js +15 -15
- package/dist/test/mocks/mock-collection-name-cache.d.ts +9 -9
- package/dist/test/mocks/mock-collection-name-cache.js +17 -17
- package/dist/test/mocks/mock-search-responses.d.ts +21 -21
- package/dist/test/mocks/mock-search-responses.js +709 -709
- package/dist/test/mocks/mock-search-service.d.ts +15 -15
- package/dist/test/mocks/mock-search-service.js +50 -50
- package/dist/test/restoration-state-handler.test.d.ts +1 -1
- package/dist/test/restoration-state-handler.test.js +270 -270
- package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
- package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
- package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
- package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
- package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
- package/dist/test/sort-filter-bar/sort-filter-bar.test.js +378 -378
- package/dist/test/text-overlay.test.d.ts +1 -1
- package/dist/test/text-overlay.test.js +48 -48
- package/dist/test/text-snippet-block.test.d.ts +1 -1
- package/dist/test/text-snippet-block.test.js +57 -57
- package/dist/test/tile-stats.test.d.ts +1 -1
- package/dist/test/tile-stats.test.js +33 -33
- package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/account-tile.test.js +76 -76
- package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/collection-tile.test.js +73 -73
- package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/item-tile.test.js +254 -254
- package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/search-tile.test.js +51 -51
- package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
- package/dist/test/tiles/hover/hover-pane-controller.test.js +258 -258
- package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
- package/dist/test/tiles/hover/tile-hover-pane.test.js +13 -13
- package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
- package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
- package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
- package/dist/test/tiles/list/tile-list.test.js +242 -242
- package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
- package/dist/test/tiles/tile-dispatcher.test.js +94 -94
- package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
- package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
- package/dist/test/utils/array-equals.test.d.ts +1 -1
- package/dist/test/utils/array-equals.test.js +26 -26
- package/dist/test/utils/format-count.test.d.ts +1 -1
- package/dist/test/utils/format-count.test.js +23 -23
- package/dist/test/utils/format-date.test.d.ts +1 -1
- package/dist/test/utils/format-date.test.js +17 -17
- package/dist/test/utils/format-unit-size.test.d.ts +1 -1
- package/dist/test/utils/format-unit-size.test.js +17 -17
- package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
- package/dist/test/utils/local-date-from-utc.test.js +26 -26
- package/local.archive.org.cert +86 -86
- package/local.archive.org.key +27 -27
- package/package.json +2 -2
- package/renovate.json +6 -6
- package/src/app-root.ts +159 -82
- package/src/collection-browser.ts +25 -22
- package/src/collection-facets/facet-row.ts +274 -0
- package/src/collection-facets/facets-template.ts +49 -196
- package/src/models.ts +18 -2
- package/test/collection-browser.test.ts +36 -4
- package/test/collection-facets/facet-row.test.ts +328 -0
- package/test/collection-facets/facets-template.test.ts +72 -110
- package/test/collection-facets.test.ts +69 -101
- package/tsconfig.json +21 -21
- package/web-dev-server.config.mjs +30 -30
- package/web-test-runner.config.mjs +41 -41
- package/dist/src/selected-facets.d.ts +0 -67
- package/dist/src/selected-facets.js +0 -149
- package/dist/src/selected-facets.js.map +0 -1
- package/src/selected-facets.ts +0 -216
package/src/app-root.ts
CHANGED
|
@@ -229,91 +229,93 @@ export class AppRoot extends LitElement {
|
|
|
229
229
|
>
|
|
230
230
|
</div>
|
|
231
231
|
|
|
232
|
-
<
|
|
233
|
-
<
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
</div>
|
|
247
|
-
<div>
|
|
248
|
-
<label for="cell-height-slider">Cell height:</label>
|
|
249
|
-
<input
|
|
250
|
-
type="range"
|
|
251
|
-
min="10"
|
|
252
|
-
max="100"
|
|
253
|
-
value="29"
|
|
254
|
-
step="0.1"
|
|
255
|
-
id="cell-height-slider"
|
|
256
|
-
@input=${this.heightChanged}
|
|
257
|
-
/>
|
|
258
|
-
<span>${this.cellHeight}rem</span>
|
|
259
|
-
</div>
|
|
232
|
+
<fieldset class="cell-controls">
|
|
233
|
+
<legend>Cell Controls</legend>
|
|
234
|
+
<div>
|
|
235
|
+
<label for="cell-width-slider">Cell width:</label>
|
|
236
|
+
<input
|
|
237
|
+
type="range"
|
|
238
|
+
min="10"
|
|
239
|
+
max="100"
|
|
240
|
+
value="18"
|
|
241
|
+
step="0.1"
|
|
242
|
+
id="cell-width-slider"
|
|
243
|
+
@input=${this.widthChanged}
|
|
244
|
+
/>
|
|
245
|
+
<span>${this.cellWidth}rem</span>
|
|
260
246
|
</div>
|
|
261
|
-
<div
|
|
262
|
-
<
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
<span>${this.rowGap}rem</span>
|
|
274
|
-
</div>
|
|
275
|
-
<div>
|
|
276
|
-
<label for="cell-col-gap-slider">Col gap:</label>
|
|
277
|
-
<input
|
|
278
|
-
type="range"
|
|
279
|
-
min="0"
|
|
280
|
-
max="5"
|
|
281
|
-
value="1.7"
|
|
282
|
-
step="0.1"
|
|
283
|
-
id="cell-col-gap-slider"
|
|
284
|
-
@input=${this.colGapChanged}
|
|
285
|
-
/>
|
|
286
|
-
<span>${this.colGap}rem</span>
|
|
287
|
-
</div>
|
|
247
|
+
<div>
|
|
248
|
+
<label for="cell-height-slider">Cell height:</label>
|
|
249
|
+
<input
|
|
250
|
+
type="range"
|
|
251
|
+
min="10"
|
|
252
|
+
max="100"
|
|
253
|
+
value="29"
|
|
254
|
+
step="0.1"
|
|
255
|
+
id="cell-height-slider"
|
|
256
|
+
@input=${this.heightChanged}
|
|
257
|
+
/>
|
|
258
|
+
<span>${this.cellHeight}rem</span>
|
|
288
259
|
</div>
|
|
289
|
-
|
|
290
|
-
|
|
260
|
+
<div>
|
|
261
|
+
<label for="cell-row-gap-slider">Row gap:</label>
|
|
262
|
+
<input
|
|
263
|
+
type="range"
|
|
264
|
+
min="0"
|
|
265
|
+
max="5"
|
|
266
|
+
value="1.7"
|
|
267
|
+
step="0.1"
|
|
268
|
+
id="cell-row-gap-slider"
|
|
269
|
+
@input=${this.rowGapChanged}
|
|
270
|
+
/>
|
|
271
|
+
<span>${this.rowGap}rem</span>
|
|
272
|
+
</div>
|
|
273
|
+
<div>
|
|
274
|
+
<label for="cell-col-gap-slider">Col gap:</label>
|
|
275
|
+
<input
|
|
276
|
+
type="range"
|
|
277
|
+
min="0"
|
|
278
|
+
max="5"
|
|
279
|
+
value="1.7"
|
|
280
|
+
step="0.1"
|
|
281
|
+
id="cell-col-gap-slider"
|
|
282
|
+
@input=${this.colGapChanged}
|
|
283
|
+
/>
|
|
284
|
+
<span>${this.colGap}rem</span>
|
|
285
|
+
</div>
|
|
286
|
+
</fieldset>
|
|
287
|
+
|
|
288
|
+
<fieldset class="other-controls">
|
|
289
|
+
<legend>Other Controls</legend>
|
|
291
290
|
<div class="checkbox-control">
|
|
292
291
|
<input
|
|
293
292
|
type="checkbox"
|
|
294
|
-
id="
|
|
295
|
-
@click=${this.
|
|
293
|
+
id="simulate-login"
|
|
294
|
+
@click=${this.loginChanged}
|
|
296
295
|
/>
|
|
297
|
-
<label for="
|
|
296
|
+
<label for="simulate-login">Simulate login</label>
|
|
298
297
|
</div>
|
|
299
298
|
<div class="checkbox-control">
|
|
300
299
|
<input
|
|
301
300
|
type="checkbox"
|
|
302
|
-
id="
|
|
303
|
-
|
|
301
|
+
id="enable-date-picker"
|
|
302
|
+
checked
|
|
303
|
+
@click=${this.datePickerChanged}
|
|
304
304
|
/>
|
|
305
|
-
<label for="
|
|
306
|
-
Show facet group outlines
|
|
307
|
-
</label>
|
|
305
|
+
<label for="enable-date-picker">Enable date picker</label>
|
|
308
306
|
</div>
|
|
309
307
|
<div class="checkbox-control">
|
|
310
308
|
<input
|
|
311
309
|
type="checkbox"
|
|
312
|
-
id="
|
|
313
|
-
@click=${this.
|
|
310
|
+
id="enable-management"
|
|
311
|
+
@click=${this.manageModeCheckboxChanged}
|
|
314
312
|
/>
|
|
315
|
-
<label for="
|
|
313
|
+
<label for="enable-management">Enable manage mode</label>
|
|
316
314
|
</div>
|
|
315
|
+
</fieldset>
|
|
316
|
+
|
|
317
|
+
<fieldset class="cb-visual-appearance">
|
|
318
|
+
<legend>CB Visual Appearance</legend>
|
|
317
319
|
<div class="checkbox-control">
|
|
318
320
|
<input
|
|
319
321
|
type="checkbox"
|
|
@@ -325,27 +327,34 @@ export class AppRoot extends LitElement {
|
|
|
325
327
|
<div class="checkbox-control">
|
|
326
328
|
<input
|
|
327
329
|
type="checkbox"
|
|
328
|
-
id="
|
|
329
|
-
|
|
330
|
-
@click=${this.datePickerChanged}
|
|
330
|
+
id="show-facet-group-outline-check"
|
|
331
|
+
@click=${this.toggleFacetGroupOutline}
|
|
331
332
|
/>
|
|
332
|
-
<label for="
|
|
333
|
+
<label for="show-facet-group-outline-check">
|
|
334
|
+
Show facet group outlines
|
|
335
|
+
</label>
|
|
333
336
|
</div>
|
|
334
337
|
<div class="checkbox-control">
|
|
335
338
|
<input
|
|
336
339
|
type="checkbox"
|
|
337
|
-
id="
|
|
338
|
-
@click=${this.
|
|
340
|
+
id="show-outline-check"
|
|
341
|
+
@click=${this.outlineChanged}
|
|
339
342
|
/>
|
|
340
|
-
<label for="
|
|
343
|
+
<label for="show-outline-check">Show cell outlines</label>
|
|
341
344
|
</div>
|
|
345
|
+
</fieldset>
|
|
346
|
+
|
|
347
|
+
<fieldset class="user-profile-controls">
|
|
348
|
+
<legend>User Profile Controls</legend>
|
|
342
349
|
<div class="checkbox-control">
|
|
343
350
|
<input
|
|
344
351
|
type="checkbox"
|
|
345
|
-
id="enable-
|
|
346
|
-
@click=${this.
|
|
352
|
+
id="enable-result-last-tile-view"
|
|
353
|
+
@click=${this.resultLastTileViewCheckboxChanged}
|
|
347
354
|
/>
|
|
348
|
-
<label for="enable-
|
|
355
|
+
<label for="enable-result-last-tile-view"
|
|
356
|
+
>Show result last tile view</label
|
|
357
|
+
>
|
|
349
358
|
</div>
|
|
350
359
|
<div class="checkbox-control">
|
|
351
360
|
<input
|
|
@@ -355,7 +364,15 @@ export class AppRoot extends LitElement {
|
|
|
355
364
|
/>
|
|
356
365
|
<label for="enable-cb-top-view">Show CB top view</label>
|
|
357
366
|
</div>
|
|
358
|
-
|
|
367
|
+
<div class="checkbox-control">
|
|
368
|
+
<input
|
|
369
|
+
type="checkbox"
|
|
370
|
+
id="enable-facet-top-view"
|
|
371
|
+
@click=${this.facetTopViewCheckboxChanged}
|
|
372
|
+
/>
|
|
373
|
+
<label for="enable-facet-top-view">Show facet top view</label>
|
|
374
|
+
</div>
|
|
375
|
+
</fieldset>
|
|
359
376
|
</div>
|
|
360
377
|
<button id="toggle-dev-tools-btn" @click=${this.toggleDevTools}>
|
|
361
378
|
Toggle Search Controls
|
|
@@ -558,6 +575,26 @@ export class AppRoot extends LitElement {
|
|
|
558
575
|
}
|
|
559
576
|
}
|
|
560
577
|
|
|
578
|
+
private resultLastTileViewCheckboxChanged(e: Event) {
|
|
579
|
+
const target = e.target as HTMLInputElement;
|
|
580
|
+
|
|
581
|
+
const div = document.createElement('div');
|
|
582
|
+
const title = document.createElement('h3');
|
|
583
|
+
title.textContent = 'Upload';
|
|
584
|
+
|
|
585
|
+
div.setAttribute('slot', 'result-last-tile');
|
|
586
|
+
div.setAttribute('class', 'result-last-tile');
|
|
587
|
+
div.appendChild(title);
|
|
588
|
+
|
|
589
|
+
if (target.checked) {
|
|
590
|
+
this.collectionBrowser.appendChild(div);
|
|
591
|
+
} else {
|
|
592
|
+
this.collectionBrowser.removeChild(
|
|
593
|
+
this.collectionBrowser.lastElementChild as Element
|
|
594
|
+
);
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
|
|
561
598
|
/**
|
|
562
599
|
* Handler for when the dev panel's "Show cb top view" checkbox is changed.
|
|
563
600
|
*/
|
|
@@ -706,7 +743,6 @@ export class AppRoot extends LitElement {
|
|
|
706
743
|
padding: 0.5rem 1rem;
|
|
707
744
|
border: 1px solid black;
|
|
708
745
|
font-size: 1.4rem;
|
|
709
|
-
width: 75%;
|
|
710
746
|
background: #ffffffb3;
|
|
711
747
|
}
|
|
712
748
|
|
|
@@ -749,11 +785,17 @@ export class AppRoot extends LitElement {
|
|
|
749
785
|
margin-right: 1rem;
|
|
750
786
|
}
|
|
751
787
|
|
|
752
|
-
|
|
788
|
+
.cell-controls {
|
|
753
789
|
display: flex;
|
|
754
790
|
flex-wrap: wrap;
|
|
755
791
|
}
|
|
756
|
-
|
|
792
|
+
.cell-controls div {
|
|
793
|
+
display: flex;
|
|
794
|
+
align-items: center;
|
|
795
|
+
}
|
|
796
|
+
.cell-controls input[type='range'] {
|
|
797
|
+
width: 120px;
|
|
798
|
+
}
|
|
757
799
|
#cell-controls label {
|
|
758
800
|
display: inline-block;
|
|
759
801
|
width: 10rem;
|
|
@@ -777,6 +819,9 @@ export class AppRoot extends LitElement {
|
|
|
777
819
|
.checkbox-control {
|
|
778
820
|
flex-basis: 50%;
|
|
779
821
|
}
|
|
822
|
+
.checkbox-control label {
|
|
823
|
+
user-select: none;
|
|
824
|
+
}
|
|
780
825
|
|
|
781
826
|
#last-event {
|
|
782
827
|
background-color: aliceblue;
|
|
@@ -799,5 +844,37 @@ export class AppRoot extends LitElement {
|
|
|
799
844
|
background-color: aliceblue;
|
|
800
845
|
font-size: 1.6rem;
|
|
801
846
|
}
|
|
847
|
+
|
|
848
|
+
/* user profile controls */
|
|
849
|
+
.user-profile-controls {
|
|
850
|
+
width: fit-content;
|
|
851
|
+
}
|
|
852
|
+
|
|
853
|
+
fieldset {
|
|
854
|
+
display: inline-block !important;
|
|
855
|
+
}
|
|
856
|
+
|
|
857
|
+
.result-last-tile {
|
|
858
|
+
border-radius: 4px;
|
|
859
|
+
background-color: white;
|
|
860
|
+
border: 3px dashed #555;
|
|
861
|
+
box-shadow: none;
|
|
862
|
+
display: grid;
|
|
863
|
+
align-content: center;
|
|
864
|
+
}
|
|
865
|
+
.result-last-tile:hover {
|
|
866
|
+
box-shadow: rgba(8, 8, 32, 0.8) 0 0 6px 2px;
|
|
867
|
+
transition: box-shadow 0.1s ease 0s;
|
|
868
|
+
cursor: pointer;
|
|
869
|
+
border: 3px dashed #4b64ff;
|
|
870
|
+
}
|
|
871
|
+
.result-last-tile h3 {
|
|
872
|
+
margin-bottom: 4rem;
|
|
873
|
+
margin: 0px auto;
|
|
874
|
+
font-size: 2.8rem;
|
|
875
|
+
color: rgb(44, 44, 44);
|
|
876
|
+
font-weight: 200;
|
|
877
|
+
text-align: center;
|
|
878
|
+
}
|
|
802
879
|
`;
|
|
803
880
|
}
|
|
@@ -586,7 +586,10 @@ export class CollectionBrowser
|
|
|
586
586
|
.placeholderCellTemplate=${this.placeholderCellTemplate}
|
|
587
587
|
@scrollThresholdReached=${this.scrollThresholdReached}
|
|
588
588
|
@visibleCellsChanged=${this.visibleCellsChanged}
|
|
589
|
-
|
|
589
|
+
>${this.displayMode === 'grid'
|
|
590
|
+
? html`<slot name="result-last-tile" slot="result-last-tile"></slot>`
|
|
591
|
+
: nothing}
|
|
592
|
+
</infinite-scroller>`;
|
|
590
593
|
}
|
|
591
594
|
|
|
592
595
|
private get infiniteScrollerClasses() {
|
|
@@ -1411,15 +1414,16 @@ export class CollectionBrowser
|
|
|
1411
1414
|
}
|
|
1412
1415
|
|
|
1413
1416
|
private async handleQueryChange() {
|
|
1414
|
-
console.log('handlequerychange');
|
|
1415
1417
|
// only reset if the query has actually changed
|
|
1416
1418
|
if (!this.searchService || this.pageFetchQueryKey === this.previousQueryKey)
|
|
1417
1419
|
return;
|
|
1418
|
-
console.log(1);
|
|
1419
1420
|
|
|
1420
1421
|
// If the new state prevents us from updating the search results, don't reset
|
|
1421
|
-
if (
|
|
1422
|
-
|
|
1422
|
+
if (
|
|
1423
|
+
!this.canPerformSearch &&
|
|
1424
|
+
!(this.clearResultsOnEmptyQuery && this.baseQuery === '')
|
|
1425
|
+
)
|
|
1426
|
+
return;
|
|
1423
1427
|
|
|
1424
1428
|
this.previousQueryKey = this.pageFetchQueryKey;
|
|
1425
1429
|
|
|
@@ -1750,27 +1754,26 @@ export class CollectionBrowser
|
|
|
1750
1754
|
}
|
|
1751
1755
|
|
|
1752
1756
|
facetClickHandler({
|
|
1753
|
-
detail: {
|
|
1757
|
+
detail: { facetType, bucket, negative },
|
|
1754
1758
|
}: CustomEvent<FacetEventDetails>): void {
|
|
1759
|
+
let action: analyticsActions;
|
|
1755
1760
|
if (negative) {
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
? analyticsActions.facetNegativeSelected
|
|
1761
|
-
: analyticsActions.facetNegativeDeselected,
|
|
1762
|
-
label: key,
|
|
1763
|
-
});
|
|
1761
|
+
action =
|
|
1762
|
+
bucket.state !== 'none'
|
|
1763
|
+
? analyticsActions.facetNegativeSelected
|
|
1764
|
+
: analyticsActions.facetNegativeDeselected;
|
|
1764
1765
|
} else {
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
? analyticsActions.facetSelected
|
|
1770
|
-
: analyticsActions.facetDeselected,
|
|
1771
|
-
label: key,
|
|
1772
|
-
});
|
|
1766
|
+
action =
|
|
1767
|
+
bucket.state !== 'none'
|
|
1768
|
+
? analyticsActions.facetSelected
|
|
1769
|
+
: analyticsActions.facetDeselected;
|
|
1773
1770
|
}
|
|
1771
|
+
|
|
1772
|
+
this.analyticsHandler?.sendEvent({
|
|
1773
|
+
category: this.searchContext,
|
|
1774
|
+
action,
|
|
1775
|
+
label: facetType,
|
|
1776
|
+
});
|
|
1774
1777
|
}
|
|
1775
1778
|
|
|
1776
1779
|
private async fetchFacets() {
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
import {
|
|
2
|
+
css,
|
|
3
|
+
html,
|
|
4
|
+
LitElement,
|
|
5
|
+
TemplateResult,
|
|
6
|
+
CSSResultGroup,
|
|
7
|
+
nothing,
|
|
8
|
+
} from 'lit';
|
|
9
|
+
import { customElement, property } from 'lit/decorators.js';
|
|
10
|
+
import type { CollectionNameCacheInterface } from '@internetarchive/collection-name-cache';
|
|
11
|
+
import eyeIcon from '../assets/img/icons/eye';
|
|
12
|
+
import eyeClosedIcon from '../assets/img/icons/eye-closed';
|
|
13
|
+
import type {
|
|
14
|
+
FacetOption,
|
|
15
|
+
FacetBucket,
|
|
16
|
+
FacetEventDetails,
|
|
17
|
+
FacetState,
|
|
18
|
+
} from '../models';
|
|
19
|
+
|
|
20
|
+
@customElement('facet-row')
|
|
21
|
+
export class FacetRow extends LitElement {
|
|
22
|
+
//
|
|
23
|
+
// UI STATE
|
|
24
|
+
//
|
|
25
|
+
|
|
26
|
+
/** The name of the facet group to which this facet belongs (e.g., "mediatype") */
|
|
27
|
+
@property({ type: String }) facetType?: FacetOption;
|
|
28
|
+
|
|
29
|
+
/** The facet bucket containing details about the state, count, and key for this row */
|
|
30
|
+
@property({ type: Object }) bucket?: FacetBucket;
|
|
31
|
+
|
|
32
|
+
/** The collection name cache for converting collection identifiers to titles */
|
|
33
|
+
@property({ type: Object })
|
|
34
|
+
collectionNameCache?: CollectionNameCacheInterface;
|
|
35
|
+
|
|
36
|
+
//
|
|
37
|
+
// COMPONENT LIFECYCLE METHODS
|
|
38
|
+
//
|
|
39
|
+
|
|
40
|
+
render() {
|
|
41
|
+
return html`${this.facetRowTemplate}`;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
//
|
|
45
|
+
// TEMPLATE GETTERS
|
|
46
|
+
//
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Template for the full facet row, including the positive/negative checks,
|
|
50
|
+
* the display name, and the count.
|
|
51
|
+
*/
|
|
52
|
+
private get facetRowTemplate(): TemplateResult | typeof nothing {
|
|
53
|
+
const { bucket, facetType } = this;
|
|
54
|
+
if (!bucket || !facetType) return nothing;
|
|
55
|
+
|
|
56
|
+
const showOnlyCheckboxId = `${facetType}:${bucket.key}-show-only`;
|
|
57
|
+
const negativeCheckboxId = `${facetType}:${bucket.key}-negative`;
|
|
58
|
+
|
|
59
|
+
// For collections, we need to asynchronously load the collection name
|
|
60
|
+
// so we use the `async-collection-name` widget.
|
|
61
|
+
// For other facet types, we just have a static value to use.
|
|
62
|
+
const bucketTextDisplay =
|
|
63
|
+
facetType !== 'collection'
|
|
64
|
+
? html`${bucket.displayText ?? bucket.key}`
|
|
65
|
+
: html`<a href="/details/${bucket.key}">
|
|
66
|
+
<async-collection-name
|
|
67
|
+
.collectionNameCache=${this.collectionNameCache}
|
|
68
|
+
.identifier=${bucket.key}
|
|
69
|
+
placeholder="-"
|
|
70
|
+
></async-collection-name>
|
|
71
|
+
</a> `;
|
|
72
|
+
|
|
73
|
+
const facetHidden = bucket.state === 'hidden';
|
|
74
|
+
const facetSelected = bucket.state === 'selected';
|
|
75
|
+
|
|
76
|
+
const titleText = `${facetType}: ${bucket.displayText ?? bucket.key}`;
|
|
77
|
+
const onlyShowText = facetSelected
|
|
78
|
+
? `Show all ${facetType}s`
|
|
79
|
+
: `Only show ${titleText}`;
|
|
80
|
+
const hideText = `Hide ${titleText}`;
|
|
81
|
+
const unhideText = `Unhide ${titleText}`;
|
|
82
|
+
const showHideText = facetHidden ? unhideText : hideText;
|
|
83
|
+
const ariaLabel = `${titleText}, ${bucket.count} results`;
|
|
84
|
+
|
|
85
|
+
return html`
|
|
86
|
+
<div class="facet-row-container">
|
|
87
|
+
<div class="facet-checkboxes">
|
|
88
|
+
<input
|
|
89
|
+
type="checkbox"
|
|
90
|
+
.name=${facetType}
|
|
91
|
+
.value=${bucket.key}
|
|
92
|
+
@click=${(e: Event) => {
|
|
93
|
+
this.facetClicked(e, false);
|
|
94
|
+
}}
|
|
95
|
+
.checked=${facetSelected}
|
|
96
|
+
class="select-facet-checkbox"
|
|
97
|
+
title=${onlyShowText}
|
|
98
|
+
id=${showOnlyCheckboxId}
|
|
99
|
+
/>
|
|
100
|
+
<input
|
|
101
|
+
type="checkbox"
|
|
102
|
+
id=${negativeCheckboxId}
|
|
103
|
+
.name=${facetType}
|
|
104
|
+
.value=${bucket.key}
|
|
105
|
+
@click=${(e: Event) => {
|
|
106
|
+
this.facetClicked(e, true);
|
|
107
|
+
}}
|
|
108
|
+
.checked=${facetHidden}
|
|
109
|
+
class="hide-facet-checkbox"
|
|
110
|
+
/>
|
|
111
|
+
<label
|
|
112
|
+
for=${negativeCheckboxId}
|
|
113
|
+
class="hide-facet-icon${facetHidden ? ' active' : ''}"
|
|
114
|
+
title=${showHideText}
|
|
115
|
+
>
|
|
116
|
+
<span class="eye">${eyeIcon}</span>
|
|
117
|
+
<span class="eye-closed">${eyeClosedIcon}</span>
|
|
118
|
+
</label>
|
|
119
|
+
</div>
|
|
120
|
+
<label
|
|
121
|
+
for=${showOnlyCheckboxId}
|
|
122
|
+
class="facet-info-display"
|
|
123
|
+
title=${onlyShowText}
|
|
124
|
+
aria-label=${ariaLabel}
|
|
125
|
+
>
|
|
126
|
+
<div class="facet-title">${bucketTextDisplay}</div>
|
|
127
|
+
<div class="facet-count">${bucket.count.toLocaleString()}</div>
|
|
128
|
+
</label>
|
|
129
|
+
</div>
|
|
130
|
+
`;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
//
|
|
134
|
+
// EVENT HANDLERS & DISPATCHERS
|
|
135
|
+
//
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Handler for whenever this facet is clicked & its state changes
|
|
139
|
+
*/
|
|
140
|
+
private facetClicked(e: Event, negative: boolean) {
|
|
141
|
+
const { bucket, facetType } = this;
|
|
142
|
+
if (!bucket || !facetType) return;
|
|
143
|
+
|
|
144
|
+
const target = e.target as HTMLInputElement;
|
|
145
|
+
const { checked } = target;
|
|
146
|
+
bucket.state = FacetRow.getFacetState(checked, negative);
|
|
147
|
+
|
|
148
|
+
this.dispatchFacetClickEvent({
|
|
149
|
+
facetType,
|
|
150
|
+
bucket,
|
|
151
|
+
negative,
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Emits a `facetClick` event with details about this facet & its current state
|
|
157
|
+
*/
|
|
158
|
+
private dispatchFacetClickEvent(detail: FacetEventDetails) {
|
|
159
|
+
const event = new CustomEvent<FacetEventDetails>('facetClick', {
|
|
160
|
+
detail,
|
|
161
|
+
});
|
|
162
|
+
this.dispatchEvent(event);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
//
|
|
166
|
+
// OTHER METHODS
|
|
167
|
+
//
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Returns the composed facet state corresponding to a positive or negative facet's checked state
|
|
171
|
+
*/
|
|
172
|
+
static getFacetState(checked: boolean, negative: boolean): FacetState {
|
|
173
|
+
let state: FacetState;
|
|
174
|
+
if (checked) {
|
|
175
|
+
state = negative ? 'hidden' : 'selected';
|
|
176
|
+
} else {
|
|
177
|
+
state = 'none';
|
|
178
|
+
}
|
|
179
|
+
return state;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
//
|
|
183
|
+
// STYLES
|
|
184
|
+
//
|
|
185
|
+
|
|
186
|
+
static get styles(): CSSResultGroup {
|
|
187
|
+
const facetRowBorderTop = css`var(--facet-row-border-top, 1px solid transparent)`;
|
|
188
|
+
const facetRowBorderBottom = css`var(--facet-row-border-bottom, 1px solid transparent)`;
|
|
189
|
+
|
|
190
|
+
return css`
|
|
191
|
+
async-collection-name {
|
|
192
|
+
display: contents;
|
|
193
|
+
}
|
|
194
|
+
.facet-checkboxes {
|
|
195
|
+
margin: 0 5px 0 0;
|
|
196
|
+
display: flex;
|
|
197
|
+
height: 15px;
|
|
198
|
+
}
|
|
199
|
+
.facet-checkboxes input:first-child {
|
|
200
|
+
margin-right: 5px;
|
|
201
|
+
}
|
|
202
|
+
.facet-checkboxes input {
|
|
203
|
+
height: 15px;
|
|
204
|
+
width: 15px;
|
|
205
|
+
margin: 0;
|
|
206
|
+
}
|
|
207
|
+
.facet-row-container {
|
|
208
|
+
display: flex;
|
|
209
|
+
font-weight: 500;
|
|
210
|
+
font-size: 1.2rem;
|
|
211
|
+
margin: 2.5px auto;
|
|
212
|
+
height: auto;
|
|
213
|
+
border-top: ${facetRowBorderTop};
|
|
214
|
+
border-bottom: ${facetRowBorderBottom};
|
|
215
|
+
overflow: hidden;
|
|
216
|
+
}
|
|
217
|
+
.facet-info-display {
|
|
218
|
+
display: flex;
|
|
219
|
+
flex: 1 1 0%;
|
|
220
|
+
cursor: pointer;
|
|
221
|
+
flex-wrap: wrap;
|
|
222
|
+
}
|
|
223
|
+
.facet-title {
|
|
224
|
+
word-break: break-word;
|
|
225
|
+
display: inline-block;
|
|
226
|
+
flex: 1 1 0%;
|
|
227
|
+
}
|
|
228
|
+
.facet-count {
|
|
229
|
+
text-align: right;
|
|
230
|
+
}
|
|
231
|
+
.select-facet-checkbox {
|
|
232
|
+
cursor: pointer;
|
|
233
|
+
display: inline-block;
|
|
234
|
+
}
|
|
235
|
+
.hide-facet-checkbox {
|
|
236
|
+
display: none;
|
|
237
|
+
}
|
|
238
|
+
.hide-facet-icon {
|
|
239
|
+
width: 15px;
|
|
240
|
+
height: 15px;
|
|
241
|
+
cursor: pointer;
|
|
242
|
+
opacity: 0.3;
|
|
243
|
+
display: inline-block;
|
|
244
|
+
}
|
|
245
|
+
.hide-facet-icon:hover,
|
|
246
|
+
.active {
|
|
247
|
+
opacity: 1;
|
|
248
|
+
}
|
|
249
|
+
.hide-facet-icon:hover .eye,
|
|
250
|
+
.hide-facet-icon .eye-closed {
|
|
251
|
+
display: none;
|
|
252
|
+
}
|
|
253
|
+
.hide-facet-icon:hover .eye-closed,
|
|
254
|
+
.hide-facet-icon.active .eye-closed {
|
|
255
|
+
display: inline;
|
|
256
|
+
}
|
|
257
|
+
.hide-facet-icon.active .eye {
|
|
258
|
+
display: none;
|
|
259
|
+
}
|
|
260
|
+
.sorting-icon {
|
|
261
|
+
cursor: pointer;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
a:link,
|
|
265
|
+
a:visited {
|
|
266
|
+
text-decoration: none;
|
|
267
|
+
color: var(--ia-theme-link-color, #4b64ff);
|
|
268
|
+
}
|
|
269
|
+
a:hover {
|
|
270
|
+
text-decoration: underline;
|
|
271
|
+
}
|
|
272
|
+
`;
|
|
273
|
+
}
|
|
274
|
+
}
|