{"version":3,"file":"1617.afc8981c975e214606c4.muted.js","mappings":"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","sources":["webpack://pinafore/./src/routes/_pages/muted.html","webpack://pinafore/./src/routes/muted.html","webpack://pinafore/./src/routes/_actions/accounts.js","webpack://pinafore/./src/routes/_api/relationships.js","webpack://pinafore/./src/routes/_actions/mute.js","webpack://pinafore/./src/routes/_api/mute.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/muted.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 { muteAccount, unmuteAccount } from '../_api/mute.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 setAccountMuted (accountId, mute, notifications, toastOnSuccess) {\n const { currentInstance, accessToken } = store.get()\n try {\n let relationship\n if (mute) {\n relationship = await muteAccount(currentInstance, accessToken, accountId, notifications)\n } else {\n relationship = await unmuteAccount(currentInstance, accessToken, accountId)\n }\n await updateLocalRelationship(currentInstance, accountId, relationship)\n if (toastOnSuccess) {\n /* no await */ toast.say(mute ? \"Muted account\" : \"Unmuted account\")\n }\n emit('refreshAccountsList')\n } catch (e) {\n console.error(e)\n /* no await */ toast.say(mute\n ? formatIntl([\"Unable to mute account: \",[\"error\"]], { error: (e.message || '') })\n : formatIntl([\"Unable to unmute 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 muteAccount (instanceName, accessToken, accountId, notifications) {\n const url = `${basename(instanceName)}/api/v1/accounts/${accountId}/mute`\n return post(url, { notifications }, auth(accessToken), { timeout: WRITE_TIMEOUT })\n}\n\nexport async function unmuteAccount (instanceName, accessToken, accountId) {\n const url = `${basename(instanceName)}/api/v1/accounts/${accountId}/unmute`\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","g","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","setAccountMuted","mute","notifications","toastOnSuccess","muteAccount","unmuteAccount","toast","formatIntl","message","getBlockedAccounts","limit","getMutedAccounts","getVerifyCredentials","getAccount","asyncDatabase","Proxy","get","obj","prop","args","apply"],"sourceRoot":""}