@internetarchive/collection-browser 1.13.0-alpha2 → 1.14.0

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 (287) 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 +64 -54
  12. package/dist/src/app-root.js +320 -293
  13. package/dist/src/app-root.js.map +1 -1
  14. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  15. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  16. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  17. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  18. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  19. package/dist/src/assets/img/icons/chevron.js +2 -2
  20. package/dist/src/assets/img/icons/contract.d.ts +2 -2
  21. package/dist/src/assets/img/icons/contract.js +2 -2
  22. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  23. package/dist/src/assets/img/icons/empty-query.js +2 -2
  24. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  25. package/dist/src/assets/img/icons/expand.js +2 -2
  26. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  27. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  28. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  29. package/dist/src/assets/img/icons/eye.js +2 -2
  30. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  31. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  32. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  33. package/dist/src/assets/img/icons/login-required.js +2 -2
  34. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  35. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  36. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  37. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  38. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  39. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  40. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  41. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  42. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  43. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  44. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  45. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  46. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  47. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  48. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  49. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  50. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  51. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  52. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  53. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  54. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  55. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  56. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  57. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  58. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  59. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  60. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  61. package/dist/src/assets/img/icons/null-result.js +2 -2
  62. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  63. package/dist/src/assets/img/icons/restricted.js +2 -2
  64. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  65. package/dist/src/assets/img/icons/reviews.js +2 -2
  66. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  67. package/dist/src/assets/img/icons/upload.js +2 -2
  68. package/dist/src/assets/img/icons/views.d.ts +1 -1
  69. package/dist/src/assets/img/icons/views.js +2 -2
  70. package/dist/src/circular-activity-indicator.d.ts +5 -5
  71. package/dist/src/circular-activity-indicator.js +17 -17
  72. package/dist/src/collection-browser.d.ts +522 -473
  73. package/dist/src/collection-browser.js +1846 -1697
  74. package/dist/src/collection-browser.js.map +1 -1
  75. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  76. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  77. package/dist/src/collection-facets/facets-template.d.ts +20 -20
  78. package/dist/src/collection-facets/facets-template.js +152 -152
  79. package/dist/src/collection-facets/more-facets-content.d.ts +77 -77
  80. package/dist/src/collection-facets/more-facets-content.js +359 -359
  81. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  82. package/dist/src/collection-facets/more-facets-pagination.js +196 -196
  83. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  84. package/dist/src/collection-facets/toggle-switch.js +94 -94
  85. package/dist/src/collection-facets.d.ts +104 -103
  86. package/dist/src/collection-facets.js +511 -498
  87. package/dist/src/collection-facets.js.map +1 -1
  88. package/dist/src/empty-placeholder.d.ts +23 -23
  89. package/dist/src/empty-placeholder.js +74 -74
  90. package/dist/src/expanded-date-picker.d.ts +43 -43
  91. package/dist/src/expanded-date-picker.js +109 -109
  92. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  93. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  94. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  95. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  96. package/dist/src/manage/manage-bar.d.ts +26 -0
  97. package/dist/src/manage/manage-bar.js +147 -0
  98. package/dist/src/manage/manage-bar.js.map +1 -0
  99. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  100. package/dist/src/mediatype/mediatype-config.js +85 -85
  101. package/dist/src/models.d.ts +164 -163
  102. package/dist/src/models.js +269 -269
  103. package/dist/src/models.js.map +1 -1
  104. package/dist/src/restoration-state-handler.d.ts +70 -70
  105. package/dist/src/restoration-state-handler.js +355 -355
  106. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  107. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  108. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  109. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  110. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  111. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  112. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  113. package/dist/src/sort-filter-bar/img/list.js +2 -2
  114. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  115. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  116. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  117. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  118. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  119. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  120. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  121. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  122. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  123. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  124. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +208 -208
  125. package/dist/src/sort-filter-bar/sort-filter-bar.js +637 -637
  126. package/dist/src/styles/item-image-styles.d.ts +8 -8
  127. package/dist/src/styles/item-image-styles.js +9 -9
  128. package/dist/src/styles/sr-only.d.ts +1 -1
  129. package/dist/src/styles/sr-only.js +2 -2
  130. package/dist/src/tiles/base-tile-component.d.ts +18 -18
  131. package/dist/src/tiles/base-tile-component.js +59 -59
  132. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  133. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  134. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  135. package/dist/src/tiles/grid/account-tile.js +72 -72
  136. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  137. package/dist/src/tiles/grid/collection-tile.js +80 -80
  138. package/dist/src/tiles/grid/item-tile.d.ts +27 -27
  139. package/dist/src/tiles/grid/item-tile.js +134 -134
  140. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  141. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  142. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  143. package/dist/src/tiles/grid/tile-stats.js +48 -48
  144. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  145. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  146. package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
  147. package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
  148. package/dist/src/tiles/image-block.d.ts +17 -17
  149. package/dist/src/tiles/image-block.js +72 -72
  150. package/dist/src/tiles/item-image.d.ts +35 -35
  151. package/dist/src/tiles/item-image.js +117 -117
  152. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  153. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  154. package/dist/src/tiles/list/tile-list-compact.d.ts +15 -15
  155. package/dist/src/tiles/list/tile-list-compact.js +114 -114
  156. package/dist/src/tiles/list/tile-list.d.ts +46 -46
  157. package/dist/src/tiles/list/tile-list.js +298 -298
  158. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  159. package/dist/src/tiles/mediatype-icon.js +47 -47
  160. package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
  161. package/dist/src/tiles/overlay/icon-overlay.js +40 -40
  162. package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
  163. package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
  164. package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
  165. package/dist/src/tiles/overlay/text-overlay.js +42 -42
  166. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  167. package/dist/src/tiles/text-snippet-block.js +73 -73
  168. package/dist/src/tiles/tile-dispatcher.d.ts +63 -50
  169. package/dist/src/tiles/tile-dispatcher.js +255 -187
  170. package/dist/src/tiles/tile-dispatcher.js.map +1 -1
  171. package/dist/src/tiles/tile-display-value-provider.d.ts +43 -43
  172. package/dist/src/tiles/tile-display-value-provider.js +80 -80
  173. package/dist/src/utils/analytics-events.d.ts +25 -25
  174. package/dist/src/utils/analytics-events.js +27 -27
  175. package/dist/src/utils/array-equals.d.ts +4 -4
  176. package/dist/src/utils/array-equals.js +10 -10
  177. package/dist/src/utils/format-count.d.ts +7 -7
  178. package/dist/src/utils/format-count.js +76 -76
  179. package/dist/src/utils/format-date.d.ts +2 -2
  180. package/dist/src/utils/format-date.js +25 -25
  181. package/dist/src/utils/format-unit-size.d.ts +2 -2
  182. package/dist/src/utils/format-unit-size.js +33 -33
  183. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  184. package/dist/src/utils/local-date-from-utc.js +15 -15
  185. package/dist/src/utils/sha1.d.ts +2 -2
  186. package/dist/src/utils/sha1.js +8 -8
  187. package/dist/test/collection-browser.test.d.ts +1 -1
  188. package/dist/test/collection-browser.test.js +1122 -979
  189. package/dist/test/collection-browser.test.js.map +1 -1
  190. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  191. package/dist/test/collection-facets/facets-template.test.js +134 -134
  192. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  193. package/dist/test/collection-facets/more-facets-content.test.js +133 -133
  194. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  195. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  196. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  197. package/dist/test/collection-facets/toggle-switch.test.js +73 -73
  198. package/dist/test/collection-facets.test.d.ts +2 -2
  199. package/dist/test/collection-facets.test.js +682 -682
  200. package/dist/test/empty-placeholder.test.d.ts +1 -1
  201. package/dist/test/empty-placeholder.test.js +63 -63
  202. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  203. package/dist/test/expanded-date-picker.test.js +95 -95
  204. package/dist/test/icon-overlay.test.d.ts +1 -1
  205. package/dist/test/icon-overlay.test.js +24 -24
  206. package/dist/test/image-block.test.d.ts +1 -1
  207. package/dist/test/image-block.test.js +48 -48
  208. package/dist/test/item-image.test.d.ts +1 -1
  209. package/dist/test/item-image.test.js +86 -84
  210. package/dist/test/item-image.test.js.map +1 -1
  211. package/dist/test/manage/manage-bar.test.d.ts +1 -0
  212. package/dist/test/manage/manage-bar.test.js +73 -0
  213. package/dist/test/manage/manage-bar.test.js.map +1 -0
  214. package/dist/test/mediatype-config.test.d.ts +1 -1
  215. package/dist/test/mediatype-config.test.js +16 -16
  216. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  217. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  218. package/dist/test/mocks/mock-collection-name-cache.d.ts +9 -9
  219. package/dist/test/mocks/mock-collection-name-cache.js +17 -17
  220. package/dist/test/mocks/mock-search-responses.d.ts +21 -21
  221. package/dist/test/mocks/mock-search-responses.js +709 -707
  222. package/dist/test/mocks/mock-search-responses.js.map +1 -1
  223. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  224. package/dist/test/mocks/mock-search-service.js +50 -50
  225. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  226. package/dist/test/restoration-state-handler.test.js +270 -270
  227. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  228. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  229. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  230. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  231. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  232. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +378 -378
  233. package/dist/test/text-overlay.test.d.ts +1 -1
  234. package/dist/test/text-overlay.test.js +48 -48
  235. package/dist/test/text-snippet-block.test.d.ts +1 -1
  236. package/dist/test/text-snippet-block.test.js +57 -57
  237. package/dist/test/tile-stats.test.d.ts +1 -1
  238. package/dist/test/tile-stats.test.js +33 -33
  239. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  240. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  241. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  242. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  243. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  244. package/dist/test/tiles/grid/item-tile.test.js +254 -254
  245. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  246. package/dist/test/tiles/hover/hover-pane-controller.test.js +258 -257
  247. package/dist/test/tiles/hover/hover-pane-controller.test.js.map +1 -1
  248. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  249. package/dist/test/tiles/hover/tile-hover-pane.test.js +13 -13
  250. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  251. package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
  252. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  253. package/dist/test/tiles/list/tile-list.test.js +242 -242
  254. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  255. package/dist/test/tiles/tile-dispatcher.test.js +107 -67
  256. package/dist/test/tiles/tile-dispatcher.test.js.map +1 -1
  257. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  258. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  259. package/dist/test/utils/array-equals.test.d.ts +1 -1
  260. package/dist/test/utils/array-equals.test.js +26 -26
  261. package/dist/test/utils/format-count.test.d.ts +1 -1
  262. package/dist/test/utils/format-count.test.js +23 -23
  263. package/dist/test/utils/format-date.test.d.ts +1 -1
  264. package/dist/test/utils/format-date.test.js +17 -17
  265. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  266. package/dist/test/utils/format-unit-size.test.js +17 -17
  267. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  268. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  269. package/local.archive.org.cert +86 -86
  270. package/local.archive.org.key +27 -27
  271. package/package.json +2 -2
  272. package/renovate.json +6 -6
  273. package/src/app-root.ts +29 -0
  274. package/src/collection-browser.ts +197 -23
  275. package/src/collection-facets.ts +13 -1
  276. package/src/manage/manage-bar.ts +151 -0
  277. package/src/models.ts +1 -0
  278. package/src/tiles/tile-dispatcher.ts +71 -5
  279. package/test/collection-browser.test.ts +198 -1
  280. package/test/item-image.test.ts +2 -0
  281. package/test/manage/manage-bar.test.ts +107 -0
  282. package/test/mocks/mock-search-responses.ts +2 -0
  283. package/test/tiles/hover/hover-pane-controller.test.ts +1 -0
  284. package/test/tiles/tile-dispatcher.test.ts +52 -0
  285. package/tsconfig.json +21 -21
  286. package/web-dev-server.config.mjs +30 -30
  287. package/web-test-runner.config.mjs +41 -41
