@internetarchive/collection-browser 0.1.7 → 0.1.8

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 (103) hide show
  1. package/demo/app-root.ts +20 -0
  2. package/dist/{src/waveform-view.d.ts → .nojekyll} +0 -0
  3. package/dist/app-root.js +816 -0
  4. package/dist/demo/app-root.d.ts +2 -0
  5. package/dist/demo/app-root.js +22 -0
  6. package/dist/demo/app-root.js.map +1 -1
  7. package/dist/index.html +23 -0
  8. package/dist/src/assets/img/icons/restricted.d.ts +1 -0
  9. package/dist/src/assets/img/icons/restricted.js +29 -0
  10. package/dist/src/assets/img/icons/restricted.js.map +1 -0
  11. package/dist/src/collection-browser.d.ts +5 -0
  12. package/dist/src/collection-browser.js +51 -20
  13. package/dist/src/collection-browser.js.map +1 -1
  14. package/dist/src/models.d.ts +2 -0
  15. package/dist/src/models.js.map +1 -1
  16. package/dist/src/styles/index.d.ts +8 -0
  17. package/dist/src/styles/index.js +101 -0
  18. package/dist/src/styles/index.js.map +1 -0
  19. package/dist/src/tiles/grid/account-tile.js +14 -1
  20. package/dist/src/tiles/grid/account-tile.js.map +1 -1
  21. package/dist/src/tiles/image/item-image.d.ts +18 -0
  22. package/dist/src/tiles/image/item-image.js +210 -0
  23. package/dist/src/tiles/image/item-image.js.map +1 -0
  24. package/dist/src/tiles/image/waveform-image.d.ts +16 -0
  25. package/dist/src/tiles/image/waveform-image.js +168 -0
  26. package/dist/src/tiles/image/waveform-image.js.map +1 -0
  27. package/dist/src/tiles/item-image.d.ts +7 -5
  28. package/dist/src/tiles/item-image.js +86 -23
  29. package/dist/src/tiles/item-image.js.map +1 -1
  30. package/dist/src/tiles/item-tile-image.d.ts +15 -0
  31. package/dist/src/tiles/item-tile-image.js +68 -0
  32. package/dist/src/tiles/item-tile-image.js.map +1 -0
  33. package/dist/src/tiles/list/tile-list-compact.js +54 -59
  34. package/dist/src/tiles/list/tile-list-compact.js.map +1 -1
  35. package/dist/src/tiles/list/tile-list.js +25 -22
  36. package/dist/src/tiles/list/tile-list.js.map +1 -1
  37. package/package.json +1 -1
  38. package/src/assets/img/icons/restricted.ts +29 -0
  39. package/src/collection-browser.ts +29 -0
  40. package/src/models.ts +2 -0
  41. package/src/tiles/grid/account-tile.ts +14 -1
  42. package/src/tiles/item-image.ts +90 -31
  43. package/src/tiles/list/tile-list-compact.ts +45 -50
  44. package/src/tiles/list/tile-list.ts +22 -21
  45. package/dist/src/assets/img/icons/mediatype/livemusic.d.ts +0 -1
  46. package/dist/src/assets/img/icons/mediatype/livemusic.js +0 -7
  47. package/dist/src/assets/img/icons/mediatype/livemusic.js.map +0 -1
  48. package/dist/src/assets/img/icons/mediatype/photos.d.ts +0 -1
  49. package/dist/src/assets/img/icons/mediatype/photos.js +0 -7
  50. package/dist/src/assets/img/icons/mediatype/photos.js.map +0 -1
  51. package/dist/src/helpers.d.ts +0 -1
  52. package/dist/src/helpers.js +0 -20
  53. package/dist/src/helpers.js.map +0 -1
  54. package/dist/src/mediatype/mediatype-color.d.ts +0 -3
  55. package/dist/src/mediatype/mediatype-color.js +0 -15
  56. package/dist/src/mediatype/mediatype-color.js.map +0 -1
  57. package/dist/src/mediatype/mediatype-display.d.ts +0 -3
  58. package/dist/src/mediatype/mediatype-display.js +0 -86
  59. package/dist/src/mediatype/mediatype-display.js.map +0 -1
  60. package/dist/src/mediatype/mediatype-icon.d.ts +0 -10
  61. package/dist/src/mediatype/mediatype-icon.js +0 -105
  62. package/dist/src/mediatype/mediatype-icon.js.map +0 -1
  63. package/dist/src/mediatype/mediatype-text.d.ts +0 -3
  64. package/dist/src/mediatype/mediatype-text.js +0 -17
  65. package/dist/src/mediatype/mediatype-text.js.map +0 -1
  66. package/dist/src/mediatype/mediatypeConfig.d.ts +0 -3
  67. package/dist/src/mediatype/mediatypeConfig.js +0 -86
  68. package/dist/src/mediatype/mediatypeConfig.js.map +0 -1
  69. package/dist/src/mediatype-icon.d.ts +0 -9
  70. package/dist/src/mediatype-icon.js +0 -78
  71. package/dist/src/mediatype-icon.js.map +0 -1
  72. package/dist/src/sort-filter-bar/img/grid.d.ts +0 -1
  73. package/dist/src/sort-filter-bar/img/grid.js +0 -5
  74. package/dist/src/sort-filter-bar/img/grid.js.map +0 -1
  75. package/dist/src/tiles/list/tile-list-detail.d.ts +0 -7
  76. package/dist/src/tiles/list/tile-list-detail.js +0 -28
  77. package/dist/src/tiles/list/tile-list-detail.js.map +0 -1
  78. package/dist/src/tiles/loading-tile.d.ts +0 -5
  79. package/dist/src/tiles/loading-tile.js +0 -32
  80. package/dist/src/tiles/loading-tile.js.map +0 -1
  81. package/dist/src/utils/format-string.d.ts +0 -2
  82. package/dist/src/utils/format-string.js +0 -7
  83. package/dist/src/utils/format-string.js.map +0 -1
  84. package/dist/src/waveform-thumbnail.d.ts +0 -7
  85. package/dist/src/waveform-thumbnail.js +0 -106
  86. package/dist/src/waveform-thumbnail.js.map +0 -1
  87. package/dist/src/waveform-view.js +0 -2
  88. package/dist/src/waveform-view.js.map +0 -1
  89. package/dist/src/your-webcomponent.d.ts +0 -8
  90. package/dist/src/your-webcomponent.js +0 -38
  91. package/dist/src/your-webcomponent.js.map +0 -1
  92. package/dist/test/mediatype-icon.test.d.ts +0 -0
  93. package/dist/test/mediatype-icon.test.js +0 -3
  94. package/dist/test/mediatype-icon.test.js.map +0 -1
  95. package/dist/test/mediatypeConfig.test.d.ts +0 -1
  96. package/dist/test/mediatypeConfig.test.js +0 -17
  97. package/dist/test/mediatypeConfig.test.js.map +0 -1
  98. package/dist/test/utils/format-string.test.d.ts +0 -1
  99. package/dist/test/utils/format-string.test.js +0 -17
  100. package/dist/test/utils/format-string.test.js.map +0 -1
  101. package/dist/test/your-webcomponent.test.d.ts +0 -1
  102. package/dist/test/your-webcomponent.test.js +0 -23
  103. package/dist/test/your-webcomponent.test.js.map +0 -1
