diff options
Diffstat (limited to 'apps/settings/js/vue-settings-personal-security.js')
-rw-r--r-- | apps/settings/js/vue-settings-personal-security.js | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/apps/settings/js/vue-settings-personal-security.js b/apps/settings/js/vue-settings-personal-security.js index 16b0c01721c..647d6384340 100644 --- a/apps/settings/js/vue-settings-personal-security.js +++ b/apps/settings/js/vue-settings-personal-security.js @@ -783,7 +783,7 @@ t.exports=function(){"use strict";function t(){throw new Error("Dynamic requires * * Licensed MIT © Zeno Rocha */ -t.exports=function(){return n={},t.m=e=[function(t,e){t.exports=function(t){var e;if("SELECT"===t.nodeName)t.focus(),e=t.value;else if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName){var n=t.hasAttribute("readonly");n||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),n||t.removeAttribute("readonly"),e=t.value}else{t.hasAttribute("contenteditable")&&t.focus();var r=window.getSelection(),o=document.createRange();o.selectNodeContents(t),r.removeAllRanges(),r.addRange(o),e=r.toString()}return e}},function(t,e){function n(){}n.prototype={on:function(t,e,n){var r=this.e||(this.e={});return(r[t]||(r[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var r=this;function o(){r.off(t,o),e.apply(n,arguments)}return o._=e,this.on(t,o,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),r=0,o=n.length;r<o;r++)n[r].fn.apply(n[r].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),r=n[t],o=[];if(r&&e)for(var i=0,a=r.length;i<a;i++)r[i].fn!==e&&r[i].fn._!==e&&o.push(r[i]);return o.length?n[t]=o:delete n[t],this}},t.exports=n,t.exports.TinyEmitter=n},function(t,e,n){var r=n(3),o=n(4);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!r.string(e))throw new TypeError("Second argument must be a String");if(!r.fn(n))throw new TypeError("Third argument must be a Function");if(r.node(t))return d=e,f=n,(p=t).addEventListener(d,f),{destroy:function(){p.removeEventListener(d,f)}};if(r.nodeList(t))return c=t,l=e,u=n,Array.prototype.forEach.call(c,(function(t){t.addEventListener(l,u)})),{destroy:function(){Array.prototype.forEach.call(c,(function(t){t.removeEventListener(l,u)}))}};if(r.string(t))return i=t,a=e,s=n,o(document.body,i,a,s);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var i,a,s,c,l,u,p,d,f}},function(t,e){e.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},e.nodeList=function(t){var n=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===n||"[object HTMLCollection]"===n)&&"length"in t&&(0===t.length||e.node(t[0]))},e.string=function(t){return"string"==typeof t||t instanceof String},e.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},function(t,e,n){var r=n(5);function o(t,e,n,o,i){var a=function(t,e,n,o){return function(n){n.delegateTarget=r(n.target,e),n.delegateTarget&&o.call(t,n)}}.apply(this,arguments);return t.addEventListener(n,a,i),{destroy:function(){t.removeEventListener(n,a,i)}}}t.exports=function(t,e,n,r,i){return"function"==typeof t.addEventListener?o.apply(null,arguments):"function"==typeof n?o.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,(function(t){return o(t,e,n,r,i)})))}},function(t,e){if("undefined"!=typeof Element&&!Element.prototype.matches){var n=Element.prototype;n.matches=n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector}t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},function(t,e,n){"use strict";n.r(e);var r=n(0),o=n.n(r),i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function a(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),this.resolveOptions(t),this.initSelection()}var c=(function(t,e,n){e&&a(t.prototype,e)}(s,[{key:"resolveOptions",value:function(t){var e=0<arguments.length&&void 0!==t?t:{};this.action=e.action,this.container=e.container,this.emitter=e.emitter,this.target=e.target,this.text=e.text,this.trigger=e.trigger,this.selectedText=""}},{key:"initSelection",value:function(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function(){var t=this,e="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return t.removeFake()},this.fakeHandler=this.container.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[e?"right":"left"]="-9999px";var n=window.pageYOffset||document.documentElement.scrollTop;this.fakeElem.style.top=n+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,this.container.appendChild(this.fakeElem),this.selectedText=o()(this.fakeElem),this.copyText()}},{key:"removeFake",value:function(){this.fakeHandler&&(this.container.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(this.container.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function(){this.selectedText=o()(this.target),this.copyText()}},{key:"copyText",value:function(){var t=void 0;try{t=document.execCommand(this.action)}catch(e){t=!1}this.handleResult(t)}},{key:"handleResult",value:function(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function(){this.trigger&&this.trigger.focus(),document.activeElement.blur(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function(){this.removeFake()}},{key:"action",set:function(t){var e=0<arguments.length&&void 0!==t?t:"copy";if(this._action=e,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function(){return this._action}},{key:"target",set:function(t){if(void 0!==t){if(!t||"object"!==(void 0===t?"undefined":i(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function(){return this._target}}]),s),l=n(1),u=n.n(l),p=n(2),d=n.n(p),f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function h(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}var m=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(v,u.a),function(t,e,n){e&&h(t.prototype,e),n&&h(t,n)}(v,[{key:"resolveOptions",value:function(t){var e=0<arguments.length&&void 0!==t?t:{};this.action="function"==typeof e.action?e.action:this.defaultAction,this.target="function"==typeof e.target?e.target:this.defaultTarget,this.text="function"==typeof e.text?e.text:this.defaultText,this.container="object"===f(e.container)?e.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=d()(t,"click",(function(t){return e.onClick(t)}))}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new c({action:this.action(e),target:this.target(e),text:this.text(e),container:this.container,trigger:e,emitter:this})}},{key:"defaultAction",value:function(t){return g("action",t)}},{key:"defaultTarget",value:function(t){var e=g("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return g("text",t)}},{key:"destroy",value:function(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function(t){var e=0<arguments.length&&void 0!==t?t:["copy","cut"],n="string"==typeof e?[e]:e,r=!!document.queryCommandSupported;return n.forEach((function(t){r=r&&!!document.queryCommandSupported(t)})),r}}]),v);function v(t,e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,v);var n=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(v.__proto__||Object.getPrototypeOf(v)).call(this));return n.resolveOptions(e),n.listenClick(t),n}function g(t,e){var n="data-clipboard-"+t;if(e.hasAttribute(n))return e.getAttribute(n)}e.default=m}],t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var o in e)t.d(r,o,function(t){return e[t]}.bind(null,o));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},t.p="",t(t.s=6).default;function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var e,n}()},function(t,e,n){"use strict";var r=n(337);n.n(r).a},function(t,e,n){(e=n(171)(!1)).push([t.i,".wiping[data-v-544978ec]{background-color:var(--color-background-darker)}td[data-v-544978ec]{border-top:1px solid var(--color-border);max-width:200px;white-space:normal;vertical-align:middle;position:relative}td.more[data-v-544978ec],td.client[data-v-544978ec]{overflow:visible;position:relative;width:44px;height:44px}td.token-name[data-v-544978ec]{padding:10px 6px}td.token-name.token-rename[data-v-544978ec]{padding:0}td.token-name input[data-v-544978ec]{width:100%;margin:0}td.token-name .wiping-warning[data-v-544978ec]{color:var(--color-text-lighter)}td.more[data-v-544978ec]{padding:0 10px}td.client div[data-v-544978ec]{opacity:0.57;width:44px;height:44px}\n",""]),t.exports=e},function(t,e,n){"use strict";var r=n(338);n.n(r).a},function(t,e,n){(e=n(171)(!1)).push([t.i,"table[data-v-ce0ff7e6]{width:100%;min-height:50px;padding-top:5px;max-width:580px}table th[data-v-ce0ff7e6]{opacity:.5;padding:10px 10px 10px 0}.token-list td>a.icon-more[data-v-ce0ff7e6]{transition:opacity var(--animation-quick)}.token-list a.icon-more[data-v-ce0ff7e6]{padding:14px;display:block;width:44px;height:44px;opacity:.5}.token-list tr:hover td>a.icon[data-v-ce0ff7e6],.token-list tr td>a.icon[data-v-ce0ff7e6]:focus,.token-list tr.active td>a.icon[data-v-ce0ff7e6]{opacity:1}\n",""]),t.exports=e},function(t,e,n){"use strict";var r=n(339);n.n(r).a},function(t,e,n){(e=n(171)(!1)).push([t.i,"#app-tokens-table tr>*:nth-child(2){padding-left:6px}#app-tokens-table tr>*:nth-child(3){text-align:right}\n",""]),t.exports=e},function(t,e,n){"use strict";var r=n(340);n.n(r).a},function(t,e,n){(e=n(171)(!1)).push([t.i,".app-password-row[data-v-adfde2fe]{display:table-row}.app-password-row .icon[data-v-adfde2fe]{background-size:16px 16px;display:inline-block;position:relative;top:3px;margin-left:5px;margin-right:8px}.app-password-label[data-v-adfde2fe]{display:table-cell;padding-right:1em;text-align:right;vertical-align:middle}.monospaced[data-v-adfde2fe]{width:245px;font-family:monospace}\n",""]),t.exports=e},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(e,n,r){"use strict";r.r(n);var o=r(185),i=r(16),a=r(468),s=r.n(a),c=r(165),l=r(39),u=r.n(l),p=r(98),d=r.n(p),f=r(11),h=r(195),m={ie:/(?:MSIE|Trident|Trident\/7.0; rv)[ :](\d+)/,edge:/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/[0-9.]+ (?:Mobile Safari|Safari)\/[0-9.]+ Edge\/[0-9.]+$/,firefox:/^Mozilla\/5\.0 \([^)]*(Windows|OS X|Linux)[^)]+\) Gecko\/[0-9.]+ Firefox\/(\d+)(?:\.\d)?$/,chrome:/^Mozilla\/5\.0 \([^)]*(Windows|OS X|Linux)[^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/(\d+)[0-9.]+ (?:Mobile Safari|Safari)\/[0-9.]+$/,safari:/^Mozilla\/5\.0 \([^)]*(Windows|OS X)[^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\)(?: Version\/([0-9]+)[0-9.]+)? Safari\/[0-9.A-Z]+$/,androidChrome:/Android.*(?:; (.*) Build\/).*Chrome\/(\d+)[0-9.]+/,iphone:/ *CPU +iPhone +OS +([0-9]+)_(?:[0-9_])+ +like +Mac +OS +X */,ipad:/\(iPad; *CPU +OS +([0-9]+)_(?:[0-9_])+ +like +Mac +OS +X */,iosClient:/^Mozilla\/5\.0 \(iOS\) (ownCloud|Nextcloud)-iOS.*$/,androidClient:/^Mozilla\/5\.0 \(Android\) ownCloud-android.*$/,iosTalkClient:/^Mozilla\/5\.0 \(iOS\) Nextcloud-Talk.*$/,androidTalkClient:/^Mozilla\/5\.0 \(Android\) Nextcloud-Talk.*$/,davDroid:/DAV(droid|x5)\/([0-9.]+)/,webPirate:/(Sailfish).*WebPirate\/(\d+)/,sailfishBrowser:/(Sailfish).*SailfishBrowser\/(\d+)/},v={ie:t("setting","Internet Explorer"),edge:t("setting","Edge"),firefox:t("setting","Firefox"),chrome:t("setting","Google Chrome"),safari:t("setting","Safari"),androidChrome:t("setting","Google Chrome for Android"),iphone:t("setting","iPhone"),ipad:t("setting","iPad"),iosClient:t("setting","Nextcloud iOS app"),androidClient:t("setting","Nextcloud Android app"),iosTalkClient:t("setting","Nextcloud Talk for iOS"),androidTalkClient:t("setting","Nextcloud Talk for Android"),davDroid:"DAVdroid",webPirate:"WebPirate",sailfishBrowser:"SailfishBrowser"},g={ie:"icon-desktop",edge:"icon-desktop",firefox:"icon-desktop",chrome:"icon-desktop",safari:"icon-desktop",androidChrome:"icon-phone",iphone:"icon-phone",ipad:"icon-tablet",iosClient:"icon-phone",androidClient:"icon-phone",iosTalkClient:"icon-phone",androidTalkClient:"icon-phone",davDroid:"icon-phone",webPirate:"icon-link",sailfishBrowser:"icon-link"},b={name:"AuthToken",components:{Actions:h.Actions,ActionButton:h.ActionButton,ActionCheckbox:h.ActionCheckbox},props:{token:{type:Object,required:!0}},data:function(){return{showMore:this.token.canScope||this.token.canDelete,renaming:!1,newName:"",actionOpen:!1}},computed:{lastActivityRelative:function(){return OC.Util.relativeModifiedDate(1e3*this.token.lastActivity)},lastActivity:function(){return OC.Util.formatDate(1e3*this.token.lastActivity,"LLL")},iconName:function(){var e=this.token.name.match(/Mozilla\/5\.0 \((\w+)\) (?:mirall|csyncoC)\/(\d+\.\d+\.\d+)/),n="";e&&(this.token.name=t("settings","Sync client - {os}",{os:e[1],version:e[2]}),n="icon-desktop");var r=this.token.name,o=this.token.name;for(var i in m){var a=r.match(m[i]);a&&(o=a[2]&&a[1]?v[i]+" "+a[2]+" - "+a[1]:a[1]?v[i]+" "+a[1]:v[i],n=g[i])}return this.token.current&&(o=t("settings","This session")),{icon:n,name:o}},wiping:function(){return 2===this.token.type}},methods:{startRename:function(){var t=this;this.actionOpen=!1,this.newName=this.token.name,this.renaming=!0,this.$nextTick((function(){t.$refs.input.select()}))},cancelRename:function(){this.renaming=!1},revoke:function(){this.actionOpen=!1,this.$emit("delete",this.token)},rename:function(){this.renaming=!1,this.$emit("rename",this.token,this.newName)},wipe:function(){this.actionOpen=!1,this.$emit("wipe",this.token)}}},A=(r(477),r(41)),y={name:"AuthTokenList",components:{AuthToken:Object(A.a)(b,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("tr",{class:t.wiping,attrs:{"data-id":t.token.id}},[n("td",{staticClass:"client"},[n("div",{class:t.iconName.icon})]),t._v(" "),n("td",{staticClass:"token-name"},[t.token.canRename&&t.renaming?n("input",{directives:[{name:"model",rawName:"v-model",value:t.newName,expression:"newName"}],ref:"input",attrs:{type:"text"},domProps:{value:t.newName},on:{keyup:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.rename(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.cancelRename(e)}],blur:t.cancelRename,input:function(e){e.target.composing||(t.newName=e.target.value)}}}):n("span",[t._v(t._s(t.iconName.name))]),t._v(" "),t.wiping?n("span",{staticClass:"wiping-warning"},[t._v("("+t._s(t.t("settings","Marked for remote wipe"))+")")]):t._e()]),t._v(" "),n("td",[n("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.lastActivity,expression:"lastActivity"}],staticClass:"last-activity"},[t._v(t._s(t.lastActivityRelative))])]),t._v(" "),n("td",{staticClass:"more"},[t.token.current?t._e():n("Actions",{directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:{content:t.t("settings","Device settings"),container:"body"},expression:"{\n\t\t\t\tcontent: t('settings', 'Device settings'),\n\t\t\t\tcontainer: 'body'\n\t\t\t}",modifiers:{auto:!0}}],attrs:{open:t.actionOpen},on:{"update:open":function(e){t.actionOpen=e}}},[1===t.token.type?n("ActionCheckbox",{attrs:{checked:t.token.scope.filesystem},on:{change:function(e){return e.stopPropagation(),e.preventDefault(),t.$emit("toggleScope",t.token,"filesystem",!t.token.scope.filesystem)}}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Allow filesystem access"))+"\n\t\t\t")]):t._e(),t._v(" "),t.token.canRename?n("ActionButton",{attrs:{icon:"icon-rename"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.startRename(e)}}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Rename"))+"\n\t\t\t")]):t._e(),t._v(" "),t.token.canDelete?[2!==t.token.type?[n("ActionButton",{attrs:{icon:"icon-delete"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.revoke(e)}}},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("settings","Revoke"))+"\n\t\t\t\t\t")]),t._v(" "),n("ActionButton",{attrs:{icon:"icon-delete"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.wipe(e)}}},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("settings","Wipe device"))+"\n\t\t\t\t\t")])]:2===t.token.type?n("ActionButton",{attrs:{icon:"icon-delete",title:t.t("settings","Revoke")},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.revoke(e)}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("settings","Revoking this token might prevent the wiping of your device if it hasn't started the wipe yet."))+"\n\t\t\t\t")]):t._e()]:t._e()],2)],1)])}),[],!1,null,"544978ec",null).exports},props:{tokens:{type:Array,required:!0}},computed:{sortedTokens:function(){return this.tokens.slice().sort((function(t,e){var n=parseInt(t.lastActivity,10);return parseInt(e.lastActivity,10)-n}))}},methods:{toggleScope:function(t,e,n){this.$emit("toggleScope",t,e,n)},rename:function(t,e){this.$emit("rename",t,e)},onDelete:function(t){this.$emit("delete",t)},onWipe:function(t){this.$emit("wipe",t)}}},x=(r(479),r(481),Object(A.a)(y,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("table",{attrs:{id:"app-tokens-table"}},[t.tokens.length?n("thead",[n("tr",[n("th"),t._v(" "),n("th",[t._v(t._s(t.t("settings","Device")))]),t._v(" "),n("th",[t._v(t._s(t.t("settings","Last activity")))]),t._v(" "),n("th")])]):t._e(),t._v(" "),n("tbody",{staticClass:"token-list"},t._l(t.sortedTokens,(function(e){return n("AuthToken",{key:e.id,attrs:{token:e},on:{toggleScope:t.toggleScope,rename:t.rename,delete:t.onDelete,wipe:t.onWipe}})})),1)])}),[],!1,null,"ce0ff7e6",null).exports),w=r(469);function _(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function k(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?_(Object(n),!0).forEach((function(e){C(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):_(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function C(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var T={name:"AuthTokenSetupDialogue",components:{QR:r.n(w).a},props:{add:{type:Function,required:!0}},data:function(){return{adding:!1,loading:!1,deviceName:"",appPassword:"",loginName:"",passwordCopied:!1,showQR:!1,qrUrl:"",hoveringCopyButton:!1}},computed:{copyTooltipOptions:function(){var e={hideOnTargetClick:!1,trigger:"manual"};return this.passwordCopied?k(k({},e),{},{content:t("core","Copied!"),show:!0}):k(k({},e),{},{content:t("core","Copy"),show:this.hoveringCopyButton})}},methods:{selectInput:function(t){t.currentTarget.select()},submit:function(){var e=this;d()().then((function(){return e.loading=!0,e.add(e.deviceName)})).then((function(t){e.adding=!0,e.loginName=t.loginName,e.appPassword=t.token;var n=window.location.protocol+"//"+window.location.host+Object(f.getRootUrl)();e.qrUrl="nc://login/user:".concat(t.loginName,"&password:").concat(t.token,"&server:").concat(n),e.$nextTick((function(){e.$refs.appPassword.select()}))})).catch((function(n){console.error("could not create a new app password",n),OC.Notification.showTemporary(t("core","Error while creating device token")),e.reset()}))},onCopyPassword:function(){var t=this;this.passwordCopied=!0,this.$refs.clipboardButton.blur(),setTimeout((function(){t.passwordCopied=!1}),3e3)},onCopyPasswordFailed:function(){OC.Notification.showTemporary(t("core","Could not copy app password. Please copy it manually."))},reset:function(){this.adding=!1,this.loading=!1,this.showQR=!1,this.qrUrl="",this.deviceName="",this.appPassword="",this.loginName=""}}},E=(r(483),Object(A.a)(T,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.adding?n("div",[t._v("\n\t"+t._s(t.t("settings","Use the credentials below to configure your app or device."))+"\n\t"+t._s(t.t("settings","For security reasons this password will only be shown once."))+"\n\t"),n("div",{staticClass:"app-password-row"},[n("span",{staticClass:"app-password-label"},[t._v(t._s(t.t("settings","Username")))]),t._v(" "),n("input",{staticClass:"monospaced",attrs:{type:"text",readonly:"readonly"},domProps:{value:t.loginName},on:{focus:t.selectInput}})]),t._v(" "),n("div",{staticClass:"app-password-row"},[n("span",{staticClass:"app-password-label"},[t._v(t._s(t.t("settings","Password")))]),t._v(" "),n("input",{ref:"appPassword",staticClass:"monospaced",attrs:{type:"text",readonly:"readonly"},domProps:{value:t.appPassword},on:{focus:t.selectInput}}),t._v(" "),n("a",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.copyTooltipOptions,expression:"copyTooltipOptions"},{name:"clipboard",rawName:"v-clipboard:copy",value:t.appPassword,expression:"appPassword",arg:"copy"},{name:"clipboard",rawName:"v-clipboard:success",value:t.onCopyPassword,expression:"onCopyPassword",arg:"success"},{name:"clipboard",rawName:"v-clipboard:error",value:t.onCopyPasswordFailed,expression:"onCopyPasswordFailed",arg:"error"}],ref:"clipboardButton",staticClass:"icon icon-clippy",on:{mouseover:function(e){t.hoveringCopyButton=!0},mouseleave:function(e){t.hoveringCopyButton=!1}}}),t._v(" "),n("button",{staticClass:"button",on:{click:t.reset}},[t._v("\n\t\t\t"+t._s(t.t("settings","Done"))+"\n\t\t")])]),t._v(" "),n("div",{staticClass:"app-password-row"},[n("span",{staticClass:"app-password-label"}),t._v(" "),t.showQR?n("QR",{attrs:{value:t.qrUrl}}):n("a",{on:{click:function(e){t.showQR=!0}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show QR code for mobile apps"))+"\n\t\t")])],1)]):n("div",[n("input",{directives:[{name:"model",rawName:"v-model",value:t.deviceName,expression:"deviceName"}],attrs:{type:"text",disabled:t.loading,placeholder:t.t("settings","App name")},domProps:{value:t.deviceName},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.submit(e)},input:function(e){e.target.composing||(t.deviceName=e.target.value)}}}),t._v(" "),n("button",{staticClass:"button",attrs:{disabled:t.loading},on:{click:t.submit}},[t._v("\n\t\t"+t._s(t.t("settings","Create new app password"))+"\n\t")])])}),[],!1,null,"adfde2fe",null).exports);function S(t,e,n,r,o,i,a){try{var s=t[i](a),c=s.value}catch(t){return void n(t)}s.done?e(c):Promise.resolve(c).then(r,o)}var M=function(t){return function(e){return t(e),e}},O={name:"AuthTokenSection",components:{AuthTokenSetupDialogue:E,AuthTokenList:x},props:{tokens:{type:Array,required:!0},canCreateToken:{type:Boolean,required:!0}},data:function(){return{baseUrl:Object(f.generateUrl)("/settings/personal/authtokens")}},methods:{addNewToken:function(e){var n=this;console.debug("creating a new app token",e);var r={name:e};return u.a.post(this.baseUrl,r).then((function(t){return t.data})).then(M((function(){return console.debug("app token created")}))).then(M((function(t){return n.tokens.push(t.deviceToken)}))).catch((function(e){throw console.error.bind("could not create app password",e),OC.Notification.showTemporary(t("core","Error while creating device token")),e}))},toggleTokenScope:function(e,n,r){console.debug("updating app token scope",e.id,n,r);var o=e.scope[n];return e.scope[n]=r,this.updateToken(e).then(M((function(){return console.debug("app token scope updated")}))).catch((function(r){throw console.error.bind("could not update app token scope",r),OC.Notification.showTemporary(t("core","Error while updating device token scope")),e.scope[n]=o,r}))},rename:function(e,n){console.debug("renaming app token",e.id,e.name,n);var r=e.name;return e.name=n,this.updateToken(e).then(M((function(){return console.debug("app token name updated")}))).catch((function(n){console.error.bind("could not update app token name",n),OC.Notification.showTemporary(t("core","Error while updating device token name")),e.name=r}))},updateToken:function(t){return u.a.put(this.baseUrl+"/"+t.id,t).then((function(t){return t.data}))},deleteToken:function(e){var n=this;return console.debug("deleting app token",e),this.tokens=this.tokens.filter((function(t){return t!==e})),u.a.delete(this.baseUrl+"/"+e.id).then((function(t){return t.data})).then(M((function(){return console.debug("app token deleted")}))).catch((function(r){console.error.bind("could not delete app token",r),OC.Notification.showTemporary(t("core","Error while deleting the token")),n.tokens.push(e)}))},wipeToken:function(e){var n,r=this;return(n=regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return console.debug("wiping app token",e),n.prev=1,n.next=4,d()();case 4:return n.next=6,new Promise((function(e){OC.dialogs.confirm(t("core","Do you really want to wipe your data from this device?"),t("core","Confirm wipe"),e,!0)}));case 6:if(n.sent){n.next=9;break}return console.debug("wipe aborted by user"),n.abrupt("return");case 9:return n.next=11,u.a.post(r.baseUrl+"/wipe/"+e.id);case 11:console.debug("app token marked for wipe"),e.type=2,n.next=19;break;case 15:n.prev=15,n.t0=n.catch(1),console.error("could not wipe app token",n.t0),OC.Notification.showTemporary(t("core","Error while wiping the device with the token"));case 19:case"end":return n.stop()}}),n,null,[[1,15]])})),function(){var t=this,e=arguments;return new Promise((function(r,o){var i=n.apply(t,e);function a(t){S(i,r,o,a,s,"next",t)}function s(t){S(i,r,o,a,s,"throw",t)}a(void 0)}))})()}}},I=Object(A.a)(O,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"section",attrs:{id:"security"}},[n("h2",[t._v(t._s(t.t("settings","Devices & sessions")))]),t._v(" "),n("p",{staticClass:"settings-hint hidden-when-empty"},[t._v("\n\t\t"+t._s(t.t("settings","Web, desktop and mobile clients currently logged in to your account."))+"\n\t")]),t._v(" "),n("AuthTokenList",{attrs:{tokens:t.tokens},on:{toggleScope:t.toggleTokenScope,rename:t.rename,delete:t.deleteToken,wipe:t.wipeToken}}),t._v(" "),t.canCreateToken?n("AuthTokenSetupDialogue",{attrs:{add:t.addNewToken}}):t._e()],1)}),[],!1,null,"5ad36ee6",null).exports; +t.exports=function(){return n={},t.m=e=[function(t,e){t.exports=function(t){var e;if("SELECT"===t.nodeName)t.focus(),e=t.value;else if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName){var n=t.hasAttribute("readonly");n||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),n||t.removeAttribute("readonly"),e=t.value}else{t.hasAttribute("contenteditable")&&t.focus();var r=window.getSelection(),o=document.createRange();o.selectNodeContents(t),r.removeAllRanges(),r.addRange(o),e=r.toString()}return e}},function(t,e){function n(){}n.prototype={on:function(t,e,n){var r=this.e||(this.e={});return(r[t]||(r[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var r=this;function o(){r.off(t,o),e.apply(n,arguments)}return o._=e,this.on(t,o,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),r=0,o=n.length;r<o;r++)n[r].fn.apply(n[r].ctx,e);return this},off:function(t,e){var n=this.e||(this.e={}),r=n[t],o=[];if(r&&e)for(var i=0,a=r.length;i<a;i++)r[i].fn!==e&&r[i].fn._!==e&&o.push(r[i]);return o.length?n[t]=o:delete n[t],this}},t.exports=n,t.exports.TinyEmitter=n},function(t,e,n){var r=n(3),o=n(4);t.exports=function(t,e,n){if(!t&&!e&&!n)throw new Error("Missing required arguments");if(!r.string(e))throw new TypeError("Second argument must be a String");if(!r.fn(n))throw new TypeError("Third argument must be a Function");if(r.node(t))return d=e,f=n,(p=t).addEventListener(d,f),{destroy:function(){p.removeEventListener(d,f)}};if(r.nodeList(t))return c=t,l=e,u=n,Array.prototype.forEach.call(c,(function(t){t.addEventListener(l,u)})),{destroy:function(){Array.prototype.forEach.call(c,(function(t){t.removeEventListener(l,u)}))}};if(r.string(t))return i=t,a=e,s=n,o(document.body,i,a,s);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");var i,a,s,c,l,u,p,d,f}},function(t,e){e.node=function(t){return void 0!==t&&t instanceof HTMLElement&&1===t.nodeType},e.nodeList=function(t){var n=Object.prototype.toString.call(t);return void 0!==t&&("[object NodeList]"===n||"[object HTMLCollection]"===n)&&"length"in t&&(0===t.length||e.node(t[0]))},e.string=function(t){return"string"==typeof t||t instanceof String},e.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},function(t,e,n){var r=n(5);function o(t,e,n,o,i){var a=function(t,e,n,o){return function(n){n.delegateTarget=r(n.target,e),n.delegateTarget&&o.call(t,n)}}.apply(this,arguments);return t.addEventListener(n,a,i),{destroy:function(){t.removeEventListener(n,a,i)}}}t.exports=function(t,e,n,r,i){return"function"==typeof t.addEventListener?o.apply(null,arguments):"function"==typeof n?o.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,(function(t){return o(t,e,n,r,i)})))}},function(t,e){if("undefined"!=typeof Element&&!Element.prototype.matches){var n=Element.prototype;n.matches=n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector}t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}}},function(t,e,n){"use strict";n.r(e);var r=n(0),o=n.n(r),i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function a(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function s(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),this.resolveOptions(t),this.initSelection()}var c=(function(t,e,n){e&&a(t.prototype,e)}(s,[{key:"resolveOptions",value:function(t){var e=0<arguments.length&&void 0!==t?t:{};this.action=e.action,this.container=e.container,this.emitter=e.emitter,this.target=e.target,this.text=e.text,this.trigger=e.trigger,this.selectedText=""}},{key:"initSelection",value:function(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function(){var t=this,e="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return t.removeFake()},this.fakeHandler=this.container.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[e?"right":"left"]="-9999px";var n=window.pageYOffset||document.documentElement.scrollTop;this.fakeElem.style.top=n+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,this.container.appendChild(this.fakeElem),this.selectedText=o()(this.fakeElem),this.copyText()}},{key:"removeFake",value:function(){this.fakeHandler&&(this.container.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(this.container.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function(){this.selectedText=o()(this.target),this.copyText()}},{key:"copyText",value:function(){var t=void 0;try{t=document.execCommand(this.action)}catch(e){t=!1}this.handleResult(t)}},{key:"handleResult",value:function(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function(){this.trigger&&this.trigger.focus(),document.activeElement.blur(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function(){this.removeFake()}},{key:"action",set:function(t){var e=0<arguments.length&&void 0!==t?t:"copy";if(this._action=e,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function(){return this._action}},{key:"target",set:function(t){if(void 0!==t){if(!t||"object"!==(void 0===t?"undefined":i(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function(){return this._target}}]),s),l=n(1),u=n.n(l),p=n(2),d=n.n(p),f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};function h(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}var m=(function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(v,u.a),function(t,e,n){e&&h(t.prototype,e),n&&h(t,n)}(v,[{key:"resolveOptions",value:function(t){var e=0<arguments.length&&void 0!==t?t:{};this.action="function"==typeof e.action?e.action:this.defaultAction,this.target="function"==typeof e.target?e.target:this.defaultTarget,this.text="function"==typeof e.text?e.text:this.defaultText,this.container="object"===f(e.container)?e.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=d()(t,"click",(function(t){return e.onClick(t)}))}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new c({action:this.action(e),target:this.target(e),text:this.text(e),container:this.container,trigger:e,emitter:this})}},{key:"defaultAction",value:function(t){return g("action",t)}},{key:"defaultTarget",value:function(t){var e=g("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return g("text",t)}},{key:"destroy",value:function(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function(t){var e=0<arguments.length&&void 0!==t?t:["copy","cut"],n="string"==typeof e?[e]:e,r=!!document.queryCommandSupported;return n.forEach((function(t){r=r&&!!document.queryCommandSupported(t)})),r}}]),v);function v(t,e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,v);var n=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(v.__proto__||Object.getPrototypeOf(v)).call(this));return n.resolveOptions(e),n.listenClick(t),n}function g(t,e){var n="data-clipboard-"+t;if(e.hasAttribute(n))return e.getAttribute(n)}e.default=m}],t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var o in e)t.d(r,o,function(t){return e[t]}.bind(null,o));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},t.p="",t(t.s=6).default;function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var e,n}()},function(t,e,n){"use strict";var r=n(337);n.n(r).a},function(t,e,n){(e=n(171)(!1)).push([t.i,".wiping[data-v-544978ec]{background-color:var(--color-background-darker)}td[data-v-544978ec]{border-top:1px solid var(--color-border);max-width:200px;white-space:normal;vertical-align:middle;position:relative}td.more[data-v-544978ec],td.client[data-v-544978ec]{overflow:visible;position:relative;width:44px;height:44px}td.token-name[data-v-544978ec]{padding:10px 6px}td.token-name.token-rename[data-v-544978ec]{padding:0}td.token-name input[data-v-544978ec]{width:100%;margin:0}td.token-name .wiping-warning[data-v-544978ec]{color:var(--color-text-lighter)}td.more[data-v-544978ec]{padding:0 10px}td.client div[data-v-544978ec]{opacity:0.57;width:44px;height:44px}\n",""]),t.exports=e},function(t,e,n){"use strict";var r=n(338);n.n(r).a},function(t,e,n){(e=n(171)(!1)).push([t.i,"table[data-v-ce0ff7e6]{width:100%;min-height:50px;padding-top:5px;max-width:580px}table th[data-v-ce0ff7e6]{opacity:.5;padding:10px 10px 10px 0}.token-list td>a.icon-more[data-v-ce0ff7e6]{transition:opacity var(--animation-quick)}.token-list a.icon-more[data-v-ce0ff7e6]{padding:14px;display:block;width:44px;height:44px;opacity:.5}.token-list tr:hover td>a.icon[data-v-ce0ff7e6],.token-list tr td>a.icon[data-v-ce0ff7e6]:focus,.token-list tr.active td>a.icon[data-v-ce0ff7e6]{opacity:1}\n",""]),t.exports=e},function(t,e,n){"use strict";var r=n(339);n.n(r).a},function(t,e,n){(e=n(171)(!1)).push([t.i,"#app-tokens-table tr>*:nth-child(2){padding-left:6px}#app-tokens-table tr>*:nth-child(3){text-align:right}\n",""]),t.exports=e},function(t,e,n){"use strict";var r=n(340);n.n(r).a},function(t,e,n){(e=n(171)(!1)).push([t.i,".app-password-row[data-v-adfde2fe]{display:table-row}.app-password-row .icon[data-v-adfde2fe]{background-size:16px 16px;display:inline-block;position:relative;top:3px;margin-left:5px;margin-right:8px}.app-password-label[data-v-adfde2fe]{display:table-cell;padding-right:1em;text-align:right;vertical-align:middle}.monospaced[data-v-adfde2fe]{width:245px;font-family:monospace}\n",""]),t.exports=e},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(e,n,r){"use strict";r.r(n);var o=r(185),i=r(16),a=r(468),s=r.n(a),c=r(165),l=r(39),u=r.n(l),p=r(98),d=r.n(p),f=r(11),h=r(195),m={ie:/(?:MSIE|Trident|Trident\/7.0; rv)[ :](\d+)/,edge:/^Mozilla\/5\.0 \([^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/[0-9.]+ (?:Mobile Safari|Safari)\/[0-9.]+ Edge\/[0-9.]+$/,firefox:/^Mozilla\/5\.0 \([^)]*(Windows|OS X|Linux)[^)]+\) Gecko\/[0-9.]+ Firefox\/(\d+)(?:\.\d)?$/,chrome:/^Mozilla\/5\.0 \([^)]*(Windows|OS X|Linux)[^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\) Chrome\/(\d+)[0-9.]+ (?:Mobile Safari|Safari)\/[0-9.]+$/,safari:/^Mozilla\/5\.0 \([^)]*(Windows|OS X)[^)]+\) AppleWebKit\/[0-9.]+ \(KHTML, like Gecko\)(?: Version\/([0-9]+)[0-9.]+)? Safari\/[0-9.A-Z]+$/,androidChrome:/Android.*(?:; (.*) Build\/).*Chrome\/(\d+)[0-9.]+/,iphone:/ *CPU +iPhone +OS +([0-9]+)_(?:[0-9_])+ +like +Mac +OS +X */,ipad:/\(iPad; *CPU +OS +([0-9]+)_(?:[0-9_])+ +like +Mac +OS +X */,iosClient:/^Mozilla\/5\.0 \(iOS\) (ownCloud|Nextcloud)-iOS.*$/,androidClient:/^Mozilla\/5\.0 \(Android\) ownCloud-android.*$/,iosTalkClient:/^Mozilla\/5\.0 \(iOS\) Nextcloud-Talk.*$/,androidTalkClient:/^Mozilla\/5\.0 \(Android\) Nextcloud-Talk.*$/,davDroid:/DAV(droid|x5)\/([0-9.]+)/,webPirate:/(Sailfish).*WebPirate\/(\d+)/,sailfishBrowser:/(Sailfish).*SailfishBrowser\/(\d+)/},v={ie:t("setting","Internet Explorer"),edge:t("setting","Edge"),firefox:t("setting","Firefox"),chrome:t("setting","Google Chrome"),safari:t("setting","Safari"),androidChrome:t("setting","Google Chrome for Android"),iphone:t("setting","iPhone"),ipad:t("setting","iPad"),iosClient:t("setting","Nextcloud iOS app"),androidClient:t("setting","Nextcloud Android app"),iosTalkClient:t("setting","Nextcloud Talk for iOS"),androidTalkClient:t("setting","Nextcloud Talk for Android"),davDroid:"DAVdroid",webPirate:"WebPirate",sailfishBrowser:"SailfishBrowser"},g={ie:"icon-desktop",edge:"icon-desktop",firefox:"icon-desktop",chrome:"icon-desktop",safari:"icon-desktop",androidChrome:"icon-phone",iphone:"icon-phone",ipad:"icon-tablet",iosClient:"icon-phone",androidClient:"icon-phone",iosTalkClient:"icon-phone",androidTalkClient:"icon-phone",davDroid:"icon-phone",webPirate:"icon-link",sailfishBrowser:"icon-link"},b={name:"AuthToken",components:{Actions:h.Actions,ActionButton:h.ActionButton,ActionCheckbox:h.ActionCheckbox},props:{token:{type:Object,required:!0}},data:function(){return{showMore:this.token.canScope||this.token.canDelete,renaming:!1,newName:"",actionOpen:!1}},computed:{lastActivityRelative:function(){return OC.Util.relativeModifiedDate(1e3*this.token.lastActivity)},lastActivity:function(){return OC.Util.formatDate(1e3*this.token.lastActivity,"LLL")},iconName:function(){var e=this.token.name.match(/Mozilla\/5\.0 \((\w+)\) (?:mirall|csyncoC)\/(\d+\.\d+\.\d+)/),n="";e&&(this.token.name=t("settings","Sync client - {os}",{os:e[1],version:e[2]}),n="icon-desktop");var r=this.token.name,o=this.token.name;for(var i in m){var a=r.match(m[i]);a&&(o=a[2]&&a[1]?v[i]+" "+a[2]+" - "+a[1]:a[1]?v[i]+" "+a[1]:v[i],n=g[i])}return this.token.current&&(o=t("settings","This session")),{icon:n,name:o}},wiping:function(){return 2===this.token.type}},methods:{startRename:function(){var t=this;this.actionOpen=!1,this.newName=this.token.name,this.renaming=!0,this.$nextTick((function(){t.$refs.input.select()}))},cancelRename:function(){this.renaming=!1},revoke:function(){this.actionOpen=!1,this.$emit("delete",this.token)},rename:function(){this.renaming=!1,this.$emit("rename",this.token,this.newName)},wipe:function(){this.actionOpen=!1,this.$emit("wipe",this.token)}}},A=(r(477),r(41)),y={name:"AuthTokenList",components:{AuthToken:Object(A.a)(b,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("tr",{class:t.wiping,attrs:{"data-id":t.token.id}},[n("td",{staticClass:"client"},[n("div",{class:t.iconName.icon})]),t._v(" "),n("td",{staticClass:"token-name"},[t.token.canRename&&t.renaming?n("input",{directives:[{name:"model",rawName:"v-model",value:t.newName,expression:"newName"}],ref:"input",attrs:{type:"text"},domProps:{value:t.newName},on:{keyup:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.rename(e)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.cancelRename(e)}],blur:t.cancelRename,input:function(e){e.target.composing||(t.newName=e.target.value)}}}):n("span",[t._v(t._s(t.iconName.name))]),t._v(" "),t.wiping?n("span",{staticClass:"wiping-warning"},[t._v("("+t._s(t.t("settings","Marked for remote wipe"))+")")]):t._e()]),t._v(" "),n("td",[n("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.lastActivity,expression:"lastActivity"}],staticClass:"last-activity"},[t._v(t._s(t.lastActivityRelative))])]),t._v(" "),n("td",{staticClass:"more"},[t.token.current?t._e():n("Actions",{directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:{content:t.t("settings","Device settings"),container:"body"},expression:"{\n\t\t\t\tcontent: t('settings', 'Device settings'),\n\t\t\t\tcontainer: 'body'\n\t\t\t}",modifiers:{auto:!0}}],attrs:{open:t.actionOpen},on:{"update:open":function(e){t.actionOpen=e}}},[1===t.token.type?n("ActionCheckbox",{attrs:{checked:t.token.scope.filesystem},on:{change:function(e){return e.stopPropagation(),e.preventDefault(),t.$emit("toggleScope",t.token,"filesystem",!t.token.scope.filesystem)}}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Allow filesystem access"))+"\n\t\t\t")]):t._e(),t._v(" "),t.token.canRename?n("ActionButton",{attrs:{icon:"icon-rename"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.startRename(e)}}},[t._v("\n\t\t\t\t"+t._s(t.t("settings","Rename"))+"\n\t\t\t")]):t._e(),t._v(" "),t.token.canDelete?[2!==t.token.type?[n("ActionButton",{attrs:{icon:"icon-delete"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.revoke(e)}}},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("settings","Revoke"))+"\n\t\t\t\t\t")]),t._v(" "),n("ActionButton",{attrs:{icon:"icon-delete"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.wipe(e)}}},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("settings","Wipe device"))+"\n\t\t\t\t\t")])]:2===t.token.type?n("ActionButton",{attrs:{icon:"icon-delete",title:t.t("settings","Revoke")},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.revoke(e)}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("settings","Revoking this token might prevent the wiping of your device if it hasn't started the wipe yet."))+"\n\t\t\t\t")]):t._e()]:t._e()],2)],1)])}),[],!1,null,"544978ec",null).exports},props:{tokens:{type:Array,required:!0}},computed:{sortedTokens:function(){return this.tokens.slice().sort((function(t,e){var n=parseInt(t.lastActivity,10);return parseInt(e.lastActivity,10)-n}))}},methods:{toggleScope:function(t,e,n){this.$emit("toggleScope",t,e,n)},rename:function(t,e){this.$emit("rename",t,e)},onDelete:function(t){this.$emit("delete",t)},onWipe:function(t){this.$emit("wipe",t)}}},x=(r(479),r(481),Object(A.a)(y,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("table",{attrs:{id:"app-tokens-table"}},[t.tokens.length?n("thead",[n("tr",[n("th"),t._v(" "),n("th",[t._v(t._s(t.t("settings","Device")))]),t._v(" "),n("th",[t._v(t._s(t.t("settings","Last activity")))]),t._v(" "),n("th")])]):t._e(),t._v(" "),n("tbody",{staticClass:"token-list"},t._l(t.sortedTokens,(function(e){return n("AuthToken",{key:e.id,attrs:{token:e},on:{toggleScope:t.toggleScope,rename:t.rename,delete:t.onDelete,wipe:t.onWipe}})})),1)])}),[],!1,null,"ce0ff7e6",null).exports),w=r(469);function _(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function k(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?_(Object(n),!0).forEach((function(e){C(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):_(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function C(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var T={name:"AuthTokenSetupDialogue",components:{QR:r.n(w).a},props:{add:{type:Function,required:!0}},data:function(){return{adding:!1,loading:!1,deviceName:"",appPassword:"",loginName:"",passwordCopied:!1,showQR:!1,qrUrl:"",hoveringCopyButton:!1}},computed:{copyTooltipOptions:function(){var e={hideOnTargetClick:!1,trigger:"manual"};return this.passwordCopied?k(k({},e),{},{content:t("core","Copied!"),show:!0}):k(k({},e),{},{content:t("core","Copy"),show:this.hoveringCopyButton})}},methods:{selectInput:function(t){t.currentTarget.select()},submit:function(){var e=this;d()().then((function(){return e.loading=!0,e.add(e.deviceName)})).then((function(t){e.adding=!0,e.loginName=t.loginName,e.appPassword=t.token;var n=window.location.protocol+"//"+window.location.host+Object(f.getRootUrl)();e.qrUrl="nc://login/user:".concat(t.loginName,"&password:").concat(t.token,"&server:").concat(n),e.$nextTick((function(){e.$refs.appPassword.select()}))})).catch((function(n){console.error("could not create a new app password",n),OC.Notification.showTemporary(t("core","Error while creating device token")),e.reset()}))},onCopyPassword:function(){var t=this;this.passwordCopied=!0,this.$refs.clipboardButton.blur(),setTimeout((function(){t.passwordCopied=!1}),3e3)},onCopyPasswordFailed:function(){OC.Notification.showTemporary(t("core","Could not copy app password. Please copy it manually."))},reset:function(){this.adding=!1,this.loading=!1,this.showQR=!1,this.qrUrl="",this.deviceName="",this.appPassword="",this.loginName=""}}},E=(r(483),Object(A.a)(T,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.adding?n("div",[t._v("\n\t"+t._s(t.t("settings","Use the credentials below to configure your app or device."))+"\n\t"+t._s(t.t("settings","For security reasons this password will only be shown once."))+"\n\t"),n("div",{staticClass:"app-password-row"},[n("span",{staticClass:"app-password-label"},[t._v(t._s(t.t("settings","Username")))]),t._v(" "),n("input",{staticClass:"monospaced",attrs:{type:"text",readonly:"readonly"},domProps:{value:t.loginName},on:{focus:t.selectInput}})]),t._v(" "),n("div",{staticClass:"app-password-row"},[n("span",{staticClass:"app-password-label"},[t._v(t._s(t.t("settings","Password")))]),t._v(" "),n("input",{ref:"appPassword",staticClass:"monospaced",attrs:{type:"text",readonly:"readonly"},domProps:{value:t.appPassword},on:{focus:t.selectInput}}),t._v(" "),n("a",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.copyTooltipOptions,expression:"copyTooltipOptions"},{name:"clipboard",rawName:"v-clipboard:copy",value:t.appPassword,expression:"appPassword",arg:"copy"},{name:"clipboard",rawName:"v-clipboard:success",value:t.onCopyPassword,expression:"onCopyPassword",arg:"success"},{name:"clipboard",rawName:"v-clipboard:error",value:t.onCopyPasswordFailed,expression:"onCopyPasswordFailed",arg:"error"}],ref:"clipboardButton",staticClass:"icon icon-clippy",on:{mouseover:function(e){t.hoveringCopyButton=!0},mouseleave:function(e){t.hoveringCopyButton=!1}}}),t._v(" "),n("button",{staticClass:"button",on:{click:t.reset}},[t._v("\n\t\t\t"+t._s(t.t("settings","Done"))+"\n\t\t")])]),t._v(" "),n("div",{staticClass:"app-password-row"},[n("span",{staticClass:"app-password-label"}),t._v(" "),t.showQR?n("QR",{attrs:{value:t.qrUrl}}):n("a",{on:{click:function(e){t.showQR=!0}}},[t._v("\n\t\t\t"+t._s(t.t("settings","Show QR code for mobile apps"))+"\n\t\t")])],1)]):n("div",[n("input",{directives:[{name:"model",rawName:"v-model",value:t.deviceName,expression:"deviceName"}],attrs:{type:"text",disabled:t.loading,placeholder:t.t("settings","App name")},domProps:{value:t.deviceName},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.submit(e)},input:function(e){e.target.composing||(t.deviceName=e.target.value)}}}),t._v(" "),n("button",{staticClass:"button",attrs:{disabled:t.loading},on:{click:t.submit}},[t._v("\n\t\t"+t._s(t.t("settings","Create new app password"))+"\n\t")])])}),[],!1,null,"adfde2fe",null).exports);function S(t,e,n,r,o,i,a){try{var s=t[i](a),c=s.value}catch(t){return void n(t)}s.done?e(c):Promise.resolve(c).then(r,o)}var M=function(t){return function(e){return t(e),e}},O={name:"AuthTokenSection",components:{AuthTokenSetupDialogue:E,AuthTokenList:x},props:{tokens:{type:Array,required:!0},canCreateToken:{type:Boolean,required:!0}},data:function(){return{baseUrl:Object(f.generateUrl)("/settings/personal/authtokens")}},methods:{addNewToken:function(e){var n=this;console.debug("creating a new app token",e);var r={name:e};return u.a.post(this.baseUrl,r).then((function(t){return t.data})).then(M((function(){return console.debug("app token created")}))).then(M((function(t){return n.tokens.push(t.deviceToken)}))).catch((function(e){throw console.error.bind("could not create app password",e),OC.Notification.showTemporary(t("core","Error while creating device token")),e}))},toggleTokenScope:function(e,n,r){console.debug("updating app token scope",e.id,n,r);var o=e.scope[n];return e.scope[n]=r,this.updateToken(e).then(M((function(){return console.debug("app token scope updated")}))).catch((function(r){throw console.error.bind("could not update app token scope",r),OC.Notification.showTemporary(t("core","Error while updating device token scope")),e.scope[n]=o,r}))},rename:function(e,n){console.debug("renaming app token",e.id,e.name,n);var r=e.name;return e.name=n,this.updateToken(e).then(M((function(){return console.debug("app token name updated")}))).catch((function(n){console.error.bind("could not update app token name",n),OC.Notification.showTemporary(t("core","Error while updating device token name")),e.name=r}))},updateToken:function(t){return u.a.put(this.baseUrl+"/"+t.id,t).then((function(t){return t.data}))},deleteToken:function(e){var n=this;return console.debug("deleting app token",e),this.tokens=this.tokens.filter((function(t){return t!==e})),u.a.delete(this.baseUrl+"/"+e.id).then((function(t){return t.data})).then(M((function(){return console.debug("app token deleted")}))).catch((function(r){console.error.bind("could not delete app token",r),OC.Notification.showTemporary(t("core","Error while deleting the token")),n.tokens.push(e)}))},wipeToken:function(e){var n,r=this;return(n=regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return console.debug("wiping app token",e),n.prev=1,n.next=4,d()();case 4:return n.next=6,new Promise((function(e){OC.dialogs.confirm(t("core","Do you really want to wipe your data from this device?"),t("core","Confirm wipe"),e,!0)}));case 6:if(n.sent){n.next=9;break}return console.debug("wipe aborted by user"),n.abrupt("return");case 9:return n.next=11,u.a.post(r.baseUrl+"/wipe/"+e.id);case 11:console.debug("app token marked for wipe"),e.type=2,n.next=19;break;case 15:n.prev=15,n.t0=n.catch(1),console.error("could not wipe app token",n.t0),OC.Notification.showTemporary(t("core","Error while wiping the device with the token"));case 19:case"end":return n.stop()}}),n,null,[[1,15]])})),function(){var t=this,e=arguments;return new Promise((function(r,o){var i=n.apply(t,e);function a(t){S(i,r,o,a,s,"next",t)}function s(t){S(i,r,o,a,s,"throw",t)}a(void 0)}))})()}}},I=Object(A.a)(O,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"section",attrs:{id:"security"}},[n("h2",[t._v(t._s(t.t("settings","Devices & sessions",{},void 0,{sanitize:!1})))]),t._v(" "),n("p",{staticClass:"settings-hint hidden-when-empty"},[t._v("\n\t\t"+t._s(t.t("settings","Web, desktop and mobile clients currently logged in to your account."))+"\n\t")]),t._v(" "),n("AuthTokenList",{attrs:{tokens:t.tokens},on:{toggleScope:t.toggleTokenScope,rename:t.rename,delete:t.deleteToken,wipe:t.wipeToken}}),t._v(" "),t.canCreateToken?n("AuthTokenSetupDialogue",{attrs:{add:t.addNewToken}}):t._e()],1)}),[],!1,null,"1fba4983",null).exports; /* * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at> * @@ -805,4 +805,4 @@ t.exports=function(){return n={},t.m=e=[function(t,e){t.exports=function(t){var * along with this program. If not, see <http://www.gnu.org/licenses/>. */ r.nc=btoa(OC.requestToken),i.default.use(s.a),i.default.use(c.default,{defaultHtml:!1}),i.default.prototype.t=t,new(i.default.extend(I))({propsData:{tokens:Object(o.loadState)("settings","app_tokens"),canCreateToken:Object(o.loadState)("settings","can_create_app_token")}}).$mount("#security-authtokens")}]); -//# sourceMappingURL=vue-settings-personal-security.js.map?v=4c8c4612bc9526a856a1
\ No newline at end of file +//# sourceMappingURL=vue-settings-personal-security.js.map?v=1804b2658567631217dd
\ No newline at end of file |