diff --git a/cypress/local-only/tests/accessibility/dashboard/petitioner.cy.ts b/cypress/local-only/tests/accessibility/dashboard/petitioner.cy.ts
index bbd061c4619..1a24eb8efb5 100644
--- a/cypress/local-only/tests/accessibility/dashboard/petitioner.cy.ts
+++ b/cypress/local-only/tests/accessibility/dashboard/petitioner.cy.ts
@@ -14,7 +14,7 @@ describe('Dashboard - Petitioner Accessibility', () => {
it('should be free of a11y issues when viewing payment options', () => {
loginAsPetitioner();
- cy.get('.payment-options').click();
+ cy.get('[data-testid="other-options"]').click();
cy.get('a.usa-link--external').should('exist');
checkA11y();
diff --git a/cypress/local-only/tests/integration/fileAPetitionUpdated/file-a-petition-intro.cy.ts b/cypress/local-only/tests/integration/fileAPetitionUpdated/file-a-petition-intro.cy.ts
index d8f048f8c6d..9b3fd978935 100644
--- a/cypress/local-only/tests/integration/fileAPetitionUpdated/file-a-petition-intro.cy.ts
+++ b/cypress/local-only/tests/integration/fileAPetitionUpdated/file-a-petition-intro.cy.ts
@@ -51,11 +51,13 @@ describe('File a petition: Intro', () => {
cy.get('[data-testid="deadline-to-file"]').contains(
'If you received a notice in the mail from the IRS',
);
- cy.get('[data-testid="accordion-item-title"]').contains(
+ cy.get('[data-testid="are-you-filing-jointly-with-a-spouse"]').contains(
'Are you filing jointly with a spouse?',
);
- cy.get('[data-testid="accordion-item-title"]').eq(0).click();
+ cy.get('[data-testid="are-you-filing-jointly-with-a-spouse"]')
+ .eq(0)
+ .click();
cy.get('[data-testid="filing-jointly-accordion-item"]').contains(
"To file a joint Petition with your spouse, you must have the spouse's consent",
);
@@ -118,9 +120,9 @@ describe('File a petition: Intro', () => {
cy.get('[data-testid="deadline-to-file"]').contains(
'If the petitioner received a notice in the mail from the IRS',
);
- cy.get('[data-testid="accordion-item-title"]')
- .contains('Is the petitioner filing jointly with a spouse?')
- .should('not.exist');
+ cy.get('[data-testid="are-you-filing-jointly-with-a-spouse"]').should(
+ 'not.exist',
+ );
});
});
});
diff --git a/web-client/src/presenter/actions/FileDocument/navigateToViewAllDocumentsAction.test.ts b/web-client/src/presenter/actions/FileDocument/navigateToViewAllDocumentsAction.test.ts
deleted file mode 100644
index 18a69d2f5fc..00000000000
--- a/web-client/src/presenter/actions/FileDocument/navigateToViewAllDocumentsAction.test.ts
+++ /dev/null
@@ -1,30 +0,0 @@
-import { navigateToViewAllDocumentsAction } from './navigateToViewAllDocumentsAction';
-import { presenter } from '../../presenter-mock';
-import { runAction } from '@web-client/presenter/test.cerebral';
-
-const routeStub = jest.fn();
-
-presenter.providers.router = {
- route: routeStub,
-};
-
-describe('navigateToViewAllDocumentsAction', () => {
- it('should set the state.wizardStep to the ViewAllDocuments and route to view all documents', async () => {
- const result = await runAction(navigateToViewAllDocumentsAction, {
- modules: {
- presenter,
- },
- state: {
- caseDetail: {
- docketNumber: '122-19',
- },
- },
- });
-
- expect(result.state.wizardStep).toEqual('ViewAllDocuments');
- expect(routeStub.mock.calls.length).toEqual(1);
- expect(routeStub.mock.calls[0][0]).toEqual(
- '/case-detail/122-19/file-a-document/all-document-categories',
- );
- });
-});
diff --git a/web-client/src/presenter/actions/FileDocument/navigateToViewAllDocumentsAction.ts b/web-client/src/presenter/actions/FileDocument/navigateToViewAllDocumentsAction.ts
deleted file mode 100644
index 132f83c0c77..00000000000
--- a/web-client/src/presenter/actions/FileDocument/navigateToViewAllDocumentsAction.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-import { state } from '@web-client/presenter/app.cerebral';
-
-/**
- * changes the route to view the view all documents page
- * @param {object} providers the providers object
- * @param {object} providers.router the riot.router object that is used for changing the route
- * @param {object} providers.props the cerebral props that contain the props.docketNumber
- */
-export const navigateToViewAllDocumentsAction = async ({
- get,
- router,
- store,
-}: ActionProps) => {
- store.set(state.wizardStep, 'ViewAllDocuments');
- const { docketNumber } = get(state.caseDetail);
- await router.route(
- `/case-detail/${docketNumber}/file-a-document/all-document-categories`,
- );
-};
diff --git a/web-client/src/presenter/actions/clearAllDocumentsAccordionAction.test.ts b/web-client/src/presenter/actions/clearAllDocumentsAccordionAction.test.ts
deleted file mode 100644
index 0e50b9277bf..00000000000
--- a/web-client/src/presenter/actions/clearAllDocumentsAccordionAction.test.ts
+++ /dev/null
@@ -1,14 +0,0 @@
-import { clearAllDocumentsAccordionAction } from './clearAllDocumentsAccordionAction';
-import { runAction } from '@web-client/presenter/test.cerebral';
-
-describe('clearAllDocumentsAccordionAction', () => {
- it('should set state.allDocumentsAccordion to empty string', async () => {
- const { state } = await runAction(clearAllDocumentsAccordionAction, {
- state: {
- allDocumentsAccordion: 'whatever',
- },
- });
-
- expect(state.allDocumentsAccordion).toEqual('');
- });
-});
diff --git a/web-client/src/presenter/actions/clearAllDocumentsAccordionAction.ts b/web-client/src/presenter/actions/clearAllDocumentsAccordionAction.ts
deleted file mode 100644
index 89ebbe3257f..00000000000
--- a/web-client/src/presenter/actions/clearAllDocumentsAccordionAction.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { state } from '@web-client/presenter/app.cerebral';
-
-/**
- * clears state.allDocumentsAccordion
- * @param {object} providers the providers object
- * @param {object} providers.store the cerebral store object
- */
-export const clearAllDocumentsAccordionAction = ({ store }: ActionProps) => {
- store.set(state.allDocumentsAccordion, '');
-};
diff --git a/web-client/src/presenter/computeds/viewAllDocumentsHelper.test.ts b/web-client/src/presenter/computeds/viewAllDocumentsHelper.test.ts
deleted file mode 100644
index 213c84e73f7..00000000000
--- a/web-client/src/presenter/computeds/viewAllDocumentsHelper.test.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-import { applicationContext } from '../../applicationContext';
-import { runCompute } from '@web-client/presenter/test.cerebral';
-import { viewAllDocumentsHelper as viewAllDocumentsHelperComputed } from './viewAllDocumentsHelper';
-import { withAppContextDecorator } from '../../withAppContext';
-
-const viewAllDocumentsHelper = withAppContextDecorator(
- viewAllDocumentsHelperComputed,
- applicationContext,
-);
-
-describe('viewAllDocumentsHelper', () => {
- it('returns all document categories, document types, reasons, and sections', () => {
- const result = runCompute(viewAllDocumentsHelper, {
- state: {},
- });
-
- expect(result.categoryMap).toBeTruthy();
- expect(result.documentTypesForSelect).toBeTruthy();
- expect(result.documentTypesForSelectSorted).toBeTruthy();
- expect(result.reasons).toBeTruthy();
- expect(result.sections).toBeTruthy();
- });
-
- it("doesn't return any categories when looking for a secondary document", () => {
- const result = runCompute(viewAllDocumentsHelper, {
- state: {
- modal: {
- forSecondary: false,
- },
- },
- });
-
- expect(
- result.categoryMap.Motion.some(
- motion => motion.scenario === 'Nonstandard H',
- ),
- ).toEqual(true);
- });
-});
diff --git a/web-client/src/presenter/computeds/viewAllDocumentsHelper.ts b/web-client/src/presenter/computeds/viewAllDocumentsHelper.ts
deleted file mode 100644
index 1a90a7504e1..00000000000
--- a/web-client/src/presenter/computeds/viewAllDocumentsHelper.ts
+++ /dev/null
@@ -1,105 +0,0 @@
-import {
- getDocumentTypesForSelect,
- getSortFunction,
-} from './internalTypesHelper';
-import { state } from '@web-client/presenter/app.cerebral';
-
-import { ClientApplicationContext } from '@web-client/applicationContext';
-import { Get } from 'cerebral';
-export const viewAllDocumentsHelper = (
- get: Get,
- applicationContext: ClientApplicationContext,
-): any => {
- const { CATEGORIES, CATEGORY_MAP } = applicationContext.getConstants();
- const searchText = get(state.screenMetadata.searchText) || '';
-
- const documentTypesForSelect = getDocumentTypesForSelect(CATEGORY_MAP);
-
- const documentTypesForSelectSorted = documentTypesForSelect.sort(
- getSortFunction(searchText),
- );
-
- const sections = [...CATEGORIES];
- sections.push(sections.shift());
-
- const forSecondary = get(state.modal.forSecondary);
- let categoryMap = { ...CATEGORY_MAP };
- sections.forEach(section => {
- categoryMap[section] = categoryMap[section].filter(
- entry => !forSecondary || entry.scenario !== 'Nonstandard H',
- );
- });
-
- const reasons = [
- {
- categories: [
- {
- category: 'Application',
- },
- {
- category: 'Motion',
- },
- {
- category: 'Petition',
- },
- ],
- reason: 'Request something from the court',
- },
- {
- categories: [
- {
- category: 'Notice',
- },
- {
- category: 'Pretrial Memorandum',
- },
- {
- category: 'Seriatim Brief',
- },
- {
- category: 'Simultaneous Brief',
- },
- {
- category: 'Statement',
- },
- {
- category: 'Stipulation',
- },
- ],
- reason: 'Notify the court of a change',
- },
- {
- categories: [
- {
- category: 'Miscellaneous',
- },
- {
- category: 'Supporting Document',
- },
- ],
- reason: 'Update or add to a document',
- },
- {
- categories: [
- {
- category: 'Motion',
- },
- {
- category: 'Reply',
- },
- {
- category: 'Response, Opposition or Objection',
- },
- ],
- reason: 'Respond to a previous document',
- },
- ];
-
- return {
- categoryMap,
- documentTypesForSelect,
- documentTypesForSelectSorted,
- reasons,
- sections,
- };
-};
diff --git a/web-client/src/presenter/presenter.ts b/web-client/src/presenter/presenter.ts
index 102f08ece62..fb4c7303fa4 100644
--- a/web-client/src/presenter/presenter.ts
+++ b/web-client/src/presenter/presenter.ts
@@ -110,7 +110,6 @@ import { deleteWorkingCopySessionNoteSequence } from './sequences/deleteWorkingC
import { disengageAppMaintenanceSequence } from './sequences/disengageAppMaintenanceSequence';
import { dismissAddEditCaseWorksheetModalSequence } from '@web-client/presenter/sequences/dismissAddEditCaseWorksheetModalSequence';
import { dismissAlertSequence } from './sequences/dismissAlertSequence';
-import { dismissCreateMessageModalSequence } from './sequences/dismissCreateMessageModalSequence';
import { dismissModalSequence } from './sequences/dismissModalSequence';
import { dismissThirtyDayTrialAlertSequence } from './sequences/dismissThirtyDayTrialAlertSequence';
import { downloadCsvFileSequence } from '@web-client/presenter/sequences/downloadCsvFileSequence';
@@ -222,7 +221,6 @@ import { gotoUploadCorrespondenceDocumentSequence } from './sequences/gotoUpload
import { gotoUploadCourtIssuedDocumentSequence } from './sequences/gotoUploadCourtIssuedDocumentSequence';
import { gotoUserContactEditSequence } from './sequences/gotoUserContactEditSequence';
import { gotoVerifyEmailSequence } from './sequences/gotoVerifyEmailSequence';
-import { gotoViewAllDocumentsSequence } from './sequences/gotoViewAllDocumentsSequence';
import { gotoWorkQueueSequence } from './sequences/gotoWorkQueueSequence';
import { handleAppHasUpdatedSequence } from './sequences/handleAppHasUpdatedSequence';
import { handleIdleLogoutSequence } from './sequences/handleIdleLogoutSequence';
@@ -274,7 +272,6 @@ import { openChangeScannerSourceModalSequence } from './sequences/openChangeScan
import { openCleanModalSequence } from './sequences/openCleanModalSequence';
import { openCompleteAndSendMessageModalSequence } from './sequences/openCompleteAndSendMessageModalSequence';
import { openCompleteMessageModalSequence } from './sequences/openCompleteMessageModalSequence';
-import { openCompleteSelectDocumentTypeModalSequence } from './sequences/openCompleteSelectDocumentTypeModalSequence';
import { openConfirmDeleteBatchModalSequence } from './sequences/openConfirmDeleteBatchModalSequence';
import { openConfirmDeleteCorrespondenceModalSequence } from './sequences/openConfirmDeleteCorrespondenceModalSequence';
import { openConfirmDeleteDeficiencyStatisticsModalSequence } from './sequences/openConfirmDeleteDeficiencyStatisticsModalSequence';
@@ -775,8 +772,6 @@ export const presenterSequences = {
dismissAddEditCaseWorksheetModalSequence:
dismissAddEditCaseWorksheetModalSequence as unknown as Function,
dismissAlertSequence: dismissAlertSequence as unknown as Function,
- dismissCreateMessageModalSequence:
- dismissCreateMessageModalSequence as unknown as Function,
dismissModalSequence: dismissModalSequence as unknown as Function,
dismissThirtyDayTrialAlertSequence:
dismissThirtyDayTrialAlertSequence as unknown as Function,
@@ -953,8 +948,6 @@ export const presenterSequences = {
gotoUserContactEditSequence:
gotoUserContactEditSequence as unknown as Function,
gotoVerifyEmailSequence,
- gotoViewAllDocumentsSequence:
- gotoViewAllDocumentsSequence as unknown as Function,
gotoWorkQueueSequence: gotoWorkQueueSequence as unknown as Function,
handleAppHasUpdatedSequence,
handleIdleLogoutSequence: handleIdleLogoutSequence as unknown as Function,
@@ -1039,8 +1032,6 @@ export const presenterSequences = {
openCompleteAndSendMessageModalSequence as unknown as Function,
openCompleteMessageModalSequence:
openCompleteMessageModalSequence as unknown as Function,
- openCompleteSelectDocumentTypeModalSequence:
- openCompleteSelectDocumentTypeModalSequence as unknown as Function,
openConfirmDeleteBatchModalSequence:
openConfirmDeleteBatchModalSequence as unknown as Function,
openConfirmDeleteCorrespondenceModalSequence:
diff --git a/web-client/src/presenter/sequences/dismissCreateMessageModalSequence.ts b/web-client/src/presenter/sequences/dismissCreateMessageModalSequence.ts
deleted file mode 100644
index 520aec0f656..00000000000
--- a/web-client/src/presenter/sequences/dismissCreateMessageModalSequence.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { clearAlertsAction } from '../actions/clearAlertsAction';
-import { clearFormAction } from '../actions/clearFormAction';
-import { clearModalAction } from '../actions/clearModalAction';
-import { clearModalStateAction } from '../actions/clearModalStateAction';
-import { clearScreenMetadataAction } from '../actions/clearScreenMetadataAction';
-import { clearUsersAction } from '../actions/clearUsersAction';
-import { stopShowValidationAction } from '../actions/stopShowValidationAction';
-
-export const dismissCreateMessageModalSequence = [
- stopShowValidationAction,
- clearFormAction,
- clearScreenMetadataAction,
- clearUsersAction,
- clearAlertsAction,
- clearModalAction,
- clearModalStateAction,
-];
diff --git a/web-client/src/presenter/sequences/gotoViewAllDocumentsSequence.ts b/web-client/src/presenter/sequences/gotoViewAllDocumentsSequence.ts
deleted file mode 100644
index a60d16d7303..00000000000
--- a/web-client/src/presenter/sequences/gotoViewAllDocumentsSequence.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import { clearAllDocumentsAccordionAction } from '../actions/clearAllDocumentsAccordionAction';
-import { clearFormAction } from '../actions/clearFormAction';
-import { clearModalAction } from '../actions/clearModalAction';
-import { clearModalStateAction } from '../actions/clearModalStateAction';
-import { clearScreenMetadataAction } from '../actions/clearScreenMetadataAction';
-import { navigateToViewAllDocumentsAction } from '../actions/FileDocument/navigateToViewAllDocumentsAction';
-
-export const gotoViewAllDocumentsSequence = [
- clearFormAction,
- clearModalAction,
- clearModalStateAction,
- clearScreenMetadataAction,
- clearAllDocumentsAccordionAction,
- navigateToViewAllDocumentsAction,
-];
diff --git a/web-client/src/presenter/sequences/openCompleteSelectDocumentTypeModalSequence.ts b/web-client/src/presenter/sequences/openCompleteSelectDocumentTypeModalSequence.ts
deleted file mode 100644
index 2cc94b49e5a..00000000000
--- a/web-client/src/presenter/sequences/openCompleteSelectDocumentTypeModalSequence.ts
+++ /dev/null
@@ -1,23 +0,0 @@
-import { clearModalStateAction } from '../actions/clearModalStateAction';
-import { defaultSecondaryDocumentAction } from '../actions/FileDocument/defaultSecondaryDocumentAction';
-import { generateTitleAction } from '../actions/FileDocument/generateTitleAction';
-import { navigateToFileADocumentAction } from '../actions/FileDocument/navigateToFileADocumentAction';
-import { setDefaultFileDocumentFormValuesAction } from '../actions/FileDocument/setDefaultFileDocumentFormValuesAction';
-import { setDocketNumberPropAction } from '../actions/FileDocument/setDocketNumberPropAction';
-import { setShowModalFactoryAction } from '../actions/setShowModalFactoryAction';
-import { validateSelectDocumentTypeAction } from '../actions/validateSelectDocumentTypeAction';
-
-export const openCompleteSelectDocumentTypeModalSequence = [
- clearModalStateAction,
- defaultSecondaryDocumentAction,
- validateSelectDocumentTypeAction,
- {
- error: [setShowModalFactoryAction('CompleteSelectDocumentModalDialog')],
- success: [
- generateTitleAction,
- setDocketNumberPropAction,
- setDefaultFileDocumentFormValuesAction,
- navigateToFileADocumentAction,
- ],
- },
-];
diff --git a/web-client/src/presenter/state.ts b/web-client/src/presenter/state.ts
index f2c8ef80387..9d21ce45d00 100644
--- a/web-client/src/presenter/state.ts
+++ b/web-client/src/presenter/state.ts
@@ -149,7 +149,6 @@ import { trialSessionsSummaryHelper } from './computeds/trialSessionsSummaryHelp
import { updateCaseModalHelper } from './computeds/updateCaseModalHelper';
import { userContactEditHelper } from './computeds/userContactEditHelper';
import { userContactEditProgressHelper } from './computeds/userContactEditProgressHelper';
-import { viewAllDocumentsHelper } from './computeds/viewAllDocumentsHelper';
import { viewCounselHelper } from './computeds/viewCounselHelper';
import { workQueueHelper } from './computeds/workQueueHelper';
@@ -560,9 +559,6 @@ export const computeds = {
userContactEditProgressHelper as unknown as ReturnType<
typeof userContactEditProgressHelper
>,
- viewAllDocumentsHelper: viewAllDocumentsHelper as unknown as ReturnType<
- typeof viewAllDocumentsHelper
- >,
viewCounselHelper: viewCounselHelper as unknown as ReturnType<
typeof viewCounselHelper
>,
diff --git a/web-client/src/router.ts b/web-client/src/router.ts
index f42c652947c..dcbbeb80f4d 100644
--- a/web-client/src/router.ts
+++ b/web-client/src/router.ts
@@ -525,24 +525,6 @@ const router = {
}),
);
- registerRoute(
- '/case-detail/*/file-a-document/all-document-categories',
- ifHasAccess({ app }, docketNumber => {
- setPageTitle(
- `${getPageTitleDocketPrefix(docketNumber)} File a document`,
- );
- if (app.getState('currentPage') === 'FileDocumentWizard') {
- return app.getSequence('chooseWizardStepSequence')({
- value: 'ViewAllDocuments',
- });
- } else {
- return app.getSequence('navigateToPathSequence')({
- path: `/case-detail/${docketNumber}/file-a-document`,
- });
- }
- }),
- );
-
registerRoute(
'/case-detail/*/contacts/*/edit',
ifHasAccess({ app }, (docketNumber, contactId) => {
diff --git a/web-client/src/styles/custom.scss b/web-client/src/styles/custom.scss
index b3c54edd1f6..e9fdd32d486 100644
--- a/web-client/src/styles/custom.scss
+++ b/web-client/src/styles/custom.scss
@@ -1385,18 +1385,8 @@ hr.lighter {
font-size: 20px !important;
}
-.need-help-selecting {
- .usa-accordion__heading:not(:first-child) {
- margin-top: 1rem;
- }
-}
-
-.need-help-selecting,
-.submit-reminders {
- .content-header {
- padding: 11px 20px;
- margin: 0;
- }
+.usa-accordion__heading:not(:first-child) {
+ margin-top: 1rem;
}
.all-columns-view {
@@ -2407,4 +2397,18 @@ button.change-scanner-button {
.stepper-line-height {
line-height: 18px;
-}
\ No newline at end of file
+}
+
+.bg-gray {
+ background-color: color($theme-color-base-lightest);
+}
+
+.accordion-title {
+ padding-top: 24px;
+ padding-bottom: 24px;
+}
+
+.padding-0 {
+ // This has higher importance than uwds padding-0
+ padding: 0;
+}
diff --git a/web-client/src/styles/overrides.scss b/web-client/src/styles/overrides.scss
index 4537aa5bfd4..e15c89c43d8 100644
--- a/web-client/src/styles/overrides.scss
+++ b/web-client/src/styles/overrides.scss
@@ -336,15 +336,6 @@ p {
margin-top: 10px;
}
-.payment-options {
- .usa-accordion__button {
- padding: 3px;
- font-family: $font-source-sans;
- font-size: 17px;
- font-weight: normal;
- }
-}
-
.other-filing-option {
.usa-accordion__button {
padding: 3px;
@@ -364,7 +355,6 @@ p {
padding-top: 20px;
border-top: 1px solid #dfe1e2;
margin-bottom: 15px;
-
}
.usa-alert__text:only-child {
diff --git a/web-client/src/styles/typography.scss b/web-client/src/styles/typography.scss
index 4214ba9f4b1..13d2f016dee 100644
--- a/web-client/src/styles/typography.scss
+++ b/web-client/src/styles/typography.scss
@@ -207,9 +207,3 @@ a:hover {
font-size: 17px;
font-weight: bold;
}
-
-.petitioner-accordion-title {
- padding-top: 5px;
- padding-bottom: 5px;
- line-height: normal;
-}
diff --git a/web-client/src/ustc-ui/Accordion/Accordion.tsx b/web-client/src/ustc-ui/Accordion/Accordion.tsx
index e1758d97faa..123490e8629 100644
--- a/web-client/src/ustc-ui/Accordion/Accordion.tsx
+++ b/web-client/src/ustc-ui/Accordion/Accordion.tsx
@@ -1,198 +1,77 @@
-import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
-import { Mobile, NonMobile } from '@web-client/ustc-ui/Responsive/Responsive';
-import { connect } from '@web-client/presenter/shared.cerebral';
-import {
- decorateWithPostCallback,
- useCerebralStateFactory,
-} from '../Utils/useCerebralState';
-import { map } from '../Utils/ElementChildren';
-import { pick, uniqueId } from 'lodash';
-import { props } from 'cerebral';
-import { sequences } from '@web-client/presenter/app.cerebral';
-import { state } from '@web-client/presenter/app.cerebral';
-
-import React, { ReactNode, useState } from 'react';
+import { uniqueId } from 'lodash';
+import React, { HTMLAttributes, ReactNode, useState } from 'react';
import classNames from 'classnames';
-/**
- * AccordionItem: This is a strange hollow component that is being used in renderAccordionFactory + Accordion to make a styled component
- */
-// eslint-disable-next-line @typescript-eslint/no-unused-vars
-export function AccordionItem(properties: {
- children: React.ReactNode;
- customClassName?: string;
- customTitleClassName?: string;
- displayIcon?: boolean;
- iconClassName?: string;
- iconSize?: string;
- iconTypes?: string[];
- id?: string;
- title?: string;
-}) {
- return <>>;
-}
-
-const renderAccordionFactory = ({ activeKey, headingLevel, setTab }) =>
- function AccordionContent(child, index) {
- const {
- children,
- customClassName,
- customTitleClassName,
- displayIcon = false,
- iconClassName,
- iconSize,
- iconTypes,
- id,
- title,
- } = child.props;
- let { itemName } = child.props;
-
- itemName = itemName || `item-${index}`;
- const itemButtonId =
- id || uniqueId(`ustc-ui-accordion-item-button-${index}`);
- const itemContentId =
- (id && `${id}-item-content`) ||
- uniqueId(`ustc-ui-accordion-item-content-${index}`);
- const HeadingElement = `h${headingLevel || 2}`;
- const isActiveItem = itemName === activeKey;
- const expandedText = (isActiveItem && 'true') || 'false';
-
- if (!title) {
- return null;
- }
- const buttonProps = {
- 'aria-controls': itemContentId,
- 'aria-expanded': expandedText,
- className: 'usa-accordion__button grid-container',
- id: itemButtonId,
- onClick: () => setTab(itemName),
- type: 'button',
- };
-
- const baseTitleClassName = 'accordion-item-title grid-col-8';
- const titleClassName = classNames(baseTitleClassName, customTitleClassName);
-
- const mobileBaseTitleClassName = 'accordion-item-title grid-col-10';
- const mobileTitleClassName = classNames(
- mobileBaseTitleClassName,
- customTitleClassName,
- );
-
- return (
- <>
-