diff --git a/projects/account/src/app/app.module.ts b/projects/account/src/app/app.module.ts index 4b43503..f5f6afe 100644 --- a/projects/account/src/app/app.module.ts +++ b/projects/account/src/app/app.module.ts @@ -30,6 +30,7 @@ import { ProfileModule } from './modules/profile/profile.module'; import { SharedModule as SharedLibModule } from 'shared'; import { SharedModule } from 'shared'; import { SkillModule } from './modules/skill/skill.module'; +import { PersonalDataModule } from './modules/personal-data/personal-data.module'; @NgModule( { @@ -41,6 +42,7 @@ import { SkillModule } from './modules/skill/skill.module'; GlobalnavModule, HttpClientModule, DeviceModule, + PersonalDataModule, ProfileModule, SharedLibModule, SharedModule, diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.html b/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.html new file mode 100644 index 0000000..8c49ca6 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.html @@ -0,0 +1,16 @@ + + + + Add Mycroft Device + + +

+ You just got your new device with Mycroft installed. Congratulations! Pairing your + device with Mycroft's servers provides you with instant access to software updates, + speech transcription, weather and other services. +

+
+ + ADD DEVICE + +
diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.scss b/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.scss new file mode 100644 index 0000000..88a1df4 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.scss @@ -0,0 +1,5 @@ +@import "components/cards"; + +mat-card { + @include selene-card; +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.ts b/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.ts new file mode 100644 index 0000000..386b480 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-device/dashboard-device.component.ts @@ -0,0 +1,21 @@ +import { Component, OnInit } from '@angular/core'; + +import { faPlugCirclePlus } from '@fortawesome/free-solid-svg-icons'; + +import { environment } from '@account/environments/environment'; + +@Component({ + selector: 'account-dashboard-device', + templateUrl: './dashboard-device.component.html', + styleUrls: ['./dashboard-device.component.scss'] +}) +export class DashboardDeviceComponent implements OnInit { + public addDeviceIcon = faPlugCirclePlus; + public addDeviceUrl = environment.mycroftUrls.account + '/devices/add'; + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.html b/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.html new file mode 100644 index 0000000..02e6264 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.html @@ -0,0 +1,20 @@ + + + + Install New Skills + + +

+ Mycroft devices include pre-installed essential skills like Timers, Alarms + and News. There are many other skills available built by the Mycroft team or + our developer community. Skills can be fun (ISS Tracker), informational + (National Parks), or useful (Home Assistant). +

+ Visit the Marketplace for a list of Mycroft-approved skills. To install, + say "Hey Mycroft, install" followed by the skill name. +

+
+ + SKILL MARKETPLACE + +
diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.scss b/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.scss new file mode 100644 index 0000000..88a1df4 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.scss @@ -0,0 +1,5 @@ +@import "components/cards"; + +mat-card { + @include selene-card; +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.ts b/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.ts new file mode 100644 index 0000000..caa55f8 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-marketplace/dashboard-marketplace.component.ts @@ -0,0 +1,21 @@ +import { Component, OnInit } from '@angular/core'; + +import { faDownload } from '@fortawesome/free-solid-svg-icons'; + +import { environment } from '@account/environments/environment'; + +@Component({ + selector: 'account-dashboard-marketplace', + templateUrl: './dashboard-marketplace.component.html', + styleUrls: ['./dashboard-marketplace.component.scss'] +}) +export class DashboardMarketplaceComponent implements OnInit { + public downloadIcon = faDownload; + public marketplaceUrl = environment.mycroftUrls.marketplace; + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.html b/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.html new file mode 100644 index 0000000..b9672a2 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.html @@ -0,0 +1,34 @@ + + + + + Mycroft thanks you! + +

+ Your support makes a big difference. Thanks to you and other Mycroft supporters, + we can continue building upon the Mycroft experience. It is also motivating + knowing there is a community of people who believe in the same things we do. +

+
+
+ + + + + Become a Member + + +

+ Mycroft's voice assistant software is open source, which means it is free to use and + the underlying source code is available to the public. Our entire platform is free + of advertisements. The data we collect, with your consent, is not sold to anyone. +

+ For less than one cup of coffee a month, you can help with the costs of our servers, + services, and ongoing development. All of which all improve Mycroft's performance + and user experience. +

+
+ + MEMBERSHIP OPTIONS + +
diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.scss b/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.scss new file mode 100644 index 0000000..88a1df4 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.scss @@ -0,0 +1,5 @@ +@import "components/cards"; + +mat-card { + @include selene-card; +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.ts b/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.ts new file mode 100644 index 0000000..1c7ef6b --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-membership/dashboard-membership.component.ts @@ -0,0 +1,23 @@ +import { Component, Input, OnInit } from '@angular/core'; + +import { faAward } from '@fortawesome/free-solid-svg-icons'; + +import { environment } from '@account/environments/environment'; +import { Account } from '@account/models/account.model'; + +@Component({ + selector: 'account-dashboard-membership', + templateUrl: './dashboard-membership.component.html', + styleUrls: ['./dashboard-membership.component.scss'] +}) +export class DashboardMembershipComponent implements OnInit { + @Input() account: Account; + public membershipIcon = faAward; + public profileUrl = environment.mycroftUrls.account + '/profile'; + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.html b/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.html new file mode 100644 index 0000000..f0be71b --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.html @@ -0,0 +1,20 @@ + + + + Your Privacy is Our Policy + + +

+ Mycroft only collects the personally identifiable information (PII) necessary to + deliver a quality user experience when interacting with the voice assistant. Any + PII we collect is stored securely on our servers. It is not shared with anyone. +

+ We continually investigate solutions to further minimize the PII we collect. We + also strive to be transparent about the data we do collect and why it is collected. + To learn more about the go to My Data. +

+
+ + MY DATA + +
diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.scss b/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.scss new file mode 100644 index 0000000..dca72a1 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.scss @@ -0,0 +1,7 @@ +@import "components/cards"; + +mat-card { + @include selene-card; + max-width: 800px; + +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.ts b/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.ts new file mode 100644 index 0000000..a2c82ea --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-privacy/dashboard-privacy.component.ts @@ -0,0 +1,21 @@ +import { Component, OnInit } from '@angular/core'; + +import { faUserLock } from '@fortawesome/free-solid-svg-icons'; + +import { environment } from '@account/environments/environment'; + +@Component({ + selector: 'account-dashboard-privacy', + templateUrl: './dashboard-privacy.component.html', + styleUrls: ['./dashboard-privacy.component.scss'] +}) +export class DashboardPrivacyComponent implements OnInit { + public privacyIcon = faUserLock; + public personalDataUrl = environment.mycroftUrls.account + '/personal-data'; + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.html b/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.html new file mode 100644 index 0000000..c05cbd7 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.html @@ -0,0 +1,16 @@ + + + + Configure Skills + + +

+ Some skills include settings that can change how the skill behaves or provide + information to the skill that will improve the user experience. To change the + settings of your skills, for instance the sound of your alarm, go to Skill Settings. +

+
+ + SKILL SETTINGS + +
diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.scss b/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.scss new file mode 100644 index 0000000..88a1df4 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.scss @@ -0,0 +1,5 @@ +@import "components/cards"; + +mat-card { + @include selene-card; +} diff --git a/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.ts b/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.ts new file mode 100644 index 0000000..e2c3968 --- /dev/null +++ b/projects/account/src/app/modules/dashboard/components/dashboard-skill/dashboard-skill.component.ts @@ -0,0 +1,21 @@ +import { Component, OnInit } from '@angular/core'; + +import { faGear } from '@fortawesome/free-solid-svg-icons'; + +import { environment } from '@account/environments/environment'; + +@Component({ + selector: 'account-dashboard-skill', + templateUrl: './dashboard-skill.component.html', + styleUrls: ['./dashboard-skill.component.scss'] +}) +export class DashboardSkillComponent implements OnInit { + public settingsIcon = faGear; + public settingsUrl = environment.mycroftUrls.account + '/skills'; + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/projects/account/src/app/modules/dashboard/dashboard.component.html b/projects/account/src/app/modules/dashboard/dashboard.component.html index 0fb598c..2269754 100644 --- a/projects/account/src/app/modules/dashboard/dashboard.component.html +++ b/projects/account/src/app/modules/dashboard/dashboard.component.html @@ -1,65 +1,7 @@ -
- - - - - Mycroft likes you - -

- Your support makes a big difference. Thanks to you and other Mycroft supporters, - we can continue building upon the Mycroft experience. It is also motivating - knowing there is a community of people who believe in the same things we do. -

-
- - -
- - - - - - Become a Member - -

- Mycroft's voice assistant software is open source, which means it is free to use and - the underlying source code is available to the public. Our entire platform is free - of advertisements. The data we collect from those that opt in to our open dataset - is not sold to anyone. -

- For less than one cup of coffee a month, you can help support our server costs, - hosting, and ongoing development. All of which all improve Mycroft's performance - and user experience. -

-
- - MONTHLY MEMBERSHIP $1.99 - YEARLY MEMBERSHIP $19.99 - -
- - - - - - Install New Skills - -

- Your device comes with a set of pre-installed skills like Timers and Wikipedia. - To change the settings of your skills, for instance the sound of your alarm, - go to Skill Settings. -

-

- Our open source community extends the functionality of Mycroft. Their efforts have - produced skills like Fairytalez and ISS Tracker. To install new skills, - visit the Marketplace. -

-
- - SKILL MARKETPLACE - SKILL SETTINGS - -
+
+ + + + +
diff --git a/projects/account/src/app/modules/dashboard/dashboard.component.scss b/projects/account/src/app/modules/dashboard/dashboard.component.scss index f439746..a4fb2b3 100644 --- a/projects/account/src/app/modules/dashboard/dashboard.component.scss +++ b/projects/account/src/app/modules/dashboard/dashboard.component.scss @@ -1,48 +1,9 @@ @import "@angular/material/theming"; @import "mycroft-colors"; @import "components/buttons"; -iframe { - min-width: 350px; - width: 100%; - height: 100vh; -} #dashboard { max-width: 1200px; margin-left: auto; margin-right: auto; } -mat-card { - min-height: 540px; - margin: 16px; - max-width: 540px; - min-width: 300px; - - fa-icon { - font-size: 60px; - color: mat-color($mycroft-primary) - } - - mat-card-title { - font-size: 40px; - font-weight: bolder; - padding: 16px; - } - - mat-card-content { - padding: 16px; - - .mat-body { - font-size: 16px; - } - } - - mat-card-actions { - padding: 16px; - - a { - @include action-button-primary; - margin: 8px; - } - } -} diff --git a/projects/account/src/app/modules/dashboard/dashboard.component.ts b/projects/account/src/app/modules/dashboard/dashboard.component.ts index 22b2a7a..7813588 100644 --- a/projects/account/src/app/modules/dashboard/dashboard.component.ts +++ b/projects/account/src/app/modules/dashboard/dashboard.component.ts @@ -19,10 +19,7 @@ and limitations under the License. import { Component, OnInit } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; -import { faAward, faDownload } from '@fortawesome/free-solid-svg-icons'; - import { Account } from '@account/models/account.model'; -import { environment } from '@account/environments/environment'; @Component({ selector: 'account-dashboard', @@ -31,12 +28,6 @@ import { environment } from '@account/environments/environment'; }) export class DashboardComponent implements OnInit { public account: Account; - public awardIcon = faAward; - public downloadIcon = faDownload; - public marketplaceUrl = environment.mycroftUrls.marketplace; - public settingsUrl = environment.mycroftUrls.account + '/skills'; - public voicesUrl = environment.mycroftUrls.mimic; - public accountUrl = environment.mycroftUrls.account + '/profile'; constructor(private route: ActivatedRoute) { } diff --git a/projects/account/src/app/modules/dashboard/dashboard.module.ts b/projects/account/src/app/modules/dashboard/dashboard.module.ts index 1d6781f..96a2e4a 100644 --- a/projects/account/src/app/modules/dashboard/dashboard.module.ts +++ b/projects/account/src/app/modules/dashboard/dashboard.module.ts @@ -25,10 +25,20 @@ import { MatCardModule } from '@angular/material/card'; import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; import { DashboardComponent } from './dashboard.component'; +import { DashboardPrivacyComponent } from './components/dashboard-privacy/dashboard-privacy.component'; +import { DashboardDeviceComponent } from './components/dashboard-device/dashboard-device.component'; +import { DashboardSkillComponent } from './components/dashboard-skill/dashboard-skill.component'; +import { DashboardMembershipComponent } from './components/dashboard-membership/dashboard-membership.component'; +import { DashboardMarketplaceComponent } from './components/dashboard-marketplace/dashboard-marketplace.component'; @NgModule({ declarations: [ - DashboardComponent + DashboardComponent, + DashboardPrivacyComponent, + DashboardDeviceComponent, + DashboardSkillComponent, + DashboardMembershipComponent, + DashboardMarketplaceComponent ], imports: [ CommonModule, diff --git a/projects/account/src/app/modules/personal-data/personal-data-routing.module.ts b/projects/account/src/app/modules/personal-data/personal-data-routing.module.ts new file mode 100644 index 0000000..a9635b0 --- /dev/null +++ b/projects/account/src/app/modules/personal-data/personal-data-routing.module.ts @@ -0,0 +1,36 @@ +/*! ***************************************************************************** +SPDX-License-Identifier: Apache-2.0 + + +Copyright (c) Mycroft AI Inc. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; + +import { PersonalDataComponent } from './personal-data.component'; + +const personalDataRoutes: Routes = [ + {path: 'personal-data', component: PersonalDataComponent}, +]; + +@NgModule({ + imports: [ + RouterModule.forChild(personalDataRoutes) + ], + exports: [ + RouterModule + ] +}) +export class PersonalDataRoutingModule { } diff --git a/projects/account/src/app/modules/personal-data/personal-data.component.html b/projects/account/src/app/modules/personal-data/personal-data.component.html new file mode 100644 index 0000000..8ad5a85 --- /dev/null +++ b/projects/account/src/app/modules/personal-data/personal-data.component.html @@ -0,0 +1,90 @@ +

Data Mycroft Collects

+
+ + + + Email Address + + +

+ When you created this account, you provided your email address. It is the method we + use to identify users. It is also used to send you confirmation messages when + actions are taken against your account. For example, a password reset request is + sent to this email address. +

+ We do not use your email address for marketing purposes, unless you used the same + email address to sign up for our newsletter or other such mailing list. Your email + address is never shared with third parties. +

+
+
+ + + + + Geographical Location + + +

+ When you register a device with Mycroft, the Add Device screen asks for the + geographical location of yor device. This data is synchronized to your device when + it is registered and when it is changed via the Edit Device screen. Your device + uses this data for location-specific services such as date, time and weather. +

+
+
+ + + + + Data Presentation + + +

+ When you register your first device, you are asked for your preferred date format, + time format, and measurement system. This data is synchronized to each of your + devices when they are registered. If the values of these preferences change, the + new values are synchronized to all your devices. Your device uses this data for + when formatting data for presentation such as date, time and weather. +

+
+
+
+ +

Data Sent to Third Parties

+
+ + + + Speech Transcription + + +

+ When you issue a command or request to your voice assistant, the audio data is + transcribed into text. The transcription can be performed on your device, but + on-device transcription software does not provide the best user experience. + Transcriptions are more accurate when sent to a third party service provider + over the internet. +

+ Mycroft has partnered with Assembly AI to provide a privacy focused solution for + speech transcription. Your voice request will be sent for transcription, but will + not be saved. +

+
+
+ + + + + Answering Queries + + +

+ When you ask the Mycroft voice assistant a question that cannot be answered by one + of the installed skills, a textual representation of the question is sent to + services like Wolfram Alpha, Duck Duck Go and Wikipedia in an attempt to find the + answer. +

+
+
+
diff --git a/projects/account/src/app/modules/personal-data/personal-data.component.scss b/projects/account/src/app/modules/personal-data/personal-data.component.scss new file mode 100644 index 0000000..2f2a966 --- /dev/null +++ b/projects/account/src/app/modules/personal-data/personal-data.component.scss @@ -0,0 +1,42 @@ +@import "@angular/material/theming"; +@import "mycroft-colors"; +@import "components/buttons"; + +.personal-data-page { + max-width: 1200px; + margin-left: auto; + margin-right: auto; +} + +.mat-h1 { + color: mat-color($mycroft-accent); + font-size: 32px; + margin-top: 32px; +} + +mat-card { + border-radius: 12px; + margin: 16px; + max-width: 500px; + min-width: 300px; + + mat-card-header { + fa-icon { + font-size: 32px; + color: mat-color($mycroft-primary); + padding-left: 16px; + padding-top: 8px; + } + + mat-card-title { + font-weight: bold; + padding-top: 16px; + } + } + + mat-card-content { + padding: 16px; + + } + +} diff --git a/projects/account/src/app/modules/personal-data/personal-data.component.ts b/projects/account/src/app/modules/personal-data/personal-data.component.ts new file mode 100644 index 0000000..0847064 --- /dev/null +++ b/projects/account/src/app/modules/personal-data/personal-data.component.ts @@ -0,0 +1,22 @@ +import { Component, OnInit } from '@angular/core'; + +import { faComments, faEarthAmericas, faEnvelope, faGauge, faQuestionCircle } from '@fortawesome/free-solid-svg-icons'; + +@Component({ + selector: 'account-personal-data', + templateUrl: './personal-data.component.html', + styleUrls: ['./personal-data.component.scss'] +}) +export class PersonalDataComponent implements OnInit { + public dataPresentationIcon = faGauge; + public emailAddressIcon = faEnvelope; + public locationIcon = faEarthAmericas; + public queryIcon = faQuestionCircle; + public voiceIcon = faComments; + + constructor() { } + + ngOnInit(): void { + } + +} diff --git a/projects/account/src/app/modules/personal-data/personal-data.module.ts b/projects/account/src/app/modules/personal-data/personal-data.module.ts new file mode 100644 index 0000000..1a84e9d --- /dev/null +++ b/projects/account/src/app/modules/personal-data/personal-data.module.ts @@ -0,0 +1,43 @@ +/*! ***************************************************************************** +SPDX-License-Identifier: Apache-2.0 + + +Copyright (c) Mycroft AI Inc. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ + +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { FlexLayoutModule } from '@angular/flex-layout'; +import { MatButtonModule } from '@angular/material/button'; +import { MatCardModule } from '@angular/material/card'; + +import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; + +import { PersonalDataComponent } from './personal-data.component'; +import { PersonalDataRoutingModule } from './personal-data-routing.module'; + +@NgModule({ + declarations: [ + PersonalDataComponent + ], + imports: [ + CommonModule, + FlexLayoutModule, + FontAwesomeModule, + MatButtonModule, + MatCardModule, + PersonalDataRoutingModule + ] +}) +export class PersonalDataModule { } diff --git a/projects/account/src/app/modules/profile/components/cards/login/login.component.ts b/projects/account/src/app/modules/profile/components/cards/login/login.component.ts index 2144089..a3f9726 100644 --- a/projects/account/src/app/modules/profile/components/cards/login/login.component.ts +++ b/projects/account/src/app/modules/profile/components/cards/login/login.component.ts @@ -18,7 +18,7 @@ and limitations under the License. import { Component, Input } from '@angular/core'; -import { Account } from '../../../../../shared/models/account.model'; +import { Account } from '@account/models/account.model'; @Component({ selector: 'account-login-edit', diff --git a/src/stylesheets/_mycroft-colors.scss b/src/stylesheets/_mycroft-colors.scss index 4db37b9..bae6c27 100644 --- a/src/stylesheets/_mycroft-colors.scss +++ b/src/stylesheets/_mycroft-colors.scss @@ -121,7 +121,7 @@ $mycroft-warn-palette: ( $mycroft-light-theme-background: ( status-bar: map_get($mat-grey, 300), app-bar: map_get($mat-grey, 100), - background: #f1f3f4, + background: #e4f1fe, hover: rgba(black, 0.04), card: white, dialog: white, diff --git a/src/stylesheets/components/_cards.scss b/src/stylesheets/components/_cards.scss index 1916e2b..35b1432 100644 --- a/src/stylesheets/components/_cards.scss +++ b/src/stylesheets/components/_cards.scss @@ -1,17 +1,17 @@ // ***************************************************************************** // SPDX-License-Identifier: Apache-2.0 -// -// +// +// // Copyright (c) Mycroft AI Inc. All rights reserved. // Licensed under the Apache License, Version 2.0 (the "License"); you may not use // this file except in compliance with the License. You may obtain a copy of the // License at http://www.apache.org/licenses/LICENSE-2.0 -// +// // THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY // KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED // WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, // MERCHANTABLITY OR NON-INFRINGEMENT. -// +// // See the Apache Version 2.0 License for specific language governing permissions // and limitations under the License. // ***************************************************************************** @@ -62,3 +62,40 @@ } } } + +@mixin selene-card { + border-radius: 12px; + margin: 16px; + max-width: 500px; + min-width: 300px; + //padding: 16px; + + mat-card-header { + fa-icon { + font-size: 32px; + color: mat-color($mycroft-primary); + padding-left: 16px; + padding-top: 8px; + } + + mat-card-title { + font-weight: bold; + padding-top: 16px; + } + } + + mat-card-content { + padding-left: 16px; + padding-right: 16px; + padding-top: 16px; + } + + mat-card-actions { + padding-left: 16px; + + a { + @include action-button-primary; + margin: 16px; + } + } +}