accorder/static/css/bundle.css.map

24 lines
106 KiB
Plaintext
Raw Normal View History

2023-07-30 15:39:17 +00:00
{
"version": 3,
"file": "bundle.css",
"sources": [
"../../../src/Tailwindcss.svelte",
"../../../src/MotwHeader.svelte",
"../../../src/LibraryTable.svelte",
"../../../src/BookModal.svelte",
"../../../src/SearchBar.svelte",
"../../../src/BookCard.svelte",
"../../../src/Dropdown.svelte"
],
"sourcesContent": [
"<style global>/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\n:global(html) {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\n:global(body) {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\n:global(a) {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\n:global(b) {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\n/**\n * Add the correct font size in all browsers.\n */\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\n:global(img) {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\n:global(button),\n:global(input) {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\n:global(button),\n:global(input) { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\n:global(button) { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\n:global(button),\n:global([type=\"button\"]),\n:global([type=\"reset\"]),\n:global([type=\"submit\"]) {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\n:global(button::-moz-focus-inner),\n:global([type=\"button\"]::-moz-focus-inner),\n:global([type=\"reset\"]::-moz-focus-inner),\n:global([type=\"submit\"]::-moz-focus-inner) {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\n:global(button:-moz-focusring),\n:global([type=\"button\"]:-moz-focusring),\n:global([type=\"reset\"]:-moz-focusring),\n:global([type=\"submit\"]:-moz-focusring) {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\n/**\n
"<script>\n import Dropdown from './Dropdown.svelte';\n import {onMount} from 'svelte';\n import { restapi } from './store.js';\n import { mockHttpRequest } from './localCalibre.js';\n import { motw_reverse_svg } from './svgs.js';\n\n export let mock;\n\n let librariansDroplist = [];\n let selectedLibrarian;\n export let t;\n\n async function fetchLibrarians() {\n var url = `${$restapi}librarians/on`;\n if (mock) {\n var data = mockHttpRequest(CALIBRE_BOOKS1.books, url, 48, \"books\")\n } else {\n const res = await fetch(url);\n var data = await res.json();\n }\n librariansDroplist = data._items.sort();\n };\n\n function toggleT() {\n t = !t;\n }\n $: {\n if (selectedLibrarian && selectedLibrarian !== 'LIBRARIANS') {\n location.hash = `#/search/librarian/${selectedLibrarian.toLowerCase()}`;\n }\n }\n\n</script>\n\n<style>.hamburger-icon {\n height: 0.7em;\n background: linear-gradient(to bottom, #fff 0%, #fff 20%, transparent 20%, transparent 40%, #fff 40%, #fff 60%, transparent 60%, transparent 80%, #fff 80%, #fff 100%);\n}\n\n.motw-bookmark {\n border: 1.2em solid red;\n border-right-color: white;\n}\n\n.motw-bookmark:active {\n color: #fed7d7;\n}\n\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9Nb3R3SGVhZGVyLnN2ZWx0ZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQztFQUNJLGFBQWE7RUFDYixzS0FBc0s7QUFDMUs7O0FBRUE7RUFDSSx1QkFBdUI7RUFDdkIseUJBQXlCO0FBQzdCOztBQUNBO0VBQ0ksY0FBYztBQUNsQiIsImZpbGUiOiJzcmMvTW90d0hlYWRlci5zdmVsdGUiLCJzb3VyY2VzQ29udGVudCI6WyJcbiAuaGFtYnVyZ2VyLWljb24ge1xuICAgICBoZWlnaHQ6IDAuN2VtO1xuICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDAlLCAjZmZmIDIwJSwgdHJhbnNwYXJlbnQgMjAlLCB0cmFuc3BhcmVudCA0MCUsICNmZmYgNDAlLCAjZmZmIDYwJSwgdHJhbnNwYXJlbnQgNjAlLCB0cmFuc3BhcmVudCA4MCUsICNmZmYgODAlLCAjZmZmIDEwMCUpO1xuIH1cblxuIC5tb3R3LWJvb2ttYXJrIHtcbiAgICAgYm9yZGVyOiAxLjJlbSBzb2xpZCByZWQ7XG4gICAgIGJvcmRlci1yaWdodC1jb2xvcjogd2hpdGU7XG4gfVxuIC5tb3R3LWJvb2ttYXJrOmFjdGl2ZSB7XG4gICAgIGNvbG9yOiAjZmVkN2Q3O1xuIH1cbiJdfQ== */</style>\n<div class=\"flex mb-1 mt-1 justify-between w-full\">\n <div class=\"inline-flex bg-motw-red\">\n <img on:click={()=> location.hash = \"\"} alt=\"let's share books\" class=\"cursor-pointer pt-1 pl-1 pr-1 h-10 monocle:h-8 phone:h-8\" src=\"{motw_reverse_svg}\" />\n <div class=\"pt-4 pl-1 pr-1 monocle:hidden phone:hidden\">\n <div class=\"hamburger-icon content-center\">&nbsp;</div>\n </div>\n <Dropdown on:dropdownClick={fetchLibrarians} bind:selectedItem={selectedLibrarian} defaultItem={\"LIBRARIANS\"} droplist={librariansDroplist} />\n </div>\n <div on:click=\"{toggleT}\" class=\"hover:underline cursor-pointer pt-2 text-motw-blue bg-white text-base font-bold text-center monocle:pr-1 phone:pr-1\">show {#if t}covers{:else}list{/if}</div>\n <a class=\"motw-bookmark hover:underline monocle:hidden phone:hidden flex text-lg font-bold pr-5 h-0 text-white items-center bg-motw-red\" href=\"https://www.memoryoftheworld.org\">MEMORY OF THE WORLD</a>\n</div>\n",
"<script>\n import { getFormats } from './utils.js';\n import { bownload_svg } from './svgs.js';\n export let books;\n\n function getYear(book) {\n book.year = \"\";\n if (book.hasOwnProperty('pubdate') && book.pubdate.slice(0, 4) !== \"0101\") {\n book.year = ` (${book.pubdate.slice(0, 4)})`;\n }\n return book.year\n }\n</script>\n\n<style>tr:nth-child(odd) {\n background-color: #e7e7e7;\n}\n\nth {\n color: #2d3748;\n background-color: #a7a7a7;\n}\n\ntd {\n vertical-align: top;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n padding-top: 0.5rem;\n padding-bottom: 0.25rem;\n}\n\na:hover {\n text-decoration: underline;\n text-decoration-color: red;\n font-weight: bold;\n cursor: pointer;\n}\n\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9MaWJyYXJ5VGFibGUuc3ZlbHRlIiwiPG5vIHNvdXJjZT4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0M7RUFDSSx5QkFBeUI7QUFDN0I7O0FBRUE7RUNMRCxlQUFBO0VET0sseUJBQXlCO0FBQzdCOztBQUVBO0VDVkQsb0JBQUE7RUFBQSxzQkFBQTtFQUFBLHVCQUFBO0VBQUEsb0JBQUE7RUFBQSx3QkFBQTtBRFlDOztBQUVBO0VBQ0ksMEJBQTBCO0VBQzFCLDBCQUEwQjtFQUMxQixpQkFBaUI7RUFDakIsZUFBZTtBQUNuQiIsImZpbGUiOiJzcmMvTGlicmFyeVRhYmxlLnN2ZWx0ZSIsInNvdXJjZXNDb250ZW50IjpbIlxuIHRyOm50aC1jaGlsZChvZGQpIHtcbiAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcbiB9XG5cbiB0aCB7XG4gICAgIEBhcHBseSB0ZXh0LWdyYXktODAwO1xuICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdhN2E3O1xuIH1cblxuIHRkIHtcbiAgICAgQGFwcGx5IGFsaWduLXRvcCBweC0xIHB0LTIgcGItMTtcbiB9XG5cbiBhOmhvdmVyIHtcbiAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogcmVkO1xuICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgY3Vyc29yOiBwb2ludGVyO1xuIH1cbiIsbnVsbF19 */</style>\n\n<table class=\"table-auto border-0 text-left w-full\">\n <thead class=\"border-motw-red border-b-2\">\n <tr>\n <th class=\"monocle:w-1/3 phone:w-1/3 phablet:pl-2 px-1 pt-3 pb-1 w-1/4 \">Authors</th>\n <th class=\"px-1 pt-3 pb-1 w-9/12\">Title</th>\n <th class=\"text-right pr-2 w-1/12 monocle:w-1/6 phone:w-1/6\">\n <img class=\"w-4 pt-1 inline-block\" alt=\"dl\" src=\"{bownload_svg}\">\n </th>\n </tr>\n </thead>\n <tbody>\n {#each books as book (book._id)}\n <tr>\n <td class=\"phablet:pl-2 max-w-xs monocle:max-w-xs phone:max-w-xs\">\n {#if book.authors}\n <div class=\"monocle:text-xs phone:text-xs\">\n {#each book.authors as author, i}\n {#if i+1 < 4 }<a title=\"search in authors\" href=\"#/search/authors/{author}\" class=\"hover:underline\">{author}</a>{/if}{#if i+1 !== book.authors.length && i+i < 4 },<br/>{:else if i+1 === 4 }&nbsp;et al.{/if}\n {/each}\n </div>\n {/if}\n </td>\n <td on:click|stopPropagation=\"{()=> location.hash = `#/book/${book._id}`}\" class=\"italic w-11/12 phablet:pl-2 monocle:text-xs phone:text-xs\"><a title=\"show book card\" href=\"#/book/{book._id}\" >{book.title}{getYear(book)}</a></td>\n <td class=\"pr-1 pl-2 text-right phone:text-right phablet:pl-2\">\n {#each getFormats(book, \" \") as format}\n <a href=\"{format.url}\" title=\"{format.size}\">{format.title}</a><br/>\n {/each}\n </td>\n </tr>\n {/each}\n </tbody>\n</table>\n",
"<script>\n import { HtmlWhitelistedSanitizer } from './HtmlSanitizer.js'\n import { getFormats } from './utils.js';\n import { onMount } from 'svelte';\n export let book;\n export let bookm;\n import { lasthash } from './store.js';\n import { createEventDispatcher } from 'svelte';\n import { download_svg } from './svgs.js';\n\n let lochash = [];\n\n const dispatch = createEventDispatcher();\n const unsubscribe = lasthash.subscribe(value => {\n lochash = JSON.parse(value);\n });\n\n function onKeyDown(e) {\n if (e.key === \"Escape\") {\n toggle(e);\n } else if (e.key === \"ArrowRight\" || e.target.id === \"next\") {\n dispatch(\"nextModal\", book._id)\n } else if (e.key === \"ArrowLeft\" || e.target.id === \"prev\") {\n dispatch(\"prevModal\", book._id)\n }\n }\n\n function sanitizeAbstract(a) {\n var parser = new HtmlWhitelistedSanitizer(true);\n var _ = parser.sanitizeString(a.replace(\"**\",\"\"));\n return _\n }\n\n function toggle(e) {\n lochash[0] = true;\n lasthash.set(JSON.stringify(lochash))\n window.location.hash = lochash[1];\n bookm = false;\n }\n</script>\n\n<style>.modal {\n height: 100%;\n width: 100%;\n position: fixed;\n z-index: 50;\n overflow: auto;\n display: flex;\n background-color: rgba(0,0,0,0.7);\n}\n\n.cover {\n background-color: #fff;\n border-color: #fff;\n border-width: 2px;\n border-top-width: 8px;\n border-left-width: 8px;\n min-height: 4em;\n background-image: url(\"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2063.5%2084.7%22%20height%3D%22320%22%20width%3D%22240%22%3E%3Cpath%20d%3D%22M5.292%205.292h52.917v74.083H5.292z%22%20fill%3D%22%23e0e0e0%22%20paint-order%3D%22stroke%20fill%20markers%22%2F%3E%3Cpath%20d%3D%22M10.6%2010.6h42.3v63.5H10.6z%22%20fill%3D%22%23c0c0c0%22%20paint-order%3D%22stroke%20fill%20markers%22%2F%3E%3Cpath%20d%3D%22M15.8%2015.8h31.8v53H15.8z%22%20fill%3D%22%23a0a0a0%22%20paint-order%3D%22stroke%20fill%20markers%22%2F%3E%3C%2Fsvg%3E\");\n background-repeat: no-repeat;\n background-size: cover;\n}\n\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9Cb29rTW9kYWwuc3ZlbHRlIiwiPG5vIHNvdXJjZT4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0M7RUNERCxhQUFBO0VBQUEsWUFBQTtFQUFBLGdCQUFBO0VBQUEsWUFBQTtFQUFBLGVBQUE7RUFBQSxjQUFBO0VER0ssaUNBQWlDO0FBQ3JDOztBQUVBO0VDTkQsdUJBQUE7RUFBQSxtQkFBQTtFQUFBLGtCQUFBO0VBQUEsc0JBQUE7RUFBQSx1QkFBQTtFRFFLLGVBQWU7RUFDZixpa0JBQWlrQjtFQUNqa0IsNEJBQTRCO0VBQzVCLHNCQUFzQjtBQUMxQiIsImZpbGUiOiJzcmMvQm9va01vZGFsLnN2ZWx0ZSIsInNvdXJjZXNDb250ZW50IjpbIlxuIC5tb2RhbCB7XG4gICAgIEBhcHBseSBoLWZ1bGwgdy1mdWxsIGZpeGVkIHotNTAgb3ZlcmZsb3ctYXV0byBmbGV4O1xuICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNyk7XG4gfVxuXG4gLmNvdmVyIHtcbiAgICAgQGFwcGx5IGJnLXdoaXRlIGJvcmRlci13aGl0ZSBib3JkZXItMiBib3JkZXItdC04IGJvcmRlci1sLTg7XG4gICAgIG1pbi1oZWlnaHQ6IDRlbTtcbiAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwNjMuNSUyMDg0LjclMjIlMjBoZWlnaHQlM0QlMjIzMjAlMjIlMjB3aWR0aCUzRCUyMjI0MCUyMiUzRSUzQ3BhdGglMjBkJTNEJTIyTTUuMjkyJTIwNS4yOTJoNTIuOTE3djc0LjA4M0g1LjI5MnolMjIlMjBmaWxsJTNEJTIyJTIzZTBlMGUwJTIyJTIwcGFpbnQtb3JkZXIlM0QlMjJzdHJva2UlMjBmaWxsJTIwbWFya2VycyUyMiUyRiUzRSUzQ3BhdGglMjBkJTNEJTIyTTEwLjYlMjAxMC42aDQyLjN2NjMuNUgxMC42eiUyMiUyMGZpbGwlM0QlMjIlMjNjMGMwYzAlMjIlMjBwYWludC1vcmRlciUzRCUyMnN0cm9rZSUyMGZpbGwlMjBtYXJrZXJzJTIyJTJGJTNFJTNDcGF0aCUyMGQlM0QlMjJNMTUuOCUyMDE1LjhoMzEuOHY1M0gxNS44eiUyMiUyMGZpbGwlM0QlMjIlMjNhMGEwYTAlMjIlMjBwYWludC1vcmRlciUzRCUyMnN0cm9rZSUyMGZpbGwlMjBtYXJrZXJzJTIyJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuIH1cbiIsbnVsbF19 */</style>\n\n<svelte:window on:keydown={onKeyDown} />\n<div on:click|self={toggle} class=\"modal px-4 monocle:px-0 phone:px-0\">\n <div class=\"pt-6 w-full max-w-4xl m-auto flex-col flex monocle:text-xs phone:text-xs\">\n <div class=\"inset-x-0.top-0 p-6 monocle:px-4 pho
"<script>\n import Dropdown from './Dropdown.svelte';\n import { restapi } from './store.js';\n import { mockHttpRequest } from './localCalibre.js';\n\n export let mock;\n\n let candidates = [];\n let secondClick = false;\n let selection = \"\";\n let selectedCandidate = document.getElementById(\"selectedCandidate\");\n let showCandiList = false;\n let candiv;\n\n let candidateSets = {\n 'authors': new Set(),\n 'titles': new Set(),\n 'tags': new Set()\n }\n\n // Search mode Dropdown defaults and exports\n let searchModeDefault = \"authors\";\n let searchModeList = [\"titles\", \"tags\"];\n let searchModeListTotal = [searchModeDefault].concat(searchModeList);\n let searchMode = searchModeDefault;\n\n // when search mode changes, update corresponding lists\n $: {\n if (searchMode != searchModeDefault) {\n searchModeDefault = searchMode;\n searchModeList = [];\n searchModeListTotal.forEach(el => {\n if (el !== searchModeDefault) {\n searchModeList.push(el)\n }\n });\n candidates = [...Array.from(candidateSets[searchModeDefault])]\n reset(\"\")\n }\n }\n\n const cssCandidate = \"pl-2 text-lg\";\n const cssSelectedCandidate = \"pl-2 border-b-2 border-motw-red italic font-bold\";\n\n $: filteredCandidates = candidates.filter(\n item => item.toLowerCase().indexOf(selection.toLowerCase()) !== -1\n )\n\n $: fetchCompletion(selection)\n\n async function fetchCompletion(selection) {\n var sel = selection.toLowerCase();\n var url = `${$restapi}autocomplete/${searchMode}/${sel}`;\n candidates = [...Array.from(candidateSets[searchMode])]\n if (selection.length !== 4) {\n return\n }\n if (mock) {\n var _ = mockHttpRequest(CALIBRE_BOOKS1.books, url, 48)\n } else {\n const res = await fetch(url);\n var _ = await res.json();\n }\n _._items.forEach(i => candidateSets[searchMode].add(i))\n var sorted = [...Array.from(candidateSets[searchMode])].sort()\n candidates = sorted;\n if (candidates.length > 0) {\n filteredCandidates = candidates.filter(\n item => item.toLowerCase().indexOf(selection.toLowerCase()) !== -1\n )\n }\n\n }\n\n function search(e) {\n location.hash = `#/search/${searchMode}/${selection}`;\n }\n\n function setSelectedCandidate(elem) {\n if (elem) {\n var mdl = \" modulo1\";\n if (elem.className.includes(\"modulo0\")) {\n elem.style.backgroundColor = \"#e7e7e7\"\n mdl = \" modulo0\";\n } else {\n elem.style.backgroundColor = \"#ffffff\"\n }\n elem.className = cssSelectedCandidate + mdl;\n elem.id = \"selectedCandidate\";\n }\n }\n\n function resetSelectedCandidate(elem) {\n if (elem) {\n var mdl = \" modulo1\";\n if (elem.className.includes(\"modulo0\")) {\n elem.style.backgroundColor = \"#e7e7e7\"\n mdl = \" modulo0\";\n } else {\n elem.style.backgroundColor = \"#ffffff\"\n }\n elem.className = cssCandidate + mdl;\n elem.id = \"\";\n }\n }\n\n function onKeyUp(event) {\n if ([\"ArrowLeft\", \"ArrowRight\", \"Backspace\", \"Delete\"].includes(event.key)) {\n reset(selection);\n }\n\n selectedCandidate = document.getElementById(\"selectedCandidate\");\n if (event.key == \"Enter\") {\n // selectItemCloseDropdown(selectedCandidate);\n if (selectedCandidate) {\n selection = selectedCandidate.innerText.toLowerCase();\n }\n location.hash = `#/search/${searchMode}/${selection.toLowerCase()}`\n reset(selection)\n return;\n } else if (event.key == \"Escape\") {\n reset(\"\");\n return;\n }\n if (filteredCandidates && (event.key == \"ArrowDown\" || selection.length > 0)) {\n showCandiList = true;\n }\n\n if ([\"ArrowDown\", \"ArrowUp\"].includes(event.key)) {\n if (!selectedCandidate) {\n
"<script>\n import { getFormats } from './utils.js';\n import { download_svg } from './svgs.js';\n export let book;\n let tooltip = false;\n\n function fadeLibrarian() {\n tooltip = true;\n setTimeout(() => tooltip = false, 3000)\n }\n</script>\n\n<style>.cover {\n min-height: 16em;\n background-image: url(\"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2063.5%2084.7%22%20height%3D%22320%22%20width%3D%22240%22%3E%3Cpath%20d%3D%22M5.292%205.292h52.917v74.083H5.292z%22%20fill%3D%22%23e0e0e0%22%20paint-order%3D%22stroke%20fill%20markers%22%2F%3E%3Cpath%20d%3D%22M10.6%2010.6h42.3v63.5H10.6z%22%20fill%3D%22%23c0c0c0%22%20paint-order%3D%22stroke%20fill%20markers%22%2F%3E%3Cpath%20d%3D%22M15.8%2015.8h31.8v53H15.8z%22%20fill%3D%22%23a0a0a0%22%20paint-order%3D%22stroke%20fill%20markers%22%2F%3E%3C%2Fsvg%3E\");\n background-repeat: no-repeat;\n background-size: cover;\n}\n\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9Cb29rQ2FyZC5zdmVsdGUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0M7RUFDSSxnQkFBZ0I7RUFDaEIsaWtCQUFpa0I7RUFDamtCLDRCQUE0QjtFQUM1QixzQkFBc0I7QUFDMUIiLCJmaWxlIjoic3JjL0Jvb2tDYXJkLnN2ZWx0ZSIsInNvdXJjZXNDb250ZW50IjpbIlxuIC5jb3ZlciB7XG4gICAgIG1pbi1oZWlnaHQ6IDE2ZW07XG4gICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmclMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiUyMHZpZXdCb3glM0QlMjIwJTIwMCUyMDYzLjUlMjA4NC43JTIyJTIwaGVpZ2h0JTNEJTIyMzIwJTIyJTIwd2lkdGglM0QlMjIyNDAlMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk01LjI5MiUyMDUuMjkyaDUyLjkxN3Y3NC4wODNINS4yOTJ6JTIyJTIwZmlsbCUzRCUyMiUyM2UwZTBlMCUyMiUyMHBhaW50LW9yZGVyJTNEJTIyc3Ryb2tlJTIwZmlsbCUyMG1hcmtlcnMlMjIlMkYlM0UlM0NwYXRoJTIwZCUzRCUyMk0xMC42JTIwMTAuNmg0Mi4zdjYzLjVIMTAuNnolMjIlMjBmaWxsJTNEJTIyJTIzYzBjMGMwJTIyJTIwcGFpbnQtb3JkZXIlM0QlMjJzdHJva2UlMjBmaWxsJTIwbWFya2VycyUyMiUyRiUzRSUzQ3BhdGglMjBkJTNEJTIyTTE1LjglMjAxNS44aDMxLjh2NTNIMTUuOHolMjIlMjBmaWxsJTNEJTIyJTIzYTBhMGEwJTIyJTIwcGFpbnQtb3JkZXIlM0QlMjJzdHJva2UlMjBmaWxsJTIwbWFya2VycyUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiB9XG4iXX0= */</style>\n\n<div on:mouseenter={fadeLibrarian} class=\"cover monocle:w-full phone:w-1/2 phablet:w-1/3 tablet:w-1/4 laptop:w-1/6 suv:w-1/12 relative bg-white border-white border-2\">\n <img title=\"show book card\" on:click=\"{() => window.location.hash = `#/book/${book._id}`}\" class=\"w-full min-h-full text-white\" src={book.library_url+book.cover_url} alt=\"\" />\n <div class=\"bg-black text-white absolute top-0 mt-4 font-bold text-base suv:text-sm w-full\">\n <a title=\"show book card\" href=\"#/book/{book._id}\" class=\"pl-2 block hover:underline\">{book.title}&nbsp;</a>\n <div class=\"pl-2 not-italic text-base suv:text-sm block\">\n {#each book.authors as author, i}\n {#if i+1 < 4 }<a title=\"search in authors\" href=\"#/search/authors/{author}\" class=\"hover:underline\">{author}</a>{/if}{#if i+1 !== book.authors.length && i+i < 4 },&nbsp;{:else if i+i === 4 }&nbsp;et al.{/if}{/each}\n </div>\n </div>\n <div class=\"bg-black text-white absolute w-full bottom-0 pl-2\">\n {#if tooltip}\n <div class=\"pb-2\">via <a title=\"search in librarians\" class=\"hover:underline cursor-pointer\" href=\"#/search/librarian/{book.librarian}\">{book.librarian}</a></div>\n {/if}\n {#if book.formats != undefined && book.formats.length != 0 }\n {#each getFormats(book) as format}\n <a class=\"hover:underline inline-block p-1\" href=\"{format.url}\" title=\"{format.size}\">\n <img class=\"w-4 inline-block\" alt=\"dl\" src=\"{download_svg}\"><i>{format.title}</i></a>\n {/each}\n {:else}\n <span class=\"text-black\">.</span>\n {/if}\n </div>\n</div>\n",
"<script>\n import { createEventDispatcher } from 'svelte';\n\n export let defaultItem = \"authors\";\n export let droplist = [\"titles\", \"tags\"];\n export let selectedItem = defaultItem;\n\n const dispatch = createEventDispatcher();\n\n let hidelist = true;\n\n function selectItem(dropel) {\n selectedItem = dropel;\n hidelist = true;\n }\n function clickAndHide() {\n dispatch(\"dropdownClick\");\n hidelist = !hidelist;\n }\n</script>\n\n<style>.showlist {\n border-bottom-width: 4px;\n border-color: #ff0000;\n display: table;\n z-index: 60;\n}\n\n.hidelist {\n display: none;\n}\n\n.dropdown-li {\n background-color: #fff;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n white-space: nowrap;\n color: #2d3748;\n}\n\n.dropdown-li:hover {\n border-bottom-width: 2px;\n border-color: #ff0000;\n font-style: italic;\n font-weight: 700;\n padding-left: 0.5rem;\n padding-bottom: 0.25rem;\n}\n\nli:nth-child(odd) {\n background-color: #e7e7e7;\n}\n\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9Ecm9wZG93bi5zdmVsdGUiLCI8bm8gc291cmNlPiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQztFQ0RELHlCQUFBO0VBQUEsc0JBQUE7RURHSyxjQUFjO0VBQ2QsV0FBVztBQUNmOztBQUNBO0VDTkQsY0FBQTtBRFFDOztBQUNBO0VDVEQsdUJBQUE7RUFBQSxxQkFBQTtFQUFBLHdCQUFBO0VBQUEsc0JBQUE7RUFBQSx1QkFBQTtFQUFBLG9CQUFBO0VBQUEsZUFBQTtBRFdDOztBQUNBO0VDWkQseUJBQUE7RUFBQSxzQkFBQTtFQUFBLG1CQUFBO0VBQUEsaUJBQUE7RUFBQSxxQkFBQTtFQUFBLHdCQUFBO0FEY0M7O0FBRUE7RUFDSSx5QkFBeUI7QUFDN0IiLCJmaWxlIjoic3JjL0Ryb3Bkb3duLnN2ZWx0ZSIsInNvdXJjZXNDb250ZW50IjpbIlxuIC5zaG93bGlzdCB7XG4gICAgIEBhcHBseSBib3JkZXItYi00IGJvcmRlci1tb3R3LXJlZDtcbiAgICAgZGlzcGxheTogdGFibGU7XG4gICAgIHotaW5kZXg6IDYwO1xuIH1cbiAuaGlkZWxpc3Qge1xuICAgICBAYXBwbHkgaGlkZGVuO1xuIH1cbiAuZHJvcGRvd24tbGkge1xuICAgICBAYXBwbHkgYmctd2hpdGUgcHktMSBweC0zIHdoaXRlc3BhY2Utbm8td3JhcCB0ZXh0LWdyYXktODAwO1xuIH1cbiAuZHJvcGRvd24tbGk6aG92ZXIge1xuICAgICBAYXBwbHkgYm9yZGVyLWItMiBib3JkZXItbW90dy1yZWQgaXRhbGljIGZvbnQtYm9sZCBwbC0yIHBiLTE7XG4gfVxuXG4gbGk6bnRoLWNoaWxkKG9kZCkge1xuICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdlN2U3O1xuIH1cbiIsbnVsbF19 */</style>\n\n<div on:mouseleave={() => hidelist = true} class=\"dropdown inline-block relative\">\n <button on:click={clickAndHide} class=\"monocle:text-sm phone:text-sm bg-motw-red text-white font-bold p-2 inline-flex items-center text-lg focus:outline-none active:text-red-200\">\n <span class=\"mr-1\">{defaultItem.toUpperCase()}</span>\n <svg class=\"fill-current h-4 w-4\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n <path d=\"M9.293 12.95l.707.707L15.657 8l-1.414-1.414L10 10.828 5.757 6.586 4.343 8z\" />\n </svg>\n </button>\n <ul class:hidelist class:showlist={!hidelist} class=\"dropdown-menu absolute text-white pt-1 w-full monocle:text-sm phone:text-sm text-lg cursor-pointer\">\n {#each droplist as dropel}\n <li class=\"dropdown-li\"\n on:click=\"{() => selectItem(dropel)}\">{dropel.toUpperCase()}</li>\n {/each}\n </ul>\n</div>\n"
],
"names": [],
"mappings": "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
}