Skip to content

Commit

Permalink
Merge pull request #1819 from fecgov/release/sprint-39.1
Browse files Browse the repository at this point in the history
Release/sprint 39.1
  • Loading branch information
sasha-dresden authored Apr 3, 2024
2 parents 2944053 + 3fe85cd commit e7424b5
Show file tree
Hide file tree
Showing 52 changed files with 1,061 additions and 264 deletions.
4 changes: 2 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -300,15 +300,15 @@ workflows:
- e2e-test:
filters:
branches:
only: /release\/sprint-\d+|main/
only: /release\/sprint-[\.\d]+|main/
- deploy:
requires:
- test
- dependency-check
- e2e-test
filters:
branches:
only: /develop|release\/sprint-\d+|main/
only: /develop|release\/sprint-[\.\d]+|main/

nightly-run:
when: << pipeline.parameters.is-nightly-run >>
Expand Down
4 changes: 2 additions & 2 deletions front-end/cypress/e2e/F3X/reports-f3x.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ describe('Manage reports', () => {
ReportListPage.createF3X(formData);
ReportListPage.goToPage();
cy.get('tr').should('contain', 'FORM 3X');
cy.get('tr').should('contain', 'OCTOBER 20 (M10)');
cy.get('tr').should('contain', 'OCTOBER 20 MONTHLY REPORT (M10)');
});

it('Create a Quarterly Non-Election Year report', () => {
Expand Down Expand Up @@ -62,7 +62,7 @@ describe('Manage reports', () => {
ReportListPage.createF3X(formData);
ReportListPage.goToPage();
cy.get('tr').should('contain', 'FORM 3X');
cy.get('tr').should('contain', 'JANUARY 31 (YE)');
cy.get('tr').should('contain', 'JANUARY 31 YEAR-END (YE)');
cy.get('tr').should('contain', `04/01/${currentYear} - 04/30/${currentYear}`);
});

Expand Down
8 changes: 4 additions & 4 deletions front-end/src/app/app.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,15 +53,15 @@ import { UsersModule } from './users/users.module';
// Save ngrx store to localStorage dynamically
function localStorageSyncReducer(reducer: ActionReducer<AppState>): ActionReducer<AppState> {
return localStorageSync({
keys: ['committeeAccount', 'singleClickDisabled', 'userLoginData', 'activeReport', 'sidebarState'],
keys: ['committeeAccount', 'singleClickDisabled', 'userLoginData', 'activeReport'],
storageKeySerializer: (key) => `fecfile_online_${key}`,
rehydrate: true,
})(reducer);
}

function initializeAppFactory(loginService: LoginService): () => Promise<void> {
return () => {
return loginService.retrieveUserLoginData().catch(e => e);
return loginService.retrieveUserLoginData().catch((e) => e);
};
}

Expand Down Expand Up @@ -121,8 +121,8 @@ const metaReducers: Array<MetaReducer<AppState, Action>> = [localStorageSyncRedu
useFactory: initializeAppFactory,
deps: [LoginService],
multi: true,
}
},
],
bootstrap: [AppComponent],
})
export class AppModule { }
export class AppModule {}
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import { ContactDialogComponent } from '../../shared/components/contact-dialog/c
import { DeletedContactDialogComponent } from '../deleted-contact-dialog/deleted-contact-dialog.component';
import { ContactListComponent } from './contact-list.component';
import { of } from 'rxjs';
import { ActivatedRoute } from '@angular/router';

