-
-
Notifications
You must be signed in to change notification settings - Fork 60
/
photos-src_views_FaceContent_vue.js.map
1 lines (1 loc) · 48.9 KB
/
photos-src_views_FaceContent_vue.js.map
1
{"version":3,"file":"photos-src_views_FaceContent_vue.js?v=81e494a079acefd09e34","mappings":"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","sources":["webpack:///photos/src/views/FaceContent.vue?vue&type=style&index=0&id=35997606&prod&lang=scss&scoped=true&","webpack:///photos/node_modules/vue-material-design-icons/AccountBoxMultipleOutline.vue","webpack:///photos/node_modules/vue-material-design-icons/AccountBoxMultipleOutline.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/AccountBoxMultipleOutline.vue?a4da","webpack:///photos/node_modules/vue-material-design-icons/AccountBoxMultipleOutline.vue?vue&type=template&id=6bcc1fce&","webpack:///photos/node_modules/vue-material-design-icons/Send.vue","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Send.vue?0295","webpack:///photos/node_modules/vue-material-design-icons/Send.vue?vue&type=template&id=46f29e66&","webpack://photos/./src/views/FaceContent.vue?42ef","webpack:///photos/node_modules/vue-material-design-icons/Merge.vue","webpack:///photos/node_modules/vue-material-design-icons/Merge.vue?vue&type=script&lang=js&","webpack://photos/./node_modules/vue-material-design-icons/Merge.vue?5467","webpack:///photos/node_modules/vue-material-design-icons/Merge.vue?vue&type=template&id=edabd75c&","webpack:///photos/src/views/FaceContent.vue","webpack:///photos/src/views/FaceContent.vue?vue&type=script&lang=js&","webpack://photos/./src/views/FaceContent.vue?6723","webpack://photos/./src/views/FaceContent.vue?fd9f"],"sourcesContent":["// 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, \".face[data-v-35997606]{display:flex;flex-direction:column}.face__empty[data-v-35997606]{display:flex;flex-direction:column;align-items:center}.face__empty__button[data-v-35997606]{margin-top:32px}.face__header[data-v-35997606]{display:flex;min-height:60px;align-items:center;justify-content:space-between;position:-webkit-sticky;position:sticky;z-index:3;background:var(--color-main-background);padding:0 64px}@media only screen and (max-width: 1020px){.face__header[data-v-35997606]{padding:0;padding-left:64px}}.face__header__left[data-v-35997606]{height:100%;display:flex;align-items:center}.face__header__title[data-v-35997606]{margin-left:10px}.face__header__title h2[data-v-35997606]{margin-bottom:0}.face__header__loader[data-v-35997606]{margin-left:32px}.face__header__actions[data-v-35997606]{display:flex;align-items:center}.face__header__actions button[data-v-35997606]{margin-left:16px}.face__photos[data-v-35997606]{margin-top:16px;height:100%;min-height:0;padding:0 64px}@media only screen and (max-width: 1020px){.face__photos[data-v-35997606]{padding:0}}.empty-content-with-illustration[data-v-35997606] .empty-content__icon{width:200px;height:200px}.empty-content-with-illustration[data-v-35997606] .empty-content__icon svg{width:200px;height:200px}.rename-form[data-v-35997606]{display:flex;flex-direction:row;align-items:center;height:70px;padding:16px}.rename-form input[data-v-35997606]{width:80%}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/mixins/FaceContent.scss\"],\"names\":[],\"mappings\":\"AAqBA,uBACC,YAAA,CACA,qBAAA,CAEA,8BACC,YAAA,CACA,qBAAA,CACA,kBAAA,CAEA,sCACC,eAAA,CAKF,+BACC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,6BAAA,CACA,uBAAA,CAAA,eAAA,CACA,SAAA,CACA,uCAAA,CACA,cAAA,CAEA,2CAVD,+BAWE,SAAA,CACA,iBAAA,CAAA,CAGD,qCACC,WAAA,CACA,YAAA,CACA,kBAAA,CAGD,sCACC,gBAAA,CACA,yCACC,eAAA,CAIF,uCACC,gBAAA,CAGD,wCACC,YAAA,CACA,kBAAA,CAEA,+CACC,gBAAA,CAKH,+BACC,eAAA,CACA,WAAA,CACA,YAAA,CACA,cAAA,CAEA,2CAND,+BAOE,SAAA,CAAA,CAKH,uEACC,WAAA,CACA,YAAA,CAEA,2EACC,WAAA,CACA,YAAA,CAIF,8BACC,YAAA,CACA,kBAAA,CACA,kBAAA,CACA,WAAA,CACA,YAAA,CAEA,oCACC,SAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2023 Marcel Klehr <mklehr@gmx.net>\\n *\\n * @author Marcel Klehr <mklehr@gmx.net>\\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 <http://www.gnu.org/licenses/>.\\n *\\n */\\n.face {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t&__empty {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\talign-items: center;\\n\\n\\t\\t&__button {\\n\\t\\t\\tmargin-top: 32px;\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\tmin-height: 60px;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: space-between;\\n\\t\\tposition: sticky;\\n\\t\\tz-index: 3;\\n\\t\\tbackground: var(--color-main-background);\\n\\t\\tpadding: 0 64px;\\n\\n\\t\\t@media only screen and (max-width: 1020px) {\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tpadding-left: 64px;\\n\\t\\t}\\n\\n\\t\\t&__left {\\n\\t\\t\\theight: 100%;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t}\\n\\n\\t\\t&__title {\\n\\t\\t\\tmargin-left: 10px;\\n\\t\\t\\th2 {\\n\\t\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&__loader {\\n\\t\\t\\tmargin-left: 32px;\\n\\t\\t}\\n\\n\\t\\t&__actions {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\tbutton {\\n\\t\\t\\t\\tmargin-left: 16px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__photos {\\n\\t\\tmargin-top: 16px;\\n\\t\\theight: 100%;\\n\\t\\tmin-height: 0; // Prevent it from overflowing in a flex context.\\n\\t\\tpadding: 0 64px;\\n\\n\\t\\t@media only screen and (max-width: 1020px) {\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\t}\\n}\\n\\n.empty-content-with-illustration :deep .empty-content__icon {\\n\\twidth: 200px;\\n\\theight: 200px;\\n\\n\\tsvg {\\n\\t\\twidth: 200px;\\n\\t\\theight: 200px;\\n\\t}\\n}\\n\\n.rename-form {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\talign-items: center;\\n\\theight: 70px;\\n\\tpadding: 16px;\\n\\n\\tinput {\\n\\t\\twidth: 80%;\\n\\t}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon account-box-multiple-outline-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M4 6H2V20C2 21.11 2.9 22 4 22H18V20H4V6M18.5 14.25C18.5 12.75 15.5 12 14 12S9.5 12.75 9.5 14.25V15H18.5M14 10.25C15.24 10.25 16.25 9.24 16.25 8S15.24 5.75 14 5.75 11.75 6.76 11.75 8 12.76 10.25 14 10.25M20 2H8C6.9 2 6 2.9 6 4V16C6 17.11 6.9 18 8 18H20C21.11 18 22 17.11 22 16V4C22 2.89 21.1 2 20 2M20 16H8V4H20V16Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"AccountBoxMultipleOutlineIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountBoxMultipleOutline.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountBoxMultipleOutline.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountBoxMultipleOutline.vue?vue&type=template&id=6bcc1fce&\"\nimport script from \"./AccountBoxMultipleOutline.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountBoxMultipleOutline.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-box-multiple-outline-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M4 6H2V20C2 21.11 2.9 22 4 22H18V20H4V6M18.5 14.25C18.5 12.75 15.5 12 14 12S9.5 12.75 9.5 14.25V15H18.5M14 10.25C15.24 10.25 16.25 9.24 16.25 8S15.24 5.75 14 5.75 11.75 6.76 11.75 8 12.76 10.25 14 10.25M20 2H8C6.9 2 6 2.9 6 4V16C6 17.11 6.9 18 8 18H20C21.11 18 22 17.11 22 16V4C22 2.89 21.1 2 20 2M20 16H8V4H20V16Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon send-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M2,21L23,12L2,3V10L17,12L2,14V21Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"SendIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Send.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Send.vue?vue&type=template&id=46f29e66&\"\nimport script from \"./Send.vue?vue&type=script&lang=js&\"\nexport * from \"./Send.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon send-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2,21L23,12L2,3V10L17,12L2,14V21Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.face === undefined && !_vm.loadingFiles && !_vm.loadingFaces)?_c('NcEmptyContent',{staticClass:\"empty-content-with-illustration\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountBoxMultipleOutline')]},proxy:true}],null,false,2861705255)},[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'This person could not be found'))+\"\\n\")]):(_vm.errorFetchingFiles || _vm.errorFetchingFaces)?_c('NcEmptyContent',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AlertCircle')]},proxy:true}])},[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):_c('div',{staticClass:\"face\"},[_c('div',{staticClass:\"face__header\"},[_c('div',{staticClass:\"face__header__left\"},[_c('NcActions',[_c('NcActionButton',{on:{\"click\":function($event){return _vm.$router.push('/faces/')}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeft')]},proxy:true}])},[_vm._v(_vm._s(_vm.t('photos', 'Back'))+\"\\n\\t\\t\\t\\t\")])],1),_vm._v(\" \"),_c('div',{staticClass:\"face__header__title\"},[(_vm.face !== undefined)?_c('h2',{class:{'face-name': true, 'hidden-visually': _vm.face.basename.match(/^[0-9]+$/)}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.face.basename)+\"\\n\\t\\t\\t\\t\")]):_vm._e()]),_vm._v(\" \"),(_vm.loadingCount > 0 || _vm.loadingFaces)?_c('NcLoadingIcon'):_vm._e()],1),_vm._v(\" \"),(_vm.face !== undefined)?_c('div',{staticClass:\"face__header__actions\"},[_c('NcActions',[_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Rename person')},on:{\"click\":function($event){_vm.showRenameModal = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Pencil')]},proxy:true}],null,false,514409694)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Rename person'))+\"\\n\\t\\t\\t\\t\")])],1),_vm._v(\" \"),_c('NcActions',{attrs:{\"force-menu\":true}},[(Object.keys(_vm.faces).length > 1)?_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Merge with different person')},on:{\"click\":function($event){_vm.showMergeModal = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Merge')]},proxy:true}],null,false,3117189691)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Merge with different person'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.selectedFileIds.length)?[_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Download selected files')},on:{\"click\":_vm.downloadSelection}},[_c('Download',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Download selected photos'))+\"\\n\\t\\t\\t\\t\\t\")],1),_vm._v(\" \"),(_vm.shouldFavoriteSelection)?_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Mark selection as favorite')},on:{\"click\":_vm.favoriteSelection}},[_c('Star',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Favorite'))+\"\\n\\t\\t\\t\\t\\t\")],1):_c('NcActionButton',{attrs:{\"close-after-click\":true,\"aria-label\":_vm.t('photos', 'Remove selection from favorites')},on:{\"click\":_vm.unFavoriteSelection}},[_c('Star',{attrs:{\"slot\":\"icon\"},slot:\"icon\"}),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Remove from favorites'))+\"\\n\\t\\t\\t\\t\\t\")],1),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){_vm.showMoveModal = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('AccountSwitch')]},proxy:true}],null,false,2937983280)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.n('photos', 'Move photo to a different person', 'Move photos to a different person', _vm.selectedFileIds.length))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){return _vm.handleRemoveFilesFromFace(_vm.selectedFileIds)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Close')]},proxy:true}],null,false,1051939733)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.n('photos', 'Remove photo from person', 'Remove photos from person', _vm.selectedFileIds.length))+\"\\n\\t\\t\\t\\t\\t\")])]:_vm._e(),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":_vm.handleDeleteFace},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Close')]},proxy:true}],null,false,1051939733)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Remove person'))+\"\\n\\t\\t\\t\\t\")])],2)],1):_vm._e()]),_vm._v(\" \"),(_vm.face !== undefined)?_c('FilesListViewer',{staticClass:\"face__photos\",attrs:{\"container-element\":_vm.appContent,\"file-ids\":_vm.faceFileIds,\"loading\":_vm.loadingFiles || _vm.loadingFaces},scopedSlots:_vm._u([{key:\"default\",fn:function({file, distance}){return _c('File',{attrs:{\"file\":_vm.files[file.id],\"allow-selection\":true,\"selected\":_vm.selection[file.id] === true,\"distance\":distance},on:{\"click\":_vm.openViewer,\"select-toggled\":_vm.onFileSelectToggle}})}}],null,false,2716306842)}):_vm._e(),_vm._v(\" \"),(_vm.showRenameModal)?_c('NcModal',{attrs:{\"name\":_vm.t('photos', 'Rename person')},on:{\"close\":function($event){_vm.showRenameModal = false}}},[_c('div',{staticClass:\"rename-form\"},[_c('input',{directives:[{name:\"focus\",rawName:\"v-focus\"}],ref:\"nameInput\",attrs:{\"type\":\"text\",\"name\":\"name\",\"required\":\"\",\"placeholder\":_vm.t('photos', 'Name of this person')},domProps:{\"value\":_vm.faceName},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.handleRenameFace(_vm.$refs.nameInput.value)}}}),_vm._v(\" \"),_c('NcButton',{attrs:{\"aria-label\":_vm.t('photos', 'Save.'),\"type\":\"primary\",\"disabled\":_vm.$refs.nameInput && _vm.$refs.nameInput.value.trim() === ''},on:{\"click\":function($event){return _vm.handleRenameFace(_vm.$refs.nameInput.value)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loadingCount)?_c('NcLoadingIcon'):_c('Send')]},proxy:true}],null,false,564208483)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('photos', 'Save'))+\"\\n\\t\\t\\t\")])],1)]):_vm._e(),_vm._v(\" \"),(_vm.showMergeModal)?_c('NcModal',{attrs:{\"name\":_vm.t('photos', 'Merge person')},on:{\"close\":function($event){_vm.showMergeModal = false}}},[_c('FaceMergeForm',{attrs:{\"first-face\":_vm.faceName},on:{\"select\":function($event){return _vm.handleMerge($event)}}})],1):_vm._e(),_vm._v(\" \"),(_vm.showMoveModal)?_c('NcModal',{attrs:{\"name\":_vm.t('photos', 'Move to different person')},on:{\"close\":function($event){_vm.showMoveModal = false}}},[_c('FaceMergeForm',{attrs:{\"first-face\":_vm.faceName},on:{\"select\":function($event){return _vm.handleMove($event, _vm.selectedFileIds)}}})],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon merge-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M8 17L12 13H15.2C15.6 14.2 16.7 15 18 15C19.7 15 21 13.7 21 12S19.7 9 18 9C16.7 9 15.6 9.8 15.2 11H12L8 7V3H3V8H6L10.2 12L6 16H3V21H8V17Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"MergeIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Merge.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Merge.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Merge.vue?vue&type=template&id=edabd75c&\"\nimport script from \"./Merge.vue?vue&type=script&lang=js&\"\nexport * from \"./Merge.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon merge-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M8 17L12 13H15.2C15.6 14.2 16.7 15 18 15C19.7 15 21 13.7 21 12S19.7 9 18 9C16.7 9 15.6 9.8 15.2 11H12L8 7V3H3V8H6L10.2 12L6 16H3V21H8V17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2022 Louis Chemineau <louis@chmn.me>\n - @copyright Copyright (c) 2022 Marcel Klehr <mklehr@gmx.net>\n -\n - @author Louis Chemineau <louis@chmn.me>\n - @author Marcel Klehr <mklehr@gmx.net>\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 <http://www.gnu.org/licenses/>.\n -\n -->\n<template>\n\t<!-- Errors handlers-->\n\t<NcEmptyContent v-if=\"face === undefined && !loadingFiles && !loadingFaces\" class=\"empty-content-with-illustration\">\n\t\t<template #icon>\n\t\t\t<AccountBoxMultipleOutline />\n\t\t</template>\n\t\t{{ t('photos', 'This person could not be found') }}\n\t</NcEmptyContent>\n\t<NcEmptyContent v-else-if=\"errorFetchingFiles || errorFetchingFaces\">\n\t\t<template #icon>\n\t\t\t<AlertCircle />\n\t\t</template>\n\t\t{{ t('photos', 'An error occurred') }}\n\t</NcEmptyContent>\n\n\t<div v-else class=\"face\">\n\t\t<div class=\"face__header\">\n\t\t\t<div class=\"face__header__left\">\n\t\t\t\t<NcActions>\n\t\t\t\t\t<NcActionButton @click=\"$router.push('/faces/')\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<ArrowLeft />\n\t\t\t\t\t\t</template>{{ t('photos', 'Back') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t\t<div class=\"face__header__title\">\n\t\t\t\t\t<h2 v-if=\"face !== undefined\" :class=\"{'face-name': true, 'hidden-visually': face.basename.match(/^[0-9]+$/)}\">\n\t\t\t\t\t\t{{ face.basename }}\n\t\t\t\t\t</h2>\n\t\t\t\t</div>\n\n\t\t\t\t<NcLoadingIcon v-if=\"loadingCount > 0 || loadingFaces\" />\n\t\t\t</div>\n\t\t\t<div v-if=\"face !== undefined\" class=\"face__header__actions\">\n\t\t\t\t<NcActions>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t\t\t:aria-label=\"t('photos', 'Rename person')\"\n\t\t\t\t\t\t@click=\"showRenameModal = true\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Pencil />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ t('photos', 'Rename person') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t\t<NcActions :force-menu=\"true\">\n\t\t\t\t\t<NcActionButton v-if=\"Object.keys(faces).length > 1\"\n\t\t\t\t\t\t:close-after-click=\"true\"\n\t\t\t\t\t\t:aria-label=\"t('photos', 'Merge with different person')\"\n\t\t\t\t\t\t@click=\"showMergeModal = true\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Merge />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ t('photos', 'Merge with different person') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t<template v-if=\"selectedFileIds.length\">\n\t\t\t\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t\t\t\t:aria-label=\"t('photos', 'Download selected files')\"\n\t\t\t\t\t\t\t@click=\"downloadSelection\">\n\t\t\t\t\t\t\t<Download slot=\"icon\" />\n\t\t\t\t\t\t\t{{ t('photos', 'Download selected photos') }}\n\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t\t<NcActionButton v-if=\"shouldFavoriteSelection\"\n\t\t\t\t\t\t\t:close-after-click=\"true\"\n\t\t\t\t\t\t\t:aria-label=\"t('photos', 'Mark selection as favorite')\"\n\t\t\t\t\t\t\t@click=\"favoriteSelection\">\n\t\t\t\t\t\t\t<Star slot=\"icon\" />\n\t\t\t\t\t\t\t{{ t('photos', 'Favorite') }}\n\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t\t<NcActionButton v-else\n\t\t\t\t\t\t\t:close-after-click=\"true\"\n\t\t\t\t\t\t\t:aria-label=\"t('photos', 'Remove selection from favorites')\"\n\t\t\t\t\t\t\t@click=\"unFavoriteSelection\">\n\t\t\t\t\t\t\t<Star slot=\"icon\" />\n\t\t\t\t\t\t\t{{ t('photos', 'Remove from favorites') }}\n\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t\t\t\t@click=\"showMoveModal = true\">\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<AccountSwitch />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t{{ n('photos', 'Move photo to a different person', 'Move photos to a different person', selectedFileIds.length) }}\n\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t\t\t\t@click=\"handleRemoveFilesFromFace(selectedFileIds)\">\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<Close />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t{{ n('photos', 'Remove photo from person', 'Remove photos from person', selectedFileIds.length) }}\n\t\t\t\t\t\t</NcActionButton>\n\t\t\t\t\t</template>\n\t\t\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t\t\t@click=\"handleDeleteFace\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Close />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ t('photos', 'Remove person') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</NcActions>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<FilesListViewer v-if=\"face !== undefined\"\n\t\t\tclass=\"face__photos\"\n\t\t\t:container-element=\"appContent\"\n\t\t\t:file-ids=\"faceFileIds\"\n\t\t\t:loading=\"loadingFiles || loadingFaces\">\n\t\t\t<File slot-scope=\"{file, distance}\"\n\t\t\t\t:file=\"files[file.id]\"\n\t\t\t\t:allow-selection=\"true\"\n\t\t\t\t:selected=\"selection[file.id] === true\"\n\t\t\t\t:distance=\"distance\"\n\t\t\t\t@click=\"openViewer\"\n\t\t\t\t@select-toggled=\"onFileSelectToggle\" />\n\t\t</FilesListViewer>\n\n\t\t<NcModal v-if=\"showRenameModal\"\n\t\t\t:name=\"t('photos', 'Rename person')\"\n\t\t\t@close=\"showRenameModal = false\">\n\t\t\t<div class=\"rename-form\">\n\t\t\t\t<input ref=\"nameInput\"\n\t\t\t\t\tv-focus\n\t\t\t\t\t:value=\"faceName\"\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tname=\"name\"\n\t\t\t\t\trequired\n\t\t\t\t\t:placeholder=\"t('photos', 'Name of this person')\"\n\t\t\t\t\t@keydown.enter=\"handleRenameFace($refs.nameInput.value)\">\n\t\t\t\t<NcButton :aria-label=\"t('photos', 'Save.')\"\n\t\t\t\t\ttype=\"primary\"\n\t\t\t\t\t:disabled=\"$refs.nameInput && $refs.nameInput.value.trim() === ''\"\n\t\t\t\t\t@click=\"handleRenameFace($refs.nameInput.value)\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<NcLoadingIcon v-if=\"loadingCount\" />\n\t\t\t\t\t\t<Send v-else />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ t('photos', 'Save') }}\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</NcModal>\n\n\t\t<NcModal v-if=\"showMergeModal\"\n\t\t\t:name=\"t('photos', 'Merge person')\"\n\t\t\t@close=\"showMergeModal = false\">\n\t\t\t<FaceMergeForm :first-face=\"faceName\" @select=\"handleMerge($event)\" />\n\t\t</NcModal>\n\t\t<NcModal v-if=\"showMoveModal\"\n\t\t\t:name=\"t('photos', 'Move to different person')\"\n\t\t\t@close=\"showMoveModal = false\">\n\t\t\t<FaceMergeForm :first-face=\"faceName\" @select=\"handleMove($event, selectedFileIds)\" />\n\t\t</NcModal>\n\t</div>\n</template>\n\n<script>\nimport { mapActions, mapGetters } from 'vuex'\nimport Pencil from 'vue-material-design-icons/Pencil.vue'\nimport Close from 'vue-material-design-icons/Close.vue'\nimport AlertCircle from 'vue-material-design-icons/AlertCircle.vue'\nimport Star from 'vue-material-design-icons/Star.vue'\nimport Download from 'vue-material-design-icons/Download.vue'\nimport Send from 'vue-material-design-icons/Send.vue'\nimport Merge from 'vue-material-design-icons/Merge.vue'\nimport ArrowLeft from 'vue-material-design-icons/ArrowLeft.vue'\nimport AccountSwitch from 'vue-material-design-icons/AccountSwitch.vue'\nimport AccountBoxMultipleOutline from 'vue-material-design-icons/AccountBoxMultipleOutline.vue'\n\nimport { NcActions, NcActionButton, NcModal, NcEmptyContent, NcButton, NcLoadingIcon } from '@nextcloud/vue'\n\nimport FetchFilesMixin from '../mixins/FetchFilesMixin.js'\nimport FilesSelectionMixin from '../mixins/FilesSelectionMixin.js'\nimport FilesListViewer from '../components/FilesListViewer.vue'\nimport File from '../components/File.vue'\nimport logger from '../services/logger.js'\nimport FetchFacesMixin from '../mixins/FetchFacesMixin.js'\nimport Vue from 'vue'\nimport FaceMergeForm from '../components/Faces/FaceMergeForm.vue'\n\nexport default {\n\tname: 'FaceContent',\n\tcomponents: {\n\t\tPencil,\n\t\tStar,\n\t\tDownload,\n\t\tClose,\n\t\tAlertCircle,\n\t\tSend,\n\t\tMerge,\n\t\tArrowLeft,\n\t\tAccountBoxMultipleOutline,\n\t\tFaceMergeForm,\n\t\tFilesListViewer,\n\t\tFile,\n\t\tNcLoadingIcon,\n\t\tNcEmptyContent,\n\t\tNcActions,\n\t\tNcActionButton,\n\t\tNcModal,\n\t\tNcButton,\n\t\tAccountSwitch,\n\t},\n\n\tdirectives: {\n\t\tfocus(el) {\n\t\t\tVue.nextTick(() => el.focus())\n\t\t},\n\t},\n\n\tmixins: [\n\t\tFetchFacesMixin,\n\t\tFetchFilesMixin,\n\t\tFilesSelectionMixin,\n\t],\n\n\tprops: {\n\t\tfaceName: {\n\t\t\ttype: String,\n\t\t\tdefault: '/',\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshowMoveModal: false,\n\t\t\tshowMergeModal: false,\n\t\t\tshowRenameModal: false,\n\t\t\tloadingCount: 0,\n\t\t\tappContent: document.getElementById('app-content-vue'),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t...mapGetters([\n\t\t\t'files',\n\t\t\t'facesFiles',\n\t\t]),\n\n\t\t/**\n\t\t * @return {string[]} The face information for the current faceName.\n\t\t */\n\t\tface() {\n\t\t\treturn this.faces[this.faceName]\n\t\t},\n\n\t\t/**\n\t\t * @return {string[]} The list of files for the current faceName.\n\t\t */\n\t\tfaceFileIds() {\n\t\t\treturn this.facesFiles[this.faceName] || []\n\t\t},\n\n\t\t/** @type {boolean} */\n\t\tshouldFavoriteSelection() {\n\t\t\t// Favorite all selection if at least one file is not on the favorites.\n\t\t\treturn this.selectedFileIds.some((fileId) => this.$store.state.files.files[fileId].favorite === 0)\n\t\t},\n\t},\n\n\twatch: {\n\t\tface() {\n\t\t\tif (this.face) {\n\t\t\t\tthis.fetchFaceContent(this.faceName)\n\t\t\t}\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.fetchFaceContent(this.faceName)\n\t},\n\n\tmethods: {\n\t\t...mapActions([\n\t\t\t'appendFiles',\n\t\t\t'deleteFace',\n\t\t\t'renameFace',\n\t\t\t'downloadFiles',\n\t\t\t'toggleFavoriteForFiles',\n\t\t\t'removeFilesFromFace',\n\t\t\t'moveFilesToFace',\n\t\t]),\n\n\t\topenViewer(fileId) {\n\t\t\tconst file = this.files[fileId]\n\t\t\tOCA.Viewer.open({\n\t\t\t\t// remove /username/files/ from the start\n\t\t\t\tpath: '/' + file.filename.split('/').slice(3).join('/'),\n\t\t\t\tlist: this.faceFileIds.map(fileId => ({\n\t\t\t\t\t...this.files[fileId],\n\t\t\t\t\tbasename: this.files[fileId].basename.split('-').slice(1).join('-'),\n\t\t\t\t})).filter(file => !file.sectionHeader),\n\t\t\t\tloadMore: file.loadMore ? async () => await file.loadMore(true) : () => [],\n\t\t\t\tcanLoop: file.canLoop,\n\t\t\t})\n\t\t},\n\n\t\tasync handleRemoveFilesFromFace(fileIds) {\n\t\t\ttry {\n\t\t\t\tthis.loadingCount++\n\t\t\t\tawait this.removeFilesFromFace({ faceName: this.faceName, fileIdsToRemove: fileIds })\n\t\t\t\tthis.resetSelection()\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingCount--\n\t\t\t}\n\t\t},\n\n\t\tasync handleDeleteFace() {\n\t\t\ttry {\n\t\t\t\tthis.loadingCount++\n\t\t\t\tawait this.deleteFace({ faceName: this.faceName })\n\t\t\t\tthis.$router.push('/faces')\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingCount--\n\t\t\t}\n\t\t},\n\n\t\tasync handleRenameFace(faceName) {\n\t\t\ttry {\n\t\t\t\tthis.loadingCount++\n\t\t\t\tthis.showRenameModal = false\n\t\t\t\tconst oldName = this.faceName\n\t\t\t\tawait this.renameFace({ oldName, faceName })\n\t\t\t\tthis.$router.push({ name: 'facecontent', params: { faceName } })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingCount--\n\t\t\t}\n\t\t},\n\n\t\tasync handleMerge(faceName) {\n\t\t\ttry {\n\t\t\t\tthis.loadingCount++\n\t\t\t\tawait this.moveFilesToFace({ oldFace: this.faceName, faceName, fileIdsToMove: this.facesFiles[this.faceName] })\n\t\t\t\tawait this.deleteFace({ faceName: this.faceName })\n\t\t\t\tthis.showMergeModal = false\n\t\t\t\tthis.$router.push({ name: 'facecontent', params: { faceName } })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingCount--\n\t\t\t}\n\t\t},\n\n\t\tasync handleMove(faceName, fileIds) {\n\t\t\ttry {\n\t\t\t\tthis.loadingCount++\n\t\t\t\tawait this.moveFilesToFace({ oldFace: this.faceName, faceName, fileIdsToMove: fileIds })\n\t\t\t\tthis.showMoveModal = false\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingCount--\n\t\t\t}\n\t\t},\n\n\t\tasync favoriteSelection() {\n\t\t\ttry {\n\t\t\t\tthis.loadingCount++\n\t\t\t\tawait this.toggleFavoriteForFiles({ fileIds: this.selectedFileIds, favoriteState: true })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingCount--\n\t\t\t}\n\t\t},\n\n\t\tasync unFavoriteSelection() {\n\t\t\ttry {\n\t\t\t\tthis.loadingCount++\n\t\t\t\tawait this.toggleFavoriteForFiles({ fileIds: this.selectedFileIds, favoriteState: false })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingCount--\n\t\t\t}\n\t\t},\n\n\t\tasync downloadSelection() {\n\t\t\ttry {\n\t\t\t\tthis.loadingCount++\n\t\t\t\tawait this.downloadFiles(this.selectedFileIds)\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error(error)\n\t\t\t} finally {\n\t\t\t\tthis.loadingCount--\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n<style lang=\"scss\" scoped>\n@import '../mixins/FaceContent';\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceContent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceContent.vue?vue&type=script&lang=js&\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceContent.vue?vue&type=style&index=0&id=35997606&prod&lang=scss&scoped=true&\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FaceContent.vue?vue&type=style&index=0&id=35997606&prod&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FaceContent.vue?vue&type=template&id=35997606&scoped=true&\"\nimport script from \"./FaceContent.vue?vue&type=script&lang=js&\"\nexport * from \"./FaceContent.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FaceContent.vue?vue&type=style&index=0&id=35997606&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"35997606\",\n null\n \n)\n\nexport default component.exports"],"names":["___CSS_LOADER_EXPORT___","push","module","id","name","emits","props","title","type","String","fillColor","default","size","Number","_vm","this","_c","_self","_b","staticClass","attrs","on","$event","$emit","$attrs","_v","_s","_e","components","Pencil","Star","Download","Close","AlertCircle","Send","Merge","ArrowLeft","AccountBoxMultipleOutline","FaceMergeForm","FilesListViewer","File","NcLoadingIcon","NcEmptyContent","NcActions","NcActionButton","NcModal","NcButton","AccountSwitch","directives","focus","el","Vue","mixins","FetchFacesMixin","FetchFilesMixin","FilesSelectionMixin","faceName","data","showMoveModal","showMergeModal","showRenameModal","loadingCount","appContent","document","getElementById","computed","mapGetters","face","faces","faceFileIds","facesFiles","shouldFavoriteSelection","selectedFileIds","some","fileId","$store","state","files","favorite","watch","fetchFaceContent","mounted","methods","mapActions","openViewer","file","OCA","Viewer","open","path","filename","split","slice","join","list","map","basename","filter","sectionHeader","loadMore","canLoop","fileIds","removeFilesFromFace","fileIdsToRemove","resetSelection","error","logger","deleteFace","$router","oldName","renameFace","params","moveFilesToFace","oldFace","fileIdsToMove","toggleFavoriteForFiles","favoriteState","downloadFiles","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","undefined","loadingFiles","loadingFaces","errorFetchingFiles","errorFetchingFaces","scopedSlots","_u","key","fn","proxy","t","class","match","Object","keys","length","downloadSelection","slot","favoriteSelection","unFavoriteSelection","n","handleRemoveFilesFromFace","handleDeleteFace","_ref","distance","selection","onFileSelectToggle","rawName","ref","domProps","indexOf","_k","keyCode","handleRenameFace","$refs","nameInput","value","trim","handleMerge","handleMove"],"sourceRoot":""}