+
diff --git a/apps/settings/tests/Settings/Admin/ServerTest.php b/apps/settings/tests/Settings/Admin/ServerTest.php
index b30ed863f89..045dc60bf98 100644
--- a/apps/settings/tests/Settings/Admin/ServerTest.php
+++ b/apps/settings/tests/Settings/Admin/ServerTest.php
@@ -92,6 +92,10 @@ class ServerTest extends TestCase {
->method('getAppValue')
->with('core', 'cronErrors')
->willReturn('');
+ $this->profileManager
+ ->expects($this->exactly(2))
+ ->method('isProfileEnabled')
+ ->willReturn(true);
$expected = new TemplateResponse(
'settings',
'settings/admin/server',
diff --git a/apps/user_status/lib/Listener/BeforeTemplateRenderedListener.php b/apps/user_status/lib/Listener/BeforeTemplateRenderedListener.php
index 6fe2f728de0..daf7265d988 100644
--- a/apps/user_status/lib/Listener/BeforeTemplateRenderedListener.php
+++ b/apps/user_status/lib/Listener/BeforeTemplateRenderedListener.php
@@ -27,9 +27,9 @@ declare(strict_types=1);
namespace OCA\UserStatus\Listener;
+use OC\Profile\ProfileManager;
use OCA\UserStatus\AppInfo\Application;
use OCA\UserStatus\Service\JSDataService;
-use OCP\Accounts\IAccountManager;
use OCP\AppFramework\Http\Events\BeforeTemplateRenderedEvent;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\EventDispatcher\Event;
@@ -38,10 +38,9 @@ use OCP\IInitialStateService;
use OCP\IUserSession;
class BeforeTemplateRenderedListener implements IEventListener {
- use \OC\Profile\TProfileHelper;
- /** @var IAccountManager */
- private $accountManager;
+ /** @var ProfileManager */
+ private $profileManager;
/** @var IUserSession */
private $userSession;
@@ -55,18 +54,18 @@ class BeforeTemplateRenderedListener implements IEventListener {
/**
* BeforeTemplateRenderedListener constructor.
*
- * @param IAccountManager $accountManager
+ * @param ProfileManager $profileManager
* @param IUserSession $userSession
* @param IInitialStateService $initialState
* @param JSDataService $jsDataService
*/
public function __construct(
- IAccountManager $accountManager,
+ ProfileManager $profileManager,
IUserSession $userSession,
IInitialStateService $initialState,
JSDataService $jsDataService
) {
- $this->accountManager = $accountManager;
+ $this->profileManager = $profileManager;
$this->userSession = $userSession;
$this->initialState = $initialState;
$this->jsDataService = $jsDataService;
@@ -80,7 +79,6 @@ class BeforeTemplateRenderedListener implements IEventListener {
if ($user === null) {
return;
}
- $account = $this->accountManager->getAccount($user);
if (!($event instanceof BeforeTemplateRenderedEvent)) {
// Unrelated
@@ -95,8 +93,8 @@ class BeforeTemplateRenderedListener implements IEventListener {
return $this->jsDataService;
});
- $this->initialState->provideLazyInitialState(Application::APP_ID, 'profileEnabled', function () use ($account) {
- return ['profileEnabled' => $this->isProfileEnabled($account)];
+ $this->initialState->provideLazyInitialState(Application::APP_ID, 'profileEnabled', function () use ($user) {
+ return ['profileEnabled' => $this->profileManager->isProfileEnabled($user)];
});
\OCP\Util::addScript('user_status', 'menu');
diff --git a/config/config.sample.php b/config/config.sample.php
index e66276e8b8d..e407e5cb65e 100644
--- a/config/config.sample.php
+++ b/config/config.sample.php
@@ -2097,4 +2097,11 @@ $CONFIG = [
* Limit diagnostics event logging to events longer than the configured threshold in ms
*/
'diagnostics.logging.threshold' => 0,
+
+/**
+ * Enable profile globally
+ *
+ * Defaults to ``true``
+ */
+'profile.enabled' => true,
];
diff --git a/core/Controller/ProfilePageController.php b/core/Controller/ProfilePageController.php
index 8b1ecb6c98e..5a1c8a68e6b 100644
--- a/core/Controller/ProfilePageController.php
+++ b/core/Controller/ProfilePageController.php
@@ -26,13 +26,10 @@ declare(strict_types=1);
namespace OC\Core\Controller;
-use OC\KnownUser\KnownUserService;
use OC\Profile\ProfileManager;
-use OCP\Accounts\IAccountManager;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\AppFramework\Services\IInitialState;
-use OCP\IGroupManager;
use OCP\IRequest;
use OCP\IUser;
use OCP\IUserManager;
@@ -41,26 +38,16 @@ use OCP\Share\IManager as IShareManager;
use OCP\UserStatus\IManager as IUserStatusManager;
class ProfilePageController extends Controller {
- use \OC\Profile\TProfileHelper;
/** @var IInitialState */
private $initialStateService;
- /** @var IAccountManager */
- private $accountManager;
-
/** @var ProfileManager */
private $profileManager;
/** @var IShareManager */
private $shareManager;
- /** @var IGroupManager */
- private $groupManager;
-
- /** @var KnownUserService */
- private $knownUserService;
-
/** @var IUserManager */
private $userManager;
@@ -74,22 +61,16 @@ class ProfilePageController extends Controller {
$appName,
IRequest $request,
IInitialState $initialStateService,
- IAccountManager $accountManager,
ProfileManager $profileManager,
IShareManager $shareManager,
- IGroupManager $groupManager,
- KnownUserService $knownUserService,
IUserManager $userManager,
IUserSession $userSession,
IUserStatusManager $userStatusManager
) {
parent::__construct($appName, $request);
$this->initialStateService = $initialStateService;
- $this->accountManager = $accountManager;
$this->profileManager = $profileManager;
$this->shareManager = $shareManager;
- $this->groupManager = $groupManager;
- $this->knownUserService = $knownUserService;
$this->userManager = $userManager;
$this->userSession = $userSession;
$this->userStatusManager = $userStatusManager;
@@ -114,9 +95,8 @@ class ProfilePageController extends Controller {
return $profileNotFoundTemplate;
}
$visitingUser = $this->userSession->getUser();
- $targetAccount = $this->accountManager->getAccount($targetUser);
- if (!$this->isProfileEnabled($targetAccount)) {
+ if (!$this->profileManager->isProfileEnabled($targetUser)) {
return $profileNotFoundTemplate;
}
diff --git a/dist/settings-vue-settings-personal-info.js b/dist/settings-vue-settings-personal-info.js
index 67d060f6086..368d75f3ce9 100644
--- a/dist/settings-vue-settings-personal-info.js
+++ b/dist/settings-vue-settings-personal-info.js
@@ -1,3 +1,3 @@
/*! For license information please see settings-vue-settings-personal-info.js.LICENSE.txt */
-!function(){"use strict";var n,e={18115:function(n,e,a){var r,i,o,s=a(20144),c=a(22200),l=a(9944),d=(a(73317),(0,a(17499).getLoggerBuilder)().setApp("settings").detectUser().build()),u=a(16453),p=a(26932),A=a(74854),m=a(20296),f=a.n(m);function h(n,t,e){return t in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}var v=Object.freeze({ADDRESS:"address",AVATAR:"avatar",BIOGRAPHY:"biography",DISPLAYNAME:"displayname",EMAIL_COLLECTION:"additional_mail",EMAIL:"email",HEADLINE:"headline",NOTIFICATION_EMAIL:"notify_email",ORGANISATION:"organisation",PHONE:"phone",PROFILE_ENABLED:"profile_enabled",ROLE:"role",TWITTER:"twitter",WEBSITE:"website"}),g=Object.freeze({ADDRESS:(0,l.translate)("settings","Address"),AVATAR:(0,l.translate)("settings","Avatar"),BIOGRAPHY:(0,l.translate)("settings","About"),DISPLAYNAME:(0,l.translate)("settings","Full name"),EMAIL_COLLECTION:(0,l.translate)("settings","Additional email"),EMAIL:(0,l.translate)("settings","Email"),HEADLINE:(0,l.translate)("settings","Headline"),ORGANISATION:(0,l.translate)("settings","Organisation"),PHONE:(0,l.translate)("settings","Phone number"),PROFILE_ENABLED:(0,l.translate)("settings","Profile"),ROLE:(0,l.translate)("settings","Role"),TWITTER:(0,l.translate)("settings","Twitter"),WEBSITE:(0,l.translate)("settings","Website")}),C=Object.freeze({PROFILE_VISIBILITY:(0,l.translate)("settings","Profile visibility")}),b=Object.freeze((h(r={},g.ADDRESS,v.ADDRESS),h(r,g.AVATAR,v.AVATAR),h(r,g.BIOGRAPHY,v.BIOGRAPHY),h(r,g.DISPLAYNAME,v.DISPLAYNAME),h(r,g.EMAIL_COLLECTION,v.EMAIL_COLLECTION),h(r,g.EMAIL,v.EMAIL),h(r,g.HEADLINE,v.HEADLINE),h(r,g.ORGANISATION,v.ORGANISATION),h(r,g.PHONE,v.PHONE),h(r,g.PROFILE_ENABLED,v.PROFILE_ENABLED),h(r,g.ROLE,v.ROLE),h(r,g.TWITTER,v.TWITTER),h(r,g.WEBSITE,v.WEBSITE),r)),y=Object.freeze({LANGUAGE:"language"}),x=Object.freeze({LANGUAGE:(0,l.translate)("settings","Language")}),E=Object.freeze({PRIVATE:"v2-private",LOCAL:"v2-local",FEDERATED:"v2-federated",PUBLISHED:"v2-published"}),w=Object.freeze((h(i={},g.ADDRESS,[E.LOCAL,E.PRIVATE]),h(i,g.AVATAR,[E.LOCAL,E.PRIVATE]),h(i,g.BIOGRAPHY,[E.LOCAL,E.PRIVATE]),h(i,g.DISPLAYNAME,[E.LOCAL]),h(i,g.EMAIL_COLLECTION,[E.LOCAL]),h(i,g.EMAIL,[E.LOCAL]),h(i,g.HEADLINE,[E.LOCAL,E.PRIVATE]),h(i,g.ORGANISATION,[E.LOCAL,E.PRIVATE]),h(i,g.PHONE,[E.LOCAL,E.PRIVATE]),h(i,g.PROFILE_ENABLED,[E.LOCAL,E.PRIVATE]),h(i,g.ROLE,[E.LOCAL,E.PRIVATE]),h(i,g.TWITTER,[E.LOCAL,E.PRIVATE]),h(i,g.WEBSITE,[E.LOCAL,E.PRIVATE]),i)),k=Object.freeze([g.BIOGRAPHY,g.HEADLINE,g.ORGANISATION,g.ROLE]),I="Scope",_=Object.freeze((h(o={},E.PRIVATE,{name:E.PRIVATE,displayName:(0,l.translate)("settings","Private"),tooltip:(0,l.translate)("settings","Only visible to people matched via phone number integration through Talk on mobile"),tooltipDisabled:(0,l.translate)("settings","Not available as this property is required for core functionality including file sharing and calendar invitations"),iconClass:"icon-phone"}),h(o,E.LOCAL,{name:E.LOCAL,displayName:(0,l.translate)("settings","Local"),tooltip:(0,l.translate)("settings","Only visible to people on this instance and guests"),iconClass:"icon-password"}),h(o,E.FEDERATED,{name:E.FEDERATED,displayName:(0,l.translate)("settings","Federated"),tooltip:(0,l.translate)("settings","Only synchronize to trusted servers"),tooltipDisabled:(0,l.translate)("settings","Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions"),iconClass:"icon-contacts-dark"}),h(o,E.PUBLISHED,{name:E.PUBLISHED,displayName:(0,l.translate)("settings","Published"),tooltip:(0,l.translate)("settings","Synchronize to trusted servers and the global and public address book"),tooltipDisabled:(0,l.translate)("settings","Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions"),iconClass:"icon-link"}),o)),P=E.LOCAL,S=Object.freeze({NOT_VERIFIED:0,VERIFICATION_IN_PROGRESS:1,VERIFIED:2}),B=/^(?!(?:(?:\x22?\x5C[\x00-\x7E]\x22?)|(?:\x22?[^\x5C\x22]\x22?)){255,})(?!(?:(?:\x22?\x5C[\x00-\x7E]\x22?)|(?:\x22?[^\x5C\x22]\x22?)){65,}@)(?:(?:[\x21\x23-\x27\x2A\x2B\x2D\x2F-\x39\x3D\x3F\x5E-\x7E]+)|(?:\x22(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]|(?:\x5C[\x00-\x7F]))*\x22))(?:\.(?:(?:[\x21\x23-\x27\x2A\x2B\x2D\x2F-\x39\x3D\x3F\x5E-\x7E]+)|(?:\x22(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]|(?:\x5C[\x00-\x7F]))*\x22)))*@(?:(?:(?!.*[^.]{64,})(?:(?:(?:xn--)?[a-z0-9]+(?:-+[a-z0-9]+)*\.){1,126}){1,}(?:(?:[a-z][a-z0-9]*)|(?:(?:xn--)[a-z0-9]+))(?:-+[a-z0-9]+)*)|(?:\[(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){7})|(?:(?!(?:.*[a-f0-9][:\]]){7,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?)))|(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){5}:)|(?:(?!(?:.*[a-f0-9]:){5,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3}:)?)))?(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))(?:\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))){3}))\]))$/i,R=a(4820),O=a(79753),D=a(10128),L=a.n(D);function N(n,t,e,a,r,i,o){try{var s=n[i](o),c=s.value}catch(n){return void e(n)}s.done?t(c):Promise.resolve(c).then(a,r)}function Z(n){return function(){var t=this,e=arguments;return new Promise((function(a,r){var i=n.apply(t,e);function o(n){N(i,a,r,o,s,"next",n)}function s(n){N(i,a,r,o,s,"throw",n)}o(void 0)}))}}var T=function(){var n=Z(regeneratorRuntime.mark((function n(t,e){var a,r,i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return"boolean"==typeof e&&(e=e?"1":"0"),a=(0,c.getCurrentUser)().uid,r=(0,O.generateOcsUrl)("cloud/users/{userId}",{userId:a}),n.next=5,L()();case 5:return n.next=7,R.default.put(r,{key:t,value:e});case 7:return i=n.sent,n.abrupt("return",i.data);case 9:case"end":return n.stop()}}),n)})));return function(t,e){return n.apply(this,arguments)}}(),H=function(){var n=Z(regeneratorRuntime.mark((function n(t,e){var a,r,i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return a=(0,c.getCurrentUser)().uid,r=(0,O.generateOcsUrl)("cloud/users/{userId}",{userId:a}),n.next=4,L()();case 4:return n.next=6,R.default.put(r,{key:"".concat(t).concat(I),value:e});case 6:return i=n.sent,n.abrupt("return",i.data);case 8:case"end":return n.stop()}}),n)})));return function(t,e){return n.apply(this,arguments)}}();function U(n){return""!==n}function $(n){return"string"==typeof n&&B.test(n)&&"\n"!==n.slice(-1)&&n.length<=320&&encodeURIComponent(n).replace(/%../g,"x").length<=320}function M(n,t,e,a,r,i,o){try{var s=n[i](o),c=s.value}catch(n){return void e(n)}s.done?t(c):Promise.resolve(c).then(a,r)}function F(n){return function(){var t=this,e=arguments;return new Promise((function(a,r){var i=n.apply(t,e);function o(n){M(i,a,r,o,s,"next",n)}function s(n){M(i,a,r,o,s,"throw",n)}o(void 0)}))}}var j={name:"DisplayName",props:{displayName:{type:String,required:!0},scope:{type:String,required:!0}},data:function(){return{initialDisplayName:this.displayName,localScope:this.scope,showCheckmarkIcon:!1,showErrorIcon:!1}},methods:{onDisplayNameChange:function(n){this.$emit("update:display-name",n.target.value),this.debounceDisplayNameChange(n.target.value.trim())},debounceDisplayNameChange:f()(function(){var n=F(regeneratorRuntime.mark((function n(t){return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(!U(t)){n.next=3;break}return n.next=3,this.updatePrimaryDisplayName(t);case 3:case"end":return n.stop()}}),n,this)})));return function(t){return n.apply(this,arguments)}}(),500),updatePrimaryDisplayName:function(n){var e=this;return F(regeneratorRuntime.mark((function a(){var r,i,o;return regeneratorRuntime.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,a.next=3,T(v.DISPLAYNAME,n);case 3:o=a.sent,e.handleResponse({displayName:n,status:null===(r=o.ocs)||void 0===r||null===(i=r.meta)||void 0===i?void 0:i.status}),a.next=10;break;case 7:a.prev=7,a.t0=a.catch(0),e.handleResponse({errorMessage:t("settings","Unable to update full name"),error:a.t0});case 10:case"end":return a.stop()}}),a,null,[[0,7]])})))()},handleResponse:function(n){var t=this,e=n.displayName,a=n.status,r=n.errorMessage,i=n.error;"ok"===a?(this.initialDisplayName=e,(0,A.emit)("settings:display-name:updated",e),this.showCheckmarkIcon=!0,setTimeout((function(){t.showCheckmarkIcon=!1}),2e3)):((0,p.x2)(r),this.logger.error(r,i),this.showErrorIcon=!0,setTimeout((function(){t.showErrorIcon=!1}),2e3))},onScopeChange:function(n){this.$emit("update:scope",n)}}},q=j,G=a(93379),V=a.n(G),W=a(7795),Y=a.n(W),z=a(90569),K=a.n(z),J=a(3565),Q=a.n(J),X=a(19216),nn=a.n(X),tn=a(44589),en=a.n(tn),an=a(74539),rn={};rn.styleTagTransform=en(),rn.setAttributes=Q(),rn.insert=K().bind(null,"head"),rn.domAPI=Y(),rn.insertStyleElement=nn(),V()(an.Z,rn),an.Z&&an.Z.locals&&an.Z.locals;var on=a(51900),sn=(0,on.Z)(q,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("div",{staticClass:"displayname"},[e("input",{attrs:{id:"displayname",type:"text",placeholder:n.t("settings","Your full name"),autocapitalize:"none",autocomplete:"on",autocorrect:"off"},domProps:{value:n.displayName},on:{input:n.onDisplayNameChange}}),n._v(" "),e("div",{staticClass:"displayname__actions-container"},[e("transition",{attrs:{name:"fade"}},[n.showCheckmarkIcon?e("span",{staticClass:"icon-checkmark"}):n.showErrorIcon?e("span",{staticClass:"icon-error"}):n._e()])],1)])}),[],!1,null,"3418897a",null).exports,cn={name:"AddButton",props:{disabled:{type:Boolean,default:!0}}},ln=a(49377),dn={};dn.styleTagTransform=en(),dn.setAttributes=Q(),dn.insert=K().bind(null,"head"),dn.domAPI=Y(),dn.insertStyleElement=nn(),V()(ln.Z,dn),ln.Z&&ln.Z.locals&&ln.Z.locals;var un=(0,on.Z)(cn,(function(){var n=this,t=n.$createElement,e=n._self._c||t;return e("button",n._g({attrs:{disabled:n.disabled}},n.$listeners),[e("span",{staticClass:"icon icon-add"}),n._v("\n\t"+n._s(n.t("settings","Add"))+"\n")])}),[],!1,null,"6ca08b3a",null).exports,pn=a(79440),An=a.n(pn),mn=a(56286),fn=a.n(mn),hn={name:"FederationControlAction",components:{ActionButton:fn()},props:{activeScope:{type:String,required:!0},displayName:{type:String,required:!0},handleScopeChange:{type:Function,default:function(){}},iconClass:{type:String,required:!0},isSupportedScope:{type:Boolean,required:!0},name:{type:String,required:!0},tooltipDisabled:{type:String,default:""},tooltip:{type:String,required:!0}},methods:{updateScope:function(){this.handleScopeChange(this.name)}}},vn=a(12461),gn={};gn.styleTagTransform=en(),gn.setAttributes=Q(),gn.insert=K().bind(null,"head"),gn.domAPI=Y(),gn.insertStyleElement=nn(),V()(vn.Z,gn),vn.Z&&vn.Z.locals&&vn.Z.locals;var Cn=(0,on.Z)(hn,(function(){var n=this,t=n.$createElement;return(n._self._c||t)("ActionButton",{staticClass:"federation-actions__btn",class:{"federation-actions__btn--active":n.activeScope===n.name},attrs:{"aria-label":n.isSupportedScope?n.tooltip:n.tooltipDisabled,"close-after-click":!0,disabled:!n.isSupportedScope,icon:n.iconClass,title:n.displayName},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),n.updateScope.apply(null,arguments)}}},[n._v("\n\t"+n._s(n.isSupportedScope?n.tooltip:n.tooltipDisabled)+"\n")])}),[],!1,null,"d2e8b360",null),bn=Cn.exports;function yn(n,t,e,a,r,i,o){try{var s=n[i](o),c=s.value}catch(n){return void e(n)}s.done?t(c):Promise.resolve(c).then(a,r)}function xn(n){return function(){var t=this,e=arguments;return new Promise((function(a,r){var i=n.apply(t,e);function o(n){yn(i,a,r,o,s,"next",n)}function s(n){yn(i,a,r,o,s,"throw",n)}o(void 0)}))}}function En(n,t){(null==t||t>n.length)&&(t=n.length);for(var e=0,a=new Array(t);en.length)&&(t=n.length);for(var e=0,a=new Array(t);en.length)&&(t=n.length);for(var e=0,a=new Array(t);e=i)&&Object.keys(r.O).every((function(n){return r.O[n](e[c])}))?e.splice(c--,1):(s=!1,i0&&n[d-1][2]>i;d--)n[d]=n[d-1];n[d]=[e,a,i]},r.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return r.d(t,{a:t}),t},r.d=function(n,t){for(var e in t)r.o(t,e)&&!r.o(n,e)&&Object.defineProperty(n,e,{enumerable:!0,get:t[e]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(n){if("object"==typeof window)return window}}(),r.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},r.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},r.nmd=function(n){return n.paths=[],n.children||(n.children=[]),n},r.j=858,function(){r.b=document.baseURI||self.location.href;var n={858:0};r.O.j=function(t){return 0===n[t]};var t=function(t,e){var a,i,o=e[0],s=e[1],c=e[2],l=0;if(o.some((function(t){return 0!==n[t]}))){for(a in s)r.o(s,a)&&(r.m[a]=s[a]);if(c)var d=c(r)}for(t&&t(e);ln.length)&&(t=n.length);for(var e=0,a=new Array(t);en.length)&&(t=n.length);for(var e=0,a=new Array(t);en.length)&&(t=n.length);for(var e=0,a=new Array(t);e=i)&&Object.keys(r.O).every((function(n){return r.O[n](e[c])}))?e.splice(c--,1):(s=!1,i0&&n[d-1][2]>i;d--)n[d]=n[d-1];n[d]=[e,a,i]},r.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return r.d(t,{a:t}),t},r.d=function(n,t){for(var e in t)r.o(t,e)&&!r.o(n,e)&&Object.defineProperty(n,e,{enumerable:!0,get:t[e]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(n){if("object"==typeof window)return window}}(),r.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},r.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},r.nmd=function(n){return n.paths=[],n.children||(n.children=[]),n},r.j=858,function(){r.b=document.baseURI||self.location.href;var n={858:0};r.O.j=function(t){return 0===n[t]};var t=function(t,e){var a,i,o=e[0],s=e[1],c=e[2],l=0;if(o.some((function(t){return 0!==n[t]}))){for(a in s)r.o(s,a)&&(r.m[a]=s[a]);if(c)var d=c(r)}for(t&&t(e);l 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * @copyright 2020 Christoph Wurst \n *\n * @author Roeland Jago Douma \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('settings')\n\t.detectUser()\n\t.build()\n","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\n/*\n * SYNC to be kept in sync with `lib/public/Accounts/IAccountManager.php`\n */\n\nimport { translate as t } from '@nextcloud/l10n'\n\n/** Enum of account properties */\nexport const ACCOUNT_PROPERTY_ENUM = Object.freeze({\n\tADDRESS: 'address',\n\tAVATAR: 'avatar',\n\tBIOGRAPHY: 'biography',\n\tDISPLAYNAME: 'displayname',\n\tEMAIL_COLLECTION: 'additional_mail',\n\tEMAIL: 'email',\n\tHEADLINE: 'headline',\n\tNOTIFICATION_EMAIL: 'notify_email',\n\tORGANISATION: 'organisation',\n\tPHONE: 'phone',\n\tPROFILE_ENABLED: 'profile_enabled',\n\tROLE: 'role',\n\tTWITTER: 'twitter',\n\tWEBSITE: 'website',\n})\n\n/** Enum of account properties to human readable account property names */\nexport const ACCOUNT_PROPERTY_READABLE_ENUM = Object.freeze({\n\tADDRESS: t('settings', 'Address'),\n\tAVATAR: t('settings', 'Avatar'),\n\tBIOGRAPHY: t('settings', 'About'),\n\tDISPLAYNAME: t('settings', 'Full name'),\n\tEMAIL_COLLECTION: t('settings', 'Additional email'),\n\tEMAIL: t('settings', 'Email'),\n\tHEADLINE: t('settings', 'Headline'),\n\tORGANISATION: t('settings', 'Organisation'),\n\tPHONE: t('settings', 'Phone number'),\n\tPROFILE_ENABLED: t('settings', 'Profile'),\n\tROLE: t('settings', 'Role'),\n\tTWITTER: t('settings', 'Twitter'),\n\tWEBSITE: t('settings', 'Website'),\n})\n\n/** Enum of profile specific sections to human readable names */\nexport const PROFILE_READABLE_ENUM = Object.freeze({\n\tPROFILE_VISIBILITY: t('settings', 'Profile visibility'),\n})\n\n/** Enum of readable account properties to account property keys used by the server */\nexport const PROPERTY_READABLE_KEYS_ENUM = Object.freeze({\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ADDRESS]: ACCOUNT_PROPERTY_ENUM.ADDRESS,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.AVATAR]: ACCOUNT_PROPERTY_ENUM.AVATAR,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.BIOGRAPHY]: ACCOUNT_PROPERTY_ENUM.BIOGRAPHY,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.DISPLAYNAME]: ACCOUNT_PROPERTY_ENUM.DISPLAYNAME,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL_COLLECTION]: ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL]: ACCOUNT_PROPERTY_ENUM.EMAIL,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.HEADLINE]: ACCOUNT_PROPERTY_ENUM.HEADLINE,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ORGANISATION]: ACCOUNT_PROPERTY_ENUM.ORGANISATION,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.PHONE]: ACCOUNT_PROPERTY_ENUM.PHONE,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.PROFILE_ENABLED]: ACCOUNT_PROPERTY_ENUM.PROFILE_ENABLED,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ROLE]: ACCOUNT_PROPERTY_ENUM.ROLE,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.TWITTER]: ACCOUNT_PROPERTY_ENUM.TWITTER,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.WEBSITE]: ACCOUNT_PROPERTY_ENUM.WEBSITE,\n})\n\n/**\n * Enum of account setting properties\n *\n * Account setting properties unlike account properties do not support scopes*\n */\nexport const ACCOUNT_SETTING_PROPERTY_ENUM = Object.freeze({\n\tLANGUAGE: 'language',\n})\n\n/** Enum of account setting properties to human readable setting properties */\nexport const ACCOUNT_SETTING_PROPERTY_READABLE_ENUM = Object.freeze({\n\tLANGUAGE: t('settings', 'Language'),\n})\n\n/** Enum of scopes */\nexport const SCOPE_ENUM = Object.freeze({\n\tPRIVATE: 'v2-private',\n\tLOCAL: 'v2-local',\n\tFEDERATED: 'v2-federated',\n\tPUBLISHED: 'v2-published',\n})\n\n/** Enum of readable account properties to supported scopes */\nexport const PROPERTY_READABLE_SUPPORTED_SCOPES_ENUM = Object.freeze({\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ADDRESS]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.AVATAR]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.BIOGRAPHY]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.DISPLAYNAME]: [SCOPE_ENUM.LOCAL],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL_COLLECTION]: [SCOPE_ENUM.LOCAL],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL]: [SCOPE_ENUM.LOCAL],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.HEADLINE]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ORGANISATION]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.PHONE]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.PROFILE_ENABLED]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ROLE]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.TWITTER]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.WEBSITE]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n})\n\n/** List of readable account properties which aren't published to the lookup server */\nexport const UNPUBLISHED_READABLE_PROPERTIES = Object.freeze([\n\tACCOUNT_PROPERTY_READABLE_ENUM.BIOGRAPHY,\n\tACCOUNT_PROPERTY_READABLE_ENUM.HEADLINE,\n\tACCOUNT_PROPERTY_READABLE_ENUM.ORGANISATION,\n\tACCOUNT_PROPERTY_READABLE_ENUM.ROLE,\n])\n\n/** Scope suffix */\nexport const SCOPE_SUFFIX = 'Scope'\n\n/**\n * Enum of scope names to properties\n *\n * Used for federation control*\n */\nexport const SCOPE_PROPERTY_ENUM = Object.freeze({\n\t[SCOPE_ENUM.PRIVATE]: {\n\t\tname: SCOPE_ENUM.PRIVATE,\n\t\tdisplayName: t('settings', 'Private'),\n\t\ttooltip: t('settings', 'Only visible to people matched via phone number integration through Talk on mobile'),\n\t\ttooltipDisabled: t('settings', 'Not available as this property is required for core functionality including file sharing and calendar invitations'),\n\t\ticonClass: 'icon-phone',\n\t},\n\t[SCOPE_ENUM.LOCAL]: {\n\t\tname: SCOPE_ENUM.LOCAL,\n\t\tdisplayName: t('settings', 'Local'),\n\t\ttooltip: t('settings', 'Only visible to people on this instance and guests'),\n\t\t// tooltipDisabled is not required here as this scope is supported by all account properties\n\t\ticonClass: 'icon-password',\n\t},\n\t[SCOPE_ENUM.FEDERATED]: {\n\t\tname: SCOPE_ENUM.FEDERATED,\n\t\tdisplayName: t('settings', 'Federated'),\n\t\ttooltip: t('settings', 'Only synchronize to trusted servers'),\n\t\ttooltipDisabled: t('settings', 'Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions'),\n\t\ticonClass: 'icon-contacts-dark',\n\t},\n\t[SCOPE_ENUM.PUBLISHED]: {\n\t\tname: SCOPE_ENUM.PUBLISHED,\n\t\tdisplayName: t('settings', 'Published'),\n\t\ttooltip: t('settings', 'Synchronize to trusted servers and the global and public address book'),\n\t\ttooltipDisabled: t('settings', 'Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions'),\n\t\ticonClass: 'icon-link',\n\t},\n})\n\n/** Default additional email scope */\nexport const DEFAULT_ADDITIONAL_EMAIL_SCOPE = SCOPE_ENUM.LOCAL\n\n/** Enum of verification constants, according to IAccountManager */\nexport const VERIFICATION_ENUM = Object.freeze({\n\tNOT_VERIFIED: 0,\n\tVERIFICATION_IN_PROGRESS: 1,\n\tVERIFIED: 2,\n})\n\n/**\n * Email validation regex\n *\n * Sourced from https://github.com/mpyw/FILTER_VALIDATE_EMAIL.js/blob/71e62ca48841d2246a1b531e7e84f5a01f15e615/src/regexp/ascii.ts*\n */\n// eslint-disable-next-line no-control-regex\nexport const VALIDATE_EMAIL_REGEX = /^(?!(?:(?:\\x22?\\x5C[\\x00-\\x7E]\\x22?)|(?:\\x22?[^\\x5C\\x22]\\x22?)){255,})(?!(?:(?:\\x22?\\x5C[\\x00-\\x7E]\\x22?)|(?:\\x22?[^\\x5C\\x22]\\x22?)){65,}@)(?:(?:[\\x21\\x23-\\x27\\x2A\\x2B\\x2D\\x2F-\\x39\\x3D\\x3F\\x5E-\\x7E]+)|(?:\\x22(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x21\\x23-\\x5B\\x5D-\\x7F]|(?:\\x5C[\\x00-\\x7F]))*\\x22))(?:\\.(?:(?:[\\x21\\x23-\\x27\\x2A\\x2B\\x2D\\x2F-\\x39\\x3D\\x3F\\x5E-\\x7E]+)|(?:\\x22(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x21\\x23-\\x5B\\x5D-\\x7F]|(?:\\x5C[\\x00-\\x7F]))*\\x22)))*@(?:(?:(?!.*[^.]{64,})(?:(?:(?:xn--)?[a-z0-9]+(?:-+[a-z0-9]+)*\\.){1,126}){1,}(?:(?:[a-z][a-z0-9]*)|(?:(?:xn--)[a-z0-9]+))(?:-+[a-z0-9]+)*)|(?:\\[(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){7})|(?:(?!(?:.*[a-f0-9][:\\]]){7,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?)))|(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){5}:)|(?:(?!(?:.*[a-f0-9]:){5,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3}:)?)))?(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))(?:\\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))){3}))\\]))$/i\n","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport confirmPassword from '@nextcloud/password-confirmation'\n\nimport { SCOPE_SUFFIX } from '../../constants/AccountPropertyConstants'\n\n/**\n * Save the primary account property value for the user\n *\n * @param {string} accountProperty the account property\n * @param {string|boolean} value the primary value\n * @return {object}\n */\nexport const savePrimaryAccountProperty = async (accountProperty, value) => {\n\t// TODO allow boolean values on backend route handler\n\t// Convert boolean to string for compatibility\n\tif (typeof value === 'boolean') {\n\t\tvalue = value ? '1' : '0'\n\t}\n\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: accountProperty,\n\t\tvalue,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save the federation scope of the primary account property for the user\n *\n * @param {string} accountProperty the account property\n * @param {string} scope the federation scope\n * @return {object}\n */\nexport const savePrimaryAccountPropertyScope = async (accountProperty, scope) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: `${accountProperty}${SCOPE_SUFFIX}`,\n\t\tvalue: scope,\n\t})\n\n\treturn res.data\n}\n","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\n/*\n * Frontend validators, less strict than backend validators\n *\n * TODO add nice validation errors for Profile page settings modal\n */\n\nimport { VALIDATE_EMAIL_REGEX } from '../constants/AccountPropertyConstants'\n\n/**\n * Validate the string input\n *\n * Generic validator just to check that input is not an empty string*\n *\n * @param {string} input the input\n * @return {boolean}\n */\nexport function validateStringInput(input) {\n\treturn input !== ''\n}\n\n/**\n * Validate the email input\n *\n * Compliant with PHP core FILTER_VALIDATE_EMAIL validator*\n *\n * Reference implementation https://github.com/mpyw/FILTER_VALIDATE_EMAIL.js/blob/71e62ca48841d2246a1b531e7e84f5a01f15e615/src/index.ts*\n *\n * @param {string} input the input\n * @return {boolean}\n */\nexport function validateEmail(input) {\n\treturn typeof input === 'string'\n\t\t&& VALIDATE_EMAIL_REGEX.test(input)\n\t\t&& input.slice(-1) !== '\\n'\n\t\t&& input.length <= 320\n\t\t&& encodeURIComponent(input).replace(/%../g, 'x').length <= 320\n}\n\n/**\n * Validate the language input\n *\n * @param {object} input the input\n * @return {boolean}\n */\nexport function validateLanguage(input) {\n\treturn input.code !== ''\n\t\t&& input.name !== ''\n\t\t&& input.name !== undefined\n}\n\n/**\n * Validate boolean input\n *\n * @param {boolean} input the input\n * @return {boolean}\n */\nexport function validateBoolean(input) {\n\treturn typeof input === 'boolean'\n}\n","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayName.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!./DisplayName.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayName.vue?vue&type=style&index=0&id=3418897a&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayName.vue?vue&type=style&index=0&id=3418897a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DisplayName.vue?vue&type=template&id=3418897a&scoped=true&\"\nimport script from \"./DisplayName.vue?vue&type=script&lang=js&\"\nexport * from \"./DisplayName.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DisplayName.vue?vue&type=style&index=0&id=3418897a&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 \"3418897a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"displayname\"},[_c('input',{attrs:{\"id\":\"displayname\",\"type\":\"text\",\"placeholder\":_vm.t('settings', 'Your full name'),\"autocapitalize\":\"none\",\"autocomplete\":\"on\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.displayName},on:{\"input\":_vm.onDisplayNameChange}}),_vm._v(\" \"),_c('div',{staticClass:\"displayname__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddButton.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!./AddButton.vue?vue&type=script&lang=js&\"","\n\n\n\t\n\n\n\n\n\n","\n import API from \"!../../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddButton.vue?vue&type=style&index=0&id=6ca08b3a&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddButton.vue?vue&type=style&index=0&id=6ca08b3a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AddButton.vue?vue&type=template&id=6ca08b3a&scoped=true&\"\nimport script from \"./AddButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AddButton.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AddButton.vue?vue&type=style&index=0&id=6ca08b3a&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 \"6ca08b3a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',_vm._g({attrs:{\"disabled\":_vm.disabled}},_vm.$listeners),[_c('span',{staticClass:\"icon icon-add\"}),_vm._v(\"\\n\\t\"+_vm._s(_vm.t('settings', 'Add'))+\"\\n\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControlAction.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!./FederationControlAction.vue?vue&type=script&lang=js&\"","\n\n\n\t\n\t\t{{ isSupportedScope ? tooltip : tooltipDisabled }}\n\t\n\n\n\n\n\n","\n import API from \"!../../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControlAction.vue?vue&type=style&index=0&id=d2e8b360&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControlAction.vue?vue&type=style&index=0&id=d2e8b360&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FederationControlAction.vue?vue&type=template&id=d2e8b360&scoped=true&\"\nimport script from \"./FederationControlAction.vue?vue&type=script&lang=js&\"\nexport * from \"./FederationControlAction.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FederationControlAction.vue?vue&type=style&index=0&id=d2e8b360&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 \"d2e8b360\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ActionButton',{staticClass:\"federation-actions__btn\",class:{ 'federation-actions__btn--active': _vm.activeScope === _vm.name },attrs:{\"aria-label\":_vm.isSupportedScope ? _vm.tooltip : _vm.tooltipDisabled,\"close-after-click\":true,\"disabled\":!_vm.isSupportedScope,\"icon\":_vm.iconClass,\"title\":_vm.displayName},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.updateScope.apply(null, arguments)}}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.isSupportedScope ? _vm.tooltip : _vm.tooltipDisabled)+\"\\n\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControl.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!./FederationControl.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControl.vue?vue&type=style&index=0&id=b51d8bee&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControl.vue?vue&type=style&index=0&id=b51d8bee&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FederationControl.vue?vue&type=template&id=b51d8bee&scoped=true&\"\nimport script from \"./FederationControl.vue?vue&type=script&lang=js&\"\nexport * from \"./FederationControl.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FederationControl.vue?vue&type=style&index=0&id=b51d8bee&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 \"b51d8bee\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Actions',{class:{ 'federation-actions': !_vm.additional, 'federation-actions--additional': _vm.additional },attrs:{\"aria-label\":_vm.ariaLabel,\"default-icon\":_vm.scopeIcon,\"disabled\":_vm.disabled}},_vm._l((_vm.federationScopes),function(federationScope){return _c('FederationControlAction',{key:federationScope.name,attrs:{\"active-scope\":_vm.scope,\"display-name\":federationScope.displayName,\"handle-scope-change\":_vm.changeScope,\"icon-class\":federationScope.iconClass,\"is-supported-scope\":_vm.supportedScopes.includes(federationScope.name),\"name\":federationScope.name,\"tooltip-disabled\":federationScope.tooltipDisabled,\"tooltip\":federationScope.tooltip}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderBar.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!./HeaderBar.vue?vue&type=script&lang=js&\"","\n\n\n\t
\n\n\n\n\n\n","\n import API from \"!../../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderBar.vue?vue&type=style&index=0&id=1d3f5c52&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderBar.vue?vue&type=style&index=0&id=1d3f5c52&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderBar.vue?vue&type=template&id=1d3f5c52&scoped=true&\"\nimport script from \"./HeaderBar.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderBar.vue?vue&type=style&index=0&id=1d3f5c52&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 \"1d3f5c52\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h3',{class:{ 'setting-property': _vm.isSettingProperty, 'profile-property': _vm.isProfileProperty }},[_c('label',{attrs:{\"for\":_vm.labelFor}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.accountProperty)+\"\\n\\t\")]),_vm._v(\" \"),(_vm.scope)?[_c('FederationControl',{staticClass:\"federation-control\",attrs:{\"account-property\":_vm.accountProperty,\"scope\":_vm.localScope},on:{\"update:scope\":[function($event){_vm.localScope=$event},_vm.onScopeChange]}})]:_vm._e(),_vm._v(\" \"),(_vm.isEditable && _vm.isMultiValueSupported)?[_c('AddButton',{staticClass:\"add-button\",attrs:{\"disabled\":!_vm.isValidSection},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onAddAdditional.apply(null, arguments)}}})]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t{{ primaryDisplayName.value || t('settings', 'No full name set') }}\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayNameSection.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!./DisplayNameSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayNameSection.vue?vue&type=style&index=0&id=b8a748f4&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayNameSection.vue?vue&type=style&index=0&id=b8a748f4&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DisplayNameSection.vue?vue&type=template&id=b8a748f4&scoped=true&\"\nimport script from \"./DisplayNameSection.vue?vue&type=script&lang=js&\"\nexport * from \"./DisplayNameSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DisplayNameSection.vue?vue&type=style&index=0&id=b8a748f4&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 \"b8a748f4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"displayname\",\"is-editable\":_vm.displayNameChangeSupported,\"is-valid-section\":_vm.isValidSection,\"scope\":_vm.primaryDisplayName.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryDisplayName, \"scope\", $event)}}}),_vm._v(\" \"),(_vm.displayNameChangeSupported)?[_c('DisplayName',{attrs:{\"display-name\":_vm.primaryDisplayName.value,\"scope\":_vm.primaryDisplayName.scope},on:{\"update:displayName\":function($event){return _vm.$set(_vm.primaryDisplayName, \"value\", $event)},\"update:display-name\":function($event){return _vm.$set(_vm.primaryDisplayName, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryDisplayName, \"scope\", $event)}}})]:_c('span',[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.primaryDisplayName.value || _vm.t('settings', 'No full name set'))+\"\\n\\t\")])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport confirmPassword from '@nextcloud/password-confirmation'\n\nimport { ACCOUNT_PROPERTY_ENUM, SCOPE_SUFFIX } from '../../constants/AccountPropertyConstants'\n\n/**\n * Save the primary email of the user\n *\n * @param {string} email the primary email\n * @return {object}\n */\nexport const savePrimaryEmail = async (email) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: ACCOUNT_PROPERTY_ENUM.EMAIL,\n\t\tvalue: email,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save an additional email of the user\n *\n * Will be appended to the user's additional emails*\n *\n * @param {string} email the additional email\n * @return {object}\n */\nexport const saveAdditionalEmail = async (email) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION,\n\t\tvalue: email,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save the notification email of the user\n *\n * @param {string} email the notification email\n * @return {object}\n */\nexport const saveNotificationEmail = async (email) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: ACCOUNT_PROPERTY_ENUM.NOTIFICATION_EMAIL,\n\t\tvalue: email,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Remove an additional email of the user\n *\n * @param {string} email the additional email\n * @return {object}\n */\nexport const removeAdditionalEmail = async (email) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}/{collection}', { userId, collection: ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: email,\n\t\tvalue: '',\n\t})\n\n\treturn res.data\n}\n\n/**\n * Update an additional email of the user\n *\n * @param {string} prevEmail the additional email to be updated\n * @param {string} newEmail the new additional email\n * @return {object}\n */\nexport const updateAdditionalEmail = async (prevEmail, newEmail) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}/{collection}', { userId, collection: ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: prevEmail,\n\t\tvalue: newEmail,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save the federation scope for the primary email of the user\n *\n * @param {string} scope the federation scope\n * @return {object}\n */\nexport const savePrimaryEmailScope = async (scope) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: `${ACCOUNT_PROPERTY_ENUM.EMAIL}${SCOPE_SUFFIX}`,\n\t\tvalue: scope,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save the federation scope for the additional email of the user\n *\n * @param {string} email the additional email\n * @param {string} scope the federation scope\n * @return {object}\n */\nexport const saveAdditionalEmailScope = async (email, scope) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}/{collectionScope}', { userId, collectionScope: `${ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION}${SCOPE_SUFFIX}` })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: email,\n\t\tvalue: scope,\n\t})\n\n\treturn res.data\n}\n","\n\n\n\t
\n\t\t\n\t\n\n\n\n\n\n","\n import API from \"!../../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfilePreviewCard.vue?vue&type=style&index=0&id=79bf7437&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfilePreviewCard.vue?vue&type=style&index=0&id=79bf7437&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ProfilePreviewCard.vue?vue&type=template&id=79bf7437&scoped=true&\"\nimport script from \"./ProfilePreviewCard.vue?vue&type=script&lang=js&\"\nexport * from \"./ProfilePreviewCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProfilePreviewCard.vue?vue&type=style&index=0&id=79bf7437&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 \"79bf7437\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{staticClass:\"preview-card\",class:{ disabled: _vm.disabled },attrs:{\"href\":_vm.profilePageLink}},[_c('Avatar',{staticClass:\"preview-card__avatar\",attrs:{\"user\":_vm.userId,\"size\":48,\"show-user-status\":true,\"show-user-status-compact\":false,\"disable-menu\":true,\"disable-tooltip\":true}}),_vm._v(\" \"),_c('div',{staticClass:\"preview-card__header\"},[_c('span',[_vm._v(_vm._s(_vm.displayName))])]),_vm._v(\" \"),_c('div',{staticClass:\"preview-card__footer\"},[_c('span',[_vm._v(_vm._s(_vm.organisation))])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileSection.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!./ProfileSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileSection.vue?vue&type=style&index=0&id=252753e6&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileSection.vue?vue&type=style&index=0&id=252753e6&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ProfileSection.vue?vue&type=template&id=252753e6&scoped=true&\"\nimport script from \"./ProfileSection.vue?vue&type=script&lang=js&\"\nexport * from \"./ProfileSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProfileSection.vue?vue&type=style&index=0&id=252753e6&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 \"252753e6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty}}),_vm._v(\" \"),_c('ProfileCheckbox',{attrs:{\"profile-enabled\":_vm.profileEnabled},on:{\"update:profileEnabled\":function($event){_vm.profileEnabled=$event},\"update:profile-enabled\":function($event){_vm.profileEnabled=$event}}}),_vm._v(\" \"),_c('ProfilePreviewCard',{attrs:{\"organisation\":_vm.organisation,\"display-name\":_vm.displayName,\"profile-enabled\":_vm.profileEnabled,\"user-id\":_vm.userId}}),_vm._v(\" \"),_c('EditProfileAnchorLink',{attrs:{\"profile-enabled\":_vm.profileEnabled}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Organisation.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!./Organisation.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Organisation.vue?vue&type=style&index=0&id=591cd6b6&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Organisation.vue?vue&type=style&index=0&id=591cd6b6&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Organisation.vue?vue&type=template&id=591cd6b6&scoped=true&\"\nimport script from \"./Organisation.vue?vue&type=script&lang=js&\"\nexport * from \"./Organisation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Organisation.vue?vue&type=style&index=0&id=591cd6b6&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 \"591cd6b6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"organisation\"},[_c('input',{attrs:{\"id\":\"organisation\",\"type\":\"text\",\"placeholder\":_vm.t('settings', 'Your organisation'),\"autocapitalize\":\"none\",\"autocomplete\":\"on\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.organisation},on:{\"input\":_vm.onOrganisationChange}}),_vm._v(\" \"),_c('div',{staticClass:\"organisation__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrganisationSection.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!./OrganisationSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrganisationSection.vue?vue&type=style&index=0&id=43146ff7&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrganisationSection.vue?vue&type=style&index=0&id=43146ff7&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./OrganisationSection.vue?vue&type=template&id=43146ff7&scoped=true&\"\nimport script from \"./OrganisationSection.vue?vue&type=script&lang=js&\"\nexport * from \"./OrganisationSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OrganisationSection.vue?vue&type=style&index=0&id=43146ff7&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 \"43146ff7\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"organisation\",\"scope\":_vm.primaryOrganisation.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryOrganisation, \"scope\", $event)}}}),_vm._v(\" \"),_c('Organisation',{attrs:{\"organisation\":_vm.primaryOrganisation.value,\"scope\":_vm.primaryOrganisation.scope},on:{\"update:organisation\":function($event){return _vm.$set(_vm.primaryOrganisation, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryOrganisation, \"scope\", $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Role.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!./Role.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Role.vue?vue&type=style&index=0&id=aac18396&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Role.vue?vue&type=style&index=0&id=aac18396&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Role.vue?vue&type=template&id=aac18396&scoped=true&\"\nimport script from \"./Role.vue?vue&type=script&lang=js&\"\nexport * from \"./Role.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Role.vue?vue&type=style&index=0&id=aac18396&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 \"aac18396\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"role\"},[_c('input',{attrs:{\"id\":\"role\",\"type\":\"text\",\"placeholder\":_vm.t('settings', 'Your role'),\"autocapitalize\":\"none\",\"autocomplete\":\"on\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.role},on:{\"input\":_vm.onRoleChange}}),_vm._v(\" \"),_c('div',{staticClass:\"role__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RoleSection.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!./RoleSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RoleSection.vue?vue&type=style&index=0&id=f3d959c2&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RoleSection.vue?vue&type=style&index=0&id=f3d959c2&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./RoleSection.vue?vue&type=template&id=f3d959c2&scoped=true&\"\nimport script from \"./RoleSection.vue?vue&type=script&lang=js&\"\nexport * from \"./RoleSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RoleSection.vue?vue&type=style&index=0&id=f3d959c2&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 \"f3d959c2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"role\",\"scope\":_vm.primaryRole.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryRole, \"scope\", $event)}}}),_vm._v(\" \"),_c('Role',{attrs:{\"role\":_vm.primaryRole.value,\"scope\":_vm.primaryRole.scope},on:{\"update:role\":function($event){return _vm.$set(_vm.primaryRole, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryRole, \"scope\", $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Headline.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!./Headline.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Headline.vue?vue&type=style&index=0&id=64e0e0bd&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Headline.vue?vue&type=style&index=0&id=64e0e0bd&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Headline.vue?vue&type=template&id=64e0e0bd&scoped=true&\"\nimport script from \"./Headline.vue?vue&type=script&lang=js&\"\nexport * from \"./Headline.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Headline.vue?vue&type=style&index=0&id=64e0e0bd&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 \"64e0e0bd\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"headline\"},[_c('input',{attrs:{\"id\":\"headline\",\"type\":\"text\",\"placeholder\":_vm.t('settings', 'Your headline'),\"autocapitalize\":\"none\",\"autocomplete\":\"on\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.headline},on:{\"input\":_vm.onHeadlineChange}}),_vm._v(\" \"),_c('div',{staticClass:\"headline__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeadlineSection.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!./HeadlineSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeadlineSection.vue?vue&type=style&index=0&id=187bb5da&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeadlineSection.vue?vue&type=style&index=0&id=187bb5da&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeadlineSection.vue?vue&type=template&id=187bb5da&scoped=true&\"\nimport script from \"./HeadlineSection.vue?vue&type=script&lang=js&\"\nexport * from \"./HeadlineSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeadlineSection.vue?vue&type=style&index=0&id=187bb5da&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 \"187bb5da\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"headline\",\"scope\":_vm.primaryHeadline.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryHeadline, \"scope\", $event)}}}),_vm._v(\" \"),_c('Headline',{attrs:{\"headline\":_vm.primaryHeadline.value,\"scope\":_vm.primaryHeadline.scope},on:{\"update:headline\":function($event){return _vm.$set(_vm.primaryHeadline, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryHeadline, \"scope\", $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Biography.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!./Biography.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Biography.vue?vue&type=style&index=0&id=0fbf56a9&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Biography.vue?vue&type=style&index=0&id=0fbf56a9&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Biography.vue?vue&type=template&id=0fbf56a9&scoped=true&\"\nimport script from \"./Biography.vue?vue&type=script&lang=js&\"\nexport * from \"./Biography.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Biography.vue?vue&type=style&index=0&id=0fbf56a9&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 \"0fbf56a9\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"biography\"},[_c('textarea',{attrs:{\"id\":\"biography\",\"placeholder\":_vm.t('settings', 'Your biography'),\"rows\":\"8\",\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.biography},on:{\"input\":_vm.onBiographyChange}}),_vm._v(\" \"),_c('div',{staticClass:\"biography__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BiographySection.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!./BiographySection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BiographySection.vue?vue&type=style&index=0&id=cfa727da&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BiographySection.vue?vue&type=style&index=0&id=cfa727da&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BiographySection.vue?vue&type=template&id=cfa727da&scoped=true&\"\nimport script from \"./BiographySection.vue?vue&type=script&lang=js&\"\nexport * from \"./BiographySection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BiographySection.vue?vue&type=style&index=0&id=cfa727da&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 \"cfa727da\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"biography\",\"scope\":_vm.primaryBiography.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryBiography, \"scope\", $event)}}}),_vm._v(\" \"),_c('Biography',{attrs:{\"biography\":_vm.primaryBiography.value,\"scope\":_vm.primaryBiography.scope},on:{\"update:biography\":function($event){return _vm.$set(_vm.primaryBiography, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryBiography, \"scope\", $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2021 Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport confirmPassword from '@nextcloud/password-confirmation'\n\n/**\n * Save the visibility of the profile parameter\n *\n * @param {string} paramId the profile parameter ID\n * @param {string} visibility the visibility\n * @return {object}\n */\nexport const saveProfileParameterVisibility = async (paramId, visibility) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('/profile/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tparamId,\n\t\tvisibility,\n\t})\n\n\treturn res.data\n}\n","/**\n * @copyright 2021 Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\n/*\n * SYNC to be kept in sync with `core/Db/ProfileConfig.php`\n */\n\n/** Enum of profile visibility constants */\nexport const VISIBILITY_ENUM = Object.freeze({\n\tSHOW: 'show',\n\tSHOW_USERS_ONLY: 'show_users_only',\n\tHIDE: 'hide',\n})\n\n/**\n * Enum of profile visibility constants to properties\n */\nexport const VISIBILITY_PROPERTY_ENUM = Object.freeze({\n\t[VISIBILITY_ENUM.SHOW]: {\n\t\tname: VISIBILITY_ENUM.SHOW,\n\t\tlabel: t('settings', 'Show to everyone'),\n\t},\n\t[VISIBILITY_ENUM.SHOW_USERS_ONLY]: {\n\t\tname: VISIBILITY_ENUM.SHOW_USERS_ONLY,\n\t\tlabel: t('settings', 'Show to logged in users only'),\n\t},\n\t[VISIBILITY_ENUM.HIDE]: {\n\t\tname: VISIBILITY_ENUM.HIDE,\n\t\tlabel: t('settings', 'Hide'),\n\t},\n})\n","\n\n\n\t
\n\t\t\n\t\t\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VisibilityDropdown.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!./VisibilityDropdown.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VisibilityDropdown.vue?vue&type=style&index=0&id=4643b0e2&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VisibilityDropdown.vue?vue&type=style&index=0&id=4643b0e2&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VisibilityDropdown.vue?vue&type=template&id=4643b0e2&scoped=true&\"\nimport script from \"./VisibilityDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./VisibilityDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VisibilityDropdown.vue?vue&type=style&index=0&id=4643b0e2&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 \"4643b0e2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"visibility-container\",class:{ disabled: _vm.disabled }},[_c('label',{attrs:{\"for\":_vm.inputId}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('settings', '{displayId}', { displayId: _vm.displayId }))+\"\\n\\t\")]),_vm._v(\" \"),_c('Multiselect',{staticClass:\"visibility-container__multiselect\",attrs:{\"id\":_vm.inputId,\"options\":_vm.visibilityOptions,\"track-by\":\"name\",\"label\":\"label\",\"value\":_vm.visibilityObject},on:{\"change\":_vm.onVisibilityChange}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\n\t\t\n\n\t\t\n\t\t\t{{ t('settings', 'The more restrictive setting of either visibility or scope is respected on your Profile. For example, if visibility is set to \"Show to everyone\" and scope is set to \"Private\", \"Private\" is respected.') }}\n\t\t\n\n\t\t
\n\t\t\t\n\t\t
\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileVisibilitySection.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!./ProfileVisibilitySection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileVisibilitySection.vue?vue&type=style&index=0&id=16df62f8&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileVisibilitySection.vue?vue&type=style&index=0&id=16df62f8&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ProfileVisibilitySection.vue?vue&type=template&id=16df62f8&scoped=true&\"\nimport script from \"./ProfileVisibilitySection.vue?vue&type=script&lang=js&\"\nexport * from \"./ProfileVisibilitySection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProfileVisibilitySection.vue?vue&type=style&index=0&id=16df62f8&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 \"16df62f8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{style:({ marginLeft: _vm.marginLeft }),attrs:{\"id\":\"profile-visibility\"}},[_c('HeaderBar',{attrs:{\"account-property\":_vm.heading}}),_vm._v(\" \"),_c('em',{class:{ disabled: _vm.disabled }},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('settings', 'The more restrictive setting of either visibility or scope is respected on your Profile. For example, if visibility is set to \"Show to everyone\" and scope is set to \"Private\", \"Private\" is respected.'))+\"\\n\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"visibility-dropdowns\",style:({\n\t\t\tgridTemplateRows: (\"repeat(\" + _vm.rows + \", 44px)\"),\n\t\t})},_vm._l((_vm.visibilityParams),function(param){return _c('VisibilityDropdown',{key:param.id,attrs:{\"param-id\":param.id,\"display-id\":param.displayId,\"visibility\":param.visibility},on:{\"update:visibility\":function($event){return _vm.$set(param, \"visibility\", $event)}}})}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport Vue from 'vue'\nimport { getRequestToken } from '@nextcloud/auth'\nimport { translate as t } from '@nextcloud/l10n'\nimport '@nextcloud/dialogs/styles/toast.scss'\n\nimport logger from './logger'\n\nimport DisplayNameSection from './components/PersonalInfo/DisplayNameSection/DisplayNameSection'\nimport EmailSection from './components/PersonalInfo/EmailSection/EmailSection'\nimport LanguageSection from './components/PersonalInfo/LanguageSection/LanguageSection'\nimport ProfileSection from './components/PersonalInfo/ProfileSection/ProfileSection'\nimport OrganisationSection from './components/PersonalInfo/OrganisationSection/OrganisationSection'\nimport RoleSection from './components/PersonalInfo/RoleSection/RoleSection'\nimport HeadlineSection from './components/PersonalInfo/HeadlineSection/HeadlineSection'\nimport BiographySection from './components/PersonalInfo/BiographySection/BiographySection'\nimport ProfileVisibilitySection from './components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection'\n\n__webpack_nonce__ = btoa(getRequestToken())\n\nVue.mixin({\n\tprops: {\n\t\tlogger,\n\t},\n\tmethods: {\n\t\tt,\n\t},\n})\n\nconst DisplayNameView = Vue.extend(DisplayNameSection)\nconst EmailView = Vue.extend(EmailSection)\nconst LanguageView = Vue.extend(LanguageSection)\nconst ProfileView = Vue.extend(ProfileSection)\nconst OrganisationView = Vue.extend(OrganisationSection)\nconst RoleView = Vue.extend(RoleSection)\nconst HeadlineView = Vue.extend(HeadlineSection)\nconst BiographyView = Vue.extend(BiographySection)\nconst ProfileVisibilityView = Vue.extend(ProfileVisibilitySection)\n\nnew DisplayNameView().$mount('#vue-displayname-section')\nnew EmailView().$mount('#vue-email-section')\nnew LanguageView().$mount('#vue-language-section')\nnew ProfileView().$mount('#vue-profile-section')\nnew OrganisationView().$mount('#vue-organisation-section')\nnew RoleView().$mount('#vue-role-section')\nnew HeadlineView().$mount('#vue-headline-section')\nnew BiographyView().$mount('#vue-biography-section')\nnew ProfileVisibilityView().$mount('#vue-profile-visibility-section')\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".biography[data-v-0fbf56a9]{display:grid;align-items:center}.biography textarea[data-v-0fbf56a9]{resize:vertical;grid-area:1/1;width:100%;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.biography textarea[data-v-0fbf56a9]:hover,.biography textarea[data-v-0fbf56a9]:focus,.biography textarea[data-v-0fbf56a9]:active{border-color:var(--color-primary-element) !important;outline:none !important}.biography .biography__actions-container[data-v-0fbf56a9]{grid-area:1/1;justify-self:flex-end;align-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px;margin-bottom:5px}.biography .biography__actions-container .icon-checkmark[data-v-0fbf56a9],.biography .biography__actions-container .icon-error[data-v-0fbf56a9]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-0fbf56a9],.fade-leave-to[data-v-0fbf56a9]{opacity:0}.fade-enter-active[data-v-0fbf56a9]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-0fbf56a9]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/BiographySection/Biography.vue\"],\"names\":[],\"mappings\":\"AAyHA,4BACC,YAAA,CACA,kBAAA,CAEA,qCACC,eAAA,CACA,aAAA,CACA,UAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAEA,kIAGC,oDAAA,CACA,uBAAA,CAIF,0DACC,aAAA,CACA,qBAAA,CACA,mBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CACA,iBAAA,CAEA,gJAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.biography {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\ttextarea {\\n\\t\\tresize: vertical;\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\n\\t\\t&:hover,\\n\\t\\t&:focus,\\n\\t\\t&:active {\\n\\t\\t\\tborder-color: var(--color-primary-element) !important;\\n\\t\\t\\toutline: none !important;\\n\\t\\t}\\n\\t}\\n\\n\\t.biography__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\talign-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\t\\tmargin-bottom: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-cfa727da]{padding:10px 10px}section[data-v-cfa727da] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/BiographySection/BiographySection.vue\"],\"names\":[],\"mappings\":\"AA6DA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".displayname[data-v-3418897a]{display:grid;align-items:center}.displayname input[data-v-3418897a]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.displayname .displayname__actions-container[data-v-3418897a]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.displayname .displayname__actions-container .icon-checkmark[data-v-3418897a],.displayname .displayname__actions-container .icon-error[data-v-3418897a]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-3418897a],.fade-leave-to[data-v-3418897a]{opacity:0}.fade-enter-active[data-v-3418897a]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-3418897a]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayName.vue\"],\"names\":[],\"mappings\":\"AA8HA,8BACC,YAAA,CACA,kBAAA,CAEA,oCACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,8DACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,wJAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.displayname {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.displayname__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-b8a748f4]{padding:10px 10px}section[data-v-b8a748f4] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayNameSection.vue\"],\"names\":[],\"mappings\":\"AA8EA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".email[data-v-2c097054]{display:grid;align-items:center}.email input[data-v-2c097054]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.email .email__actions-container[data-v-2c097054]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.email .email__actions-container .email__actions[data-v-2c097054]{opacity:.4 !important}.email .email__actions-container .email__actions[data-v-2c097054]:hover,.email .email__actions-container .email__actions[data-v-2c097054]:focus,.email .email__actions-container .email__actions[data-v-2c097054]:active{opacity:.8 !important}.email .email__actions-container .email__actions[data-v-2c097054] button{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important}.email .email__actions-container .icon-checkmark[data-v-2c097054],.email .email__actions-container .icon-error[data-v-2c097054]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-2c097054],.fade-leave-to[data-v-2c097054]{opacity:0}.fade-enter-active[data-v-2c097054]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-2c097054]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/EmailSection/Email.vue\"],\"names\":[],\"mappings\":\"AAoWA,wBACC,YAAA,CACA,kBAAA,CAEA,8BACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,kDACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,kEACC,qBAAA,CAEA,yNAGC,qBAAA,CAGD,yEACC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CAIF,gIAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.email {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.email__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.email__actions {\\n\\t\\t\\topacity: 0.4 !important;\\n\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus,\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\topacity: 0.8 !important;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&::v-deep button {\\n\\t\\t\\t\\theight: 30px !important;\\n\\t\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\t\\twidth: 30px !important;\\n\\t\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-845b669e]{padding:10px 10px}section[data-v-845b669e] button:disabled{cursor:default}section .additional-emails-label[data-v-845b669e]{display:block;margin-top:16px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/EmailSection/EmailSection.vue\"],\"names\":[],\"mappings\":\"AA+LA,yBACC,iBAAA,CAEA,yCACC,cAAA,CAGD,kDACC,aAAA,CACA,eAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n\\n\\t.additional-emails-label {\\n\\t\\tdisplay: block;\\n\\t\\tmargin-top: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".headline[data-v-64e0e0bd]{display:grid;align-items:center}.headline input[data-v-64e0e0bd]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.headline .headline__actions-container[data-v-64e0e0bd]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.headline .headline__actions-container .icon-checkmark[data-v-64e0e0bd],.headline .headline__actions-container .icon-error[data-v-64e0e0bd]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-64e0e0bd],.fade-leave-to[data-v-64e0e0bd]{opacity:0}.fade-enter-active[data-v-64e0e0bd]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-64e0e0bd]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/HeadlineSection/Headline.vue\"],\"names\":[],\"mappings\":\"AAyHA,2BACC,YAAA,CACA,kBAAA,CAEA,iCACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,wDACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,4IAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.headline {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.headline__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-187bb5da]{padding:10px 10px}section[data-v-187bb5da] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/HeadlineSection/HeadlineSection.vue\"],\"names\":[],\"mappings\":\"AA6DA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".language[data-v-5396d706]{display:grid}.language select[data-v-5396d706]{width:100%;height:34px;margin:3px 3px 3px 0;padding:6px 16px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background:var(--icon-triangle-s-000) no-repeat right 4px center;font-family:var(--font-face);appearance:none;cursor:pointer}.language a[data-v-5396d706]{color:var(--color-main-text);text-decoration:none;width:max-content}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/LanguageSection/Language.vue\"],\"names\":[],\"mappings\":\"AA+IA,2BACC,YAAA,CAEA,kCACC,UAAA,CACA,WAAA,CACA,oBAAA,CACA,gBAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,gEAAA,CACA,4BAAA,CACA,eAAA,CACA,cAAA,CAGD,6BACC,4BAAA,CACA,oBAAA,CACA,iBAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.language {\\n\\tdisplay: grid;\\n\\n\\tselect {\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 6px 16px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground: var(--icon-triangle-s-000) no-repeat right 4px center;\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tappearance: none;\\n\\t\\tcursor: pointer;\\n\\t}\\n\\n\\ta {\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\ttext-decoration: none;\\n\\t\\twidth: max-content;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-16883898]{padding:10px 10px}section[data-v-16883898] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/LanguageSection/LanguageSection.vue\"],\"names\":[],\"mappings\":\"AA2EA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".organisation[data-v-591cd6b6]{display:grid;align-items:center}.organisation input[data-v-591cd6b6]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.organisation .organisation__actions-container[data-v-591cd6b6]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.organisation .organisation__actions-container .icon-checkmark[data-v-591cd6b6],.organisation .organisation__actions-container .icon-error[data-v-591cd6b6]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-591cd6b6],.fade-leave-to[data-v-591cd6b6]{opacity:0}.fade-enter-active[data-v-591cd6b6]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-591cd6b6]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/OrganisationSection/Organisation.vue\"],\"names\":[],\"mappings\":\"AAyHA,+BACC,YAAA,CACA,kBAAA,CAEA,qCACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,gEACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,4JAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.organisation {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.organisation__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-43146ff7]{padding:10px 10px}section[data-v-43146ff7] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/OrganisationSection/OrganisationSection.vue\"],\"names\":[],\"mappings\":\"AA6DA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"html{scroll-behavior:smooth}@media screen and (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue\"],\"names\":[],\"mappings\":\"AA4DA,KACC,sBAAA,CAEA,mDAHD,KAIE,oBAAA,CAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nhtml {\\n\\tscroll-behavior: smooth;\\n\\n\\t@media screen and (prefers-reduced-motion: reduce) {\\n\\t\\tscroll-behavior: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"a[data-v-73817e9f]{display:block;height:44px;width:290px;line-height:44px;padding:0 16px;margin:14px auto;border-radius:var(--border-radius-pill);opacity:.4;background-color:transparent}a .anchor-icon[data-v-73817e9f]{display:inline-block;vertical-align:middle;margin-top:6px;margin-right:8px}a[data-v-73817e9f]:hover,a[data-v-73817e9f]:focus,a[data-v-73817e9f]:active{opacity:.8;background-color:rgba(127,127,127,.25)}a.disabled[data-v-73817e9f]{pointer-events:none}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue\"],\"names\":[],\"mappings\":\"AAsEA,mBACC,aAAA,CACA,WAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,gBAAA,CACA,uCAAA,CACA,UAAA,CACA,4BAAA,CAEA,gCACC,oBAAA,CACA,qBAAA,CACA,cAAA,CACA,gBAAA,CAGD,4EAGC,UAAA,CACA,sCAAA,CAGD,4BACC,mBAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\na {\\n\\tdisplay: block;\\n\\theight: 44px;\\n\\twidth: 290px;\\n\\tline-height: 44px;\\n\\tpadding: 0 16px;\\n\\tmargin: 14px auto;\\n\\tborder-radius: var(--border-radius-pill);\\n\\topacity: 0.4;\\n\\tbackground-color: transparent;\\n\\n\\t.anchor-icon {\\n\\t\\tdisplay: inline-block;\\n\\t\\tvertical-align: middle;\\n\\t\\tmargin-top: 6px;\\n\\t\\tmargin-right: 8px;\\n\\t}\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\topacity: 0.8;\\n\\t\\tbackground-color: rgba(127, 127, 127, .25);\\n\\t}\\n\\n\\t&.disabled {\\n\\t\\tpointer-events: none;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".preview-card[data-v-79bf7437]{display:flex;flex-direction:column;position:relative;width:290px;height:116px;margin:14px auto;border-radius:var(--border-radius-large);background-color:var(--color-main-background);font-weight:bold;box-shadow:0 2px 9px var(--color-box-shadow)}.preview-card[data-v-79bf7437]:hover,.preview-card[data-v-79bf7437]:focus,.preview-card[data-v-79bf7437]:active{box-shadow:0 2px 12px var(--color-box-shadow)}.preview-card[data-v-79bf7437]:focus-visible{outline:var(--color-main-text) solid 1px;outline-offset:3px}.preview-card.disabled[data-v-79bf7437]{filter:grayscale(1);opacity:.5;cursor:default;box-shadow:0 0 3px var(--color-box-shadow)}.preview-card.disabled *[data-v-79bf7437],.preview-card.disabled[data-v-79bf7437] *{cursor:default}.preview-card__avatar[data-v-79bf7437]{position:absolute !important;top:40px;left:18px;z-index:1}.preview-card__avatar[data-v-79bf7437]:not(.avatardiv--unknown){box-shadow:0 0 0 3px var(--color-main-background) !important}.preview-card__header[data-v-79bf7437],.preview-card__footer[data-v-79bf7437]{position:relative;width:auto}.preview-card__header span[data-v-79bf7437],.preview-card__footer span[data-v-79bf7437]{position:absolute;left:78px;overflow:hidden;text-overflow:ellipsis;word-break:break-all}@supports(-webkit-line-clamp: 2){.preview-card__header span[data-v-79bf7437],.preview-card__footer span[data-v-79bf7437]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.preview-card__header[data-v-79bf7437]{height:70px;border-radius:var(--border-radius-large) var(--border-radius-large) 0 0}.preview-card__header span[data-v-79bf7437]{bottom:0;color:var(--color-primary-text);font-size:18px;font-weight:bold;margin:0 4px 8px 0}.preview-card__footer[data-v-79bf7437]{height:46px}.preview-card__footer span[data-v-79bf7437]{top:0;color:var(--color-text-maxcontrast);font-size:14px;font-weight:normal;margin:4px 4px 0 0;line-height:1.3}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileSection/ProfilePreviewCard.vue\"],\"names\":[],\"mappings\":\"AA6FA,+BACC,YAAA,CACA,qBAAA,CACA,iBAAA,CACA,WAAA,CACA,YAAA,CACA,gBAAA,CACA,wCAAA,CACA,6CAAA,CACA,gBAAA,CACA,4CAAA,CAEA,gHAGC,6CAAA,CAGD,6CACC,wCAAA,CACA,kBAAA,CAGD,wCACC,mBAAA,CACA,UAAA,CACA,cAAA,CACA,0CAAA,CAEA,oFAEC,cAAA,CAIF,uCAEC,4BAAA,CACA,QAAA,CACA,SAAA,CACA,SAAA,CAEA,gEACC,4DAAA,CAIF,8EAEC,iBAAA,CACA,UAAA,CAEA,wFACC,iBAAA,CACA,SAAA,CACA,eAAA,CACA,sBAAA,CACA,oBAAA,CAEA,iCAPD,wFAQE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,uCACC,WAAA,CACA,uEAAA,CAEA,4CACC,QAAA,CACA,+BAAA,CACA,cAAA,CACA,gBAAA,CACA,kBAAA,CAIF,uCACC,WAAA,CAEA,4CACC,KAAA,CACA,mCAAA,CACA,cAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.preview-card {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tposition: relative;\\n\\twidth: 290px;\\n\\theight: 116px;\\n\\tmargin: 14px auto;\\n\\tborder-radius: var(--border-radius-large);\\n\\tbackground-color: var(--color-main-background);\\n\\tfont-weight: bold;\\n\\tbox-shadow: 0 2px 9px var(--color-box-shadow);\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\tbox-shadow: 0 2px 12px var(--color-box-shadow);\\n\\t}\\n\\n\\t&:focus-visible {\\n\\t\\toutline: var(--color-main-text) solid 1px;\\n\\t\\toutline-offset: 3px;\\n\\t}\\n\\n\\t&.disabled {\\n\\t\\tfilter: grayscale(1);\\n\\t\\topacity: 0.5;\\n\\t\\tcursor: default;\\n\\t\\tbox-shadow: 0 0 3px var(--color-box-shadow);\\n\\n\\t\\t& *,\\n\\t\\t&::v-deep * {\\n\\t\\t\\tcursor: default;\\n\\t\\t}\\n\\t}\\n\\n\\t&__avatar {\\n\\t\\t// Override Avatar component position to fix positioning on rerender\\n\\t\\tposition: absolute !important;\\n\\t\\ttop: 40px;\\n\\t\\tleft: 18px;\\n\\t\\tz-index: 1;\\n\\n\\t\\t&:not(.avatardiv--unknown) {\\n\\t\\t\\tbox-shadow: 0 0 0 3px var(--color-main-background) !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&__header,\\n\\t&__footer {\\n\\t\\tposition: relative;\\n\\t\\twidth: auto;\\n\\n\\t\\tspan {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tleft: 78px;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\tword-break: break-all;\\n\\n\\t\\t\\t@supports (-webkit-line-clamp: 2) {\\n\\t\\t\\t\\tdisplay: -webkit-box;\\n\\t\\t\\t\\t-webkit-line-clamp: 2;\\n\\t\\t\\t\\t-webkit-box-orient: vertical;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__header {\\n\\t\\theight: 70px;\\n\\t\\tborder-radius: var(--border-radius-large) var(--border-radius-large) 0 0;\\n\\n\\t\\tspan {\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t\\tfont-size: 18px;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tmargin: 0 4px 8px 0;\\n\\t\\t}\\n\\t}\\n\\n\\t&__footer {\\n\\t\\theight: 46px;\\n\\n\\t\\tspan {\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tfont-size: 14px;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\tmargin: 4px 4px 0 0;\\n\\t\\t\\tline-height: 1.3;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-252753e6]{padding:10px 10px}section[data-v-252753e6] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileSection/ProfileSection.vue\"],\"names\":[],\"mappings\":\"AAkGA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-16df62f8]{padding:30px;max-width:100vw}section em[data-v-16df62f8]{display:block;margin:16px 0}section em.disabled[data-v-16df62f8]{filter:grayscale(1);opacity:.5;cursor:default;pointer-events:none}section em.disabled *[data-v-16df62f8],section em.disabled[data-v-16df62f8] *{cursor:default;pointer-events:none}section .visibility-dropdowns[data-v-16df62f8]{display:grid;gap:10px 40px}@media(min-width: 1200px){section[data-v-16df62f8]{width:940px}section .visibility-dropdowns[data-v-16df62f8]{grid-auto-flow:column}}@media(max-width: 1200px){section[data-v-16df62f8]{width:470px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue\"],\"names\":[],\"mappings\":\"AAyHA,yBACC,YAAA,CACA,eAAA,CAEA,4BACC,aAAA,CACA,aAAA,CAEA,qCACC,mBAAA,CACA,UAAA,CACA,cAAA,CACA,mBAAA,CAEA,8EAEC,cAAA,CACA,mBAAA,CAKH,+CACC,YAAA,CACA,aAAA,CAGD,0BA3BD,yBA4BE,WAAA,CAEA,+CACC,qBAAA,CAAA,CAIF,0BAnCD,yBAoCE,WAAA,CAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 30px;\\n\\tmax-width: 100vw;\\n\\n\\tem {\\n\\t\\tdisplay: block;\\n\\t\\tmargin: 16px 0;\\n\\n\\t\\t&.disabled {\\n\\t\\t\\tfilter: grayscale(1);\\n\\t\\t\\topacity: 0.5;\\n\\t\\t\\tcursor: default;\\n\\t\\t\\tpointer-events: none;\\n\\n\\t\\t\\t& *,\\n\\t\\t\\t&::v-deep * {\\n\\t\\t\\t\\tcursor: default;\\n\\t\\t\\t\\tpointer-events: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.visibility-dropdowns {\\n\\t\\tdisplay: grid;\\n\\t\\tgap: 10px 40px;\\n\\t}\\n\\n\\t@media (min-width: 1200px) {\\n\\t\\twidth: 940px;\\n\\n\\t\\t.visibility-dropdowns {\\n\\t\\t\\tgrid-auto-flow: column;\\n\\t\\t}\\n\\t}\\n\\n\\t@media (max-width: 1200px) {\\n\\t\\twidth: 470px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".visibility-container[data-v-4643b0e2]{display:flex;width:max-content}.visibility-container.disabled[data-v-4643b0e2]{filter:grayscale(1);opacity:.5;cursor:default;pointer-events:none}.visibility-container.disabled *[data-v-4643b0e2],.visibility-container.disabled[data-v-4643b0e2] *{cursor:default;pointer-events:none}.visibility-container label[data-v-4643b0e2]{color:var(--color-text-lighter);width:150px;line-height:50px}.visibility-container__multiselect[data-v-4643b0e2]{width:260px;max-width:40vw}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/VisibilityDropdown.vue\"],\"names\":[],\"mappings\":\"AAwJA,uCACC,YAAA,CACA,iBAAA,CAEA,gDACC,mBAAA,CACA,UAAA,CACA,cAAA,CACA,mBAAA,CAEA,oGAEC,cAAA,CACA,mBAAA,CAIF,6CACC,+BAAA,CACA,WAAA,CACA,gBAAA,CAGD,oDACC,WAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.visibility-container {\\n\\tdisplay: flex;\\n\\twidth: max-content;\\n\\n\\t&.disabled {\\n\\t\\tfilter: grayscale(1);\\n\\t\\topacity: 0.5;\\n\\t\\tcursor: default;\\n\\t\\tpointer-events: none;\\n\\n\\t\\t& *,\\n\\t\\t&::v-deep * {\\n\\t\\t\\tcursor: default;\\n\\t\\t\\tpointer-events: none;\\n\\t\\t}\\n\\t}\\n\\n\\tlabel {\\n\\t\\tcolor: var(--color-text-lighter);\\n\\t\\twidth: 150px;\\n\\t\\tline-height: 50px;\\n\\t}\\n\\n\\t&__multiselect {\\n\\t\\twidth: 260px;\\n\\t\\tmax-width: 40vw;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".role[data-v-aac18396]{display:grid;align-items:center}.role input[data-v-aac18396]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.role .role__actions-container[data-v-aac18396]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.role .role__actions-container .icon-checkmark[data-v-aac18396],.role .role__actions-container .icon-error[data-v-aac18396]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-aac18396],.fade-leave-to[data-v-aac18396]{opacity:0}.fade-enter-active[data-v-aac18396]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-aac18396]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/RoleSection/Role.vue\"],\"names\":[],\"mappings\":\"AAyHA,uBACC,YAAA,CACA,kBAAA,CAEA,6BACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,gDACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,4HAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.role {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.role__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-f3d959c2]{padding:10px 10px}section[data-v-f3d959c2] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/RoleSection/RoleSection.vue\"],\"names\":[],\"mappings\":\"AA6DA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"button[data-v-6ca08b3a]{height:44px;padding:0 16px;border:none;background-color:transparent}button .icon[data-v-6ca08b3a]{margin-right:8px}button[data-v-6ca08b3a]:enabled{opacity:.4 !important}button:enabled .icon[data-v-6ca08b3a]{opacity:.8 !important}button[data-v-6ca08b3a]:hover,button[data-v-6ca08b3a]:focus,button[data-v-6ca08b3a]:active{background-color:rgba(127,127,127,.15)}button[data-v-6ca08b3a]:enabled:hover,button[data-v-6ca08b3a]:enabled:focus,button[data-v-6ca08b3a]:enabled:active{background-color:rgba(127,127,127,.25);opacity:.8 !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/shared/AddButton.vue\"],\"names\":[],\"mappings\":\"AA4CA,wBACC,WAAA,CACA,cAAA,CACA,WAAA,CACA,4BAAA,CAEA,8BACC,gBAAA,CAGD,gCACC,qBAAA,CAEA,sCACC,qBAAA,CAIF,2FAGC,sCAAA,CAIA,mHAGC,sCAAA,CACA,qBAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nbutton {\\n\\theight: 44px;\\n\\tpadding: 0 16px;\\n\\tborder: none;\\n\\tbackground-color: transparent;\\n\\n\\t.icon {\\n\\t\\tmargin-right: 8px;\\n\\t}\\n\\n\\t&:enabled {\\n\\t\\topacity: 0.4 !important;\\n\\n\\t\\t.icon {\\n\\t\\t\\topacity: 0.8 !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\tbackground-color: rgba(127, 127, 127, .15);\\n\\t}\\n\\n\\t&:enabled {\\n\\t\\t&:hover,\\n\\t\\t&:focus,\\n\\t\\t&:active {\\n\\t\\t\\tbackground-color: rgba(127, 127, 127, .25);\\n\\t\\t\\topacity: 0.8 !important;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".federation-actions[data-v-b51d8bee],.federation-actions--additional[data-v-b51d8bee]{opacity:.4 !important}.federation-actions[data-v-b51d8bee]:hover,.federation-actions[data-v-b51d8bee]:focus,.federation-actions[data-v-b51d8bee]:active,.federation-actions--additional[data-v-b51d8bee]:hover,.federation-actions--additional[data-v-b51d8bee]:focus,.federation-actions--additional[data-v-b51d8bee]:active{opacity:.8 !important}.federation-actions--additional[data-v-b51d8bee] button{padding-bottom:7px;height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/shared/FederationControl.vue\"],\"names\":[],\"mappings\":\"AAsLA,sFAEC,qBAAA,CAEA,wSAGC,qBAAA,CAKD,wDAEC,kBAAA,CACA,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.federation-actions,\\n.federation-actions--additional {\\n\\topacity: 0.4 !important;\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\topacity: 0.8 !important;\\n\\t}\\n}\\n\\n.federation-actions--additional {\\n\\t&::v-deep button {\\n\\t\\t// TODO remove this hack\\n\\t\\tpadding-bottom: 7px;\\n\\t\\theight: 30px !important;\\n\\t\\tmin-height: 30px !important;\\n\\t\\twidth: 30px !important;\\n\\t\\tmin-width: 30px !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".federation-actions__btn[data-v-d2e8b360] p{width:150px !important;padding:8px 0 !important;color:var(--color-main-text) !important;font-size:12.8px !important;line-height:1.5em !important}.federation-actions__btn--active[data-v-d2e8b360]{background-color:var(--color-primary-light) !important;box-shadow:inset 2px 0 var(--color-primary) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/shared/FederationControlAction.vue\"],\"names\":[],\"mappings\":\"AA0FC,4CACC,sBAAA,CACA,wBAAA,CACA,uCAAA,CACA,2BAAA,CACA,4BAAA,CAIF,kDACC,sDAAA,CACA,sDAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.federation-actions__btn {\\n\\t&::v-deep p {\\n\\t\\twidth: 150px !important;\\n\\t\\tpadding: 8px 0 !important;\\n\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\tfont-size: 12.8px !important;\\n\\t\\tline-height: 1.5em !important;\\n\\t}\\n}\\n\\n.federation-actions__btn--active {\\n\\tbackground-color: var(--color-primary-light) !important;\\n\\tbox-shadow: inset 2px 0 var(--color-primary) !important;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"h3[data-v-1d3f5c52]{display:inline-flex;width:100%;margin:12px 0 0 0;font-size:16px;color:var(--color-text-light)}h3.profile-property[data-v-1d3f5c52]{height:38px}h3.setting-property[data-v-1d3f5c52]{height:32px}h3 label[data-v-1d3f5c52]{cursor:pointer}.federation-control[data-v-1d3f5c52]{margin:-12px 0 0 8px}.add-button[data-v-1d3f5c52]{margin:-12px 0 0 auto !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/shared/HeaderBar.vue\"],\"names\":[],\"mappings\":\"AAmHA,oBACC,mBAAA,CACA,UAAA,CACA,iBAAA,CACA,cAAA,CACA,6BAAA,CAEA,qCACC,WAAA,CAGD,qCACC,WAAA,CAGD,0BACC,cAAA,CAIF,qCACC,oBAAA,CAGD,6BACC,gCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nh3 {\\n\\tdisplay: inline-flex;\\n\\twidth: 100%;\\n\\tmargin: 12px 0 0 0;\\n\\tfont-size: 16px;\\n\\tcolor: var(--color-text-light);\\n\\n\\t&.profile-property {\\n\\t\\theight: 38px;\\n\\t}\\n\\n\\t&.setting-property {\\n\\t\\theight: 32px;\\n\\t}\\n\\n\\tlabel {\\n\\t\\tcursor: pointer;\\n\\t}\\n}\\n\\n.federation-control {\\n\\tmargin: -12px 0 0 8px;\\n}\\n\\n.add-button {\\n\\tmargin: -12px 0 0 auto !important;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 858;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t858: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [874], function() { return __webpack_require__(18115); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","getLoggerBuilder","setApp","detectUser","build","ACCOUNT_PROPERTY_ENUM","Object","freeze","ADDRESS","AVATAR","BIOGRAPHY","DISPLAYNAME","EMAIL_COLLECTION","EMAIL","HEADLINE","NOTIFICATION_EMAIL","ORGANISATION","PHONE","PROFILE_ENABLED","ROLE","TWITTER","WEBSITE","ACCOUNT_PROPERTY_READABLE_ENUM","t","PROFILE_READABLE_ENUM","PROFILE_VISIBILITY","PROPERTY_READABLE_KEYS_ENUM","ACCOUNT_SETTING_PROPERTY_ENUM","LANGUAGE","ACCOUNT_SETTING_PROPERTY_READABLE_ENUM","SCOPE_ENUM","PRIVATE","LOCAL","FEDERATED","PUBLISHED","PROPERTY_READABLE_SUPPORTED_SCOPES_ENUM","UNPUBLISHED_READABLE_PROPERTIES","SCOPE_SUFFIX","SCOPE_PROPERTY_ENUM","name","displayName","tooltip","tooltipDisabled","iconClass","DEFAULT_ADDITIONAL_EMAIL_SCOPE","VERIFICATION_ENUM","NOT_VERIFIED","VERIFICATION_IN_PROGRESS","VERIFIED","VALIDATE_EMAIL_REGEX","savePrimaryAccountProperty","accountProperty","value","userId","getCurrentUser","uid","url","generateOcsUrl","confirmPassword","axios","key","res","data","savePrimaryAccountPropertyScope","scope","validateStringInput","input","validateEmail","test","slice","length","encodeURIComponent","replace","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","domProps","on","onDisplayNameChange","_v","_e","_g","disabled","$listeners","_s","class","activeScope","isSupportedScope","$event","stopPropagation","preventDefault","updateScope","apply","arguments","additional","ariaLabel","scopeIcon","_l","federationScope","changeScope","supportedScopes","includes","isSettingProperty","isProfileProperty","labelFor","localScope","onScopeChange","isEditable","isMultiValueSupported","isValidSection","onAddAdditional","displayNameChangeSupported","primaryDisplayName","$set","savePrimaryEmail","email","saveAdditionalEmail","saveNotificationEmail","removeAdditionalEmail","collection","updateAdditionalEmail","prevEmail","newEmail","savePrimaryEmailScope","saveAdditionalEmailScope","collectionScope","ref","inputId","inputPlaceholder","onEmailChange","primary","federationDisabled","deleteDisabled","deleteEmailLabel","deleteEmail","isNotificationEmail","setNotificationMailLabel","setNotificationMailDisabled","setNotificationMail","primaryEmail","onAddAdditionalEmail","notificationEmail","onUpdateEmail","onUpdateNotificationEmail","additionalEmails","additionalEmail","index","parseInt","locallyVerified","onDeleteAdditionalEmail","code","undefined","onLanguageChange","commonLanguage","language","otherLanguage","commonLanguages","otherLanguages","profileEnabled","onEnableProfileChange","profilePageLink","organisation","onOrganisationChange","primaryOrganisation","role","onRoleChange","primaryRole","headline","onHeadlineChange","primaryHeadline","biography","onBiographyChange","primaryBiography","saveProfileParameterVisibility","paramId","visibility","VISIBILITY_ENUM","SHOW","SHOW_USERS_ONLY","HIDE","VISIBILITY_PROPERTY_ENUM","label","displayId","visibilityOptions","visibilityObject","onVisibilityChange","style","marginLeft","heading","gridTemplateRows","rows","param","id","__webpack_nonce__","btoa","getRequestToken","Vue","props","logger","methods","DisplayNameView","DisplayNameSection","EmailView","EmailSection","LanguageView","LanguageSection","ProfileView","ProfileSection","OrganisationView","OrganisationSection","RoleView","RoleSection","HeadlineView","HeadlineSection","BiographyView","BiographySection","ProfileVisibilityView","ProfileVisibilitySection","$mount","___CSS_LOADER_EXPORT___","push","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","amdD","Error","amdO","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","g","globalThis","Function","e","window","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","b","document","baseURI","self","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"settings-vue-settings-personal-info.js?v=ca30311813d1e4d6a319","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/settings/src/logger.js","webpack:///nextcloud/apps/settings/src/constants/AccountPropertyConstants.js","webpack:///nextcloud/apps/settings/src/service/PersonalInfo/PersonalInfoService.js","webpack:///nextcloud/apps/settings/src/utils/validate.js","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayName.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayName.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayName.vue?d91e","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayName.vue?aebc","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayName.vue?vue&type=template&id=3418897a&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/AddButton.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/AddButton.vue","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/shared/AddButton.vue?a74c","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/shared/AddButton.vue?3add","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/AddButton.vue?vue&type=template&id=6ca08b3a&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/FederationControlAction.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/FederationControlAction.vue","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/shared/FederationControlAction.vue?ca95","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/shared/FederationControlAction.vue?90b5","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/FederationControlAction.vue?vue&type=template&id=d2e8b360&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/FederationControl.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/FederationControl.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/shared/FederationControl.vue?6304","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/shared/FederationControl.vue?e342","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/FederationControl.vue?vue&type=template&id=b51d8bee&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/HeaderBar.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/HeaderBar.vue","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/shared/HeaderBar.vue?ba0b","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/shared/HeaderBar.vue?feed","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/HeaderBar.vue?vue&type=template&id=1d3f5c52&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayNameSection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayNameSection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayNameSection.vue?f577","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayNameSection.vue?f21f","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayNameSection.vue?vue&type=template&id=b8a748f4&scoped=true&","webpack:///nextcloud/apps/settings/src/service/PersonalInfo/EmailService.js","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/EmailSection/Email.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/EmailSection/Email.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/EmailSection/Email.vue?c98f","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/EmailSection/Email.vue?bd2c","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/EmailSection/Email.vue?vue&type=template&id=2c097054&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/EmailSection/EmailSection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/EmailSection/EmailSection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/EmailSection/EmailSection.vue?ff48","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/EmailSection/EmailSection.vue?1258","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/EmailSection/EmailSection.vue?vue&type=template&id=845b669e&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/LanguageSection/Language.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/LanguageSection/Language.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/LanguageSection/Language.vue?1e5a","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/LanguageSection/Language.vue?6358","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/LanguageSection/Language.vue?vue&type=template&id=5396d706&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/LanguageSection/LanguageSection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/LanguageSection/LanguageSection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/LanguageSection/LanguageSection.vue?47a6","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/LanguageSection/LanguageSection.vue?a350","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/LanguageSection/LanguageSection.vue?vue&type=template&id=16883898&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue?a0a7","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue?8473","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue?7d4b","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue?vue&type=template&id=73817e9f&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfileCheckbox.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfileCheckbox.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileSection/ProfileCheckbox.vue?7612","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfileCheckbox.vue?vue&type=template&id=b6898860&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfilePreviewCard.vue?vue&type=script&lang=js&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfilePreviewCard.vue","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileSection/ProfilePreviewCard.vue?9ff5","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileSection/ProfilePreviewCard.vue?240c","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfilePreviewCard.vue?vue&type=template&id=79bf7437&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfileSection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfileSection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileSection/ProfileSection.vue?6fa5","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileSection/ProfileSection.vue?c85f","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfileSection.vue?vue&type=template&id=252753e6&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/OrganisationSection/Organisation.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/OrganisationSection/Organisation.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/OrganisationSection/Organisation.vue?e2cd","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/OrganisationSection/Organisation.vue?29db","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/OrganisationSection/Organisation.vue?vue&type=template&id=591cd6b6&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/OrganisationSection/OrganisationSection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/OrganisationSection/OrganisationSection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/OrganisationSection/OrganisationSection.vue?7527","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/OrganisationSection/OrganisationSection.vue?647a","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/OrganisationSection/OrganisationSection.vue?vue&type=template&id=43146ff7&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/RoleSection/Role.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/RoleSection/Role.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/RoleSection/Role.vue?ce58","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/RoleSection/Role.vue?ec2b","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/RoleSection/Role.vue?vue&type=template&id=aac18396&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/RoleSection/RoleSection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/RoleSection/RoleSection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/RoleSection/RoleSection.vue?5af0","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/RoleSection/RoleSection.vue?dc70","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/RoleSection/RoleSection.vue?vue&type=template&id=f3d959c2&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/HeadlineSection/Headline.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/HeadlineSection/Headline.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/HeadlineSection/Headline.vue?1cf8","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/HeadlineSection/Headline.vue?f7d1","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/HeadlineSection/Headline.vue?vue&type=template&id=64e0e0bd&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/HeadlineSection/HeadlineSection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/HeadlineSection/HeadlineSection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/HeadlineSection/HeadlineSection.vue?d7b4","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/HeadlineSection/HeadlineSection.vue?5bd2","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/HeadlineSection/HeadlineSection.vue?vue&type=template&id=187bb5da&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/BiographySection/Biography.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/BiographySection/Biography.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/BiographySection/Biography.vue?8960","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/BiographySection/Biography.vue?57fe","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/BiographySection/Biography.vue?vue&type=template&id=0fbf56a9&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/BiographySection/BiographySection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/BiographySection/BiographySection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/BiographySection/BiographySection.vue?a1f3","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/BiographySection/BiographySection.vue?e305","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/BiographySection/BiographySection.vue?vue&type=template&id=cfa727da&scoped=true&","webpack:///nextcloud/apps/settings/src/service/ProfileService.js","webpack:///nextcloud/apps/settings/src/constants/ProfileConstants.js","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/VisibilityDropdown.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/VisibilityDropdown.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/VisibilityDropdown.vue?6b1e","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/VisibilityDropdown.vue?c222","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/VisibilityDropdown.vue?vue&type=template&id=4643b0e2&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue?vue&type=script&lang=js&","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue?d5ab","webpack://nextcloud/./apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue?7729","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue?vue&type=template&id=16df62f8&scoped=true&","webpack:///nextcloud/apps/settings/src/main-personal-info.js","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/BiographySection/Biography.vue?vue&type=style&index=0&id=0fbf56a9&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/BiographySection/BiographySection.vue?vue&type=style&index=0&id=cfa727da&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayName.vue?vue&type=style&index=0&id=3418897a&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayNameSection.vue?vue&type=style&index=0&id=b8a748f4&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/EmailSection/Email.vue?vue&type=style&index=0&id=2c097054&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/EmailSection/EmailSection.vue?vue&type=style&index=0&id=845b669e&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/HeadlineSection/Headline.vue?vue&type=style&index=0&id=64e0e0bd&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/HeadlineSection/HeadlineSection.vue?vue&type=style&index=0&id=187bb5da&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/LanguageSection/Language.vue?vue&type=style&index=0&id=5396d706&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/LanguageSection/LanguageSection.vue?vue&type=style&index=0&id=16883898&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/OrganisationSection/Organisation.vue?vue&type=style&index=0&id=591cd6b6&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/OrganisationSection/OrganisationSection.vue?vue&type=style&index=0&id=43146ff7&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue?vue&type=style&index=0&lang=scss&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue?vue&type=style&index=1&id=73817e9f&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfilePreviewCard.vue?vue&type=style&index=0&id=79bf7437&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileSection/ProfileSection.vue?vue&type=style&index=0&id=252753e6&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue?vue&type=style&index=0&id=16df62f8&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/VisibilityDropdown.vue?vue&type=style&index=0&id=4643b0e2&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/RoleSection/Role.vue?vue&type=style&index=0&id=aac18396&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/RoleSection/RoleSection.vue?vue&type=style&index=0&id=f3d959c2&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/AddButton.vue?vue&type=style&index=0&id=6ca08b3a&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/FederationControl.vue?vue&type=style&index=0&id=b51d8bee&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/FederationControlAction.vue?vue&type=style&index=0&id=d2e8b360&lang=scss&scoped=true&","webpack:///nextcloud/apps/settings/src/components/PersonalInfo/shared/HeaderBar.vue?vue&type=style&index=0&id=1d3f5c52&lang=scss&scoped=true&","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * @copyright 2020 Christoph Wurst \n *\n * @author Roeland Jago Douma \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('settings')\n\t.detectUser()\n\t.build()\n","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\n/*\n * SYNC to be kept in sync with `lib/public/Accounts/IAccountManager.php`\n */\n\nimport { translate as t } from '@nextcloud/l10n'\n\n/** Enum of account properties */\nexport const ACCOUNT_PROPERTY_ENUM = Object.freeze({\n\tADDRESS: 'address',\n\tAVATAR: 'avatar',\n\tBIOGRAPHY: 'biography',\n\tDISPLAYNAME: 'displayname',\n\tEMAIL_COLLECTION: 'additional_mail',\n\tEMAIL: 'email',\n\tHEADLINE: 'headline',\n\tNOTIFICATION_EMAIL: 'notify_email',\n\tORGANISATION: 'organisation',\n\tPHONE: 'phone',\n\tPROFILE_ENABLED: 'profile_enabled',\n\tROLE: 'role',\n\tTWITTER: 'twitter',\n\tWEBSITE: 'website',\n})\n\n/** Enum of account properties to human readable account property names */\nexport const ACCOUNT_PROPERTY_READABLE_ENUM = Object.freeze({\n\tADDRESS: t('settings', 'Address'),\n\tAVATAR: t('settings', 'Avatar'),\n\tBIOGRAPHY: t('settings', 'About'),\n\tDISPLAYNAME: t('settings', 'Full name'),\n\tEMAIL_COLLECTION: t('settings', 'Additional email'),\n\tEMAIL: t('settings', 'Email'),\n\tHEADLINE: t('settings', 'Headline'),\n\tORGANISATION: t('settings', 'Organisation'),\n\tPHONE: t('settings', 'Phone number'),\n\tPROFILE_ENABLED: t('settings', 'Profile'),\n\tROLE: t('settings', 'Role'),\n\tTWITTER: t('settings', 'Twitter'),\n\tWEBSITE: t('settings', 'Website'),\n})\n\n/** Enum of profile specific sections to human readable names */\nexport const PROFILE_READABLE_ENUM = Object.freeze({\n\tPROFILE_VISIBILITY: t('settings', 'Profile visibility'),\n})\n\n/** Enum of readable account properties to account property keys used by the server */\nexport const PROPERTY_READABLE_KEYS_ENUM = Object.freeze({\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ADDRESS]: ACCOUNT_PROPERTY_ENUM.ADDRESS,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.AVATAR]: ACCOUNT_PROPERTY_ENUM.AVATAR,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.BIOGRAPHY]: ACCOUNT_PROPERTY_ENUM.BIOGRAPHY,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.DISPLAYNAME]: ACCOUNT_PROPERTY_ENUM.DISPLAYNAME,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL_COLLECTION]: ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL]: ACCOUNT_PROPERTY_ENUM.EMAIL,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.HEADLINE]: ACCOUNT_PROPERTY_ENUM.HEADLINE,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ORGANISATION]: ACCOUNT_PROPERTY_ENUM.ORGANISATION,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.PHONE]: ACCOUNT_PROPERTY_ENUM.PHONE,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.PROFILE_ENABLED]: ACCOUNT_PROPERTY_ENUM.PROFILE_ENABLED,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ROLE]: ACCOUNT_PROPERTY_ENUM.ROLE,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.TWITTER]: ACCOUNT_PROPERTY_ENUM.TWITTER,\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.WEBSITE]: ACCOUNT_PROPERTY_ENUM.WEBSITE,\n})\n\n/**\n * Enum of account setting properties\n *\n * Account setting properties unlike account properties do not support scopes*\n */\nexport const ACCOUNT_SETTING_PROPERTY_ENUM = Object.freeze({\n\tLANGUAGE: 'language',\n})\n\n/** Enum of account setting properties to human readable setting properties */\nexport const ACCOUNT_SETTING_PROPERTY_READABLE_ENUM = Object.freeze({\n\tLANGUAGE: t('settings', 'Language'),\n})\n\n/** Enum of scopes */\nexport const SCOPE_ENUM = Object.freeze({\n\tPRIVATE: 'v2-private',\n\tLOCAL: 'v2-local',\n\tFEDERATED: 'v2-federated',\n\tPUBLISHED: 'v2-published',\n})\n\n/** Enum of readable account properties to supported scopes */\nexport const PROPERTY_READABLE_SUPPORTED_SCOPES_ENUM = Object.freeze({\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ADDRESS]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.AVATAR]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.BIOGRAPHY]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.DISPLAYNAME]: [SCOPE_ENUM.LOCAL],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL_COLLECTION]: [SCOPE_ENUM.LOCAL],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.EMAIL]: [SCOPE_ENUM.LOCAL],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.HEADLINE]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ORGANISATION]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.PHONE]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.PROFILE_ENABLED]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.ROLE]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.TWITTER]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n\t[ACCOUNT_PROPERTY_READABLE_ENUM.WEBSITE]: [SCOPE_ENUM.LOCAL, SCOPE_ENUM.PRIVATE],\n})\n\n/** List of readable account properties which aren't published to the lookup server */\nexport const UNPUBLISHED_READABLE_PROPERTIES = Object.freeze([\n\tACCOUNT_PROPERTY_READABLE_ENUM.BIOGRAPHY,\n\tACCOUNT_PROPERTY_READABLE_ENUM.HEADLINE,\n\tACCOUNT_PROPERTY_READABLE_ENUM.ORGANISATION,\n\tACCOUNT_PROPERTY_READABLE_ENUM.ROLE,\n])\n\n/** Scope suffix */\nexport const SCOPE_SUFFIX = 'Scope'\n\n/**\n * Enum of scope names to properties\n *\n * Used for federation control*\n */\nexport const SCOPE_PROPERTY_ENUM = Object.freeze({\n\t[SCOPE_ENUM.PRIVATE]: {\n\t\tname: SCOPE_ENUM.PRIVATE,\n\t\tdisplayName: t('settings', 'Private'),\n\t\ttooltip: t('settings', 'Only visible to people matched via phone number integration through Talk on mobile'),\n\t\ttooltipDisabled: t('settings', 'Not available as this property is required for core functionality including file sharing and calendar invitations'),\n\t\ticonClass: 'icon-phone',\n\t},\n\t[SCOPE_ENUM.LOCAL]: {\n\t\tname: SCOPE_ENUM.LOCAL,\n\t\tdisplayName: t('settings', 'Local'),\n\t\ttooltip: t('settings', 'Only visible to people on this instance and guests'),\n\t\t// tooltipDisabled is not required here as this scope is supported by all account properties\n\t\ticonClass: 'icon-password',\n\t},\n\t[SCOPE_ENUM.FEDERATED]: {\n\t\tname: SCOPE_ENUM.FEDERATED,\n\t\tdisplayName: t('settings', 'Federated'),\n\t\ttooltip: t('settings', 'Only synchronize to trusted servers'),\n\t\ttooltipDisabled: t('settings', 'Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions'),\n\t\ticonClass: 'icon-contacts-dark',\n\t},\n\t[SCOPE_ENUM.PUBLISHED]: {\n\t\tname: SCOPE_ENUM.PUBLISHED,\n\t\tdisplayName: t('settings', 'Published'),\n\t\ttooltip: t('settings', 'Synchronize to trusted servers and the global and public address book'),\n\t\ttooltipDisabled: t('settings', 'Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions'),\n\t\ticonClass: 'icon-link',\n\t},\n})\n\n/** Default additional email scope */\nexport const DEFAULT_ADDITIONAL_EMAIL_SCOPE = SCOPE_ENUM.LOCAL\n\n/** Enum of verification constants, according to IAccountManager */\nexport const VERIFICATION_ENUM = Object.freeze({\n\tNOT_VERIFIED: 0,\n\tVERIFICATION_IN_PROGRESS: 1,\n\tVERIFIED: 2,\n})\n\n/**\n * Email validation regex\n *\n * Sourced from https://github.com/mpyw/FILTER_VALIDATE_EMAIL.js/blob/71e62ca48841d2246a1b531e7e84f5a01f15e615/src/regexp/ascii.ts*\n */\n// eslint-disable-next-line no-control-regex\nexport const VALIDATE_EMAIL_REGEX = /^(?!(?:(?:\\x22?\\x5C[\\x00-\\x7E]\\x22?)|(?:\\x22?[^\\x5C\\x22]\\x22?)){255,})(?!(?:(?:\\x22?\\x5C[\\x00-\\x7E]\\x22?)|(?:\\x22?[^\\x5C\\x22]\\x22?)){65,}@)(?:(?:[\\x21\\x23-\\x27\\x2A\\x2B\\x2D\\x2F-\\x39\\x3D\\x3F\\x5E-\\x7E]+)|(?:\\x22(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x21\\x23-\\x5B\\x5D-\\x7F]|(?:\\x5C[\\x00-\\x7F]))*\\x22))(?:\\.(?:(?:[\\x21\\x23-\\x27\\x2A\\x2B\\x2D\\x2F-\\x39\\x3D\\x3F\\x5E-\\x7E]+)|(?:\\x22(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x21\\x23-\\x5B\\x5D-\\x7F]|(?:\\x5C[\\x00-\\x7F]))*\\x22)))*@(?:(?:(?!.*[^.]{64,})(?:(?:(?:xn--)?[a-z0-9]+(?:-+[a-z0-9]+)*\\.){1,126}){1,}(?:(?:[a-z][a-z0-9]*)|(?:(?:xn--)[a-z0-9]+))(?:-+[a-z0-9]+)*)|(?:\\[(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){7})|(?:(?!(?:.*[a-f0-9][:\\]]){7,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?)))|(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){5}:)|(?:(?!(?:.*[a-f0-9]:){5,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3}:)?)))?(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))(?:\\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))){3}))\\]))$/i\n","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport confirmPassword from '@nextcloud/password-confirmation'\n\nimport { SCOPE_SUFFIX } from '../../constants/AccountPropertyConstants'\n\n/**\n * Save the primary account property value for the user\n *\n * @param {string} accountProperty the account property\n * @param {string|boolean} value the primary value\n * @return {object}\n */\nexport const savePrimaryAccountProperty = async (accountProperty, value) => {\n\t// TODO allow boolean values on backend route handler\n\t// Convert boolean to string for compatibility\n\tif (typeof value === 'boolean') {\n\t\tvalue = value ? '1' : '0'\n\t}\n\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: accountProperty,\n\t\tvalue,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save the federation scope of the primary account property for the user\n *\n * @param {string} accountProperty the account property\n * @param {string} scope the federation scope\n * @return {object}\n */\nexport const savePrimaryAccountPropertyScope = async (accountProperty, scope) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: `${accountProperty}${SCOPE_SUFFIX}`,\n\t\tvalue: scope,\n\t})\n\n\treturn res.data\n}\n","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\n/*\n * Frontend validators, less strict than backend validators\n *\n * TODO add nice validation errors for Profile page settings modal\n */\n\nimport { VALIDATE_EMAIL_REGEX } from '../constants/AccountPropertyConstants'\n\n/**\n * Validate the string input\n *\n * Generic validator just to check that input is not an empty string*\n *\n * @param {string} input the input\n * @return {boolean}\n */\nexport function validateStringInput(input) {\n\treturn input !== ''\n}\n\n/**\n * Validate the email input\n *\n * Compliant with PHP core FILTER_VALIDATE_EMAIL validator*\n *\n * Reference implementation https://github.com/mpyw/FILTER_VALIDATE_EMAIL.js/blob/71e62ca48841d2246a1b531e7e84f5a01f15e615/src/index.ts*\n *\n * @param {string} input the input\n * @return {boolean}\n */\nexport function validateEmail(input) {\n\treturn typeof input === 'string'\n\t\t&& VALIDATE_EMAIL_REGEX.test(input)\n\t\t&& input.slice(-1) !== '\\n'\n\t\t&& input.length <= 320\n\t\t&& encodeURIComponent(input).replace(/%../g, 'x').length <= 320\n}\n\n/**\n * Validate the language input\n *\n * @param {object} input the input\n * @return {boolean}\n */\nexport function validateLanguage(input) {\n\treturn input.code !== ''\n\t\t&& input.name !== ''\n\t\t&& input.name !== undefined\n}\n\n/**\n * Validate boolean input\n *\n * @param {boolean} input the input\n * @return {boolean}\n */\nexport function validateBoolean(input) {\n\treturn typeof input === 'boolean'\n}\n","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayName.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!./DisplayName.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayName.vue?vue&type=style&index=0&id=3418897a&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayName.vue?vue&type=style&index=0&id=3418897a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DisplayName.vue?vue&type=template&id=3418897a&scoped=true&\"\nimport script from \"./DisplayName.vue?vue&type=script&lang=js&\"\nexport * from \"./DisplayName.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DisplayName.vue?vue&type=style&index=0&id=3418897a&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 \"3418897a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"displayname\"},[_c('input',{attrs:{\"id\":\"displayname\",\"type\":\"text\",\"placeholder\":_vm.t('settings', 'Your full name'),\"autocapitalize\":\"none\",\"autocomplete\":\"on\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.displayName},on:{\"input\":_vm.onDisplayNameChange}}),_vm._v(\" \"),_c('div',{staticClass:\"displayname__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddButton.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!./AddButton.vue?vue&type=script&lang=js&\"","\n\n\n\t\n\n\n\n\n\n","\n import API from \"!../../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddButton.vue?vue&type=style&index=0&id=6ca08b3a&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AddButton.vue?vue&type=style&index=0&id=6ca08b3a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./AddButton.vue?vue&type=template&id=6ca08b3a&scoped=true&\"\nimport script from \"./AddButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AddButton.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AddButton.vue?vue&type=style&index=0&id=6ca08b3a&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 \"6ca08b3a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',_vm._g({attrs:{\"disabled\":_vm.disabled}},_vm.$listeners),[_c('span',{staticClass:\"icon icon-add\"}),_vm._v(\"\\n\\t\"+_vm._s(_vm.t('settings', 'Add'))+\"\\n\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControlAction.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!./FederationControlAction.vue?vue&type=script&lang=js&\"","\n\n\n\t\n\t\t{{ isSupportedScope ? tooltip : tooltipDisabled }}\n\t\n\n\n\n\n\n","\n import API from \"!../../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControlAction.vue?vue&type=style&index=0&id=d2e8b360&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControlAction.vue?vue&type=style&index=0&id=d2e8b360&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FederationControlAction.vue?vue&type=template&id=d2e8b360&scoped=true&\"\nimport script from \"./FederationControlAction.vue?vue&type=script&lang=js&\"\nexport * from \"./FederationControlAction.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FederationControlAction.vue?vue&type=style&index=0&id=d2e8b360&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 \"d2e8b360\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ActionButton',{staticClass:\"federation-actions__btn\",class:{ 'federation-actions__btn--active': _vm.activeScope === _vm.name },attrs:{\"aria-label\":_vm.isSupportedScope ? _vm.tooltip : _vm.tooltipDisabled,\"close-after-click\":true,\"disabled\":!_vm.isSupportedScope,\"icon\":_vm.iconClass,\"title\":_vm.displayName},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.updateScope.apply(null, arguments)}}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.isSupportedScope ? _vm.tooltip : _vm.tooltipDisabled)+\"\\n\")])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControl.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!./FederationControl.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControl.vue?vue&type=style&index=0&id=b51d8bee&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FederationControl.vue?vue&type=style&index=0&id=b51d8bee&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FederationControl.vue?vue&type=template&id=b51d8bee&scoped=true&\"\nimport script from \"./FederationControl.vue?vue&type=script&lang=js&\"\nexport * from \"./FederationControl.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FederationControl.vue?vue&type=style&index=0&id=b51d8bee&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 \"b51d8bee\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Actions',{class:{ 'federation-actions': !_vm.additional, 'federation-actions--additional': _vm.additional },attrs:{\"aria-label\":_vm.ariaLabel,\"default-icon\":_vm.scopeIcon,\"disabled\":_vm.disabled}},_vm._l((_vm.federationScopes),function(federationScope){return _c('FederationControlAction',{key:federationScope.name,attrs:{\"active-scope\":_vm.scope,\"display-name\":federationScope.displayName,\"handle-scope-change\":_vm.changeScope,\"icon-class\":federationScope.iconClass,\"is-supported-scope\":_vm.supportedScopes.includes(federationScope.name),\"name\":federationScope.name,\"tooltip-disabled\":federationScope.tooltipDisabled,\"tooltip\":federationScope.tooltip}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderBar.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!./HeaderBar.vue?vue&type=script&lang=js&\"","\n\n\n\t
\n\n\n\n\n\n","\n import API from \"!../../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderBar.vue?vue&type=style&index=0&id=1d3f5c52&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderBar.vue?vue&type=style&index=0&id=1d3f5c52&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeaderBar.vue?vue&type=template&id=1d3f5c52&scoped=true&\"\nimport script from \"./HeaderBar.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderBar.vue?vue&type=style&index=0&id=1d3f5c52&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 \"1d3f5c52\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h3',{class:{ 'setting-property': _vm.isSettingProperty, 'profile-property': _vm.isProfileProperty }},[_c('label',{attrs:{\"for\":_vm.labelFor}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.accountProperty)+\"\\n\\t\")]),_vm._v(\" \"),(_vm.scope)?[_c('FederationControl',{staticClass:\"federation-control\",attrs:{\"account-property\":_vm.accountProperty,\"scope\":_vm.localScope},on:{\"update:scope\":[function($event){_vm.localScope=$event},_vm.onScopeChange]}})]:_vm._e(),_vm._v(\" \"),(_vm.isEditable && _vm.isMultiValueSupported)?[_c('AddButton',{staticClass:\"add-button\",attrs:{\"disabled\":!_vm.isValidSection},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.onAddAdditional.apply(null, arguments)}}})]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t{{ primaryDisplayName.value || t('settings', 'No full name set') }}\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayNameSection.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!./DisplayNameSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayNameSection.vue?vue&type=style&index=0&id=b8a748f4&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DisplayNameSection.vue?vue&type=style&index=0&id=b8a748f4&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DisplayNameSection.vue?vue&type=template&id=b8a748f4&scoped=true&\"\nimport script from \"./DisplayNameSection.vue?vue&type=script&lang=js&\"\nexport * from \"./DisplayNameSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DisplayNameSection.vue?vue&type=style&index=0&id=b8a748f4&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 \"b8a748f4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"displayname\",\"is-editable\":_vm.displayNameChangeSupported,\"is-valid-section\":_vm.isValidSection,\"scope\":_vm.primaryDisplayName.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryDisplayName, \"scope\", $event)}}}),_vm._v(\" \"),(_vm.displayNameChangeSupported)?[_c('DisplayName',{attrs:{\"display-name\":_vm.primaryDisplayName.value,\"scope\":_vm.primaryDisplayName.scope},on:{\"update:displayName\":function($event){return _vm.$set(_vm.primaryDisplayName, \"value\", $event)},\"update:display-name\":function($event){return _vm.$set(_vm.primaryDisplayName, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryDisplayName, \"scope\", $event)}}})]:_c('span',[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.primaryDisplayName.value || _vm.t('settings', 'No full name set'))+\"\\n\\t\")])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport confirmPassword from '@nextcloud/password-confirmation'\n\nimport { ACCOUNT_PROPERTY_ENUM, SCOPE_SUFFIX } from '../../constants/AccountPropertyConstants'\n\n/**\n * Save the primary email of the user\n *\n * @param {string} email the primary email\n * @return {object}\n */\nexport const savePrimaryEmail = async (email) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: ACCOUNT_PROPERTY_ENUM.EMAIL,\n\t\tvalue: email,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save an additional email of the user\n *\n * Will be appended to the user's additional emails*\n *\n * @param {string} email the additional email\n * @return {object}\n */\nexport const saveAdditionalEmail = async (email) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION,\n\t\tvalue: email,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save the notification email of the user\n *\n * @param {string} email the notification email\n * @return {object}\n */\nexport const saveNotificationEmail = async (email) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: ACCOUNT_PROPERTY_ENUM.NOTIFICATION_EMAIL,\n\t\tvalue: email,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Remove an additional email of the user\n *\n * @param {string} email the additional email\n * @return {object}\n */\nexport const removeAdditionalEmail = async (email) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}/{collection}', { userId, collection: ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: email,\n\t\tvalue: '',\n\t})\n\n\treturn res.data\n}\n\n/**\n * Update an additional email of the user\n *\n * @param {string} prevEmail the additional email to be updated\n * @param {string} newEmail the new additional email\n * @return {object}\n */\nexport const updateAdditionalEmail = async (prevEmail, newEmail) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}/{collection}', { userId, collection: ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: prevEmail,\n\t\tvalue: newEmail,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save the federation scope for the primary email of the user\n *\n * @param {string} scope the federation scope\n * @return {object}\n */\nexport const savePrimaryEmailScope = async (scope) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: `${ACCOUNT_PROPERTY_ENUM.EMAIL}${SCOPE_SUFFIX}`,\n\t\tvalue: scope,\n\t})\n\n\treturn res.data\n}\n\n/**\n * Save the federation scope for the additional email of the user\n *\n * @param {string} email the additional email\n * @param {string} scope the federation scope\n * @return {object}\n */\nexport const saveAdditionalEmailScope = async (email, scope) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('cloud/users/{userId}/{collectionScope}', { userId, collectionScope: `${ACCOUNT_PROPERTY_ENUM.EMAIL_COLLECTION}${SCOPE_SUFFIX}` })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tkey: email,\n\t\tvalue: scope,\n\t})\n\n\treturn res.data\n}\n","\n\n\n\t
\n\t\t\n\t\n\n\n\n\n\n","\n import API from \"!../../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfilePreviewCard.vue?vue&type=style&index=0&id=79bf7437&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfilePreviewCard.vue?vue&type=style&index=0&id=79bf7437&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ProfilePreviewCard.vue?vue&type=template&id=79bf7437&scoped=true&\"\nimport script from \"./ProfilePreviewCard.vue?vue&type=script&lang=js&\"\nexport * from \"./ProfilePreviewCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProfilePreviewCard.vue?vue&type=style&index=0&id=79bf7437&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 \"79bf7437\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{staticClass:\"preview-card\",class:{ disabled: _vm.disabled },attrs:{\"href\":_vm.profilePageLink}},[_c('Avatar',{staticClass:\"preview-card__avatar\",attrs:{\"user\":_vm.userId,\"size\":48,\"show-user-status\":true,\"show-user-status-compact\":false,\"disable-menu\":true,\"disable-tooltip\":true}}),_vm._v(\" \"),_c('div',{staticClass:\"preview-card__header\"},[_c('span',[_vm._v(_vm._s(_vm.displayName))])]),_vm._v(\" \"),_c('div',{staticClass:\"preview-card__footer\"},[_c('span',[_vm._v(_vm._s(_vm.organisation))])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileSection.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!./ProfileSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileSection.vue?vue&type=style&index=0&id=252753e6&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileSection.vue?vue&type=style&index=0&id=252753e6&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ProfileSection.vue?vue&type=template&id=252753e6&scoped=true&\"\nimport script from \"./ProfileSection.vue?vue&type=script&lang=js&\"\nexport * from \"./ProfileSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProfileSection.vue?vue&type=style&index=0&id=252753e6&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 \"252753e6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty}}),_vm._v(\" \"),_c('ProfileCheckbox',{attrs:{\"profile-enabled\":_vm.profileEnabled},on:{\"update:profileEnabled\":function($event){_vm.profileEnabled=$event},\"update:profile-enabled\":function($event){_vm.profileEnabled=$event}}}),_vm._v(\" \"),_c('ProfilePreviewCard',{attrs:{\"organisation\":_vm.organisation,\"display-name\":_vm.displayName,\"profile-enabled\":_vm.profileEnabled,\"user-id\":_vm.userId}}),_vm._v(\" \"),_c('EditProfileAnchorLink',{attrs:{\"profile-enabled\":_vm.profileEnabled}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Organisation.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!./Organisation.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Organisation.vue?vue&type=style&index=0&id=591cd6b6&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Organisation.vue?vue&type=style&index=0&id=591cd6b6&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Organisation.vue?vue&type=template&id=591cd6b6&scoped=true&\"\nimport script from \"./Organisation.vue?vue&type=script&lang=js&\"\nexport * from \"./Organisation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Organisation.vue?vue&type=style&index=0&id=591cd6b6&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 \"591cd6b6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"organisation\"},[_c('input',{attrs:{\"id\":\"organisation\",\"type\":\"text\",\"placeholder\":_vm.t('settings', 'Your organisation'),\"autocapitalize\":\"none\",\"autocomplete\":\"on\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.organisation},on:{\"input\":_vm.onOrganisationChange}}),_vm._v(\" \"),_c('div',{staticClass:\"organisation__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrganisationSection.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!./OrganisationSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrganisationSection.vue?vue&type=style&index=0&id=43146ff7&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OrganisationSection.vue?vue&type=style&index=0&id=43146ff7&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./OrganisationSection.vue?vue&type=template&id=43146ff7&scoped=true&\"\nimport script from \"./OrganisationSection.vue?vue&type=script&lang=js&\"\nexport * from \"./OrganisationSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OrganisationSection.vue?vue&type=style&index=0&id=43146ff7&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 \"43146ff7\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"organisation\",\"scope\":_vm.primaryOrganisation.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryOrganisation, \"scope\", $event)}}}),_vm._v(\" \"),_c('Organisation',{attrs:{\"organisation\":_vm.primaryOrganisation.value,\"scope\":_vm.primaryOrganisation.scope},on:{\"update:organisation\":function($event){return _vm.$set(_vm.primaryOrganisation, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryOrganisation, \"scope\", $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Role.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!./Role.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Role.vue?vue&type=style&index=0&id=aac18396&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Role.vue?vue&type=style&index=0&id=aac18396&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Role.vue?vue&type=template&id=aac18396&scoped=true&\"\nimport script from \"./Role.vue?vue&type=script&lang=js&\"\nexport * from \"./Role.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Role.vue?vue&type=style&index=0&id=aac18396&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 \"aac18396\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"role\"},[_c('input',{attrs:{\"id\":\"role\",\"type\":\"text\",\"placeholder\":_vm.t('settings', 'Your role'),\"autocapitalize\":\"none\",\"autocomplete\":\"on\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.role},on:{\"input\":_vm.onRoleChange}}),_vm._v(\" \"),_c('div',{staticClass:\"role__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RoleSection.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!./RoleSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RoleSection.vue?vue&type=style&index=0&id=f3d959c2&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RoleSection.vue?vue&type=style&index=0&id=f3d959c2&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./RoleSection.vue?vue&type=template&id=f3d959c2&scoped=true&\"\nimport script from \"./RoleSection.vue?vue&type=script&lang=js&\"\nexport * from \"./RoleSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RoleSection.vue?vue&type=style&index=0&id=f3d959c2&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 \"f3d959c2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"role\",\"scope\":_vm.primaryRole.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryRole, \"scope\", $event)}}}),_vm._v(\" \"),_c('Role',{attrs:{\"role\":_vm.primaryRole.value,\"scope\":_vm.primaryRole.scope},on:{\"update:role\":function($event){return _vm.$set(_vm.primaryRole, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryRole, \"scope\", $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Headline.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!./Headline.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Headline.vue?vue&type=style&index=0&id=64e0e0bd&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Headline.vue?vue&type=style&index=0&id=64e0e0bd&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Headline.vue?vue&type=template&id=64e0e0bd&scoped=true&\"\nimport script from \"./Headline.vue?vue&type=script&lang=js&\"\nexport * from \"./Headline.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Headline.vue?vue&type=style&index=0&id=64e0e0bd&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 \"64e0e0bd\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"headline\"},[_c('input',{attrs:{\"id\":\"headline\",\"type\":\"text\",\"placeholder\":_vm.t('settings', 'Your headline'),\"autocapitalize\":\"none\",\"autocomplete\":\"on\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.headline},on:{\"input\":_vm.onHeadlineChange}}),_vm._v(\" \"),_c('div',{staticClass:\"headline__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeadlineSection.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!./HeadlineSection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeadlineSection.vue?vue&type=style&index=0&id=187bb5da&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeadlineSection.vue?vue&type=style&index=0&id=187bb5da&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./HeadlineSection.vue?vue&type=template&id=187bb5da&scoped=true&\"\nimport script from \"./HeadlineSection.vue?vue&type=script&lang=js&\"\nexport * from \"./HeadlineSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeadlineSection.vue?vue&type=style&index=0&id=187bb5da&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 \"187bb5da\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"headline\",\"scope\":_vm.primaryHeadline.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryHeadline, \"scope\", $event)}}}),_vm._v(\" \"),_c('Headline',{attrs:{\"headline\":_vm.primaryHeadline.value,\"scope\":_vm.primaryHeadline.scope},on:{\"update:headline\":function($event){return _vm.$set(_vm.primaryHeadline, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryHeadline, \"scope\", $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t
\n\t\t\n\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Biography.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!./Biography.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Biography.vue?vue&type=style&index=0&id=0fbf56a9&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Biography.vue?vue&type=style&index=0&id=0fbf56a9&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Biography.vue?vue&type=template&id=0fbf56a9&scoped=true&\"\nimport script from \"./Biography.vue?vue&type=script&lang=js&\"\nexport * from \"./Biography.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Biography.vue?vue&type=style&index=0&id=0fbf56a9&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 \"0fbf56a9\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"biography\"},[_c('textarea',{attrs:{\"id\":\"biography\",\"placeholder\":_vm.t('settings', 'Your biography'),\"rows\":\"8\",\"autocapitalize\":\"none\",\"autocomplete\":\"off\",\"autocorrect\":\"off\"},domProps:{\"value\":_vm.biography},on:{\"input\":_vm.onBiographyChange}}),_vm._v(\" \"),_c('div',{staticClass:\"biography__actions-container\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showCheckmarkIcon)?_c('span',{staticClass:\"icon-checkmark\"}):(_vm.showErrorIcon)?_c('span',{staticClass:\"icon-error\"}):_vm._e()])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\t\n\n\t\t\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BiographySection.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!./BiographySection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BiographySection.vue?vue&type=style&index=0&id=cfa727da&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BiographySection.vue?vue&type=style&index=0&id=cfa727da&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BiographySection.vue?vue&type=template&id=cfa727da&scoped=true&\"\nimport script from \"./BiographySection.vue?vue&type=script&lang=js&\"\nexport * from \"./BiographySection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BiographySection.vue?vue&type=style&index=0&id=cfa727da&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 \"cfa727da\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',[_c('HeaderBar',{attrs:{\"account-property\":_vm.accountProperty,\"label-for\":\"biography\",\"scope\":_vm.primaryBiography.scope},on:{\"update:scope\":function($event){return _vm.$set(_vm.primaryBiography, \"scope\", $event)}}}),_vm._v(\" \"),_c('Biography',{attrs:{\"biography\":_vm.primaryBiography.value,\"scope\":_vm.primaryBiography.scope},on:{\"update:biography\":function($event){return _vm.$set(_vm.primaryBiography, \"value\", $event)},\"update:scope\":function($event){return _vm.$set(_vm.primaryBiography, \"scope\", $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2021 Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport confirmPassword from '@nextcloud/password-confirmation'\n\n/**\n * Save the visibility of the profile parameter\n *\n * @param {string} paramId the profile parameter ID\n * @param {string} visibility the visibility\n * @return {object}\n */\nexport const saveProfileParameterVisibility = async (paramId, visibility) => {\n\tconst userId = getCurrentUser().uid\n\tconst url = generateOcsUrl('/profile/{userId}', { userId })\n\n\tawait confirmPassword()\n\n\tconst res = await axios.put(url, {\n\t\tparamId,\n\t\tvisibility,\n\t})\n\n\treturn res.data\n}\n","/**\n * @copyright 2021 Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\n/*\n * SYNC to be kept in sync with `core/Db/ProfileConfig.php`\n */\n\n/** Enum of profile visibility constants */\nexport const VISIBILITY_ENUM = Object.freeze({\n\tSHOW: 'show',\n\tSHOW_USERS_ONLY: 'show_users_only',\n\tHIDE: 'hide',\n})\n\n/**\n * Enum of profile visibility constants to properties\n */\nexport const VISIBILITY_PROPERTY_ENUM = Object.freeze({\n\t[VISIBILITY_ENUM.SHOW]: {\n\t\tname: VISIBILITY_ENUM.SHOW,\n\t\tlabel: t('settings', 'Show to everyone'),\n\t},\n\t[VISIBILITY_ENUM.SHOW_USERS_ONLY]: {\n\t\tname: VISIBILITY_ENUM.SHOW_USERS_ONLY,\n\t\tlabel: t('settings', 'Show to logged in users only'),\n\t},\n\t[VISIBILITY_ENUM.HIDE]: {\n\t\tname: VISIBILITY_ENUM.HIDE,\n\t\tlabel: t('settings', 'Hide'),\n\t},\n})\n","\n\n\n\t
\n\t\t\n\t\t\n\t
\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VisibilityDropdown.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!./VisibilityDropdown.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VisibilityDropdown.vue?vue&type=style&index=0&id=4643b0e2&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VisibilityDropdown.vue?vue&type=style&index=0&id=4643b0e2&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./VisibilityDropdown.vue?vue&type=template&id=4643b0e2&scoped=true&\"\nimport script from \"./VisibilityDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./VisibilityDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VisibilityDropdown.vue?vue&type=style&index=0&id=4643b0e2&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 \"4643b0e2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"visibility-container\",class:{ disabled: _vm.disabled }},[_c('label',{attrs:{\"for\":_vm.inputId}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('settings', '{displayId}', { displayId: _vm.displayId }))+\"\\n\\t\")]),_vm._v(\" \"),_c('Multiselect',{staticClass:\"visibility-container__multiselect\",attrs:{\"id\":_vm.inputId,\"options\":_vm.visibilityOptions,\"track-by\":\"name\",\"label\":\"label\",\"value\":_vm.visibilityObject},on:{\"change\":_vm.onVisibilityChange}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\t\n\t\n\t\t\n\n\t\t\n\t\t\t{{ t('settings', 'The more restrictive setting of either visibility or scope is respected on your Profile. For example, if visibility is set to \"Show to everyone\" and scope is set to \"Private\", \"Private\" is respected.') }}\n\t\t\n\n\t\t
\n\t\t\t\n\t\t
\n\t\n\n\n\n\n\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileVisibilitySection.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!./ProfileVisibilitySection.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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileVisibilitySection.vue?vue&type=style&index=0&id=16df62f8&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/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileVisibilitySection.vue?vue&type=style&index=0&id=16df62f8&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./ProfileVisibilitySection.vue?vue&type=template&id=16df62f8&scoped=true&\"\nimport script from \"./ProfileVisibilitySection.vue?vue&type=script&lang=js&\"\nexport * from \"./ProfileVisibilitySection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProfileVisibilitySection.vue?vue&type=style&index=0&id=16df62f8&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 \"16df62f8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{style:({ marginLeft: _vm.marginLeft }),attrs:{\"id\":\"profile-visibility\"}},[_c('HeaderBar',{attrs:{\"account-property\":_vm.heading}}),_vm._v(\" \"),_c('em',{class:{ disabled: _vm.disabled }},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('settings', 'The more restrictive setting of either visibility or scope is respected on your Profile. For example, if visibility is set to \"Show to everyone\" and scope is set to \"Private\", \"Private\" is respected.'))+\"\\n\\t\")]),_vm._v(\" \"),_c('div',{staticClass:\"visibility-dropdowns\",style:({\n\t\t\tgridTemplateRows: (\"repeat(\" + _vm.rows + \", 44px)\"),\n\t\t})},_vm._l((_vm.visibilityParams),function(param){return _c('VisibilityDropdown',{key:param.id,attrs:{\"param-id\":param.id,\"display-id\":param.displayId,\"visibility\":param.visibility},on:{\"update:visibility\":function($event){return _vm.$set(param, \"visibility\", $event)}}})}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright 2021, Christopher Ng \n *\n * @author Christopher Ng \n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see .\n *\n */\n\nimport Vue from 'vue'\nimport { getRequestToken } from '@nextcloud/auth'\nimport { loadState } from '@nextcloud/initial-state'\nimport { translate as t } from '@nextcloud/l10n'\nimport '@nextcloud/dialogs/styles/toast.scss'\n\nimport logger from './logger'\n\nimport DisplayNameSection from './components/PersonalInfo/DisplayNameSection/DisplayNameSection'\nimport EmailSection from './components/PersonalInfo/EmailSection/EmailSection'\nimport LanguageSection from './components/PersonalInfo/LanguageSection/LanguageSection'\nimport ProfileSection from './components/PersonalInfo/ProfileSection/ProfileSection'\nimport OrganisationSection from './components/PersonalInfo/OrganisationSection/OrganisationSection'\nimport RoleSection from './components/PersonalInfo/RoleSection/RoleSection'\nimport HeadlineSection from './components/PersonalInfo/HeadlineSection/HeadlineSection'\nimport BiographySection from './components/PersonalInfo/BiographySection/BiographySection'\nimport ProfileVisibilitySection from './components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection'\n\n__webpack_nonce__ = btoa(getRequestToken())\n\nconst profileEnabledGlobally = loadState('settings', 'profileEnabledGlobally', true)\n\nVue.mixin({\n\tprops: {\n\t\tlogger,\n\t},\n\tmethods: {\n\t\tt,\n\t},\n})\n\nconst DisplayNameView = Vue.extend(DisplayNameSection)\nconst EmailView = Vue.extend(EmailSection)\nconst LanguageView = Vue.extend(LanguageSection)\n\nnew DisplayNameView().$mount('#vue-displayname-section')\nnew EmailView().$mount('#vue-email-section')\nnew LanguageView().$mount('#vue-language-section')\n\nif (profileEnabledGlobally) {\n\tconst ProfileView = Vue.extend(ProfileSection)\n\tconst OrganisationView = Vue.extend(OrganisationSection)\n\tconst RoleView = Vue.extend(RoleSection)\n\tconst HeadlineView = Vue.extend(HeadlineSection)\n\tconst BiographyView = Vue.extend(BiographySection)\n\tconst ProfileVisibilityView = Vue.extend(ProfileVisibilitySection)\n\n\tnew ProfileView().$mount('#vue-profile-section')\n\tnew OrganisationView().$mount('#vue-organisation-section')\n\tnew RoleView().$mount('#vue-role-section')\n\tnew HeadlineView().$mount('#vue-headline-section')\n\tnew BiographyView().$mount('#vue-biography-section')\n\tnew ProfileVisibilityView().$mount('#vue-profile-visibility-section')\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".biography[data-v-0fbf56a9]{display:grid;align-items:center}.biography textarea[data-v-0fbf56a9]{resize:vertical;grid-area:1/1;width:100%;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.biography textarea[data-v-0fbf56a9]:hover,.biography textarea[data-v-0fbf56a9]:focus,.biography textarea[data-v-0fbf56a9]:active{border-color:var(--color-primary-element) !important;outline:none !important}.biography .biography__actions-container[data-v-0fbf56a9]{grid-area:1/1;justify-self:flex-end;align-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px;margin-bottom:5px}.biography .biography__actions-container .icon-checkmark[data-v-0fbf56a9],.biography .biography__actions-container .icon-error[data-v-0fbf56a9]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-0fbf56a9],.fade-leave-to[data-v-0fbf56a9]{opacity:0}.fade-enter-active[data-v-0fbf56a9]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-0fbf56a9]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/BiographySection/Biography.vue\"],\"names\":[],\"mappings\":\"AAyHA,4BACC,YAAA,CACA,kBAAA,CAEA,qCACC,eAAA,CACA,aAAA,CACA,UAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAEA,kIAGC,oDAAA,CACA,uBAAA,CAIF,0DACC,aAAA,CACA,qBAAA,CACA,mBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CACA,iBAAA,CAEA,gJAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.biography {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\ttextarea {\\n\\t\\tresize: vertical;\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\n\\t\\t&:hover,\\n\\t\\t&:focus,\\n\\t\\t&:active {\\n\\t\\t\\tborder-color: var(--color-primary-element) !important;\\n\\t\\t\\toutline: none !important;\\n\\t\\t}\\n\\t}\\n\\n\\t.biography__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\talign-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\t\\tmargin-bottom: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-cfa727da]{padding:10px 10px}section[data-v-cfa727da] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/BiographySection/BiographySection.vue\"],\"names\":[],\"mappings\":\"AA6DA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".displayname[data-v-3418897a]{display:grid;align-items:center}.displayname input[data-v-3418897a]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.displayname .displayname__actions-container[data-v-3418897a]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.displayname .displayname__actions-container .icon-checkmark[data-v-3418897a],.displayname .displayname__actions-container .icon-error[data-v-3418897a]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-3418897a],.fade-leave-to[data-v-3418897a]{opacity:0}.fade-enter-active[data-v-3418897a]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-3418897a]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayName.vue\"],\"names\":[],\"mappings\":\"AA8HA,8BACC,YAAA,CACA,kBAAA,CAEA,oCACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,8DACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,wJAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.displayname {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.displayname__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-b8a748f4]{padding:10px 10px}section[data-v-b8a748f4] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/DisplayNameSection/DisplayNameSection.vue\"],\"names\":[],\"mappings\":\"AA8EA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".email[data-v-2c097054]{display:grid;align-items:center}.email input[data-v-2c097054]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.email .email__actions-container[data-v-2c097054]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.email .email__actions-container .email__actions[data-v-2c097054]{opacity:.4 !important}.email .email__actions-container .email__actions[data-v-2c097054]:hover,.email .email__actions-container .email__actions[data-v-2c097054]:focus,.email .email__actions-container .email__actions[data-v-2c097054]:active{opacity:.8 !important}.email .email__actions-container .email__actions[data-v-2c097054] button{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important}.email .email__actions-container .icon-checkmark[data-v-2c097054],.email .email__actions-container .icon-error[data-v-2c097054]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-2c097054],.fade-leave-to[data-v-2c097054]{opacity:0}.fade-enter-active[data-v-2c097054]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-2c097054]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/EmailSection/Email.vue\"],\"names\":[],\"mappings\":\"AAoWA,wBACC,YAAA,CACA,kBAAA,CAEA,8BACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,kDACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,kEACC,qBAAA,CAEA,yNAGC,qBAAA,CAGD,yEACC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CAIF,gIAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.email {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.email__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.email__actions {\\n\\t\\t\\topacity: 0.4 !important;\\n\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus,\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\topacity: 0.8 !important;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&::v-deep button {\\n\\t\\t\\t\\theight: 30px !important;\\n\\t\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\t\\twidth: 30px !important;\\n\\t\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-845b669e]{padding:10px 10px}section[data-v-845b669e] button:disabled{cursor:default}section .additional-emails-label[data-v-845b669e]{display:block;margin-top:16px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/EmailSection/EmailSection.vue\"],\"names\":[],\"mappings\":\"AA+LA,yBACC,iBAAA,CAEA,yCACC,cAAA,CAGD,kDACC,aAAA,CACA,eAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n\\n\\t.additional-emails-label {\\n\\t\\tdisplay: block;\\n\\t\\tmargin-top: 16px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".headline[data-v-64e0e0bd]{display:grid;align-items:center}.headline input[data-v-64e0e0bd]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.headline .headline__actions-container[data-v-64e0e0bd]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.headline .headline__actions-container .icon-checkmark[data-v-64e0e0bd],.headline .headline__actions-container .icon-error[data-v-64e0e0bd]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-64e0e0bd],.fade-leave-to[data-v-64e0e0bd]{opacity:0}.fade-enter-active[data-v-64e0e0bd]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-64e0e0bd]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/HeadlineSection/Headline.vue\"],\"names\":[],\"mappings\":\"AAyHA,2BACC,YAAA,CACA,kBAAA,CAEA,iCACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,wDACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,4IAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.headline {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.headline__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-187bb5da]{padding:10px 10px}section[data-v-187bb5da] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/HeadlineSection/HeadlineSection.vue\"],\"names\":[],\"mappings\":\"AA6DA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".language[data-v-5396d706]{display:grid}.language select[data-v-5396d706]{width:100%;height:34px;margin:3px 3px 3px 0;padding:6px 16px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background:var(--icon-triangle-s-000) no-repeat right 4px center;font-family:var(--font-face);appearance:none;cursor:pointer}.language a[data-v-5396d706]{color:var(--color-main-text);text-decoration:none;width:max-content}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/LanguageSection/Language.vue\"],\"names\":[],\"mappings\":\"AA+IA,2BACC,YAAA,CAEA,kCACC,UAAA,CACA,WAAA,CACA,oBAAA,CACA,gBAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,gEAAA,CACA,4BAAA,CACA,eAAA,CACA,cAAA,CAGD,6BACC,4BAAA,CACA,oBAAA,CACA,iBAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.language {\\n\\tdisplay: grid;\\n\\n\\tselect {\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 6px 16px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground: var(--icon-triangle-s-000) no-repeat right 4px center;\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tappearance: none;\\n\\t\\tcursor: pointer;\\n\\t}\\n\\n\\ta {\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\ttext-decoration: none;\\n\\t\\twidth: max-content;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-16883898]{padding:10px 10px}section[data-v-16883898] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/LanguageSection/LanguageSection.vue\"],\"names\":[],\"mappings\":\"AA2EA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".organisation[data-v-591cd6b6]{display:grid;align-items:center}.organisation input[data-v-591cd6b6]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.organisation .organisation__actions-container[data-v-591cd6b6]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.organisation .organisation__actions-container .icon-checkmark[data-v-591cd6b6],.organisation .organisation__actions-container .icon-error[data-v-591cd6b6]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-591cd6b6],.fade-leave-to[data-v-591cd6b6]{opacity:0}.fade-enter-active[data-v-591cd6b6]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-591cd6b6]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/OrganisationSection/Organisation.vue\"],\"names\":[],\"mappings\":\"AAyHA,+BACC,YAAA,CACA,kBAAA,CAEA,qCACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,gEACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,4JAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.organisation {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.organisation__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-43146ff7]{padding:10px 10px}section[data-v-43146ff7] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/OrganisationSection/OrganisationSection.vue\"],\"names\":[],\"mappings\":\"AA6DA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"html{scroll-behavior:smooth}@media screen and (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue\"],\"names\":[],\"mappings\":\"AA4DA,KACC,sBAAA,CAEA,mDAHD,KAIE,oBAAA,CAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nhtml {\\n\\tscroll-behavior: smooth;\\n\\n\\t@media screen and (prefers-reduced-motion: reduce) {\\n\\t\\tscroll-behavior: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"a[data-v-73817e9f]{display:block;height:44px;width:290px;line-height:44px;padding:0 16px;margin:14px auto;border-radius:var(--border-radius-pill);opacity:.4;background-color:transparent}a .anchor-icon[data-v-73817e9f]{display:inline-block;vertical-align:middle;margin-top:6px;margin-right:8px}a[data-v-73817e9f]:hover,a[data-v-73817e9f]:focus,a[data-v-73817e9f]:active{opacity:.8;background-color:rgba(127,127,127,.25)}a.disabled[data-v-73817e9f]{pointer-events:none}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileSection/EditProfileAnchorLink.vue\"],\"names\":[],\"mappings\":\"AAsEA,mBACC,aAAA,CACA,WAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,gBAAA,CACA,uCAAA,CACA,UAAA,CACA,4BAAA,CAEA,gCACC,oBAAA,CACA,qBAAA,CACA,cAAA,CACA,gBAAA,CAGD,4EAGC,UAAA,CACA,sCAAA,CAGD,4BACC,mBAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\na {\\n\\tdisplay: block;\\n\\theight: 44px;\\n\\twidth: 290px;\\n\\tline-height: 44px;\\n\\tpadding: 0 16px;\\n\\tmargin: 14px auto;\\n\\tborder-radius: var(--border-radius-pill);\\n\\topacity: 0.4;\\n\\tbackground-color: transparent;\\n\\n\\t.anchor-icon {\\n\\t\\tdisplay: inline-block;\\n\\t\\tvertical-align: middle;\\n\\t\\tmargin-top: 6px;\\n\\t\\tmargin-right: 8px;\\n\\t}\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\topacity: 0.8;\\n\\t\\tbackground-color: rgba(127, 127, 127, .25);\\n\\t}\\n\\n\\t&.disabled {\\n\\t\\tpointer-events: none;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".preview-card[data-v-79bf7437]{display:flex;flex-direction:column;position:relative;width:290px;height:116px;margin:14px auto;border-radius:var(--border-radius-large);background-color:var(--color-main-background);font-weight:bold;box-shadow:0 2px 9px var(--color-box-shadow)}.preview-card[data-v-79bf7437]:hover,.preview-card[data-v-79bf7437]:focus,.preview-card[data-v-79bf7437]:active{box-shadow:0 2px 12px var(--color-box-shadow)}.preview-card[data-v-79bf7437]:focus-visible{outline:var(--color-main-text) solid 1px;outline-offset:3px}.preview-card.disabled[data-v-79bf7437]{filter:grayscale(1);opacity:.5;cursor:default;box-shadow:0 0 3px var(--color-box-shadow)}.preview-card.disabled *[data-v-79bf7437],.preview-card.disabled[data-v-79bf7437] *{cursor:default}.preview-card__avatar[data-v-79bf7437]{position:absolute !important;top:40px;left:18px;z-index:1}.preview-card__avatar[data-v-79bf7437]:not(.avatardiv--unknown){box-shadow:0 0 0 3px var(--color-main-background) !important}.preview-card__header[data-v-79bf7437],.preview-card__footer[data-v-79bf7437]{position:relative;width:auto}.preview-card__header span[data-v-79bf7437],.preview-card__footer span[data-v-79bf7437]{position:absolute;left:78px;overflow:hidden;text-overflow:ellipsis;word-break:break-all}@supports(-webkit-line-clamp: 2){.preview-card__header span[data-v-79bf7437],.preview-card__footer span[data-v-79bf7437]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.preview-card__header[data-v-79bf7437]{height:70px;border-radius:var(--border-radius-large) var(--border-radius-large) 0 0}.preview-card__header span[data-v-79bf7437]{bottom:0;color:var(--color-primary-text);font-size:18px;font-weight:bold;margin:0 4px 8px 0}.preview-card__footer[data-v-79bf7437]{height:46px}.preview-card__footer span[data-v-79bf7437]{top:0;color:var(--color-text-maxcontrast);font-size:14px;font-weight:normal;margin:4px 4px 0 0;line-height:1.3}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileSection/ProfilePreviewCard.vue\"],\"names\":[],\"mappings\":\"AA6FA,+BACC,YAAA,CACA,qBAAA,CACA,iBAAA,CACA,WAAA,CACA,YAAA,CACA,gBAAA,CACA,wCAAA,CACA,6CAAA,CACA,gBAAA,CACA,4CAAA,CAEA,gHAGC,6CAAA,CAGD,6CACC,wCAAA,CACA,kBAAA,CAGD,wCACC,mBAAA,CACA,UAAA,CACA,cAAA,CACA,0CAAA,CAEA,oFAEC,cAAA,CAIF,uCAEC,4BAAA,CACA,QAAA,CACA,SAAA,CACA,SAAA,CAEA,gEACC,4DAAA,CAIF,8EAEC,iBAAA,CACA,UAAA,CAEA,wFACC,iBAAA,CACA,SAAA,CACA,eAAA,CACA,sBAAA,CACA,oBAAA,CAEA,iCAPD,wFAQE,mBAAA,CACA,oBAAA,CACA,2BAAA,CAAA,CAKH,uCACC,WAAA,CACA,uEAAA,CAEA,4CACC,QAAA,CACA,+BAAA,CACA,cAAA,CACA,gBAAA,CACA,kBAAA,CAIF,uCACC,WAAA,CAEA,4CACC,KAAA,CACA,mCAAA,CACA,cAAA,CACA,kBAAA,CACA,kBAAA,CACA,eAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.preview-card {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tposition: relative;\\n\\twidth: 290px;\\n\\theight: 116px;\\n\\tmargin: 14px auto;\\n\\tborder-radius: var(--border-radius-large);\\n\\tbackground-color: var(--color-main-background);\\n\\tfont-weight: bold;\\n\\tbox-shadow: 0 2px 9px var(--color-box-shadow);\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\tbox-shadow: 0 2px 12px var(--color-box-shadow);\\n\\t}\\n\\n\\t&:focus-visible {\\n\\t\\toutline: var(--color-main-text) solid 1px;\\n\\t\\toutline-offset: 3px;\\n\\t}\\n\\n\\t&.disabled {\\n\\t\\tfilter: grayscale(1);\\n\\t\\topacity: 0.5;\\n\\t\\tcursor: default;\\n\\t\\tbox-shadow: 0 0 3px var(--color-box-shadow);\\n\\n\\t\\t& *,\\n\\t\\t&::v-deep * {\\n\\t\\t\\tcursor: default;\\n\\t\\t}\\n\\t}\\n\\n\\t&__avatar {\\n\\t\\t// Override Avatar component position to fix positioning on rerender\\n\\t\\tposition: absolute !important;\\n\\t\\ttop: 40px;\\n\\t\\tleft: 18px;\\n\\t\\tz-index: 1;\\n\\n\\t\\t&:not(.avatardiv--unknown) {\\n\\t\\t\\tbox-shadow: 0 0 0 3px var(--color-main-background) !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&__header,\\n\\t&__footer {\\n\\t\\tposition: relative;\\n\\t\\twidth: auto;\\n\\n\\t\\tspan {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tleft: 78px;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\tword-break: break-all;\\n\\n\\t\\t\\t@supports (-webkit-line-clamp: 2) {\\n\\t\\t\\t\\tdisplay: -webkit-box;\\n\\t\\t\\t\\t-webkit-line-clamp: 2;\\n\\t\\t\\t\\t-webkit-box-orient: vertical;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__header {\\n\\t\\theight: 70px;\\n\\t\\tborder-radius: var(--border-radius-large) var(--border-radius-large) 0 0;\\n\\n\\t\\tspan {\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t\\tfont-size: 18px;\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tmargin: 0 4px 8px 0;\\n\\t\\t}\\n\\t}\\n\\n\\t&__footer {\\n\\t\\theight: 46px;\\n\\n\\t\\tspan {\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tfont-size: 14px;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\tmargin: 4px 4px 0 0;\\n\\t\\t\\tline-height: 1.3;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-252753e6]{padding:10px 10px}section[data-v-252753e6] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileSection/ProfileSection.vue\"],\"names\":[],\"mappings\":\"AAkGA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-16df62f8]{padding:30px;max-width:100vw}section em[data-v-16df62f8]{display:block;margin:16px 0}section em.disabled[data-v-16df62f8]{filter:grayscale(1);opacity:.5;cursor:default;pointer-events:none}section em.disabled *[data-v-16df62f8],section em.disabled[data-v-16df62f8] *{cursor:default;pointer-events:none}section .visibility-dropdowns[data-v-16df62f8]{display:grid;gap:10px 40px}@media(min-width: 1200px){section[data-v-16df62f8]{width:940px}section .visibility-dropdowns[data-v-16df62f8]{grid-auto-flow:column}}@media(max-width: 1200px){section[data-v-16df62f8]{width:470px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/ProfileVisibilitySection.vue\"],\"names\":[],\"mappings\":\"AAyHA,yBACC,YAAA,CACA,eAAA,CAEA,4BACC,aAAA,CACA,aAAA,CAEA,qCACC,mBAAA,CACA,UAAA,CACA,cAAA,CACA,mBAAA,CAEA,8EAEC,cAAA,CACA,mBAAA,CAKH,+CACC,YAAA,CACA,aAAA,CAGD,0BA3BD,yBA4BE,WAAA,CAEA,+CACC,qBAAA,CAAA,CAIF,0BAnCD,yBAoCE,WAAA,CAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 30px;\\n\\tmax-width: 100vw;\\n\\n\\tem {\\n\\t\\tdisplay: block;\\n\\t\\tmargin: 16px 0;\\n\\n\\t\\t&.disabled {\\n\\t\\t\\tfilter: grayscale(1);\\n\\t\\t\\topacity: 0.5;\\n\\t\\t\\tcursor: default;\\n\\t\\t\\tpointer-events: none;\\n\\n\\t\\t\\t& *,\\n\\t\\t\\t&::v-deep * {\\n\\t\\t\\t\\tcursor: default;\\n\\t\\t\\t\\tpointer-events: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.visibility-dropdowns {\\n\\t\\tdisplay: grid;\\n\\t\\tgap: 10px 40px;\\n\\t}\\n\\n\\t@media (min-width: 1200px) {\\n\\t\\twidth: 940px;\\n\\n\\t\\t.visibility-dropdowns {\\n\\t\\t\\tgrid-auto-flow: column;\\n\\t\\t}\\n\\t}\\n\\n\\t@media (max-width: 1200px) {\\n\\t\\twidth: 470px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".visibility-container[data-v-4643b0e2]{display:flex;width:max-content}.visibility-container.disabled[data-v-4643b0e2]{filter:grayscale(1);opacity:.5;cursor:default;pointer-events:none}.visibility-container.disabled *[data-v-4643b0e2],.visibility-container.disabled[data-v-4643b0e2] *{cursor:default;pointer-events:none}.visibility-container label[data-v-4643b0e2]{color:var(--color-text-lighter);width:150px;line-height:50px}.visibility-container__multiselect[data-v-4643b0e2]{width:260px;max-width:40vw}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/ProfileVisibilitySection/VisibilityDropdown.vue\"],\"names\":[],\"mappings\":\"AAwJA,uCACC,YAAA,CACA,iBAAA,CAEA,gDACC,mBAAA,CACA,UAAA,CACA,cAAA,CACA,mBAAA,CAEA,oGAEC,cAAA,CACA,mBAAA,CAIF,6CACC,+BAAA,CACA,WAAA,CACA,gBAAA,CAGD,oDACC,WAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.visibility-container {\\n\\tdisplay: flex;\\n\\twidth: max-content;\\n\\n\\t&.disabled {\\n\\t\\tfilter: grayscale(1);\\n\\t\\topacity: 0.5;\\n\\t\\tcursor: default;\\n\\t\\tpointer-events: none;\\n\\n\\t\\t& *,\\n\\t\\t&::v-deep * {\\n\\t\\t\\tcursor: default;\\n\\t\\t\\tpointer-events: none;\\n\\t\\t}\\n\\t}\\n\\n\\tlabel {\\n\\t\\tcolor: var(--color-text-lighter);\\n\\t\\twidth: 150px;\\n\\t\\tline-height: 50px;\\n\\t}\\n\\n\\t&__multiselect {\\n\\t\\twidth: 260px;\\n\\t\\tmax-width: 40vw;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".role[data-v-aac18396]{display:grid;align-items:center}.role input[data-v-aac18396]{grid-area:1/1;width:100%;height:34px;margin:3px 3px 3px 0;padding:7px 6px;color:var(--color-main-text);border:1px solid var(--color-border-dark);border-radius:var(--border-radius);background-color:var(--color-main-background);font-family:var(--font-face);cursor:text}.role .role__actions-container[data-v-aac18396]{grid-area:1/1;justify-self:flex-end;height:30px;display:flex;gap:0 2px;margin-right:5px}.role .role__actions-container .icon-checkmark[data-v-aac18396],.role .role__actions-container .icon-error[data-v-aac18396]{height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important;top:0;right:0;float:none}.fade-enter[data-v-aac18396],.fade-leave-to[data-v-aac18396]{opacity:0}.fade-enter-active[data-v-aac18396]{transition:opacity 200ms ease-out}.fade-leave-active[data-v-aac18396]{transition:opacity 300ms ease-out}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/RoleSection/Role.vue\"],\"names\":[],\"mappings\":\"AAyHA,uBACC,YAAA,CACA,kBAAA,CAEA,6BACC,aAAA,CACA,UAAA,CACA,WAAA,CACA,oBAAA,CACA,eAAA,CACA,4BAAA,CACA,yCAAA,CACA,kCAAA,CACA,6CAAA,CACA,4BAAA,CACA,WAAA,CAGD,gDACC,aAAA,CACA,qBAAA,CACA,WAAA,CAEA,YAAA,CACA,SAAA,CACA,gBAAA,CAEA,4HAEC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CACA,KAAA,CACA,OAAA,CACA,UAAA,CAKH,6DAEC,SAAA,CAGD,oCACC,iCAAA,CAGD,oCACC,iCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.role {\\n\\tdisplay: grid;\\n\\talign-items: center;\\n\\n\\tinput {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\twidth: 100%;\\n\\t\\theight: 34px;\\n\\t\\tmargin: 3px 3px 3px 0;\\n\\t\\tpadding: 7px 6px;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tfont-family: var(--font-face);\\n\\t\\tcursor: text;\\n\\t}\\n\\n\\t.role__actions-container {\\n\\t\\tgrid-area: 1 / 1;\\n\\t\\tjustify-self: flex-end;\\n\\t\\theight: 30px;\\n\\n\\t\\tdisplay: flex;\\n\\t\\tgap: 0 2px;\\n\\t\\tmargin-right: 5px;\\n\\n\\t\\t.icon-checkmark,\\n\\t\\t.icon-error {\\n\\t\\t\\theight: 30px !important;\\n\\t\\t\\tmin-height: 30px !important;\\n\\t\\t\\twidth: 30px !important;\\n\\t\\t\\tmin-width: 30px !important;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tfloat: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-enter-active {\\n\\ttransition: opacity 200ms ease-out;\\n}\\n\\n.fade-leave-active {\\n\\ttransition: opacity 300ms ease-out;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"section[data-v-f3d959c2]{padding:10px 10px}section[data-v-f3d959c2] button:disabled{cursor:default}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/RoleSection/RoleSection.vue\"],\"names\":[],\"mappings\":\"AA6DA,yBACC,iBAAA,CAEA,yCACC,cAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nsection {\\n\\tpadding: 10px 10px;\\n\\n\\t&::v-deep button:disabled {\\n\\t\\tcursor: default;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"button[data-v-6ca08b3a]{height:44px;padding:0 16px;border:none;background-color:transparent}button .icon[data-v-6ca08b3a]{margin-right:8px}button[data-v-6ca08b3a]:enabled{opacity:.4 !important}button:enabled .icon[data-v-6ca08b3a]{opacity:.8 !important}button[data-v-6ca08b3a]:hover,button[data-v-6ca08b3a]:focus,button[data-v-6ca08b3a]:active{background-color:rgba(127,127,127,.15)}button[data-v-6ca08b3a]:enabled:hover,button[data-v-6ca08b3a]:enabled:focus,button[data-v-6ca08b3a]:enabled:active{background-color:rgba(127,127,127,.25);opacity:.8 !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/shared/AddButton.vue\"],\"names\":[],\"mappings\":\"AA4CA,wBACC,WAAA,CACA,cAAA,CACA,WAAA,CACA,4BAAA,CAEA,8BACC,gBAAA,CAGD,gCACC,qBAAA,CAEA,sCACC,qBAAA,CAIF,2FAGC,sCAAA,CAIA,mHAGC,sCAAA,CACA,qBAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nbutton {\\n\\theight: 44px;\\n\\tpadding: 0 16px;\\n\\tborder: none;\\n\\tbackground-color: transparent;\\n\\n\\t.icon {\\n\\t\\tmargin-right: 8px;\\n\\t}\\n\\n\\t&:enabled {\\n\\t\\topacity: 0.4 !important;\\n\\n\\t\\t.icon {\\n\\t\\t\\topacity: 0.8 !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\tbackground-color: rgba(127, 127, 127, .15);\\n\\t}\\n\\n\\t&:enabled {\\n\\t\\t&:hover,\\n\\t\\t&:focus,\\n\\t\\t&:active {\\n\\t\\t\\tbackground-color: rgba(127, 127, 127, .25);\\n\\t\\t\\topacity: 0.8 !important;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".federation-actions[data-v-b51d8bee],.federation-actions--additional[data-v-b51d8bee]{opacity:.4 !important}.federation-actions[data-v-b51d8bee]:hover,.federation-actions[data-v-b51d8bee]:focus,.federation-actions[data-v-b51d8bee]:active,.federation-actions--additional[data-v-b51d8bee]:hover,.federation-actions--additional[data-v-b51d8bee]:focus,.federation-actions--additional[data-v-b51d8bee]:active{opacity:.8 !important}.federation-actions--additional[data-v-b51d8bee] button{padding-bottom:7px;height:30px !important;min-height:30px !important;width:30px !important;min-width:30px !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/shared/FederationControl.vue\"],\"names\":[],\"mappings\":\"AAsLA,sFAEC,qBAAA,CAEA,wSAGC,qBAAA,CAKD,wDAEC,kBAAA,CACA,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.federation-actions,\\n.federation-actions--additional {\\n\\topacity: 0.4 !important;\\n\\n\\t&:hover,\\n\\t&:focus,\\n\\t&:active {\\n\\t\\topacity: 0.8 !important;\\n\\t}\\n}\\n\\n.federation-actions--additional {\\n\\t&::v-deep button {\\n\\t\\t// TODO remove this hack\\n\\t\\tpadding-bottom: 7px;\\n\\t\\theight: 30px !important;\\n\\t\\tmin-height: 30px !important;\\n\\t\\twidth: 30px !important;\\n\\t\\tmin-width: 30px !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".federation-actions__btn[data-v-d2e8b360] p{width:150px !important;padding:8px 0 !important;color:var(--color-main-text) !important;font-size:12.8px !important;line-height:1.5em !important}.federation-actions__btn--active[data-v-d2e8b360]{background-color:var(--color-primary-light) !important;box-shadow:inset 2px 0 var(--color-primary) !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/shared/FederationControlAction.vue\"],\"names\":[],\"mappings\":\"AA0FC,4CACC,sBAAA,CACA,wBAAA,CACA,uCAAA,CACA,2BAAA,CACA,4BAAA,CAIF,kDACC,sDAAA,CACA,sDAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.federation-actions__btn {\\n\\t&::v-deep p {\\n\\t\\twidth: 150px !important;\\n\\t\\tpadding: 8px 0 !important;\\n\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\tfont-size: 12.8px !important;\\n\\t\\tline-height: 1.5em !important;\\n\\t}\\n}\\n\\n.federation-actions__btn--active {\\n\\tbackground-color: var(--color-primary-light) !important;\\n\\tbox-shadow: inset 2px 0 var(--color-primary) !important;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"h3[data-v-1d3f5c52]{display:inline-flex;width:100%;margin:12px 0 0 0;font-size:16px;color:var(--color-text-light)}h3.profile-property[data-v-1d3f5c52]{height:38px}h3.setting-property[data-v-1d3f5c52]{height:32px}h3 label[data-v-1d3f5c52]{cursor:pointer}.federation-control[data-v-1d3f5c52]{margin:-12px 0 0 8px}.add-button[data-v-1d3f5c52]{margin:-12px 0 0 auto !important}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/settings/src/components/PersonalInfo/shared/HeaderBar.vue\"],\"names\":[],\"mappings\":\"AAmHA,oBACC,mBAAA,CACA,UAAA,CACA,iBAAA,CACA,cAAA,CACA,6BAAA,CAEA,qCACC,WAAA,CAGD,qCACC,WAAA,CAGD,0BACC,cAAA,CAIF,qCACC,oBAAA,CAGD,6BACC,gCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nh3 {\\n\\tdisplay: inline-flex;\\n\\twidth: 100%;\\n\\tmargin: 12px 0 0 0;\\n\\tfont-size: 16px;\\n\\tcolor: var(--color-text-light);\\n\\n\\t&.profile-property {\\n\\t\\theight: 38px;\\n\\t}\\n\\n\\t&.setting-property {\\n\\t\\theight: 32px;\\n\\t}\\n\\n\\tlabel {\\n\\t\\tcursor: pointer;\\n\\t}\\n}\\n\\n.federation-control {\\n\\tmargin: -12px 0 0 8px;\\n}\\n\\n.add-button {\\n\\tmargin: -12px 0 0 auto !important;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 858;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t858: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [874], function() { return __webpack_require__(18115); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","getLoggerBuilder","setApp","detectUser","build","ACCOUNT_PROPERTY_ENUM","Object","freeze","ADDRESS","AVATAR","BIOGRAPHY","DISPLAYNAME","EMAIL_COLLECTION","EMAIL","HEADLINE","NOTIFICATION_EMAIL","ORGANISATION","PHONE","PROFILE_ENABLED","ROLE","TWITTER","WEBSITE","ACCOUNT_PROPERTY_READABLE_ENUM","t","PROFILE_READABLE_ENUM","PROFILE_VISIBILITY","PROPERTY_READABLE_KEYS_ENUM","ACCOUNT_SETTING_PROPERTY_ENUM","LANGUAGE","ACCOUNT_SETTING_PROPERTY_READABLE_ENUM","SCOPE_ENUM","PRIVATE","LOCAL","FEDERATED","PUBLISHED","PROPERTY_READABLE_SUPPORTED_SCOPES_ENUM","UNPUBLISHED_READABLE_PROPERTIES","SCOPE_SUFFIX","SCOPE_PROPERTY_ENUM","name","displayName","tooltip","tooltipDisabled","iconClass","DEFAULT_ADDITIONAL_EMAIL_SCOPE","VERIFICATION_ENUM","NOT_VERIFIED","VERIFICATION_IN_PROGRESS","VERIFIED","VALIDATE_EMAIL_REGEX","savePrimaryAccountProperty","accountProperty","value","userId","getCurrentUser","uid","url","generateOcsUrl","confirmPassword","axios","key","res","data","savePrimaryAccountPropertyScope","scope","validateStringInput","input","validateEmail","test","slice","length","encodeURIComponent","replace","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","domProps","on","onDisplayNameChange","_v","_e","_g","disabled","$listeners","_s","class","activeScope","isSupportedScope","$event","stopPropagation","preventDefault","updateScope","apply","arguments","additional","ariaLabel","scopeIcon","_l","federationScope","changeScope","supportedScopes","includes","isSettingProperty","isProfileProperty","labelFor","localScope","onScopeChange","isEditable","isMultiValueSupported","isValidSection","onAddAdditional","displayNameChangeSupported","primaryDisplayName","$set","savePrimaryEmail","email","saveAdditionalEmail","saveNotificationEmail","removeAdditionalEmail","collection","updateAdditionalEmail","prevEmail","newEmail","savePrimaryEmailScope","saveAdditionalEmailScope","collectionScope","ref","inputId","inputPlaceholder","onEmailChange","primary","federationDisabled","deleteDisabled","deleteEmailLabel","deleteEmail","isNotificationEmail","setNotificationMailLabel","setNotificationMailDisabled","setNotificationMail","primaryEmail","onAddAdditionalEmail","notificationEmail","onUpdateEmail","onUpdateNotificationEmail","additionalEmails","additionalEmail","index","parseInt","locallyVerified","onDeleteAdditionalEmail","code","undefined","onLanguageChange","commonLanguage","language","otherLanguage","commonLanguages","otherLanguages","profileEnabled","onEnableProfileChange","profilePageLink","organisation","onOrganisationChange","primaryOrganisation","role","onRoleChange","primaryRole","headline","onHeadlineChange","primaryHeadline","biography","onBiographyChange","primaryBiography","saveProfileParameterVisibility","paramId","visibility","VISIBILITY_ENUM","SHOW","SHOW_USERS_ONLY","HIDE","VISIBILITY_PROPERTY_ENUM","label","displayId","visibilityOptions","visibilityObject","onVisibilityChange","style","marginLeft","heading","gridTemplateRows","rows","param","id","__webpack_nonce__","btoa","getRequestToken","profileEnabledGlobally","loadState","Vue","props","logger","methods","DisplayNameView","DisplayNameSection","EmailView","EmailSection","LanguageView","LanguageSection","$mount","ProfileView","ProfileSection","OrganisationView","OrganisationSection","RoleView","RoleSection","HeadlineView","HeadlineSection","BiographyView","BiographySection","ProfileVisibilityView","ProfileVisibilitySection","___CSS_LOADER_EXPORT___","push","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","call","m","amdD","Error","amdO","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","g","globalThis","Function","e","window","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","b","document","baseURI","self","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/lib/private/Contacts/ContactsMenu/ContactsStore.php b/lib/private/Contacts/ContactsMenu/ContactsStore.php
index a27c2ae455a..5b7a942a244 100644
--- a/lib/private/Contacts/ContactsMenu/ContactsStore.php
+++ b/lib/private/Contacts/ContactsMenu/ContactsStore.php
@@ -32,7 +32,7 @@
namespace OC\Contacts\ContactsMenu;
use OC\KnownUser\KnownUserService;
-use OCP\Accounts\IAccountManager;
+use OC\Profile\ProfileManager;
use OCP\Contacts\ContactsMenu\IContactsStore;
use OCP\Contacts\ContactsMenu\IEntry;
use OCP\Contacts\IManager;
@@ -44,10 +44,6 @@ use OCP\IUserManager;
use OCP\L10N\IFactory as IL10NFactory;
class ContactsStore implements IContactsStore {
- use \OC\Profile\TProfileHelper;
-
- /** @var IAccountManager */
- private $accountManager;
/** @var IManager */
private $contactsManager;
@@ -55,6 +51,9 @@ class ContactsStore implements IContactsStore {
/** @var IConfig */
private $config;
+ /** @var ProfileManager */
+ private $profileManager;
+
/** @var IUserManager */
private $userManager;
@@ -71,18 +70,18 @@ class ContactsStore implements IContactsStore {
private $l10nFactory;
public function __construct(
- IAccountManager $accountManager,
IManager $contactsManager,
IConfig $config,
+ ProfileManager $profileManager,
IUserManager $userManager,
IURLGenerator $urlGenerator,
IGroupManager $groupManager,
KnownUserService $knownUserService,
IL10NFactory $l10nFactory
) {
- $this->accountManager = $accountManager;
$this->contactsManager = $contactsManager;
$this->config = $config;
+ $this->profileManager = $profileManager;
$this->userManager = $userManager;
$this->urlGenerator = $urlGenerator;
$this->groupManager = $groupManager;
@@ -335,10 +334,9 @@ class ContactsStore implements IContactsStore {
// Provide profile parameters for core/src/OC/contactsmenu/contact.handlebars template
if (isset($contact['UID']) && isset($contact['FN'])) {
$targetUserId = $contact['UID'];
- $user = $this->userManager->get($targetUserId);
- if (!empty($user)) {
- $account = $this->accountManager->getAccount($user);
- if ($this->isProfileEnabled($account)) {
+ $targetUser = $this->userManager->get($targetUserId);
+ if (!empty($targetUser)) {
+ if ($this->profileManager->isProfileEnabled($targetUser)) {
$entry->setProfileTitle($this->l10nFactory->get('lib')->t('View profile'));
$entry->setProfileUrl($this->urlGenerator->linkToRouteAbsolute('core.ProfilePage.index', ['targetUserId' => $targetUserId]));
}
diff --git a/lib/private/Contacts/ContactsMenu/Providers/ProfileProvider.php b/lib/private/Contacts/ContactsMenu/Providers/ProfileProvider.php
index 15d24fc7773..e654319c3fa 100644
--- a/lib/private/Contacts/ContactsMenu/Providers/ProfileProvider.php
+++ b/lib/private/Contacts/ContactsMenu/Providers/ProfileProvider.php
@@ -24,7 +24,7 @@
namespace OC\Contacts\ContactsMenu\Providers;
-use OCP\Accounts\IAccountManager;
+use OC\Profile\ProfileManager;
use OCP\Contacts\ContactsMenu\IActionFactory;
use OCP\Contacts\ContactsMenu\IEntry;
use OCP\Contacts\ContactsMenu\IProvider;
@@ -33,14 +33,13 @@ use OCP\IUserManager;
use OCP\L10N\IFactory as IL10NFactory;
class ProfileProvider implements IProvider {
- use \OC\Profile\TProfileHelper;
-
- /** @var IAccountManager */
- private $accountManager;
/** @var IActionFactory */
private $actionFactory;
+ /** @var ProfileManager */
+ private $profileManager;
+
/** @var IL10NFactory */
private $l10nFactory;
@@ -51,21 +50,21 @@ class ProfileProvider implements IProvider {
private $userManager;
/**
- * @param IAccountManager $accountManager
* @param IActionFactory $actionFactory
+ * @param ProfileManager $profileManager
* @param IL10NFactory $l10nFactory
* @param IURLGenerator $urlGenerator
* @param IUserManager $userManager
*/
public function __construct(
- IAccountManager $accountManager,
IActionFactory $actionFactory,
+ ProfileManager $profileManager,
IL10NFactory $l10nFactory,
IURLGenerator $urlGenerator,
IUserManager $userManager
) {
- $this->accountManager = $accountManager;
$this->actionFactory = $actionFactory;
+ $this->profileManager = $profileManager;
$this->l10nFactory = $l10nFactory;
$this->urlGenerator = $urlGenerator;
$this->userManager = $userManager;
@@ -78,8 +77,7 @@ class ProfileProvider implements IProvider {
$targetUserId = $entry->getProperty('UID');
$targetUser = $this->userManager->get($targetUserId);
if (!empty($targetUser)) {
- $account = $this->accountManager->getAccount($targetUser);
- if ($this->isProfileEnabled($account)) {
+ if ($this->profileManager->isProfileEnabled($targetUser)) {
$iconUrl = $this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/profile.svg'));
$profileActionText = $this->l10nFactory->get('lib')->t('View profile');
$profileUrl = $this->urlGenerator->linkToRouteAbsolute('core.ProfilePage.index', ['targetUserId' => $targetUserId]);
diff --git a/lib/private/Profile/ProfileManager.php b/lib/private/Profile/ProfileManager.php
index c4317b294f3..edb51458c66 100644
--- a/lib/private/Profile/ProfileManager.php
+++ b/lib/private/Profile/ProfileManager.php
@@ -40,6 +40,7 @@ use OCP\Accounts\IAccountManager;
use OCP\Accounts\PropertyDoesNotExistException;
use OCP\App\IAppManager;
use OCP\AppFramework\Db\DoesNotExistException;
+use OCP\IConfig;
use OCP\IUser;
use OCP\L10N\IFactory;
use OCP\Profile\ILinkAction;
@@ -54,6 +55,9 @@ class ProfileManager {
/** @var IAppManager */
private $appManager;
+ /** @var IConfig */
+ private $config;
+
/** @var ProfileConfigMapper */
private $configMapper;
@@ -106,6 +110,7 @@ class ProfileManager {
public function __construct(
IAccountManager $accountManager,
IAppManager $appManager,
+ IConfig $config,
ProfileConfigMapper $configMapper,
ContainerInterface $container,
KnownUserService $knownUserService,
@@ -115,6 +120,7 @@ class ProfileManager {
) {
$this->accountManager = $accountManager;
$this->appManager = $appManager;
+ $this->config = $config;
$this->configMapper = $configMapper;
$this->container = $container;
$this->knownUserService = $knownUserService;
@@ -123,6 +129,24 @@ class ProfileManager {
$this->coordinator = $coordinator;
}
+ /**
+ * If no user is passed as an argument return whether profile is enabled globally in `config.php`
+ */
+ public function isProfileEnabled(?IUser $user = null): ?bool {
+ $profileEnabledGlobally = $this->config->getSystemValueBool('profile.enabled', true);
+
+ if (empty($user) || !$profileEnabledGlobally) {
+ return $profileEnabledGlobally;
+ }
+
+ $account = $this->accountManager->getAccount($user);
+ return filter_var(
+ $account->getProperty(IAccountManager::PROPERTY_PROFILE_ENABLED)->getValue(),
+ FILTER_VALIDATE_BOOLEAN,
+ FILTER_NULL_ON_FAILURE,
+ );
+ }
+
/**
* Register an action for the user
*/
diff --git a/tests/lib/Contacts/ContactsMenu/ContactsStoreTest.php b/tests/lib/Contacts/ContactsMenu/ContactsStoreTest.php
index 98a31254c3e..bd82c203ff5 100644
--- a/tests/lib/Contacts/ContactsMenu/ContactsStoreTest.php
+++ b/tests/lib/Contacts/ContactsMenu/ContactsStoreTest.php
@@ -27,7 +27,7 @@ namespace Tests\Contacts\ContactsMenu;
use OC\Contacts\ContactsMenu\ContactsStore;
use OC\KnownUser\KnownUserService;
-use OCP\Accounts\IAccountManager;
+use OC\Profile\ProfileManager;
use OCP\Contacts\IManager;
use OCP\IConfig;
use OCP\IGroupManager;
@@ -39,12 +39,12 @@ use PHPUnit\Framework\MockObject\MockObject;
use Test\TestCase;
class ContactsStoreTest extends TestCase {
- /** @var IAccountManager */
- private $accountManager;
/** @var ContactsStore */
private $contactsStore;
/** @var IManager|\PHPUnit\Framework\MockObject\MockObject */
private $contactsManager;
+ /** @var ProfileManager */
+ private $profileManager;
/** @var IUserManager|\PHPUnit\Framework\MockObject\MockObject */
private $userManager;
/** @var IURLGenerator */
@@ -61,18 +61,18 @@ class ContactsStoreTest extends TestCase {
protected function setUp(): void {
parent::setUp();
- $this->accountManager = $this->createMock(IAccountManager::class);
$this->contactsManager = $this->createMock(IManager::class);
$this->userManager = $this->createMock(IUserManager::class);
+ $this->profileManager = $this->createMock(ProfileManager::class);
$this->urlGenerator = $this->createMock(IURLGenerator::class);
$this->groupManager = $this->createMock(IGroupManager::class);
$this->config = $this->createMock(IConfig::class);
$this->knownUserService = $this->createMock(KnownUserService::class);
$this->l10nFactory = $this->createMock(IL10NFactory::class);
$this->contactsStore = new ContactsStore(
- $this->accountManager,
$this->contactsManager,
$this->config,
+ $this->profileManager,
$this->userManager,
$this->urlGenerator,
$this->groupManager,