describe('ContactListComponent', () => {
let component: ContactListComponent;
Expand Down Expand Up @@ -49,7 +50,18 @@ describe('ContactListComponent', () => {
SharedModule,
],
declarations: [ContactListComponent, ContactDialogComponent, DeletedContactDialogComponent],
providers: [ConfirmationService, FormBuilder, MessageService, provideMockStore(testMockStore)],
providers: [
ConfirmationService,
FormBuilder,
MessageService,
provideMockStore(testMockStore),
{
provide: ActivatedRoute,
useValue: {
snapshot: { params: { reportId: '99' } },
},
},
],
}).compileComponents();
});

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
<dialog #dialog>
<div tabindex="-1" aria-labelledby="dialog-title" aria-hidden="true">
<div class="dialog-content">
<div class="dialog-header">
<h1 class="dialog-title" id="dialog-title">Confirm</h1>
<button type="button" class="btn-close" (click)="dialog.close()" aria-label="Cancel"></button>
</div>
<div class="dialog-body">
<p class="dialog-text">
<b>This independent expenditure will be added to the following {{ reportType | label: reportTypeLabels }}:</b>
</p>
<div class="dropdown">
<label id="type-label" for="typeDropdown">{{ reportType | label: reportTypeLabels }}</label>
<button
class="btn dropdown-toggle"
type="button"
id="typeDropdown"
[autofocus]="true"
data-bs-toggle="dropdown"
aria-expanded="false"
[innerHTML]="dropDownFieldText"
></button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuButton1">
<li *ngFor="let report of reports">
<button
class="dropdown-item"
(click)="updateSelectedReport(report)"
(select)="updateSelectedReport(report)"
>
<span class="option">
<b>{{ report.id | label: reportLabels }}</b></span
>
</button>
</li>
</ul>
</div>
<p *ngIf="reportType === reportTypes.F24" class="dialog-text dialog-note">
<i>
<b>Note:</b> Unitemized IEs on Form 3X will appear itemized on Form 24.<br />
They will remain unitemized on Form3X.
</i>
</p>
</div>
<div class="dialog-footer grid">
<div class="col-12 center">
<button
pButton
pRipple
[disabled]="!selectedReport"
label="Confirm"
class="p-button-primary"
(click)="linkToSelectedReport()"
></button>
</div>
<div class="col-12 center">
<span (click)="dialog.close()" class="hover">Cancel</span>
</div>
</div>
</div>
</div>
</dialog>
<p-toast key="reportLinkToast"></p-toast>
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
dialog::backdrop {
background: rgba(0, 0, 0, 0.3);
}

h1 {
color: #212121;
font-size: 36px;
font-weight: bold;
line-height: 36px;
}

.field {
display: grid;
}

dialog {
width: 512px;
background-color: #ffffff;
border-radius: 4px;
box-shadow: 0 0 4px 0 rgba(33, 33, 33, 0.5);
border: none;
margin-top: 15%;
}

.dialog-header {
border-bottom: 2px solid #212121;
width: 448px;
margin: auto;
padding-bottom: 10px;
display: flex;
justify-content: space-between;
}

.dialog-body {
padding: 16px 16px;
margin-left: 25px;
margin-right: 25px;
}

.dialog-text {
margin-bottom: 16px;
font-family: karla, Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
color: #212121;
}

.dialog-note {
font-size: 12px;
}

label {
font-family: karla, Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
font-weight: bold;
font-size: 14px;
color: #212121;
margin-bottom: 5px;
text-transform: uppercase;
}

.dropdown {
margin-bottom: 8px;
}

:host ::ng-deep .dropdown-toggle, .dropdown > ul {
width: 100% !important;
}

.dropdown-toggle {
display: flex;
justify-content: space-between;
align-items: center;
height: 44px;
border: 2px solid #aeb0b5;
font-size: 14px;
border-radius: 4px;
}

.dialog-footer {
display: flex;
border-top: 0;
padding-top: 0;
padding-bottom: 16px;
}

.center {
display: flex;
justify-content: center;
align-content: center;
}

.hover {
cursor: pointer
}

.option {
font-size: 14px;
}

.btn-close {
box-sizing: content-box;
width: 1em;
height: 1em;
padding: 0.25em 0.25em;
color: #000;
background: transparent
url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e")
center/1em auto no-repeat;
border: 0;
border-radius: 0.25rem;
opacity: 0.5;
}
Loading

0 comments on commit e7424b5

Please sign in to comment.