- {renderContent()}
-
-
+
+
+
Setup user
+
Additional admins can be designated within the Fleet App
-
+
+
+
Organization details
-
+
+
+
Set Fleet URL
+
+
Success
+
+
);
diff --git a/frontend/components/forms/RegistrationForm/RegistrationForm.tests.jsx b/frontend/components/forms/RegistrationForm/RegistrationForm.tests.jsx
index a78e22d0fc61..03e66a580c76 100644
--- a/frontend/components/forms/RegistrationForm/RegistrationForm.tests.jsx
+++ b/frontend/components/forms/RegistrationForm/RegistrationForm.tests.jsx
@@ -8,28 +8,28 @@ describe('RegistrationForm - component', () => {
const form = mount(
);
expect(form.find('AdminDetails').length).toEqual(1);
- expect(form.text()).toContain('SET USERNAME & PASSWORD');
+ expect(form.text()).toContain('Setup user');
});
it('renders OrgDetails on the second page', () => {
const form = mount(
);
expect(form.find('OrgDetails').length).toEqual(1);
- expect(form.text()).toContain('SET ORGANIZATION DETAILS');
+ expect(form.text()).toContain('Organization details');
});
it('renders KolideDetails on the third page', () => {
const form = mount(
);
expect(form.find('KolideDetails').length).toEqual(1);
- expect(form.text()).toContain('SET KOLIDE WEB ADDRESS');
+ expect(form.text()).toContain('Set Fleet URL');
});
it('renders ConfirmationPage on the fourth page', () => {
const form = mount(
);
expect(form.find('ConfirmationPage').length).toEqual(1);
- expect(form.text()).toContain('SUCCESS');
+ expect(form.text()).toContain('Success');
});
});
diff --git a/frontend/components/forms/RegistrationForm/_styles.scss b/frontend/components/forms/RegistrationForm/_styles.scss
index d0472fcdac2b..b02c3d8c5e2b 100644
--- a/frontend/components/forms/RegistrationForm/_styles.scss
+++ b/frontend/components/forms/RegistrationForm/_styles.scss
@@ -1,18 +1,56 @@
.user-registration {
display: flex;
- align-content: center;
justify-content: center;
+ align-items: stretch;
flex-grow: 1;
+ margin-top: 24px;
&__container {
- @include size(500px 520px);
- align-self: center;
- border-radius: 4px;
+ @include size(500px auto);
+ @include position(absolute, 49% 0 null null);
+ transition: left 300ms ease, opacity 300ms ease;
+ border-radius: 10px;
background-color: $core-light-blue-grey;
- box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.3);
box-sizing: border-box;
- padding: 25px 35px;
- margin-top: -55px;
+ padding: 40px;
+ z-index: 1;
+ transform: translateY(-50%);
+
+ h2 {
+ font-size: $large;
+ font-weight: $regular;
+ text-align: center;
+ padding: 0 0 16px;
+ margin: 0;
+ margin-bottom: 40px;
+ border-bottom: 1px solid $ui-borders;
+ }
+
+ p {
+ font-size: $small;
+ margin: 0 0 8px;
+ }
+
+ &--admin {
+ left: 0;
+ top: unquote('max(56%, 480px)');
+ margin: auto;
+ }
+
+ &--org {
+ left: calc(100% + 220px);
+ top: -10px;
+ }
+
+ &--kolide {
+ left: calc(150% + 220px);
+ top: -8px;
+ }
+
+ &--confirmation {
+ left: calc(200% + 220px);
+ top: -8px;
+ }
&--complete {
padding: 0;
@@ -20,8 +58,6 @@
.user-registration__title {
font-size: 24px;
font-weight: $bold;
- line-height: 0.54;
- letter-spacing: 0.9px;
color: $core-dark-blue-grey;
padding: 25px 35px;
}
@@ -29,72 +65,80 @@
}
&__form {
- @include position(absolute, 49% 0 null null);
- transform: translateY(-85px);
+ display: flex;
width: 100%;
- height: 470px;
box-sizing: border-box;
- padding: 25px 0;
@include breakpoint(tablet) {
transform: translateY(-100px);
}
&--step1-complete {
- .user-registration__field-wrapper--admin {
- left: -184px;
+ .user-registration__container--admin {
+ left: -600px;
+ opacity: 0;
+ }
+
+ .user-registration__container--org {
+ left: 0;
+ top: unquote('max(56%, 480px)');
+ margin: auto;
}
- .user-registration__field-wrapper--org {
- left: 50%;
+ .user-registration__container--kolide {
+ left: calc(100% + 220px);
}
- .user-registration__field-wrapper--kolide {
- left: calc(100% + 184px);
+ .user-registration__container--confirmation {
+ left: calc(150% + 220px);
}
}
&--step2-complete {
- .user-registration__field-wrapper--admin {
- left: calc(-50% - 184px);
+
+ .user-registration__container--admin {
+ left: calc(-50% - 600px);
+ opacity: 0;
}
- .user-registration__field-wrapper--org {
- left: -184px;
+ .user-registration__container--org {
+ left: -600px;
+ opacity: 0;
}
- .user-registration__field-wrapper--kolide {
- left: 50%;
+ .user-registration__container--kolide {
+ left: 0;
+ top: unquote('max(56%, 480px)');
+ margin: auto;
+ }
+
+ .user-registration__container--confirmation {
+ left: calc(100% + 220px);
}
}
&--step3-complete {
- .user-registration__field-wrapper--admin {
- left: calc(-100% - 184px);
+
+ .user-registration__container--admin {
+ left: calc(-100% - 600px);
+ opacity: 0;
}
- .user-registration__field-wrapper--org {
- left: calc(-50% - 184px);
+ .user-registration__container--org {
+ left: calc(-50% - 600px);
+ opacity: 0;
}
- .user-registration__field-wrapper--kolide {
- left: -184px;
+ .user-registration__container--kolide {
+ left: -600px;
+ opacity: 0;
}
- }
- &::before,
- &::after {
- background-image: linear-gradient(to right, $ui-medium-grey 50%, transparent 50%);
- background-position: left top;
- background-repeat: repeat-x;
- background-size: 17px 2px;
- position: absolute;
- top: 100px;
- left: 50%;
- width: 50%;
- height: 2px;
- content: '';
- z-index: 1;
+ .user-registration__container--confirmation {
+ left: 0;
+ top: unquote('max(56%, 480px)');
+ margin: auto;
+ }
}
&::before {
@@ -107,89 +151,39 @@
display: none;
}
}
-
- &--step3-active,
- &--step3-complete {
- &::after {
- display: none;
- }
- }
}
&__description {
font-size: 14px;
font-weight: $regular;
- line-height: 1.43;
- letter-spacing: 0.5px;
color: $core-dark-blue-grey;
}
&__title {
font-size: 18px;
font-weight: $bold;
- line-height: 0.72;
- letter-spacing: 0.6px;
color: $core-dark-blue-grey;
margin: 0;
padding: 0;
}
&__field-wrapper {
- transition: left 300ms ease;
- width: 430px;
- min-height: 420px;
- padding-bottom: 75px;
- border-radius: 4px;
background-color: $core-light-blue-grey;
- box-shadow: 0 10px 30px 0 rgba(0, 0, 0, 0.3);
- margin: 0 auto;
- position: absolute;
box-sizing: border-box;
- margin-left: -215px;
z-index: 2;
-
- &--admin {
- left: 50%;
- top: -25px;
- }
-
- &--org {
- left: calc(100% + 184px);
- top: -10px;
- }
-
- &--kolide {
- left: calc(150% + 184px);
- top: -8px;
- }
-
- input {
- background-color: transparent;
- }
+ display: flex;
+ flex-direction: column;
+ align-items: center;
.button {
- bottom: 0;
- top: auto;
- position: absolute;
- border-top-left-radius: 0;
- border-top-right-radius: 0;
-
- &:active {
- top: auto;
- }
+ width: 160px;
+ margin-top: 40px;
}
.registration-fields {
- padding: 0 35px 25px;
box-sizing: border-box;
+ width: 100%;
}
}
- &__confirmation {
- background-color: $core-light-blue-grey;
- position: relative;
- z-index: 2;
- width: 500px;
- height: 500px;
- }
}
diff --git a/frontend/components/forms/fields/InputFieldWithIcon/InputFieldWithIcon.jsx b/frontend/components/forms/fields/InputFieldWithIcon/InputFieldWithIcon.jsx
index 53c11698cc38..2c5126c1d371 100644
--- a/frontend/components/forms/fields/InputFieldWithIcon/InputFieldWithIcon.jsx
+++ b/frontend/components/forms/fields/InputFieldWithIcon/InputFieldWithIcon.jsx
@@ -22,12 +22,9 @@ class InputFieldWithIcon extends InputField {
};
renderHeading = () => {
- const { error, placeholder, value } = this.props;
+ const { error, placeholder } = this.props;
- const labelClasses = classnames(
- `${baseClass}__label`,
- { [`${baseClass}__label--hidden`]: !value },
- );
+ const labelClasses = classnames(`${baseClass}__label`);
if (error) {
return
{error}
;
diff --git a/frontend/components/forms/fields/InputFieldWithIcon/_styles.scss b/frontend/components/forms/fields/InputFieldWithIcon/_styles.scss
index 0375fc1a68d2..8ec61562fa72 100644
--- a/frontend/components/forms/fields/InputFieldWithIcon/_styles.scss
+++ b/frontend/components/forms/fields/InputFieldWithIcon/_styles.scss
@@ -1,5 +1,5 @@
.input-icon-field {
- margin-top: 22px;
+ margin-top: 16px;
position: relative;
width: 100%;
@@ -20,10 +20,11 @@
}
&__input {
- border: 2px;
- border-bottom: 2px solid $core-blue;
- padding: 0 30px 8px 0;
- font-size: 20px;
+ border: 1px solid $ui-borders;
+ background-color: $ui-light-grey;
+ border-radius: 4px;
+ padding: 9px 30px 9px 16px;
+ font-size: $small;
text-indent: 1px;
position: relative;
width: 100%;
@@ -43,33 +44,25 @@
border-bottom-color: $alert;
}
- &--password {
- letter-spacing: 7px;
- }
}
&__label {
- color: $core-blue;
- font-size: $small;
- text-transform: lowercase;
-
- &--hidden {
- visibility: hidden;
- }
+ font-size: $x-small;
+ font-weight: $bold;
+ margin-bottom: 2px;
}
&__errors {
- color: $alert;
- font-size: $small;
- text-transform: lowercase;
+ font-size: $x-small;
}
&__hint {
- font-size: 14px;
+ font-size: $x-small;
+ font-style: italic;
font-weight: $regular;
- line-height: 1.57;
- letter-spacing: 1px;
- color: $core-medium-blue-grey;
+ line-height: 20px;
+ display: inline-block;
+ margin-top: 8px;
code {
color: $core-blue;
diff --git a/frontend/layouts/CoreLayout/_styles.scss b/frontend/layouts/CoreLayout/_styles.scss
index b8cc94e69a25..1fe46418bbdd 100644
--- a/frontend/layouts/CoreLayout/_styles.scss
+++ b/frontend/layouts/CoreLayout/_styles.scss
@@ -9,6 +9,7 @@
padding: 0 0 0 $pad-base;
max-width: calc(100% - 217px);
position: relative;
+ background-color: $white;
&--small {
max-width: calc(100% - 73px);
diff --git a/frontend/pages/RegistrationPage/Breadcrumbs/Breadcrumbs.jsx b/frontend/pages/RegistrationPage/Breadcrumbs/Breadcrumbs.jsx
index 7fc359350657..53fe0d744f7e 100644
--- a/frontend/pages/RegistrationPage/Breadcrumbs/Breadcrumbs.jsx
+++ b/frontend/pages/RegistrationPage/Breadcrumbs/Breadcrumbs.jsx
@@ -43,8 +43,8 @@ class Breadcrumbs extends Component {
return (
-
-
+
+
);
}
diff --git a/frontend/pages/RegistrationPage/Breadcrumbs/_styles.scss b/frontend/pages/RegistrationPage/Breadcrumbs/_styles.scss
index e552bca195b1..ffbb90c50f41 100644
--- a/frontend/pages/RegistrationPage/Breadcrumbs/_styles.scss
+++ b/frontend/pages/RegistrationPage/Breadcrumbs/_styles.scss
@@ -2,9 +2,9 @@
display: flex;
justify-content: space-between;
align-content: center;
- width: 665px;
+ width: 600px;
height: 125px;
- margin: 0 auto;
+ margin: 38px auto 0;
@include breakpoint(tablet) {
height: 75px;
@@ -12,25 +12,20 @@
&__page {
text-align: center;
- width: 145px;
- font-size: 14px;
+ width: 150px;
+ font-size: $small;
font-weight: $regular;
- line-height: 1.53;
- letter-spacing: 0.5px;
- color: $core-dark-blue-grey;
+ color: $white;
position: relative;
&::before {
content: '';
position: absolute;
- width: 235px;
+ width: 200px;
height: 2px;
- background-image: linear-gradient(to right, $ui-medium-grey 50%, transparent 50%);
- background-position: left top;
- background-repeat: repeat-x;
- background-size: 17px 2px;
+ background-color: $core-blue;
bottom: 43px;
- left: 84px;
+ left: 87px;
@include breakpoint(tablet) {
bottom: 23px;
@@ -40,7 +35,7 @@
&::after {
@extend %kolidecon;
@include size(24px);
- background-color: $white;
+ background-color: transparent;
display: block;
border-radius: 50%;
content: '';
@@ -61,23 +56,29 @@
&--active {
font-weight: $bold;
- color: $core-dark-blue-grey;
+ color: $white;
}
&--1 {
&::after {
- border: solid 2px $success;
+ border: 2px solid $white;
}
&.registration-breadcrumbs__page--active {
+
+ &::before {
+ background: linear-gradient(to right, $white 50%, $core-blue 50%);
+ }
+
&::after {
- background-color: $success;
+ background-color: transparent;
+ border: 2px solid $white;
}
}
&.registration-breadcrumbs__page--complete {
&::before {
- background-image: linear-gradient(to right, $success 0%, $core-purple 100%);
+ background-color: $white;
background-size: auto;
z-index: 2;
}
@@ -85,7 +86,7 @@
&::after {
@include size(28px);
content: '\f035';
- color: $success;
+ color: $white;
border: 0;
}
}
@@ -93,26 +94,30 @@
&--2 {
&::after {
- border: solid 2px $core-purple;
+ border: solid 2px $core-blue;
}
&.registration-breadcrumbs__page--active {
+ &::before {
+ background: linear-gradient(to right, $white 50%, $core-blue 50%);
+ }
+
&::after {
- background-color: $core-purple;
+ background-color: transparent;
+ border: 2px solid $white;
}
}
&.registration-breadcrumbs__page--complete {
&::before {
- background-image: linear-gradient(to right, $core-purple 0%, $core-blue 100%);
- background-size: auto;
+ background: $white;
z-index: 2;
}
&::after {
@include size(28px);
content: '\f035';
- color: $core-purple;
+ color: $white;
border: 0;
}
}
@@ -128,8 +133,14 @@
}
&.registration-breadcrumbs__page--active {
+
+ &::before {
+ background: linear-gradient(to right, $white 50%, $core-blue 50%);
+ }
+
&::after {
- background-color: $core-blue;
+ background-color: transparent;
+ border: 2px solid $white;
}
}
@@ -137,7 +148,7 @@
&::after {
@include size(28px);
content: '\f035';
- color: $core-blue;
+ color: $white;
border: 0;
}
}
diff --git a/frontend/pages/RegistrationPage/RegistrationPage.jsx b/frontend/pages/RegistrationPage/RegistrationPage.jsx
index bbea43d436b0..1a00fd09de4b 100644
--- a/frontend/pages/RegistrationPage/RegistrationPage.jsx
+++ b/frontend/pages/RegistrationPage/RegistrationPage.jsx
@@ -11,7 +11,7 @@ import { setup } from 'redux/nodes/auth/actions';
import { showBackgroundImage } from 'redux/nodes/app/actions';
import EnsureUnauthenticated from 'components/EnsureUnauthenticated';
-import fleetLogoText from '../../../assets/images/fleet-logo-text-black.svg';
+import fleetLogoText from '../../../assets/images/fleet-logo-text-white.svg';
export class RegistrationPage extends Component {
static propTypes = {
diff --git a/frontend/pages/RegistrationPage/_styles.scss b/frontend/pages/RegistrationPage/_styles.scss
index 6857a4843a63..2dc9fbb165b5 100644
--- a/frontend/pages/RegistrationPage/_styles.scss
+++ b/frontend/pages/RegistrationPage/_styles.scss
@@ -8,7 +8,7 @@
&__logo {
@include position(absolute, 15px null null 15px);
- width: 200px;
+ width: 120px;
@include breakpoint(tablet) {
width: 125px;
diff --git a/frontend/styles/global/_global.scss b/frontend/styles/global/_global.scss
index 9c7b374fac6d..83771cf7e89f 100644
--- a/frontend/styles/global/_global.scss
+++ b/frontend/styles/global/_global.scss
@@ -47,13 +47,9 @@ a {
}
.wrapper {
- background: $white;
+ background: $core-gradient;
margin: 0;
- &--background {
- background: url('../assets/images/background.png') center center;
- background-size: cover;
- }
}
.body-wrap {