@@ -0,0 +1,26 @@
1
+ import { LitElement, TemplateResult, CSSResultGroup } from 'lit';
2
+ export interface ManageableItem {
3
+ identifier: string;
4
+ title?: string;
5
+ date?: string;
6
+ }
7
+ export declare class ManageBar extends LitElement {
8
+ /**
9
+ * The label displayed in front of the management buttons
10
+ */
11
+ label: string;
12
+ /**
13
+ * Whether to show the "Select All" button (default false)
14
+ */
15
+ showSelectAll: boolean;
16
+ /**
17
+ * Whether to show the "Unselect All" button (default false)
18
+ */
19
+ showUnselectAll: boolean;
20
+ render(): TemplateResult;
21
+ private cancelClicked;
22
+ private removeClicked;
23
+ private selectAllClicked;
24
+ private unselectAllClicked;
25
+ static get styles(): CSSResultGroup;
26
+ }
@@ -0,0 +1,147 @@
1
+ import { __decorate } from "tslib";
2
+ import { msg } from '@lit/localize';
3
+ import { LitElement, html, css } from 'lit';
4
+ import { customElement, property } from 'lit/decorators.js';
5
+ import { when } from 'lit/directives/when.js';
6
+ let ManageBar = class ManageBar extends LitElement {
7
+ constructor() {
8
+ super(...arguments);
9
+ /**
10
+ * The label displayed in front of the management buttons
11
+ */
12
+ this.label = msg('Select items to un-favorite');
13
+ /**
14
+ * Whether to show the "Select All" button (default false)
15
+ */
16
+ this.showSelectAll = false;
17
+ /**
18
+ * Whether to show the "Unselect All" button (default false)
19
+ */
20
+ this.showUnselectAll = false;
21
+ }
22
+ render() {
23
+ return html `
24
+ <div class="manage-container">
25
+ <span class="manage-label">${this.label}</span>
26
+ <div class="manage-buttons">
27
+ <button class="cancel-btn" @click=${this.cancelClicked}>
28
+ ${msg('Cancel')}
29
+ </button>
30
+ <button class="remove-btn" @click=${this.removeClicked}>
31
+ ${msg('Remove selected items')}
32
+ </button>
33
+ <div class="selection-buttons">
34
+ ${when(this.showSelectAll, () => html ` <button
35
+ class="link-styled select-all-btn"
36
+ @click=${this.selectAllClicked}
37
+ >
38
+ ${msg('Select all')}
39
+ </button>`)}
40
+ ${when(this.showUnselectAll, () => html ` <button
41
+ class="link-styled unselect-all-btn"
42
+ @click=${this.unselectAllClicked}
43
+ >
44
+ ${msg('Unselect all')}
45
+ </button>`)}
46
+ </div>
47
+ </div>
48
+ </div>
49
+ `;
50
+ }
51
+ cancelClicked() {
52
+ this.dispatchEvent(new CustomEvent('cancel'));
53
+ }
54
+ removeClicked() {
55
+ this.dispatchEvent(new CustomEvent('removeItems'));
56
+ }
57
+ selectAllClicked() {
58
+ this.dispatchEvent(new CustomEvent('selectAll'));
59
+ }
60
+ unselectAllClicked() {
61
+ this.dispatchEvent(new CustomEvent('unselectAll'));
62
+ }
63
+ static get styles() {
64
+ return css `
65
+ .manage-container {
66
+ display: flex;
67
+ align-items: center;
68
+ column-gap: 5px;
69
+ padding: 10px 0 20px;
70
+ flex-wrap: wrap;
71
+ }
72
+
73
+ .manage-label {
74
+ display: inline-block;
75
+ font-weight: bold;
76
+ font-size: 1.8rem;
77
+ padding-right: 10px;
78
+ }
79
+
80
+ .manage-buttons {
81
+ display: flex;
82
+ align-items: center;
83
+ column-gap: 5px;
84
+ }
85
+
86
+ button {
87
+ display: inline-block;
88
+ font-size: 1.4rem;
89
+ cursor: pointer;
90
+ white-space: nowrap;
91
+ }
92
+
93
+ button.link-styled {
94
+ margin: 0;
95
+ padding: 6px;
96
+ border: 0;
97
+ appearance: none;
98
+ background: none;
99
+ color: var(--ia-theme-link-color, #4b64ff);
100
+ text-decoration: none;
101
+ }
102
+ button.link-styled:hover {
103
+ text-decoration: underline;
104
+ }
105
+
106
+ button:not(.link-styled) {
107
+ margin: 0;
108
+ padding: 6px 12px;
109
+ border-radius: 4px;
110
+ color: white;
111
+ }
112
+
113
+ /* Button styles derived from legacy version */
114
+ .cancel-btn {
115
+ background: #777777;
116
+ border: 1px solid #666666;
117
+ }
118
+ .cancel-btn:hover {
119
+ background: #6b6b6b;
120
+ border: 1px solid #505050;
121
+ }
122
+
123
+ .remove-btn {
124
+ background: #d9534f;
125
+ border: 1px solid #d43f3a;
126
+ }
127
+ .remove-btn:hover {
128
+ background: #d2322d;
129
+ border: 1px solid #ac2925;
130
+ }
131
+ `;
132
+ }
133
+ };
134
+ __decorate([
135
+ property({ type: String })
136
+ ], ManageBar.prototype, "label", void 0);
137
+ __decorate([
138
+ property({ type: Boolean })
139
+ ], ManageBar.prototype, "showSelectAll", void 0);
140
+ __decorate([
141
+ property({ type: Boolean })
142
+ ], ManageBar.prototype, "showUnselectAll", void 0);
143
+ ManageBar = __decorate([
144
+ customElement('manage-bar')
145
+ ], ManageBar);
146
+ export { ManageBar };
147
+ //# sourceMappingURL=manage-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage-bar.js","sourceRoot":"","sources":["../../../src/manage/manage-bar.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAkC,MAAM,KAAK,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAS9C,IAAa,SAAS,GAAtB,MAAa,SAAU,SAAQ,UAAU;IAAzC;;QACE;;WAEG;QACyB,UAAK,GAAG,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAEvE;;WAEG;QAC0B,kBAAa,GAAG,KAAK,CAAC;QAEnD;;WAEG;QAC0B,oBAAe,GAAG,KAAK,CAAC;IA4HvD,CAAC;IA1HC,MAAM;QACJ,OAAO,IAAI,CAAA;;qCAEsB,IAAI,CAAC,KAAK;;8CAED,IAAI,CAAC,aAAa;cAClD,GAAG,CAAC,QAAQ,CAAC;;8CAEmB,IAAI,CAAC,aAAa;cAClD,GAAG,CAAC,uBAAuB,CAAC;;;cAG5B,IAAI,CACJ,IAAI,CAAC,aAAa,EAClB,GAAG,EAAE,CAAC,IAAI,CAAA;;yBAEC,IAAI,CAAC,gBAAgB;;kBAE5B,GAAG,CAAC,YAAY,CAAC;wBACX,CACX;cACC,IAAI,CACJ,IAAI,CAAC,eAAe,EACpB,GAAG,EAAE,CAAC,IAAI,CAAA;;yBAEC,IAAI,CAAC,kBAAkB;;kBAE9B,GAAG,CAAC,cAAc,CAAC;wBACb,CACX;;;;KAIR,CAAC;IACJ,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChD,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;IACrD,CAAC;IAEO,gBAAgB;QACtB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;IACnD,CAAC;IAEO,kBAAkB;QACxB,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,KAAK,MAAM;QACf,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmET,CAAC;IACJ,CAAC;CACF,CAAA;AAtI6B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;wCAA4C;AAK1C;IAA5B,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gDAAuB;AAKtB;IAA5B,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;kDAAyB;AAd1C,SAAS;IADrB,aAAa,CAAC,YAAY,CAAC;GACf,SAAS,CA0IrB;SA1IY,SAAS","sourcesContent":["import { msg } from '@lit/localize';\nimport { LitElement, html, css, TemplateResult, CSSResultGroup } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { when } from 'lit/directives/when.js';\n\nexport interface ManageableItem {\n identifier: string;\n title?: string;\n date?: string;\n}\n\n@customElement('manage-bar')\nexport class ManageBar extends LitElement {\n /**\n * The label displayed in front of the management buttons\n */\n @property({ type: String }) label = msg('Select items to un-favorite');\n\n /**\n * Whether to show the \"Select All\" button (default false)\n */\n @property({ type: Boolean }) showSelectAll = false;\n\n /**\n * Whether to show the \"Unselect All\" button (default false)\n */\n @property({ type: Boolean }) showUnselectAll = false;\n\n render(): TemplateResult {\n return html`\n <div class=\"manage-container\">\n <span class=\"manage-label\">${this.label}</span>\n <div class=\"manage-buttons\">\n <button class=\"cancel-btn\" @click=${this.cancelClicked}>\n ${msg('Cancel')}\n </button>\n <button class=\"remove-btn\" @click=${this.removeClicked}>\n ${msg('Remove selected items')}\n </button>\n <div class=\"selection-buttons\">\n ${when(\n this.showSelectAll,\n () => html` <button\n class=\"link-styled select-all-btn\"\n @click=${this.selectAllClicked}\n >\n ${msg('Select all')}\n </button>`\n )}\n ${when(\n this.showUnselectAll,\n () => html` <button\n class=\"link-styled unselect-all-btn\"\n @click=${this.unselectAllClicked}\n >\n ${msg('Unselect all')}\n </button>`\n )}\n </div>\n </div>\n </div>\n `;\n }\n\n private cancelClicked(): void {\n this.dispatchEvent(new CustomEvent('cancel'));\n }\n\n private removeClicked(): void {\n this.dispatchEvent(new CustomEvent('removeItems'));\n }\n\n private selectAllClicked(): void {\n this.dispatchEvent(new CustomEvent('selectAll'));\n }\n\n private unselectAllClicked(): void {\n this.dispatchEvent(new CustomEvent('unselectAll'));\n }\n\n static get styles(): CSSResultGroup {\n return css`\n .manage-container {\n display: flex;\n align-items: center;\n column-gap: 5px;\n padding: 10px 0 20px;\n flex-wrap: wrap;\n }\n\n .manage-label {\n display: inline-block;\n font-weight: bold;\n font-size: 1.8rem;\n padding-right: 10px;\n }\n\n .manage-buttons {\n display: flex;\n align-items: center;\n column-gap: 5px;\n }\n\n button {\n display: inline-block;\n font-size: 1.4rem;\n cursor: pointer;\n white-space: nowrap;\n }\n\n button.link-styled {\n margin: 0;\n padding: 6px;\n border: 0;\n appearance: none;\n background: none;\n color: var(--ia-theme-link-color, #4b64ff);\n text-decoration: none;\n }\n button.link-styled:hover {\n text-decoration: underline;\n }\n\n button:not(.link-styled) {\n margin: 0;\n padding: 6px 12px;\n border-radius: 4px;\n color: white;\n }\n\n /* Button styles derived from legacy version */\n .cancel-btn {\n background: #777777;\n border: 1px solid #666666;\n }\n .cancel-btn:hover {\n background: #6b6b6b;\n border: 1px solid #505050;\n }\n\n .remove-btn {\n background: #d9534f;\n border: 1px solid #d43f3a;\n }\n .remove-btn:hover {\n background: #d2322d;\n border: 1px solid #ac2925;\n }\n `;\n }\n}\n"]}
@@ -1,3 +1,3 @@
1
- export declare const mediatypeConfig: {
2
- [key: string]: any;
3
- };
1
+ export declare const mediatypeConfig: {
2
+ [key: string]: any;
3
+ };
@@ -1,86 +1,86 @@
1
- import { accountIcon } from '../assets/img/icons/mediatype/account';
2
- import { audioIcon } from '../assets/img/icons/mediatype/audio';
3
- import { collectionIcon } from '../assets/img/icons/mediatype/collection';
4
- import { dataIcon } from '../assets/img/icons/mediatype/data';
5
- import { etreeIcon } from '../assets/img/icons/mediatype/etree';
6
- import { imagesIcon } from '../assets/img/icons/mediatype/images';
7
- import { filmIcon } from '../assets/img/icons/mediatype/film';
8
- import { radioIcon } from '../assets/img/icons/mediatype/radio';
9
- import { softwareIcon } from '../assets/img/icons/mediatype/software';
10
- import { textsIcon } from '../assets/img/icons/mediatype/texts';
11
- import { tvIcon } from '../assets/img/icons/mediatype/tv';
12
- import { videoIcon } from '../assets/img/icons/mediatype/video';
13
- import { webIcon } from '../assets/img/icons/mediatype/web';
14
- export const mediatypeConfig = {
15
- account: {
16
- color: '#000000',
17
- icon: accountIcon,
18
- text: 'Account',
19
- },
20
- audio: {
21
- color: '#00adef',
22
- icon: audioIcon,
23
- text: 'Audio',
24
- },
25
- collection: {
26
- color: '#4666ff',
27
- icon: collectionIcon,
28
- text: 'Collection',
29
- },
30
- data: {
31
- color: '#333333',
32
- icon: dataIcon,
33
- text: 'Data',
34
- },
35
- etree: {
36
- color: '#00adef',
37
- icon: etreeIcon,
38
- text: 'E-tree',
39
- },
40
- film: {
41
- color: '#bf1b2c',
42
- icon: filmIcon,
43
- text: 'Film',
44
- },
45
- image: {
46
- color: '#aa99c9',
47
- icon: imagesIcon,
48
- text: 'Image',
49
- },
50
- movies: {
51
- color: '#f1644b',
52
- icon: filmIcon,
53
- text: 'Movie',
54
- },
55
- radio: {
56
- color: '#8fdaef',
57
- icon: radioIcon,
58
- text: 'Radio',
59
- },
60
- software: {
61
- color: '#9ecc4f',
62
- icon: softwareIcon,
63
- text: 'Software',
64
- },
65
- texts: {
66
- color: '#faab3c',
67
- icon: textsIcon,
68
- text: 'Text',
69
- },
70
- tv: {
71
- color: '#f1644b',
72
- icon: tvIcon,
73
- text: 'TV',
74
- },
75
- video: {
76
- color: '#f1644b',
77
- icon: videoIcon,
78
- text: 'Video',
79
- },
80
- web: {
81
- color: '#ffcd27',
82
- icon: webIcon,
83
- text: 'Web',
84
- },
85
- };
1
+ import { accountIcon } from '../assets/img/icons/mediatype/account';
2
+ import { audioIcon } from '../assets/img/icons/mediatype/audio';
3
+ import { collectionIcon } from '../assets/img/icons/mediatype/collection';
4
+ import { dataIcon } from '../assets/img/icons/mediatype/data';
5
+ import { etreeIcon } from '../assets/img/icons/mediatype/etree';
6
+ import { imagesIcon } from '../assets/img/icons/mediatype/images';
7
+ import { filmIcon } from '../assets/img/icons/mediatype/film';
8
+ import { radioIcon } from '../assets/img/icons/mediatype/radio';
9
+ import { softwareIcon } from '../assets/img/icons/mediatype/software';
10
+ import { textsIcon } from '../assets/img/icons/mediatype/texts';
11
+ import { tvIcon } from '../assets/img/icons/mediatype/tv';
12
+ import { videoIcon } from '../assets/img/icons/mediatype/video';
13
+ import { webIcon } from '../assets/img/icons/mediatype/web';
14
+ export const mediatypeConfig = {
15
+ account: {
16
+ color: '#000000',
17
+ icon: accountIcon,
18
+ text: 'Account',
19
+ },
20
+ audio: {
21
+ color: '#00adef',
22
+ icon: audioIcon,
23
+ text: 'Audio',
24
+ },
25
+ collection: {
26
+ color: '#4666ff',
27
+ icon: collectionIcon,
28
+ text: 'Collection',
29
+ },
30
+ data: {
31
+ color: '#333333',
32
+ icon: dataIcon,
33
+ text: 'Data',
34
+ },
35
+ etree: {
36
+ color: '#00adef',
37
+ icon: etreeIcon,
38
+ text: 'E-tree',
39
+ },
40
+ film: {
41
+ color: '#bf1b2c',
42
+ icon: filmIcon,
43
+ text: 'Film',
44
+ },
45
+ image: {
46
+ color: '#aa99c9',
47
+ icon: imagesIcon,
48
+ text: 'Image',
49
+ },
50
+ movies: {
51
+ color: '#f1644b',
52
+ icon: filmIcon,
53
+ text: 'Movie',
54
+ },
55
+ radio: {
56
+ color: '#8fdaef',
57
+ icon: radioIcon,
58
+ text: 'Radio',
59
+ },
60
+ software: {
61
+ color: '#9ecc4f',
62
+ icon: softwareIcon,
63
+ text: 'Software',
64
+ },
65
+ texts: {
66
+ color: '#faab3c',
67
+ icon: textsIcon,
68
+ text: 'Text',
69
+ },
70
+ tv: {
71
+ color: '#f1644b',
72
+ icon: tvIcon,
73
+ text: 'TV',
74
+ },
75
+ video: {
76
+ color: '#f1644b',
77
+ icon: videoIcon,
78
+ text: 'Video',
79
+ },
80
+ web: {
81
+ color: '#ffcd27',
82
+ icon: webIcon,
83
+ text: 'Web',
84
+ },
85
+ };
86
86
  //# sourceMappingURL=mediatype-config.js.map