{"version":3,"file":"files_sharing-init.js?v=e8ebd4d69d5c9f326b57","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files_sharing/src/services/logger.ts","webpack:///nextcloud/apps/files_sharing/src/services/SharingService.ts","webpack:///nextcloud/apps/files_sharing/src/views/shares.ts","webpack:///nextcloud/apps/files_sharing/src/actions/acceptShareAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/openInFilesAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/rejectShareAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/restoreShareAction.ts","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack://nextcloud/./apps/files_sharing/src/actions/sharingStatusAction.scss?3ea7","webpack:///nextcloud/apps/files_sharing/src/actions/sharingStatusAction.ts","webpack:///nextcloud/apps/files_sharing/src/init.ts","webpack:///nextcloud/apps/files_sharing/src/actions/sharingStatusAction.scss","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport default getLoggerBuilder()\n .setApp('files_sharing')\n .detectUser()\n .build();\n","import { Folder, File, Permission } from '@nextcloud/files';\nimport { generateOcsUrl, generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport axios from '@nextcloud/axios';\nimport logger from './logger';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nconst headers = {\n 'Content-Type': 'application/json',\n};\nconst ocsEntryToNode = async function (ocsEntry) {\n try {\n // Federated share handling\n if (ocsEntry?.remote_id !== undefined) {\n const mime = (await import('mime')).default;\n // This won't catch files without an extension, but this is the best we can do\n ocsEntry.mimetype = mime.getType(ocsEntry.name);\n ocsEntry.item_type = ocsEntry.mimetype ? 'file' : 'folder';\n // Need to set permissions to NONE for federated shares\n ocsEntry.item_permissions = Permission.NONE;\n ocsEntry.permissions = Permission.NONE;\n ocsEntry.uid_owner = ocsEntry.owner;\n // TODO: have the real display name stored somewhere\n ocsEntry.displayname_owner = ocsEntry.owner;\n }\n const isFolder = ocsEntry?.item_type === 'folder';\n const hasPreview = ocsEntry?.has_preview === true;\n const Node = isFolder ? Folder : File;\n // If this is an external share that is not yet accepted,\n // we don't have an id. We can fallback to the row id temporarily\n const fileid = ocsEntry.file_source || ocsEntry.id;\n // Generate path and strip double slashes\n const path = ocsEntry?.path || ocsEntry.file_target || ocsEntry.name;\n const source = generateRemoteUrl(`dav/${rootPath}/${path}`.replaceAll(/\\/\\//gm, '/'));\n // Prefer share time if more recent than item mtime\n let mtime = ocsEntry?.item_mtime ? new Date((ocsEntry.item_mtime) * 1000) : undefined;\n if (ocsEntry?.stime > (ocsEntry?.item_mtime || 0)) {\n mtime = new Date((ocsEntry.stime) * 1000);\n }\n return new Node({\n id: fileid,\n source,\n owner: ocsEntry?.uid_owner,\n mime: ocsEntry?.mimetype || 'application/octet-stream',\n mtime,\n size: ocsEntry?.item_size,\n permissions: ocsEntry?.item_permissions || ocsEntry?.permissions,\n root: rootPath,\n attributes: {\n ...ocsEntry,\n 'has-preview': hasPreview,\n // Also check the sharingStatusAction.ts code\n 'owner-id': ocsEntry?.uid_owner,\n 'owner-display-name': ocsEntry?.displayname_owner,\n 'share-types': ocsEntry?.share_type,\n favorite: ocsEntry?.tags?.includes(window.OC.TAG_FAVORITE) ? 1 : 0,\n },\n });\n }\n catch (error) {\n logger.error('Error while parsing OCS entry', { error });\n return null;\n }\n};\nconst getShares = function (shared_with_me = false) {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares');\n return axios.get(url, {\n headers,\n params: {\n shared_with_me,\n include_tags: true,\n },\n });\n};\nconst getSharedWithYou = function () {\n return getShares(true);\n};\nconst getSharedWithOthers = function () {\n return getShares();\n};\nconst getRemoteShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getPendingShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getRemotePendingShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getDeletedShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/deletedshares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\n/**\n * Group an array of objects (here Nodes) by a key\n * and return an array of arrays of them.\n */\nconst groupBy = function (nodes, key) {\n return Object.values(nodes.reduce(function (acc, curr) {\n (acc[curr[key]] = acc[curr[key]] || []).push(curr);\n return acc;\n }, {}));\n};\nexport const getContents = async (sharedWithYou = true, sharedWithOthers = true, pendingShares = false, deletedshares = false, filterTypes = []) => {\n const promises = [];\n if (sharedWithYou) {\n promises.push(getSharedWithYou(), getRemoteShares());\n }\n if (sharedWithOthers) {\n promises.push(getSharedWithOthers());\n }\n if (pendingShares) {\n promises.push(getPendingShares(), getRemotePendingShares());\n }\n if (deletedshares) {\n promises.push(getDeletedShares());\n }\n const responses = await Promise.all(promises);\n const data = responses.map((response) => response.data.ocs.data).flat();\n let contents = (await Promise.all(data.map(ocsEntryToNode)))\n .filter((node) => node !== null);\n if (filterTypes.length > 0) {\n contents = contents.filter((node) => filterTypes.includes(node.attributes?.share_type));\n }\n // Merge duplicate shares and group their attributes\n // Also check the sharingStatusAction.ts code\n contents = groupBy(contents, 'source').map((nodes) => {\n const node = nodes[0];\n node.attributes['share-types'] = nodes.map(node => node.attributes['share-types']);\n return node;\n });\n return {\n folder: new Folder({\n id: 0,\n source: generateRemoteUrl('dav' + rootPath),\n owner: getCurrentUser()?.uid || null,\n }),\n contents,\n };\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation } from '@nextcloud/files';\nimport AccountClockSvg from '@mdi/svg/svg/account-clock.svg?raw';\nimport AccountGroupSvg from '@mdi/svg/svg/account-group.svg?raw';\nimport AccountPlusSvg from '@mdi/svg/svg/account-plus.svg?raw';\nimport AccountSvg from '@mdi/svg/svg/account.svg?raw';\nimport DeleteSvg from '@mdi/svg/svg/delete.svg?raw';\nimport LinkSvg from '@mdi/svg/svg/link.svg?raw';\nimport { getContents } from '../services/SharingService';\nexport const sharesViewId = 'shareoverview';\nexport const sharedWithYouViewId = 'sharingin';\nexport const sharedWithOthersViewId = 'sharingout';\nexport const sharingByLinksViewId = 'sharinglinks';\nexport const deletedSharesViewId = 'deletedshares';\nexport const pendingSharesViewId = 'pendingshares';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: sharesViewId,\n name: t('files_sharing', 'Shares'),\n caption: t('files_sharing', 'Overview of shared files.'),\n emptyTitle: t('files_sharing', 'No shares'),\n emptyCaption: t('files_sharing', 'Files and folders you shared or have been shared with you will show up here'),\n icon: AccountPlusSvg,\n order: 20,\n columns: [],\n getContents: () => getContents(),\n }));\n Navigation.register(new View({\n id: sharedWithYouViewId,\n name: t('files_sharing', 'Shared with you'),\n caption: t('files_sharing', 'List of files that are shared with you.'),\n emptyTitle: t('files_sharing', 'Nothing shared with you yet'),\n emptyCaption: t('files_sharing', 'Files and folders others shared with you will show up here'),\n icon: AccountSvg,\n order: 1,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(true, false, false, false),\n }));\n Navigation.register(new View({\n id: sharedWithOthersViewId,\n name: t('files_sharing', 'Shared with others'),\n caption: t('files_sharing', 'List of files that you shared with others.'),\n emptyTitle: t('files_sharing', 'Nothing shared yet'),\n emptyCaption: t('files_sharing', 'Files and folders you shared will show up here'),\n icon: AccountGroupSvg,\n order: 2,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, true, false, false),\n }));\n Navigation.register(new View({\n id: sharingByLinksViewId,\n name: t('files_sharing', 'Shared by link'),\n caption: t('files_sharing', 'List of files that are shared by link.'),\n emptyTitle: t('files_sharing', 'No shared links'),\n emptyCaption: t('files_sharing', 'Files and folders you shared by link will show up here'),\n icon: LinkSvg,\n order: 3,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, true, false, false, [window.OC.Share.SHARE_TYPE_LINK]),\n }));\n Navigation.register(new View({\n id: deletedSharesViewId,\n name: t('files_sharing', 'Deleted shares'),\n caption: t('files_sharing', 'List of shares you left.'),\n emptyTitle: t('files_sharing', 'No deleted shares'),\n emptyCaption: t('files_sharing', 'Shares you have left will show up here'),\n icon: DeleteSvg,\n order: 4,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, false, false, true),\n }));\n Navigation.register(new View({\n id: pendingSharesViewId,\n name: t('files_sharing', 'Pending shares'),\n caption: t('files_sharing', 'List of unapproved shares.'),\n emptyTitle: t('files_sharing', 'No pending shares'),\n emptyCaption: t('files_sharing', 'Shares you have received but not approved will show up here'),\n icon: AccountClockSvg,\n order: 5,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, false, true, false),\n }));\n};\n","import { emit } from '@nextcloud/event-bus';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { registerFileAction, FileAction } from '@nextcloud/files';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport CheckSvg from '@mdi/svg/svg/check.svg?raw';\nimport { pendingSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'accept-share',\n displayName: (nodes) => n('files_sharing', 'Accept share', 'Accept shares', nodes.length),\n iconSvgInline: () => CheckSvg,\n enabled: (nodes, view) => nodes.length > 0 && view.id === pendingSharesViewId,\n async exec(node) {\n try {\n const isRemote = !!node.attributes.remote;\n const url = generateOcsUrl('apps/files_sharing/api/v1/{shareBase}/pending/{id}', {\n shareBase: isRemote ? 'remote_shares' : 'shares',\n id: node.attributes.id,\n });\n await axios.post(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 1,\n inline: () => true,\n});\nregisterFileAction(action);\n","import { registerFileAction, FileAction, DefaultType, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { sharesViewId, sharedWithYouViewId, sharedWithOthersViewId, sharingByLinksViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'open-in-files',\n displayName: () => t('files', 'Open in Files'),\n iconSvgInline: () => '',\n enabled: (nodes, view) => [\n sharesViewId,\n sharedWithYouViewId,\n sharedWithOthersViewId,\n sharingByLinksViewId,\n // Deleted and pending shares are not\n // accessible in the files app.\n ].includes(view.id),\n async exec(node) {\n const isFolder = node.type === FileType.Folder;\n window.OCP.Files.Router.goToRoute(null, // use default route\n {\n view: 'files',\n fileid: String(node.fileid),\n }, {\n // If this node is a folder open the folder in files\n dir: isFolder ? node.path : node.dirname,\n // otherwise if this is a file, we should open it\n openfile: isFolder ? undefined : 'true',\n });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\nregisterFileAction(action);\n","import { emit } from '@nextcloud/event-bus';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { registerFileAction, FileAction } from '@nextcloud/files';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport CloseSvg from '@mdi/svg/svg/close.svg?raw';\nimport { pendingSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'reject-share',\n displayName: (nodes) => n('files_sharing', 'Reject share', 'Reject shares', nodes.length),\n iconSvgInline: () => CloseSvg,\n enabled: (nodes, view) => {\n if (view.id !== pendingSharesViewId) {\n return false;\n }\n if (nodes.length === 0) {\n return false;\n }\n // disable rejecting group shares from the pending list because they anyway\n // land back into that same list after rejecting them\n if (nodes.some(node => node.attributes.remote_id\n && node.attributes.share_type === window.OC.Share.SHARE_TYPE_REMOTE_GROUP)) {\n return false;\n }\n return true;\n },\n async exec(node) {\n try {\n const isRemote = !!node.attributes.remote;\n const url = generateOcsUrl('apps/files_sharing/api/v1/{shareBase}/{id}', {\n shareBase: isRemote ? 'remote_shares' : 'shares',\n id: node.attributes.id,\n });\n await axios.delete(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 2,\n inline: () => true,\n});\nregisterFileAction(action);\n","import { emit } from '@nextcloud/event-bus';\nimport { FileAction, registerFileAction } from '@nextcloud/files';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport ArrowULeftTopSvg from '@mdi/svg/svg/arrow-u-left-top.svg?raw';\nimport axios from '@nextcloud/axios';\nimport { deletedSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'restore-share',\n displayName: (nodes) => n('files_sharing', 'Restore share', 'Restore shares', nodes.length),\n iconSvgInline: () => ArrowULeftTopSvg,\n enabled: (nodes, view) => nodes.length > 0 && view.id === deletedSharesViewId,\n async exec(node) {\n try {\n const url = generateOcsUrl('apps/files_sharing/api/v1/deletedshares/{id}', {\n id: node.attributes.id,\n });\n await axios.post(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 1,\n inline: () => true,\n});\nregisterFileAction(action);\n","/**\n * @copyright Copyright (c) 2022 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nimport { Permission, View, FileAction, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./sharingStatusAction.scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./sharingStatusAction.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nimport { Node, View, registerFileAction, FileAction, Permission } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { Type } from '@nextcloud/sharing';\nimport AccountGroupSvg from '@mdi/svg/svg/account-group.svg?raw';\nimport AccountPlusSvg from '@mdi/svg/svg/account-plus.svg?raw';\nimport LinkSvg from '@mdi/svg/svg/link.svg?raw';\nimport CircleSvg from '../../../../core/img/apps/circles.svg?raw';\nimport { action as sidebarAction } from '../../../files/src/actions/sidebarAction';\nimport { generateUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport './sharingStatusAction.scss';\nconst isDarkMode = window?.matchMedia?.('(prefers-color-scheme: dark)')?.matches === true\n || document.querySelector('[data-themes*=dark]') !== null;\nconst generateAvatarSvg = (userId, isGuest = false) => {\n const url = isDarkMode ? '/avatar/{userId}/32/dark' : '/avatar/{userId}/32';\n const avatarUrl = generateUrl(isGuest ? url : url + '?guestFallback=true', { userId });\n return `\n\t\t\n\t`;\n};\nconst isExternal = (node) => {\n return node.attributes.remote_id !== undefined;\n};\nexport const action = new FileAction({\n id: 'sharing-status',\n displayName(nodes) {\n const node = nodes[0];\n const shareTypes = Object.values(node?.attributes?.['share-types'] || {}).flat();\n const ownerId = node?.attributes?.['owner-id'];\n if (shareTypes.length > 0\n || (ownerId !== getCurrentUser()?.uid || isExternal(node))) {\n return t('files_sharing', 'Shared');\n }\n return '';\n },\n title(nodes) {\n const node = nodes[0];\n const ownerId = node?.attributes?.['owner-id'];\n const ownerDisplayName = node?.attributes?.['owner-display-name'];\n // Mixed share types\n if (Array.isArray(node.attributes?.['share-types']) && node.attributes?.['share-types'].length > 1) {\n return t('files_sharing', 'Shared multiple times with different people');\n }\n if (ownerId && (ownerId !== getCurrentUser()?.uid || isExternal(node))) {\n return t('files_sharing', 'Shared by {ownerDisplayName}', { ownerDisplayName });\n }\n return t('files_sharing', 'Show sharing options');\n },\n iconSvgInline(nodes) {\n const node = nodes[0];\n const shareTypes = Object.values(node?.attributes?.['share-types'] || {}).flat();\n // Mixed share types\n if (Array.isArray(node.attributes?.['share-types']) && node.attributes?.['share-types'].length > 1) {\n return AccountPlusSvg;\n }\n // Link shares\n if (shareTypes.includes(Type.SHARE_TYPE_LINK)\n || shareTypes.includes(Type.SHARE_TYPE_EMAIL)) {\n return LinkSvg;\n }\n // Group shares\n if (shareTypes.includes(Type.SHARE_TYPE_GROUP)\n || shareTypes.includes(Type.SHARE_TYPE_REMOTE_GROUP)) {\n return AccountGroupSvg;\n }\n // Circle shares\n if (shareTypes.includes(Type.SHARE_TYPE_CIRCLE)) {\n return CircleSvg;\n }\n const ownerId = node?.attributes?.['owner-id'];\n if (ownerId && (ownerId !== getCurrentUser()?.uid || isExternal(node))) {\n return generateAvatarSvg(ownerId, isExternal(node));\n }\n return AccountPlusSvg;\n },\n enabled(nodes) {\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n const ownerId = node?.attributes?.['owner-id'];\n const isMixed = Array.isArray(node.attributes?.['share-types']);\n // If the node is shared multiple times with\n // different share types to the current user\n if (isMixed) {\n return true;\n }\n // If the node is shared by someone else\n if (ownerId && (ownerId !== getCurrentUser()?.uid || isExternal(node))) {\n return true;\n }\n return (node.permissions & Permission.SHARE) !== 0;\n },\n async exec(node, view, dir) {\n // You need read permissions to see the sidebar\n if ((node.permissions & Permission.READ) !== 0) {\n window.OCA?.Files?.Sidebar?.setActiveTab?.('sharing');\n return sidebarAction.exec(node, view, dir);\n }\n return null;\n },\n inline: () => true,\n});\nregisterFileAction(action);\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ \n *\n * @author John Molakvoæ \n * @author Julius Härtl \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\nimport { registerDavProperty } from '@nextcloud/files';\nimport registerSharingViews from './views/shares';\nimport './actions/acceptShareAction';\nimport './actions/openInFilesAction';\nimport './actions/rejectShareAction';\nimport './actions/restoreShareAction';\nimport './actions/sharingStatusAction';\nregisterSharingViews();\nregisterDavProperty('nc:share-attributes', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('oc:share-types', { oc: 'http://owncloud.org/ns' });\nregisterDavProperty('ocs:share-permissions', { ocs: 'http://open-collaboration-services.org/ns' });\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.action-items>.files-list__row-action-sharing-status{direction:rtl;padding-right:0 !important}svg.sharing-status__avatar{height:32px !important;width:32px !important;max-height:32px !important;max-width:32px !important;border-radius:32px;overflow:hidden}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/actions/sharingStatusAction.scss\"],\"names\":[],\"mappings\":\"AAsBA,qDAEC,aAAA,CAEG,0BAAA,CAGJ,2BACC,sBAAA,CACA,qBAAA,CACA,0BAAA,CACA,yBAAA,CACA,kBAAA,CACA,eAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2023 John Molakvoæ \\n *\\n * @author John Molakvoæ \\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see .\\n *\\n */\\n // Only when rendered inline, when not enough space, this is put in the menu\\n.action-items > .files-list__row-action-sharing-status {\\n\\t// put icon at the end of the button\\n\\tdirection: rtl;\\n\\t// align icons with textless inline actions\\n padding-right: 0 !important;\\n}\\n\\nsvg.sharing-status__avatar {\\n\\theight: 32px !important;\\n\\twidth: 32px !important;\\n\\tmax-height: 32px !important;\\n\\tmax-width: 32px !important;\\n\\tborder-radius: 32px;\\n\\toverflow: hidden;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + \"6797210df0f1d53f94c4\" + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 5928;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t5928: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(67597)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","getLoggerBuilder","setApp","detectUser","build","rootPath","concat","_getCurrentUser","getCurrentUser","uid","headers","ocsEntryToNode","async","ocsEntry","_ocsEntry$tags","undefined","remote_id","mime","default","mimetype","getType","name","item_type","item_permissions","Permission","NONE","permissions","uid_owner","owner","displayname_owner","isFolder","hasPreview","has_preview","Node","Folder","File","fileid","file_source","id","path","file_target","source","generateRemoteUrl","replaceAll","mtime","item_mtime","Date","stime","size","item_size","root","attributes","share_type","favorite","tags","includes","window","OC","TAG_FAVORITE","error","logger","getShares","shared_with_me","arguments","length","url","generateOcsUrl","axios","get","params","include_tags","getContents","_getCurrentUser2","sharedWithOthers","pendingShares","deletedshares","filterTypes","promises","push","getRemoteShares","getPendingShares","getRemotePendingShares","getDeletedShares","data","Promise","all","map","response","ocs","flat","contents","filter","node","nodes","key","_node$attributes","Object","values","reduce","acc","curr","folder","sharesViewId","sharedWithYouViewId","sharedWithOthersViewId","sharingByLinksViewId","deletedSharesViewId","pendingSharesViewId","action","FileAction","displayName","n","iconSvgInline","CheckSvg","enabled","view","exec","isRemote","remote","shareBase","post","emit","execBatch","dir","this","order","inline","registerFileAction","t","type","FileType","OCP","Files","Router","goToRoute","String","dirname","openfile","DefaultType","HIDDEN","some","Share","SHARE_TYPE_REMOTE_GROUP","delete","InformationSvg","_window","_ref","_nodes$0$root","OCA","Sidebar","startsWith","open","query","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","isDarkMode","_window$matchMedia","matchMedia","call","matches","document","querySelector","isExternal","_node$attributes2","shareTypes","ownerId","title","_node$attributes3","_node$attributes4","_node$attributes5","_node$attributes6","ownerDisplayName","Array","isArray","_node$attributes7","_node$attributes8","_node$attributes9","_node$attributes10","_getCurrentUser3","AccountPlusSvg","Type","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","LinkSvg","SHARE_TYPE_GROUP","AccountGroupSvg","SHARE_TYPE_CIRCLE","userId","isGuest","avatarUrl","generateUrl","generateAvatarSvg","_node$attributes11","_node$attributes12","_getCurrentUser4","SHARE","_window$OCA","_window$OCA$setActive","READ","setActiveTab","sidebarAction","Navigation","getNavigation","register","View","caption","emptyTitle","emptyCaption","icon","columns","parent","registerSharingViews","registerDavProperty","nc","oc","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","splice","r","getter","__esModule","d","a","definition","o","defineProperty","enumerable","f","e","chunkId","u","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","l","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","setTimeout","bind","target","head","appendChild","Symbol","toStringTag","value","nmd","paths","children","scriptUrl","importScripts","location","currentScript","test","Error","replace","p","b","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}