Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[EPIC] DIG-5136: Preferred/Chosen Name and Gender Identity for COB Employees #1026

Merged
merged 16 commits into from
Jan 5, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions services-js/access-boston/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Changelog

## access-boston/v2024.5 (2024-10-11)

### Features

- Create new workflow for `Preferred/Chosen Name and Gender Identity` for COB Employees

### Core
- DIG-5226: Preferred/Chosen Name front end to back end workflow

### Doc
-

### Misc
-

---
14 changes: 7 additions & 7 deletions services-js/access-boston/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# syntax=docker/dockerfile:1
FROM node:14.19.1-alpine as build_phase
FROM node:14.19.1-alpine AS build_phase

# ARG S3_ENV_PATH='s3://cob-digital-apps-staging-config/access-boston/test'

ENV WORKSPACE=access-boston
ENV NODE_ENV development
ENV NODE_ENV=development

WORKDIR /app

Expand Down Expand Up @@ -38,11 +38,11 @@ WORKDIR /app/services-js/$WORKSPACE
RUN yarn install --ignore-scripts

# syntax=docker/dockerfile:1
FROM node:14.19.1-alpine as deploy_phase
FROM node:14.19.1-alpine AS deploy_phase

ENV WORKSPACE access-boston
ENV NODE_ENV development
ENV USE_SSL true
ENV WORKSPACE=access-boston
ENV NODE_ENV=development
ENV USE_SSL=true

COPY --from=build_phase /app /app

Expand Down Expand Up @@ -77,7 +77,7 @@ RUN --mount=type=secret,id=aws,target=/root/.aws/credentials \

EXPOSE 3000

ENV NODE_ENV production
ENV NODE_ENV=production

ENTRYPOINT ["/app/scripts/service-entrypoint.sh"]
CMD ["yarn", "start"]
Expand Down
21 changes: 13 additions & 8 deletions services-js/access-boston/fixtures/apps.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,19 @@ categories:
groups:
- SG_AB_CONFIRMID

- title: Account Settings
apps:
- title: Update Chosen Name
url: /preferred-chosen-name
# target: _blank
exclusions:
- BPD
- title: Change My Password
url: /change-password
- title: Manage My Device(s)
url: https://desktop.pingone.com/boston/Selection?cmd=devices
mfa_device_required: true

- title: Forms / Links
apps:
- title: Create Sponsored Account
Expand Down Expand Up @@ -130,14 +143,6 @@ categories:
groups:
- SG_AB_FN_LIASONS_USERS

- title: Account Tools
apps:
- title: Change My Password
url: /change-password
- title: Manage My Device(s)
url: https://desktop.pingone.com/boston/Selection?cmd=devices
mfa_device_required: true

- title: Support Tools
apps:
- title: Identity Verification
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"status": null,
"requestID": "0af16f7492941b50819302bbe6173d52",
"warnings": null,
"errors": null,
"retryWait": 0,
"metaData": null,
"attributes": {
"result": {
"DisplayName": "Manual WebTesting",
"newEmail": "[email protected]",
"error": ""
},
"result1": "Venky"
},
"complete": false,
"success": false,
"retry": false,
"failure": false
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"workflowArgs": {
"identityName": "40000093",
"preferredFirstName": "Manuelo",
"preferredLastName": "WebTest"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"status": null,
"requestID": "0af16f5692941e0d8192f7f62dd80335",
"warnings": null,
"errors": null,
"retryWait": 0,
"metaData": null,
"attributes": {
"result": {
"DisplayName": "Manuelo WebTest",
"newEmail": "[email protected]",
"error": ""
},
"result1": "Venky"
},
"retry": false,
"failure": false,
"complete": false,
"success": false
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"workflowArgs": {
"identityName": "40000093",
"preferredFirstName": "Manuelo",
"preferredLastName": "WebTest",
"email": "[email protected]"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"status": null,
"requestID": "0af16f5692941e0d8192bf2ae1dc539c",
"warnings": null,
"errors": null,
"retryWait": 0,
"metaData": null,
"attributes": {
"status": "Success. Updated Attributes in IIQ"
},
"retry": false,
"failure": false,
"complete": false,
"success": false
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ const ACCOUNT: Account = {
mfaRequiredDate: null,
groups: [''],
email: '',
cobAgency: 'CH',
};

storiesOf('AccessBostonHeader', module).add('default', () => (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ const ACCOUNT: Account = {
mfaRequiredDate: null,
groups: [''],
email: '',
cobAgency: 'CH',
};

storiesOf('Common/AppWrapper', module).add('default', () => (
Expand Down
77 changes: 77 additions & 0 deletions services-js/access-boston/src/client/common/Spinner.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
/** @jsx jsx */

import { css, jsx, keyframes } from '@emotion/core';

/**
* “Loading” spinner.
*
* @param {string} size // CSS font-sizes: `EM` | `REM` `px`
*/
export const Spinner = ({ size }) => {
return (
<div css={SPINNER_STYLING} style={{ width: size }}>
<svg
className="spinner"
viewBox="0 0 66 66"
aria-hidden="true"
focusable="false"
height={size}
width={size}
>
<circle
className="path"
fill="none"
strokeWidth="6"
strokeLinecap="round"
cx="33"
cy="33"
r="30"
/>
</svg>
</div>
);
};

const DURATION = '1.4s';
const OFFSET = '187px';

const SPIN_KEYFRAMES = keyframes`
0% {
transform: rotate(0deg);
}

100% {
transform: rotate(270deg);
}
`;

const DASH_KEYFRAMES = keyframes`
0% {
stroke-dashoffset: ${OFFSET};
}

50% {
stroke-dashoffset: calc(${OFFSET} / 4);
transform: rotate(135deg);
}

100% {
stroke-dashoffset: ${OFFSET};
transform: rotate(450deg);
}
`;

const SPINNER_STYLING = css({
'& > svg': {
animation: `${SPIN_KEYFRAMES} ${DURATION} linear infinite`,
},

'& .path': {
stroke: 'currentColor',
strokeDasharray: OFFSET,
strokeDashoffset: 0,
transformOrigin: 'center',

animation: `${DASH_KEYFRAMES} ${DURATION} ease-in-out infinite`,
},
});
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ const QUERY = gql`
mfaRequiredDate
groups
email
cobAgency
}

notice {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ const QUERY = gql`
mfaRequiredDate
groups
email
cobAgency
}
}
`;
Expand Down
2 changes: 2 additions & 0 deletions services-js/access-boston/src/client/graphql/queries.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ export interface FetchAccountAndApps_account {
mfaRequiredDate: string | null;
groups: string[] | null;
email: string;
cobAgency: string | null;
}

export interface FetchAccountAndApps_notice {
Expand Down Expand Up @@ -121,6 +122,7 @@ export interface FetchAccount_account {
mfaRequiredDate: string | null;
groups: string[] | null;
email: string;
cobAgency: string | null;
}

export interface FetchAccount {
Expand Down
Loading