@@ -11,6 +11,7 @@ export declare class AppRoot extends LitElement {
11
11
  private cellHeight;
12
12
  private rowGap;
13
13
  private colGap;
14
+ private loggedIn;
14
15
  private baseQueryField;
15
16
  private pageNumberInput;
16
17
  private collectionBrowser;
@@ -20,6 +21,7 @@ export declare class AppRoot extends LitElement {
20
21
  private queryUpdated;
21
22
  render(): import("lit-html").TemplateResult<1>;
22
23
  private baseQueryChanged;
24
+ private loginChanged;
23
25
  private outlineChanged;
24
26
  private rowGapChanged;
25
27
  private colGapChanged;
@@ -20,6 +20,7 @@ let AppRoot = class AppRoot extends LitElement {
20
20
  this.cellHeight = 29;
21
21
  this.rowGap = 1.7;
22
22
  this.colGap = 1.7;
23
+ this.loggedIn = false;
23
24
  }
24
25
  searchPressed(e) {
25
26
  var _a, _b;
@@ -100,6 +101,14 @@ let AppRoot = class AppRoot extends LitElement {
100
101
  @click=${this.outlineChanged}
101
102
  />
102
103
  </div>
104
+ <div>
105
+ <label for="simulate-login">Simulate Login:</label>
106
+ <input
107
+ type="checkbox"
108
+ id="simulate-login"
109
+ @click=${this.loginChanged}
110
+ />
111
+ </div>
103
112
  </div>
104
113
  <div id="cell-gap-control">
105
114
  <div>
@@ -140,6 +149,7 @@ let AppRoot = class AppRoot extends LitElement {
140
149
  .resizeObserver=${this.resizeObserver}
141
150
  .collectionNameCache=${this.collectionNameCache}
142
151
  .showHistogramDatePicker=${true}
152
+ .loggedIn=${this.loggedIn}
143
153
  @visiblePageChanged=${this.visiblePageChanged}
144
154
  @baseQueryChanged=${this.baseQueryChanged}
145
155
  >
@@ -150,6 +160,15 @@ let AppRoot = class AppRoot extends LitElement {
150
160
  baseQueryChanged(e) {
151
161
  this.searchQuery = e.detail.baseQuery;
152
162
  }
163
+ loginChanged(e) {
164
+ const target = e.target;
165
+ if (target.checked) {
166
+ this.loggedIn = true;
167
+ }
168
+ else {
169
+ this.loggedIn = false;
170
+ }
171
+ }
153
172
  outlineChanged(e) {
154
173
  const target = e.target;
155
174
  if (target.checked) {
@@ -247,6 +266,9 @@ __decorate([
247
266
  __decorate([
248
267
  state()
249
268
  ], AppRoot.prototype, "colGap", void 0);
269
+ __decorate([
270
+ state()
271
+ ], AppRoot.prototype, "loggedIn", void 0);
250
272
  __decorate([
251
273
  query('#base-query-field')
252
274
  ], AppRoot.prototype, "baseQueryField", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"app-root.js","sourceRoot":"","sources":["../../demo/app-root.ts"],"names":[],"mappings":"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","sourcesContent":["import { SearchService } from '@internetarchive/search-service';\nimport { LocalCache } from '@internetarchive/local-cache';\nimport { html, css, LitElement, PropertyValues } from 'lit';\nimport { customElement, query, state } from 'lit/decorators.js';\nimport { SharedResizeObserver } from '@internetarchive/shared-resize-observer';\nimport { CollectionNameCache } from '@internetarchive/collection-name-cache';\nimport type { CollectionBrowser } from '../src/collection-browser';\nimport '../src/collection-browser';\n\n@customElement('app-root')\nexport class AppRoot extends LitElement {\n private searchService = SearchService.default;\n\n private resizeObserver = new SharedResizeObserver();\n\n private localCache = new LocalCache();\n\n private collectionNameCache = new CollectionNameCache({\n searchService: this.searchService,\n localCache: this.localCache,\n });\n\n @state() private currentPage?: number;\n\n @state() private searchQuery?: string;\n\n @state() private cellWidth: number = 18;\n\n @state() private cellHeight: number = 29;\n\n @state() private rowGap: number = 1.7;\n\n @state() private colGap: number = 1.7;\n\n @query('#base-query-field') private baseQueryField!: HTMLInputElement;\n\n @query('#page-number-input') private pageNumberInput!: HTMLInputElement;\n\n @query('collection-browser') private collectionBrowser!: CollectionBrowser;\n\n private searchPressed(e: Event) {\n e.preventDefault();\n this.searchQuery = this.baseQueryField.value;\n if ((this.currentPage ?? 1) > 1) {\n this.collectionBrowser.goToPage(this.currentPage ?? 1);\n }\n }\n\n private changePagePressed(e: Event) {\n e.preventDefault();\n this.currentPage = this.pageNumberInput.valueAsNumber;\n this.collectionBrowser.goToPage(this.currentPage);\n }\n\n protected updated(changed: PropertyValues): void {\n if (changed.has('currentPage') && this.currentPage) {\n this.pageNumberInput.value = this.currentPage.toString();\n }\n\n if (changed.has('searchQuery')) {\n this.queryUpdated();\n }\n }\n\n private queryUpdated() {\n this.collectionBrowser.baseQuery = this.searchQuery;\n }\n\n render() {\n return html`\n <div id=\"dev-tools\">\n <form @submit=${this.searchPressed}>\n Query:\n <input\n type=\"text\"\n id=\"base-query-field\"\n .value=${this.searchQuery ?? ''}\n />\n <input type=\"submit\" value=\"Search\" />\n </form>\n\n <form @submit=${this.changePagePressed}>\n Page: <input type=\"number\" value=\"1\" id=\"page-number-input\" />\n <input type=\"submit\" value=\"Go\" />\n </form>\n\n <div id=\"cell-controls\">\n <div id=\"cell-size-control\">\n <div>\n <label for=\"cell-width-slider\">Minimum cell width:</label>\n <input\n type=\"range\"\n min=\"10\"\n max=\"100\"\n value=\"18\"\n step=\"0.1\"\n id=\"cell-width-slider\"\n @input=${this.widthChanged}\n />\n <span>${this.cellWidth}rem</span>\n </div>\n <div>\n <label for=\"cell-height-slider\">Cell height:</label>\n <input\n type=\"range\"\n min=\"10\"\n max=\"100\"\n value=\"29\"\n step=\"0.1\"\n id=\"cell-height-slider\"\n @input=${this.heightChanged}\n />\n <span>${this.cellHeight}rem</span>\n </div>\n <div>\n <label for=\"show-outline-check\">Show outlines:</label>\n <input\n type=\"checkbox\"\n id=\"show-outline-check\"\n @click=${this.outlineChanged}\n />\n </div>\n </div>\n <div id=\"cell-gap-control\">\n <div>\n <label for=\"cell-row-gap-slider\">Row gap:</label>\n <input\n type=\"range\"\n min=\"0\"\n max=\"5\"\n value=\"1.7\"\n step=\"0.1\"\n id=\"cell-row-gap-slider\"\n @input=${this.rowGapChanged}\n />\n <span>${this.rowGap}rem</span>\n </div>\n <div>\n <label for=\"cell-col-gap-slider\">Col gap:</label>\n <input\n type=\"range\"\n min=\"0\"\n max=\"5\"\n value=\"1.7\"\n step=\"0.1\"\n id=\"cell-col-gap-slider\"\n @input=${this.colGapChanged}\n />\n <span>${this.colGap}rem</span>\n </div>\n </div>\n </div>\n </div>\n\n <div id=\"collection-browser-container\">\n <collection-browser\n .baseNavigationUrl=${'https://archive.org'}\n .baseImageUrl=${'https://archive.org'}\n .searchService=${this.searchService}\n .resizeObserver=${this.resizeObserver}\n .collectionNameCache=${this.collectionNameCache}\n .showHistogramDatePicker=${true}\n @visiblePageChanged=${this.visiblePageChanged}\n @baseQueryChanged=${this.baseQueryChanged}\n >\n </collection-browser>\n </div>\n `;\n }\n\n private baseQueryChanged(e: CustomEvent<{ baseQuery?: string }>) {\n this.searchQuery = e.detail.baseQuery;\n }\n\n private outlineChanged(e: Event) {\n const target = e.target as HTMLInputElement;\n if (target.checked) {\n this.collectionBrowser.style.setProperty(\n '--infiniteScrollerCellOutline',\n '1px solid #33D1FF'\n );\n } else {\n this.collectionBrowser.style.removeProperty(\n '--infiniteScrollerCellOutline'\n );\n }\n }\n\n private rowGapChanged(e: Event) {\n const input = e.target as HTMLInputElement;\n this.rowGap = parseFloat(input.value);\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserRowGap',\n `${input.value}rem`\n );\n }\n\n private colGapChanged(e: Event) {\n const input = e.target as HTMLInputElement;\n this.colGap = parseFloat(input.value);\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserColGap',\n `${input.value}rem`\n );\n }\n\n private widthChanged(e: Event) {\n const input = e.target as HTMLInputElement;\n this.cellWidth = parseFloat(input.value);\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserCellMinWidth',\n `${input.value}rem`\n );\n }\n\n private heightChanged(e: Event) {\n const input = e.target as HTMLInputElement;\n this.cellHeight = parseFloat(input.value);\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserCellMinHeight',\n `${input.value}rem`\n );\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserCellMaxHeight',\n `${input.value}rem`\n );\n }\n\n private visiblePageChanged(e: CustomEvent<{ pageNumber: number }>) {\n const { pageNumber } = e.detail;\n if (pageNumber === this.currentPage) return;\n this.currentPage = pageNumber;\n }\n\n static styles = css`\n :host {\n display: block;\n }\n\n input,\n button {\n font-size: 1.6rem;\n }\n\n collection-browser {\n margin-top: 30rem;\n }\n\n #base-query-field {\n width: 300px;\n }\n\n #dev-tools {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 10;\n -webkit-backdrop-filter: blur(10px);\n backdrop-filter: blur(10px);\n padding: 0.5rem 1rem;\n border: 1px solid black;\n }\n\n #cell-controls {\n display: flex;\n }\n\n #cell-controls label {\n display: inline-block;\n width: 10rem;\n }\n\n #cell-gap-control {\n margin-left: 1rem;\n }\n `;\n}\n"]}
1
+ {"version":3,"file":"app-root.js","sourceRoot":"","sources":["../../demo/app-root.ts"],"names":[],"mappings":"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","sourcesContent":["import { SearchService } from '@internetarchive/search-service';\nimport { LocalCache } from '@internetarchive/local-cache';\nimport { html, css, LitElement, PropertyValues } from 'lit';\nimport { customElement, query, state } from 'lit/decorators.js';\nimport { SharedResizeObserver } from '@internetarchive/shared-resize-observer';\nimport { CollectionNameCache } from '@internetarchive/collection-name-cache';\nimport type { CollectionBrowser } from '../src/collection-browser';\nimport '../src/collection-browser';\n\n@customElement('app-root')\nexport class AppRoot extends LitElement {\n private searchService = SearchService.default;\n\n private resizeObserver = new SharedResizeObserver();\n\n private localCache = new LocalCache();\n\n private collectionNameCache = new CollectionNameCache({\n searchService: this.searchService,\n localCache: this.localCache,\n });\n\n @state() private currentPage?: number;\n\n @state() private searchQuery?: string;\n\n @state() private cellWidth: number = 18;\n\n @state() private cellHeight: number = 29;\n\n @state() private rowGap: number = 1.7;\n\n @state() private colGap: number = 1.7;\n\n @state() private loggedIn: boolean = false;\n\n @query('#base-query-field') private baseQueryField!: HTMLInputElement;\n\n @query('#page-number-input') private pageNumberInput!: HTMLInputElement;\n\n @query('collection-browser') private collectionBrowser!: CollectionBrowser;\n\n private searchPressed(e: Event) {\n e.preventDefault();\n this.searchQuery = this.baseQueryField.value;\n if ((this.currentPage ?? 1) > 1) {\n this.collectionBrowser.goToPage(this.currentPage ?? 1);\n }\n }\n\n private changePagePressed(e: Event) {\n e.preventDefault();\n this.currentPage = this.pageNumberInput.valueAsNumber;\n this.collectionBrowser.goToPage(this.currentPage);\n }\n\n protected updated(changed: PropertyValues): void {\n if (changed.has('currentPage') && this.currentPage) {\n this.pageNumberInput.value = this.currentPage.toString();\n }\n\n if (changed.has('searchQuery')) {\n this.queryUpdated();\n }\n }\n\n private queryUpdated() {\n this.collectionBrowser.baseQuery = this.searchQuery;\n }\n\n render() {\n return html`\n <div id=\"dev-tools\">\n <form @submit=${this.searchPressed}>\n Query:\n <input\n type=\"text\"\n id=\"base-query-field\"\n .value=${this.searchQuery ?? ''}\n />\n <input type=\"submit\" value=\"Search\" />\n </form>\n\n <form @submit=${this.changePagePressed}>\n Page: <input type=\"number\" value=\"1\" id=\"page-number-input\" />\n <input type=\"submit\" value=\"Go\" />\n </form>\n\n <div id=\"cell-controls\">\n <div id=\"cell-size-control\">\n <div>\n <label for=\"cell-width-slider\">Minimum cell width:</label>\n <input\n type=\"range\"\n min=\"10\"\n max=\"100\"\n value=\"18\"\n step=\"0.1\"\n id=\"cell-width-slider\"\n @input=${this.widthChanged}\n />\n <span>${this.cellWidth}rem</span>\n </div>\n <div>\n <label for=\"cell-height-slider\">Cell height:</label>\n <input\n type=\"range\"\n min=\"10\"\n max=\"100\"\n value=\"29\"\n step=\"0.1\"\n id=\"cell-height-slider\"\n @input=${this.heightChanged}\n />\n <span>${this.cellHeight}rem</span>\n </div>\n <div>\n <label for=\"show-outline-check\">Show outlines:</label>\n <input\n type=\"checkbox\"\n id=\"show-outline-check\"\n @click=${this.outlineChanged}\n />\n </div>\n <div>\n <label for=\"simulate-login\">Simulate Login:</label>\n <input\n type=\"checkbox\"\n id=\"simulate-login\"\n @click=${this.loginChanged}\n />\n </div>\n </div>\n <div id=\"cell-gap-control\">\n <div>\n <label for=\"cell-row-gap-slider\">Row gap:</label>\n <input\n type=\"range\"\n min=\"0\"\n max=\"5\"\n value=\"1.7\"\n step=\"0.1\"\n id=\"cell-row-gap-slider\"\n @input=${this.rowGapChanged}\n />\n <span>${this.rowGap}rem</span>\n </div>\n <div>\n <label for=\"cell-col-gap-slider\">Col gap:</label>\n <input\n type=\"range\"\n min=\"0\"\n max=\"5\"\n value=\"1.7\"\n step=\"0.1\"\n id=\"cell-col-gap-slider\"\n @input=${this.colGapChanged}\n />\n <span>${this.colGap}rem</span>\n </div>\n </div>\n </div>\n </div>\n\n <div id=\"collection-browser-container\">\n <collection-browser\n .baseNavigationUrl=${'https://archive.org'}\n .baseImageUrl=${'https://archive.org'}\n .searchService=${this.searchService}\n .resizeObserver=${this.resizeObserver}\n .collectionNameCache=${this.collectionNameCache}\n .showHistogramDatePicker=${true}\n .loggedIn=${this.loggedIn}\n @visiblePageChanged=${this.visiblePageChanged}\n @baseQueryChanged=${this.baseQueryChanged}\n >\n </collection-browser>\n </div>\n `;\n }\n\n private baseQueryChanged(e: CustomEvent<{ baseQuery?: string }>) {\n this.searchQuery = e.detail.baseQuery;\n }\n\n private loginChanged(e: Event) {\n const target = e.target as HTMLInputElement;\n if (target.checked) {\n this.loggedIn = true;\n } else {\n this.loggedIn = false;\n }\n }\n\n private outlineChanged(e: Event) {\n const target = e.target as HTMLInputElement;\n if (target.checked) {\n this.collectionBrowser.style.setProperty(\n '--infiniteScrollerCellOutline',\n '1px solid #33D1FF'\n );\n } else {\n this.collectionBrowser.style.removeProperty(\n '--infiniteScrollerCellOutline'\n );\n }\n }\n\n private rowGapChanged(e: Event) {\n const input = e.target as HTMLInputElement;\n this.rowGap = parseFloat(input.value);\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserRowGap',\n `${input.value}rem`\n );\n }\n\n private colGapChanged(e: Event) {\n const input = e.target as HTMLInputElement;\n this.colGap = parseFloat(input.value);\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserColGap',\n `${input.value}rem`\n );\n }\n\n private widthChanged(e: Event) {\n const input = e.target as HTMLInputElement;\n this.cellWidth = parseFloat(input.value);\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserCellMinWidth',\n `${input.value}rem`\n );\n }\n\n private heightChanged(e: Event) {\n const input = e.target as HTMLInputElement;\n this.cellHeight = parseFloat(input.value);\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserCellMinHeight',\n `${input.value}rem`\n );\n this.collectionBrowser.style.setProperty(\n '--collectionBrowserCellMaxHeight',\n `${input.value}rem`\n );\n }\n\n private visiblePageChanged(e: CustomEvent<{ pageNumber: number }>) {\n const { pageNumber } = e.detail;\n if (pageNumber === this.currentPage) return;\n this.currentPage = pageNumber;\n }\n\n static styles = css`\n :host {\n display: block;\n }\n\n input,\n button {\n font-size: 1.6rem;\n }\n\n collection-browser {\n margin-top: 30rem;\n }\n\n #base-query-field {\n width: 300px;\n }\n\n #dev-tools {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 10;\n -webkit-backdrop-filter: blur(10px);\n backdrop-filter: blur(10px);\n padding: 0.5rem 1rem;\n border: 1px solid black;\n }\n\n #cell-controls {\n display: flex;\n }\n\n #cell-controls label {\n display: inline-block;\n width: 10rem;\n }\n\n #cell-gap-control {\n margin-left: 1rem;\n }\n `;\n}\n"]}
@@ -0,0 +1,23 @@
1
+ <!DOCTYPE html><html lang="en-GB"><head>
2
+ <meta charset="utf-8">
3
+ <style>
4
+ html {
5
+ font-size: 10px; /* This is to match petabox's base font size */
6
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
7
+ }
8
+
9
+ body {
10
+ background: #fff;
11
+ color: #2C2C2C;
12
+ }
13
+ </style>
14
+ <script src="https://polyfill.archive.org/v3/polyfill.min.js?features=scrollIntoView%2CElement.prototype.scrollIntoView"></script>
15
+
16
+ </head>
17
+ <body>
18
+ <app-root></app-root>
19
+
20
+
21
+
22
+
23
+ <script type="module" src="./app-root.js"></script></body></html>
@@ -0,0 +1 @@
1
+ export declare const restrictedIcon: import("lit-html").TemplateResult<2>;
@@ -0,0 +1,29 @@
1
+ import { svg } from 'lit';
2
+ export const restrictedIcon = svg `
3
+ <svg
4
+ viewBox="0 0 100 100"
5
+ xmlns="http://www.w3.org/2000/svg"
6
+ >
7
+ <g
8
+ fill="none"
9
+ fill-rule="evenodd"
10
+ >
11
+ <path
12
+ d="m56.4612493 8.80450354 41.8901185 75.94632926c1.7706782 2.8433173 2.1150372 5.2623412 1.0330766 7.2570716-1.0819604 1.9947304-3.26978 2.9920956-6.5634587 2.9920956h-85.69973905c-3.29367873 0-5.46954894-.9973652-6.52761065-2.9920956-1.0580617-1.9947304-.70175345-4.4137543 1.06892476-7.2570716l41.89011844-75.12308969c1.8184757-2.84331737 3.9693609-4.37738627 6.4526556-4.60220671s4.6341799 1.03483527 6.4526556 3.77896714z"
13
+ fill="#000"
14
+ fill-rule="nonzero"
15
+ />
16
+ <path
17
+ d="m94.0140845 90-44.5547054-79-44.4593791 79z"
18
+ fill="#f8e71c"
19
+ fill-rule="nonzero"
20
+ />
21
+ <path
22
+ d="m54 69v8h-8v-8zm0-30v10.2515641l-2.0923567 14.7484359h-3.8184713l-2.089172-14.7484359v-10.2515641z"
23
+ fill="#000"
24
+ />
25
+ </g>
26
+ <title>Content may be inappropriate</title>
27
+ </svg>
28
+ `;
29
+ //# sourceMappingURL=restricted.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restricted.js","sourceRoot":"","sources":["../../../../../src/assets/img/icons/restricted.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BhC,CAAC","sourcesContent":["import { svg } from 'lit';\n\nexport const restrictedIcon = svg`\n <svg\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <path\n d=\"m56.4612493 8.80450354 41.8901185 75.94632926c1.7706782 2.8433173 2.1150372 5.2623412 1.0330766 7.2570716-1.0819604 1.9947304-3.26978 2.9920956-6.5634587 2.9920956h-85.69973905c-3.29367873 0-5.46954894-.9973652-6.52761065-2.9920956-1.0580617-1.9947304-.70175345-4.4137543 1.06892476-7.2570716l41.89011844-75.12308969c1.8184757-2.84331737 3.9693609-4.37738627 6.4526556-4.60220671s4.6341799 1.03483527 6.4526556 3.77896714z\"\n fill=\"#000\"\n fill-rule=\"nonzero\"\n />\n <path\n d=\"m94.0140845 90-44.5547054-79-44.4593791 79z\"\n fill=\"#f8e71c\"\n fill-rule=\"nonzero\"\n />\n <path\n d=\"m54 69v8h-8v-8zm0-30v10.2515641l-2.0923567 14.7484359h-3.8184713l-2.089172-14.7484359v-10.2515641z\"\n fill=\"#000\"\n />\n </g>\n <title>Content may be inappropriate</title>\n </svg>\n`;\n"]}
@@ -37,6 +37,11 @@ export declare class CollectionBrowser extends LitElement implements InfiniteScr
37
37
  pageContext: CollectionBrowserContext;
38
38
  restorationStateHandler: RestorationStateHandlerInterface;
39
39
  mobileBreakpoint: number;
40
+ loggedIn: boolean;
41
+ /**
42
+ * If item management UI active
43
+ */
44
+ isManageView: boolean;
40
45
  /**
41
46
  * The page that the consumer wants to load.
42
47
  */
@@ -30,6 +30,11 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
30
30
  context: this.pageContext,
31
31
  });
32
32
  this.mobileBreakpoint = 600;
33
+ this.loggedIn = false;
34
+ /**
35
+ * If item management UI active
36
+ */
37
+ this.isManageView = false;
33
38
  /**
34
39
  * The page that the consumer wants to load.
35
40
  */
@@ -789,30 +794,50 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
789
794
  const datasource = { ...this.dataSource };
790
795
  const tiles = [];
791
796
  docs === null || docs === void 0 ? void 0 : docs.forEach(doc => {
792
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4;
797
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7;
793
798
  if (!doc.identifier)
794
799
  return;
800
+ let loginRequired = false;
801
+ let contentWarning = false;
802
+ // Check if item and item in "modifying" collection, setting above flags
803
+ if (((_a = doc.collections_raw) === null || _a === void 0 ? void 0 : _a.values.length) &&
804
+ ((_b = doc.mediatype) === null || _b === void 0 ? void 0 : _b.value) !== 'collection') {
805
+ for (const collection of (_c = doc.collections_raw) === null || _c === void 0 ? void 0 : _c.values) {
806
+ if (collection === 'loggedin') {
807
+ loginRequired = true;
808
+ if (contentWarning)
809
+ break;
810
+ }
811
+ if (collection === 'no-preview') {
812
+ contentWarning = true;
813
+ if (loginRequired)
814
+ break;
815
+ }
816
+ }
817
+ }
795
818
  tiles.push({
796
- averageRating: (_a = doc.avg_rating) === null || _a === void 0 ? void 0 : _a.value,
797
- collections: (_c = (_b = doc.collections_raw) === null || _b === void 0 ? void 0 : _b.values) !== null && _c !== void 0 ? _c : [],
798
- commentCount: (_e = (_d = doc.num_reviews) === null || _d === void 0 ? void 0 : _d.value) !== null && _e !== void 0 ? _e : 0,
799
- creator: (_f = doc.creator) === null || _f === void 0 ? void 0 : _f.value,
800
- creators: (_h = (_g = doc.creator) === null || _g === void 0 ? void 0 : _g.values) !== null && _h !== void 0 ? _h : [],
801
- dateAdded: (_j = doc.addeddate) === null || _j === void 0 ? void 0 : _j.value,
802
- dateArchived: (_k = doc.publicdate) === null || _k === void 0 ? void 0 : _k.value,
803
- datePublished: (_l = doc.date) === null || _l === void 0 ? void 0 : _l.value,
804
- dateReviewed: (_m = doc.reviewdate) === null || _m === void 0 ? void 0 : _m.value,
805
- description: (_o = doc.description) === null || _o === void 0 ? void 0 : _o.value,
806
- favCount: (_q = (_p = doc.num_favorites) === null || _p === void 0 ? void 0 : _p.value) !== null && _q !== void 0 ? _q : 0,
819
+ averageRating: (_d = doc.avg_rating) === null || _d === void 0 ? void 0 : _d.value,
820
+ collections: (_f = (_e = doc.collections_raw) === null || _e === void 0 ? void 0 : _e.values) !== null && _f !== void 0 ? _f : [],
821
+ commentCount: (_h = (_g = doc.num_reviews) === null || _g === void 0 ? void 0 : _g.value) !== null && _h !== void 0 ? _h : 0,
822
+ creator: (_j = doc.creator) === null || _j === void 0 ? void 0 : _j.value,
823
+ creators: (_l = (_k = doc.creator) === null || _k === void 0 ? void 0 : _k.values) !== null && _l !== void 0 ? _l : [],
824
+ dateAdded: (_m = doc.addeddate) === null || _m === void 0 ? void 0 : _m.value,
825
+ dateArchived: (_o = doc.publicdate) === null || _o === void 0 ? void 0 : _o.value,
826
+ datePublished: (_p = doc.date) === null || _p === void 0 ? void 0 : _p.value,
827
+ dateReviewed: (_q = doc.reviewdate) === null || _q === void 0 ? void 0 : _q.value,
828
+ description: (_r = doc.description) === null || _r === void 0 ? void 0 : _r.value,
829
+ favCount: (_t = (_s = doc.num_favorites) === null || _s === void 0 ? void 0 : _s.value) !== null && _t !== void 0 ? _t : 0,
807
830
  identifier: doc.identifier,
808
- issue: (_r = doc.issue) === null || _r === void 0 ? void 0 : _r.value,
809
- itemCount: (_t = (_s = doc.item_count) === null || _s === void 0 ? void 0 : _s.value) !== null && _t !== void 0 ? _t : 0,
810
- mediatype: (_v = (_u = doc.mediatype) === null || _u === void 0 ? void 0 : _u.value) !== null && _v !== void 0 ? _v : 'data',
811
- source: (_w = doc.source) === null || _w === void 0 ? void 0 : _w.value,
812
- subjects: (_y = (_x = doc.subject) === null || _x === void 0 ? void 0 : _x.values) !== null && _y !== void 0 ? _y : [],
813
- title: this.etreeTitle((_z = doc.title) === null || _z === void 0 ? void 0 : _z.value, (_0 = doc.mediatype) === null || _0 === void 0 ? void 0 : _0.value, (_1 = doc.collection) === null || _1 === void 0 ? void 0 : _1.values),
814
- volume: (_2 = doc.volume) === null || _2 === void 0 ? void 0 : _2.value,
815
- viewCount: (_4 = (_3 = doc.downloads) === null || _3 === void 0 ? void 0 : _3.value) !== null && _4 !== void 0 ? _4 : 0,
831
+ issue: (_u = doc.issue) === null || _u === void 0 ? void 0 : _u.value,
832
+ itemCount: (_w = (_v = doc.item_count) === null || _v === void 0 ? void 0 : _v.value) !== null && _w !== void 0 ? _w : 0,
833
+ mediatype: (_y = (_x = doc.mediatype) === null || _x === void 0 ? void 0 : _x.value) !== null && _y !== void 0 ? _y : 'data',
834
+ source: (_z = doc.source) === null || _z === void 0 ? void 0 : _z.value,
835
+ subjects: (_1 = (_0 = doc.subject) === null || _0 === void 0 ? void 0 : _0.values) !== null && _1 !== void 0 ? _1 : [],
836
+ title: this.etreeTitle((_2 = doc.title) === null || _2 === void 0 ? void 0 : _2.value, (_3 = doc.mediatype) === null || _3 === void 0 ? void 0 : _3.value, (_4 = doc.collection) === null || _4 === void 0 ? void 0 : _4.values),
837
+ volume: (_5 = doc.volume) === null || _5 === void 0 ? void 0 : _5.value,
838
+ viewCount: (_7 = (_6 = doc.downloads) === null || _6 === void 0 ? void 0 : _6.value) !== null && _7 !== void 0 ? _7 : 0,
839
+ loginRequired,
840
+ contentWarning,
816
841
  });
817
842
  });
818
843
  datasource[pageNumber] = tiles;
@@ -1115,6 +1140,12 @@ __decorate([
1115
1140
  __decorate([
1116
1141
  property({ type: Number })
1117
1142
  ], CollectionBrowser.prototype, "mobileBreakpoint", void 0);
1143
+ __decorate([
1144
+ property({ type: Boolean })
1145
+ ], CollectionBrowser.prototype, "loggedIn", void 0);
1146
+ __decorate([
1147
+ property({ type: Boolean })
1148
+ ], CollectionBrowser.prototype, "isManageView", void 0);
1118
1149
  __decorate([
1119
1150
  state()
1120
1151
  ], CollectionBrowser.prototype, "pagesToRender", void 0);