[{"__symbolic":"module","version":3,"metadata":{"Mvp0UserAccountsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"mvp0-user-accounts","template":"\n<ion-grid>\n\n  <!-- TBD: Do not show the local account if at least one \"real\" account exists which can be used to login... -->\n\n  <!--<ion-row align-items-center *ngIf=\"isShowLocalProfile\">-->\n  <ion-row align-items-center>\n    <ion-col align-self-start col-12>\n      <ion-card>\n        <ion-card-content>\n          <ion-card-title>\n            {{localUserProfile.nickname}}\n          </ion-card-title>\n          <p>\n            This is your default local account. Warning: Local account data will not be synch'ed with cloud database. If you use a web\n            browser, the data may be lost.\n          </p>\n          <ion-list>\n            <!--<ion-item *ngIf=\"isNewAccountAdditionAllowed\">-->\n            <ion-item>\n              <button ion-button outline full icon-left [color]=\"(isNewAccountAdditionAllowed == true) ? 'danger' : 'dark'\" [disabled]=\"(isNewAccountAdditionAllowed == true) ? false : true\"\n                (click)=\"handleActionAddNewAccount();\"><ion-icon name=\"add-circle\"></ion-icon>Add Account - Identity</button>\n            </ion-item>\n          </ion-list>\n        </ion-card-content>\n      </ion-card>\n    </ion-col>\n  </ion-row>\n\n  <!-- TBD: We will need to use some kind of \"cookie\". \n  Show the following row only if the user is already logged on, or if the cookie includes the account nickname. -->\n\n  <ion-row align-items-center *ngIf=\"isMainAccountAdded\">\n    <ion-col align-self-start col-12>\n      <ion-card>\n        <!--<img src=\"http://placehold.it/400x80.png\">-->\n        <ion-card-content>\n          <ion-card-title>\n            {{mainAccount.nickname}}\n            <button ion-button icon-only clear (click)=\"handleActionChangeNickname();\"><ion-icon name=\"color-wand\"></ion-icon></button>\n          </ion-card-title>\n          <ion-list>\n            <!--<ion-item *ngIf=\"!mainAccount.isAuthenticated\">-->\n            <ion-item>\n              <button ion-button outline item-right icon-left style=\"min-width:160px;\" (click)=\"handleActionAccountLogin();\"><ion-icon name=\"log-in\"></ion-icon>Login</button>\n            </ion-item>\n            <!--<ion-item *ngIf=\"mainAccount.isAuthenticated\">-->\n            <ion-item>\n              <button ion-button outline item-right icon-left style=\"min-width:160px;\" (click)=\"handleActionChangePassword();\"><ion-icon name=\"build\"></ion-icon>Change Password</button>\n              <button ion-button outline item-right icon-left style=\"min-width:160px;\" (click)=\"handleActionAccountLogout();\"><ion-icon name=\"log-out\"></ion-icon>Logout</button>\n            </ion-item>\n            <!--<ion-item *ngIf=\"mainAccount.isAuthenticated\">-->\n            <ion-item>\n              <ion-label>Keep me logged in</ion-label>\n              <ion-toggle [(ngModel)]=\"mainAccount.isKeepLoggedOnSet\" (ngModelChange)=\"handleActionKeepLoggedOn($event);\"></ion-toggle>\n            </ion-item>\n\n            <!-- TBD: Do not show the following if the user has not logged on. -->\n\n            <ion-item *ngIf=\"mainAccount.hasPrimaryAuthIdentity\">\n              <ion-avatar item-left>\n                <img src=\"http://placehold.it/40x40.png\">\n              </ion-avatar>\n              <h2>{{mainAccount.primaryAuthIdentity.authId}}\n                <button *ngIf=\"canDeletePrimaryIdentity\" ion-button icon-only clear (click)=\"handleActionDeleteIdentity(1);\"><ion-icon name=\"close\"></ion-icon></button>\n              </h2>\n              <p>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionVerifyIdentity(1);\"><ion-icon name=\"checkbox-outline\"></ion-icon>Verify Identity</button>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionResetPassword(1);\"><ion-icon name=\"build\"></ion-icon>Reset Password</button>\n                <!--<button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionUseForNotice(1);\"><ion-icon name=\"notifications\"></ion-icon>Use for Notice</button>-->\n              </p>\n            </ion-item>\n            <ion-item *ngIf=\"mainAccount.hasPrimaryAuthIdentity\">\n              <ion-label>Use it for notifications</ion-label>\n              <ion-toggle [(ngModel)]=\"mainAccount.primaryAuthIdentity.isEnabledForNotifications\" (ngModelChange)=\"handleActionUseForNotice(1, $event);\"></ion-toggle>\n            </ion-item>\n\n            <ion-item *ngIf=\"mainAccount.hasSecondaryAuthIdentity\">\n              <ion-avatar item-left>\n                <img src=\"http://placehold.it/40x40.png\">\n              </ion-avatar>\n              <h2>{{mainAccount.secondaryAuthIdentity.authId}}\n                <button *ngIf=\"canDeleteSecondaryIdentity\" ion-button icon-only clear (click)=\"handleActionDeleteIdentity(2);\"><ion-icon name=\"close\"></ion-icon></button>\n              </h2>\n              <p>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionVerifyIdentity(2);\"><ion-icon name=\"checkbox-outline\"></ion-icon>Verify Identity</button>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionResetPassword(2);\"><ion-icon name=\"build\"></ion-icon>Reset Password</button>\n                <!--<button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionUseForNotice(2);\"><ion-icon name=\"notifications\"></ion-icon>Use for Notice</button>-->\n              </p>\n            </ion-item>\n            <ion-item *ngIf=\"mainAccount.hasSecondaryAuthIdentity\">\n              <ion-label>Use it for notifications</ion-label>\n              <ion-toggle [(ngModel)]=\"mainAccount.secondaryAuthIdentity.isEnabledForNotifications\" (ngModelChange)=\"handleActionUseForNotice(2, $event);\"></ion-toggle>\n            </ion-item>\n\n            <ion-item *ngIf=\"mainAccount.hasTertiaryAuthIdentity\">\n              <ion-avatar item-left>\n                <img src=\"http://placehold.it/40x40.png\">\n              </ion-avatar>\n              <h2>{{mainAccount.tertiaryAuthIdentity.authId}}\n                <button *ngIf=\"canDeleteTertiaryIdentity\" ion-button icon-only clear (click)=\"handleActionDeleteIdentity(3);\"><ion-icon name=\"close\"></ion-icon></button>\n              </h2>\n              <p>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionVerifyIdentity(3);\"><ion-icon name=\"checkbox-outline\"></ion-icon>Verify Identity</button>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionResetPassword(3);\"><ion-icon name=\"build\"></ion-icon>Reset Password</button>\n                <!--<button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionUseForNotice(3);\"><ion-icon name=\"notifications\"></ion-icon>Use for Notice</button>-->\n              </p>\n            </ion-item>\n            <ion-item *ngIf=\"mainAccount.hasTertiaryAuthIdentity\">\n              <ion-label>Use it for notifications</ion-label>\n              <ion-toggle [(ngModel)]=\"mainAccount.tertiaryAuthIdentity.isEnabledForNotifications\" (ngModelChange)=\"handleActionUseForNotice(3, $event);\"></ion-toggle>\n            </ion-item>\n\n            <ion-item *ngIf=\"!isAllIdentitiesAdded\">\n              Add new identity (email or phone)\n              <button ion-button outline item-right icon-left style=\"min-width:140px;\" (click)=\"handleActionAddNewIdentity();\"><ion-icon name=\"add\"></ion-icon>Add New</button>\n            </ion-item>\n          </ion-list>\n\n          <!-- TBD: Temporarily commented out. For now, you cannot really \"delete\" a single main account. -->\n          <ion-list>\n            <ion-item>\n              <p>Delete This Account:</p>\n              <p>\n                <button ion-button outline item-left icon-left style=\"min-width:160px;\" (click)=\"handleActionDeleteAccount();\"><ion-icon name=\"trash\"></ion-icon>Delete Account</button>\n              </p>\n            </ion-item>\n          </ion-list>\n        </ion-card-content>\n      </ion-card>\n\n    </ion-col>\n  </ion-row>\n\n  <!-- TBD: Temporarily commented out. For now, we only support a single (non-local) account. -->\n  <!--<ion-row align-items-center>\n    <ion-col align-self-start col-12>\n      <ion-list>\n        <ion-item>\n          <button ion-button outline item-left icon-left style=\"min-width:160px;\" (click)=\"handleActionAddNewAccount();\"><ion-icon name=\"add-circle\"></ion-icon>Add New Account</button>\n        </ion-item>\n      </ion-list>\n    </ion-col>\n  </ion-row>-->\n\n</ion-grid>\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"ionic-angular","name":"AlertController"},{"__symbolic":"reference","module":"ionic-angular","name":"ToastController"},{"__symbolic":"reference","module":"ionic-angular","name":"Events"},{"__symbolic":"reference","module":"../../services/local-user-service","name":"LocalUserService"}]}],"refreshLoginOption":[{"__symbolic":"method"}],"refreshUserNickname":[{"__symbolic":"method"}],"refreshMainAccount":[{"__symbolic":"method"}],"refreshLocalUserProfile":[{"__symbolic":"method"}],"handleActionAddNewAccount":[{"__symbolic":"method"}],"handleActionDeleteAccount":[{"__symbolic":"method"}],"handleActionAccountLogin":[{"__symbolic":"method"}],"handleActionAccountLogout":[{"__symbolic":"method"}],"handleActionChangeNickname":[{"__symbolic":"method"}],"handleActionChangePassword":[{"__symbolic":"method"}],"handleActionKeepLoggedOn":[{"__symbolic":"method"}],"handleActionVerifyIdentity":[{"__symbolic":"method"}],"handleActionResetPassword":[{"__symbolic":"method"}],"handleActionUseForNotice":[{"__symbolic":"method"}],"handleActionAddNewIdentity":[{"__symbolic":"method"}],"handleActionDeleteIdentity":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"Mvp0UserAccountsComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"mvp0-user-accounts","template":"\n<ion-grid>\n\n  <!-- TBD: Do not show the local account if at least one \"real\" account exists which can be used to login... -->\n\n  <!--<ion-row align-items-center *ngIf=\"isShowLocalProfile\">-->\n  <ion-row align-items-center>\n    <ion-col align-self-start col-12>\n      <ion-card>\n        <ion-card-content>\n          <ion-card-title>\n            {{localUserProfile.nickname}}\n          </ion-card-title>\n          <p>\n            This is your default local account. Warning: Local account data will not be synch'ed with cloud database. If you use a web\n            browser, the data may be lost.\n          </p>\n          <ion-list>\n            <!--<ion-item *ngIf=\"isNewAccountAdditionAllowed\">-->\n            <ion-item>\n              <button ion-button outline full icon-left [color]=\"(isNewAccountAdditionAllowed == true) ? 'danger' : 'dark'\" [disabled]=\"(isNewAccountAdditionAllowed == true) ? false : true\"\n                (click)=\"handleActionAddNewAccount();\"><ion-icon name=\"add-circle\"></ion-icon>Add Account - Identity</button>\n            </ion-item>\n          </ion-list>\n        </ion-card-content>\n      </ion-card>\n    </ion-col>\n  </ion-row>\n\n  <!-- TBD: We will need to use some kind of \"cookie\". \n  Show the following row only if the user is already logged on, or if the cookie includes the account nickname. -->\n\n  <ion-row align-items-center *ngIf=\"isMainAccountAdded\">\n    <ion-col align-self-start col-12>\n      <ion-card>\n        <!--<img src=\"http://placehold.it/400x80.png\">-->\n        <ion-card-content>\n          <ion-card-title>\n            {{mainAccount.nickname}}\n            <button ion-button icon-only clear (click)=\"handleActionChangeNickname();\"><ion-icon name=\"color-wand\"></ion-icon></button>\n          </ion-card-title>\n          <ion-list>\n            <!--<ion-item *ngIf=\"!mainAccount.isAuthenticated\">-->\n            <ion-item>\n              <button ion-button outline item-right icon-left style=\"min-width:160px;\" (click)=\"handleActionAccountLogin();\"><ion-icon name=\"log-in\"></ion-icon>Login</button>\n            </ion-item>\n            <!--<ion-item *ngIf=\"mainAccount.isAuthenticated\">-->\n            <ion-item>\n              <button ion-button outline item-right icon-left style=\"min-width:160px;\" (click)=\"handleActionChangePassword();\"><ion-icon name=\"build\"></ion-icon>Change Password</button>\n              <button ion-button outline item-right icon-left style=\"min-width:160px;\" (click)=\"handleActionAccountLogout();\"><ion-icon name=\"log-out\"></ion-icon>Logout</button>\n            </ion-item>\n            <!--<ion-item *ngIf=\"mainAccount.isAuthenticated\">-->\n            <ion-item>\n              <ion-label>Keep me logged in</ion-label>\n              <ion-toggle [(ngModel)]=\"mainAccount.isKeepLoggedOnSet\" (ngModelChange)=\"handleActionKeepLoggedOn($event);\"></ion-toggle>\n            </ion-item>\n\n            <!-- TBD: Do not show the following if the user has not logged on. -->\n\n            <ion-item *ngIf=\"mainAccount.hasPrimaryAuthIdentity\">\n              <ion-avatar item-left>\n                <img src=\"http://placehold.it/40x40.png\">\n              </ion-avatar>\n              <h2>{{mainAccount.primaryAuthIdentity.authId}}\n                <button *ngIf=\"canDeletePrimaryIdentity\" ion-button icon-only clear (click)=\"handleActionDeleteIdentity(1);\"><ion-icon name=\"close\"></ion-icon></button>\n              </h2>\n              <p>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionVerifyIdentity(1);\"><ion-icon name=\"checkbox-outline\"></ion-icon>Verify Identity</button>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionResetPassword(1);\"><ion-icon name=\"build\"></ion-icon>Reset Password</button>\n                <!--<button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionUseForNotice(1);\"><ion-icon name=\"notifications\"></ion-icon>Use for Notice</button>-->\n              </p>\n            </ion-item>\n            <ion-item *ngIf=\"mainAccount.hasPrimaryAuthIdentity\">\n              <ion-label>Use it for notifications</ion-label>\n              <ion-toggle [(ngModel)]=\"mainAccount.primaryAuthIdentity.isEnabledForNotifications\" (ngModelChange)=\"handleActionUseForNotice(1, $event);\"></ion-toggle>\n            </ion-item>\n\n            <ion-item *ngIf=\"mainAccount.hasSecondaryAuthIdentity\">\n              <ion-avatar item-left>\n                <img src=\"http://placehold.it/40x40.png\">\n              </ion-avatar>\n              <h2>{{mainAccount.secondaryAuthIdentity.authId}}\n                <button *ngIf=\"canDeleteSecondaryIdentity\" ion-button icon-only clear (click)=\"handleActionDeleteIdentity(2);\"><ion-icon name=\"close\"></ion-icon></button>\n              </h2>\n              <p>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionVerifyIdentity(2);\"><ion-icon name=\"checkbox-outline\"></ion-icon>Verify Identity</button>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionResetPassword(2);\"><ion-icon name=\"build\"></ion-icon>Reset Password</button>\n                <!--<button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionUseForNotice(2);\"><ion-icon name=\"notifications\"></ion-icon>Use for Notice</button>-->\n              </p>\n            </ion-item>\n            <ion-item *ngIf=\"mainAccount.hasSecondaryAuthIdentity\">\n              <ion-label>Use it for notifications</ion-label>\n              <ion-toggle [(ngModel)]=\"mainAccount.secondaryAuthIdentity.isEnabledForNotifications\" (ngModelChange)=\"handleActionUseForNotice(2, $event);\"></ion-toggle>\n            </ion-item>\n\n            <ion-item *ngIf=\"mainAccount.hasTertiaryAuthIdentity\">\n              <ion-avatar item-left>\n                <img src=\"http://placehold.it/40x40.png\">\n              </ion-avatar>\n              <h2>{{mainAccount.tertiaryAuthIdentity.authId}}\n                <button *ngIf=\"canDeleteTertiaryIdentity\" ion-button icon-only clear (click)=\"handleActionDeleteIdentity(3);\"><ion-icon name=\"close\"></ion-icon></button>\n              </h2>\n              <p>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionVerifyIdentity(3);\"><ion-icon name=\"checkbox-outline\"></ion-icon>Verify Identity</button>\n                <button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionResetPassword(3);\"><ion-icon name=\"build\"></ion-icon>Reset Password</button>\n                <!--<button ion-button outline item-left icon-left style=\"min-width:140px;\" (click)=\"handleActionUseForNotice(3);\"><ion-icon name=\"notifications\"></ion-icon>Use for Notice</button>-->\n              </p>\n            </ion-item>\n            <ion-item *ngIf=\"mainAccount.hasTertiaryAuthIdentity\">\n              <ion-label>Use it for notifications</ion-label>\n              <ion-toggle [(ngModel)]=\"mainAccount.tertiaryAuthIdentity.isEnabledForNotifications\" (ngModelChange)=\"handleActionUseForNotice(3, $event);\"></ion-toggle>\n            </ion-item>\n\n            <ion-item *ngIf=\"!isAllIdentitiesAdded\">\n              Add new identity (email or phone)\n              <button ion-button outline item-right icon-left style=\"min-width:140px;\" (click)=\"handleActionAddNewIdentity();\"><ion-icon name=\"add\"></ion-icon>Add New</button>\n            </ion-item>\n          </ion-list>\n\n          <!-- TBD: Temporarily commented out. For now, you cannot really \"delete\" a single main account. -->\n          <ion-list>\n            <ion-item>\n              <p>Delete This Account:</p>\n              <p>\n                <button ion-button outline item-left icon-left style=\"min-width:160px;\" (click)=\"handleActionDeleteAccount();\"><ion-icon name=\"trash\"></ion-icon>Delete Account</button>\n              </p>\n            </ion-item>\n          </ion-list>\n        </ion-card-content>\n      </ion-card>\n\n    </ion-col>\n  </ion-row>\n\n  <!-- TBD: Temporarily commented out. For now, we only support a single (non-local) account. -->\n  <!--<ion-row align-items-center>\n    <ion-col align-self-start col-12>\n      <ion-list>\n        <ion-item>\n          <button ion-button outline item-left icon-left style=\"min-width:160px;\" (click)=\"handleActionAddNewAccount();\"><ion-icon name=\"add-circle\"></ion-icon>Add New Account</button>\n        </ion-item>\n      </ion-list>\n    </ion-col>\n  </ion-row>-->\n\n</ion-grid>\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"ionic-angular","name":"AlertController"},{"__symbolic":"reference","module":"ionic-angular","name":"ToastController"},{"__symbolic":"reference","module":"ionic-angular","name":"Events"},{"__symbolic":"reference","module":"../../services/local-user-service","name":"LocalUserService"}]}],"refreshLoginOption":[{"__symbolic":"method"}],"refreshUserNickname":[{"__symbolic":"method"}],"refreshMainAccount":[{"__symbolic":"method"}],"refreshLocalUserProfile":[{"__symbolic":"method"}],"handleActionAddNewAccount":[{"__symbolic":"method"}],"handleActionDeleteAccount":[{"__symbolic":"method"}],"handleActionAccountLogin":[{"__symbolic":"method"}],"handleActionAccountLogout":[{"__symbolic":"method"}],"handleActionChangeNickname":[{"__symbolic":"method"}],"handleActionChangePassword":[{"__symbolic":"method"}],"handleActionKeepLoggedOn":[{"__symbolic":"method"}],"handleActionVerifyIdentity":[{"__symbolic":"method"}],"handleActionResetPassword":[{"__symbolic":"method"}],"handleActionUseForNotice":[{"__symbolic":"method"}],"handleActionAddNewIdentity":[{"__symbolic":"method"}],"handleActionDeleteIdentity":[{"__symbolic":"method"}]}}}}]