{"version":3,"file":"3660.c943a87f9cb168cde56c.blocked.js","mappings":"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","sources":["webpack://pinafore/./src/routes/_pages/blocked.html","webpack://pinafore/./src/routes/blocked.html","webpack://pinafore/./src/routes/_actions/accounts.js","webpack://pinafore/./src/routes/_api/relationships.js","webpack://pinafore/./src/routes/_actions/block.js","webpack://pinafore/./src/routes/_api/block.js","webpack://pinafore/./src/routes/_api/blockedAndMuted.js","webpack://pinafore/./src/routes/_api/user.js","webpack://pinafore/./src/routes/_utils/asyncModules/importDatabase.js","webpack://pinafore/./src/routes/_database/asyncDatabase.js"],"sourcesContent":["\n{#if $isUserLoggedIn }\n \n{/if}\n\n","\n\n <LazyPage {pageComponent} {params} />\n\n<script>\n import Title from './_components/Title.html'\n import LazyPage from './_components/LazyPage.html'\n import pageComponent from './_pages/blocked.html'\n\n export default {\n components: {\n\n Title,\n LazyPage\n },\n data: () => ({\n pageComponent\n })\n }\n</script>\n","import { getAccount } from '../_api/user.js'\nimport { getRelationship } from '../_api/relationships.js'\nimport { database } from '../_database/database.js'\nimport { store } from '../_store/store.js'\n\nasync function _updateAccount (accountId, instanceName, accessToken) {\n const localPromise = database.getAccount(instanceName, accountId)\n const remotePromise = getAccount(instanceName, accessToken, accountId).then(account => {\n /* no await */ database.setAccount(instanceName, account)\n return account\n })\n\n try {\n store.set({ currentAccountProfile: (await localPromise) })\n } catch (e) {\n console.error(e)\n }\n try {\n store.set({ currentAccountProfile: (await remotePromise) })\n } catch (e) {\n console.error(e)\n }\n}\n\nasync function _updateRelationship (accountId, instanceName, accessToken) {\n const localPromise = database.getRelationship(instanceName, accountId)\n const remotePromise = getRelationship(instanceName, accessToken, accountId).then(relationship => {\n /* no await */ database.setRelationship(instanceName, relationship)\n return relationship\n })\n try {\n store.set({ currentAccountRelationship: (await localPromise) })\n } catch (e) {\n console.error(e)\n }\n try {\n store.set({ currentAccountRelationship: (await remotePromise) })\n } catch (e) {\n console.error(e)\n }\n}\n\nexport async function updateLocalRelationship (instanceName, accountId, relationship) {\n await database.setRelationship(instanceName, relationship)\n try {\n store.set({ currentAccountRelationship: relationship })\n } catch (e) {\n console.error(e)\n }\n}\n\nexport async function clearProfileAndRelationship () {\n store.set({\n currentAccountProfile: null,\n currentAccountRelationship: null\n })\n}\n\nexport async function updateProfileAndRelationship (accountId) {\n const { currentInstance, accessToken } = store.get()\n\n await Promise.all([\n _updateAccount(accountId, currentInstance, accessToken),\n _updateRelationship(accountId, currentInstance, accessToken)\n ])\n}\n\nexport async function updateRelationship (accountId) {\n const { currentInstance, accessToken } = store.get()\n\n await _updateRelationship(accountId, currentInstance, accessToken)\n}\n","import { basename, auth } from './utils.js'\nimport { get, paramsString, DEFAULT_TIMEOUT } from '../_utils/ajax.js'\n\nexport async function getRelationship (instanceName, accessToken, accountId) {\n const url = `${basename(instanceName)}/api/v1/accounts/relationships?${paramsString({ id: accountId })}`\n const res = await get(url, auth(accessToken), { timeout: DEFAULT_TIMEOUT })\n return res[0]\n}\n","import { store } from '../_store/store.js'\nimport { blockAccount, unblockAccount } from '../_api/block.js'\nimport { toast } from '../_components/toast/toast.js'\nimport { updateLocalRelationship } from './accounts.js'\nimport { emit } from '../_utils/eventBus.js'\nimport { formatIntl } from '../_utils/formatIntl.js'\n\nexport async function setAccountBlocked (accountId, block, toastOnSuccess) {\n const { currentInstance, accessToken } = store.get()\n try {\n let relationship\n if (block) {\n relationship = await blockAccount(currentInstance, accessToken, accountId)\n } else {\n relationship = await unblockAccount(currentInstance, accessToken, accountId)\n }\n await updateLocalRelationship(currentInstance, accountId, relationship)\n if (toastOnSuccess) {\n if (block) {\n /* no await */ toast.say(\"Blocked account\")\n } else {\n /* no await */ toast.say(\"Unblocked account\")\n }\n }\n emit('refreshAccountsList')\n } catch (e) {\n console.error(e)\n /* no await */ toast.say(block\n ? formatIntl([\"Unable to block account: \",[\"error\"]], { block: !!block, error: (e.message || '') })\n : formatIntl([\"Unable to unblock account: \",[\"error\"]], { error: (e.message || '') })\n )\n }\n}\n","import { auth, basename } from './utils.js'\nimport { post, WRITE_TIMEOUT } from '../_utils/ajax.js'\n\nexport async function blockAccount (instanceName, accessToken, accountId) {\n const url = `${basename(instanceName)}/api/v1/accounts/${accountId}/block`\n return post(url, null, auth(accessToken), { timeout: WRITE_TIMEOUT })\n}\n\nexport async function unblockAccount (instanceName, accessToken, accountId) {\n const url = `${basename(instanceName)}/api/v1/accounts/${accountId}/unblock`\n return post(url, null, auth(accessToken), { timeout: WRITE_TIMEOUT })\n}\n","import { DEFAULT_TIMEOUT, get, paramsString } from '../_utils/ajax.js'\nimport { auth, basename } from './utils.js'\n\nexport async function getBlockedAccounts (instanceName, accessToken, limit = 80) {\n let url = `${basename(instanceName)}/api/v1/blocks`\n url += '?' + paramsString({ limit })\n return get(url, auth(accessToken), { timeout: DEFAULT_TIMEOUT })\n}\n\nexport async function getMutedAccounts (instanceName, accessToken, limit = 80) {\n let url = `${basename(instanceName)}/api/v1/mutes`\n url += '?' + paramsString({ limit })\n return get(url, auth(accessToken), { timeout: DEFAULT_TIMEOUT })\n}\n","import { get, DEFAULT_TIMEOUT } from '../_utils/ajax.js'\nimport { auth, basename } from './utils.js'\n\nexport function getVerifyCredentials (instanceName, accessToken) {\n const url = `${basename(instanceName)}/api/v1/accounts/verify_credentials`\n return get(url, auth(accessToken), { timeout: DEFAULT_TIMEOUT })\n}\n\nexport function getAccount (instanceName, accessToken, accountId) {\n const url = `${basename(instanceName)}/api/v1/accounts/${accountId}`\n return get(url, auth(accessToken), { timeout: DEFAULT_TIMEOUT })\n}\n","export const importDatabase = () => import(\n '../../_database/databaseApis.js'\n)\n","// All database functions are asynchronous, so we can just proxy here and\n// put an async import of the database, to avoid including it in the main bundle\n// (which doesn't need to run when the user isn't logged in).\n\nimport { importDatabase } from '../_utils/asyncModules/importDatabase.js'\n\nconst handler = {\n get: function (obj, prop) {\n return async function (...args) {\n if (!obj[prop]) {\n const database = await importDatabase()\n obj[prop] = database[prop]\n }\n return obj[prop].apply(null, args)\n }\n }\n}\n\nexport const asyncDatabase = new Proxy({}, handler)\n"],"names":["accountsFetcher","accountActions","store","icon","label","onclick","accountId","$isUserLoggedIn","$currentInstance","$accessToken","pageComponent","params","async","_updateAccount","instanceName","accessToken","localPromise","database","remotePromise","then","account","currentAccountProfile","e","console","error","_updateRelationship","url","id","timeout","getRelationship","relationship","currentAccountRelationship","updateLocalRelationship","clearProfileAndRelationship","updateProfileAndRelationship","currentInstance","Promise","all","updateRelationship","setAccountBlocked","block","toastOnSuccess","blockAccount","unblockAccount","toast","formatIntl","message","getBlockedAccounts","limit","getMutedAccounts","getVerifyCredentials","getAccount","asyncDatabase","Proxy","get","obj","prop","args","apply"],"sourceRoot":""}