Skip to content

Commit 726161c

Browse files
authored
Merge pull request #227 from fedspendingtransparency/mod/9589-keep-focus
Mod/9589 keep focus
2 parents 6c2d153 + b6d7310 commit 726161c

File tree

7 files changed

+19
-7
lines changed

7 files changed

+19
-7
lines changed

components/table/TableData.jsx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* Created by Lizzie Salita 5/14/20
44
*/
55

6-
import React, { useState } from 'react';
6+
import React, { useEffect, useState } from 'react';
77
import PropTypes, { oneOfType } from 'prop-types';
88
import { uniqueId } from 'lodash';
99
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
@@ -40,6 +40,14 @@ const TableData = ({
4040
}) => {
4141
const [firstClick, setFirstClick] = useState(false);
4242
const [rowIndexForMessage, setRowIndexForMessage] = useState();
43+
44+
const setFocus = () => {
45+
const selectedElement = document.querySelector(".selected-row");
46+
if (selectedElement) {
47+
selectedElement.focus();
48+
}
49+
};
50+
4351
const localClickHandler = (row, index) => {
4452
if (!atMaxLevel) {
4553
// user taps a row in mobile
@@ -63,6 +71,10 @@ const TableData = ({
6371
}
6472
};
6573

74+
useEffect(() => {
75+
setFocus();
76+
}, [rowIndexForMessage]);
77+
6678
return (
6779
<>
6880
{rows.map((row, i) => {
@@ -90,7 +102,7 @@ const TableData = ({
90102
localClickHandler(row, i);
91103
}
92104
}}
93-
className={`usda-table__row-item usda-table__row${oddClass} ${subAward ? 'special-hover-color' : ''}`}
105+
className={`usda-table__row-item usda-table__row${oddClass} ${rowIndexForMessage === i ? 'selected-row' : ''} ${subAward ? 'special-hover-color' : ''}`}
94106
style={{ height: rowHeight }}>
95107
{row.map((data, j) => (
96108
columns[j]?.bodyHeader

dist/index.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/iframe.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -361,4 +361,4 @@
361361

362362

363363

364-
window['STORIES'] = [{"titlePrefix":"","directory":"./.storybook","files":"**/stories/*.stories.@(mdx|js)","importPathMatcher":"^\\.[\\\\/](?:\\.storybook(?:[\\\\/](?!\\.)(?:(?:(?!(?:^|[\\\\/])\\.).)*?)[\\\\/]|[\\\\/]|$)stories[\\\\/](?!\\.)(?=.)[^\\\\/]*?\\.stories\\.(mdx|js))$"}];</script><script src="runtime~main.868a37cc.iframe.bundle.js"></script><script src="873.2012df82.iframe.bundle.js"></script><script src="main.2a7a1bfc.iframe.bundle.js"></script></body></html>
364+
window['STORIES'] = [{"titlePrefix":"","directory":"./.storybook","files":"**/stories/*.stories.@(mdx|js)","importPathMatcher":"^\\.[\\\\/](?:\\.storybook(?:[\\\\/](?!\\.)(?:(?:(?!(?:^|[\\\\/])\\.).)*?)[\\\\/]|[\\\\/]|$)stories[\\\\/](?!\\.)(?=.)[^\\\\/]*?\\.stories\\.(mdx|js))$"}];</script><script src="runtime~main.868a37cc.iframe.bundle.js"></script><script src="873.2012df82.iframe.bundle.js"></script><script src="main.f230da38.iframe.bundle.js"></script></body></html>

docs/main.2a7a1bfc.iframe.bundle.js

Lines changed: 0 additions & 1 deletion
This file was deleted.

docs/main.f230da38.iframe.bundle.js

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/project.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"generatedAt":1741966670891,"builder":{"name":"webpack5"},"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":false,"hasStorybookEslint":false,"refCount":0,"packageManager":{"type":"npm","version":"10.8.3"},"storybookVersion":"6.5.16","language":"typescript","storybookPackages":{"@storybook/builder-webpack5":{"version":"6.5.16"},"@storybook/manager-webpack5":{"version":"6.5.16"},"@storybook/addon-console":{"version":"1.2.3"},"@storybook/react":{"version":"6.5.16"},"@storybook/source-loader":{"version":"6.5.16"},"@storybook/theming":{"version":"6.5.16"},"storybook":{"version":"5.3.22"}},"framework":{"name":"react"},"addons":{"@storybook/addon-docs":{"version":"6.5.16"},"@storybook/addon-a11y":{"version":"6.5.16"},"@storybook/addon-viewport":{"version":"6.5.16"},"@storybook/addon-actions":{"version":"6.5.16"},"@storybook/addon-essentials":{"version":"6.5.16"},"@storybook/addon-controls":{"version":"6.5.16"}}}
1+
{"generatedAt":1742832472831,"builder":{"name":"webpack5"},"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":false,"hasStorybookEslint":false,"refCount":0,"packageManager":{"type":"npm","version":"10.8.3"},"storybookVersion":"6.5.16","language":"typescript","storybookPackages":{"@storybook/builder-webpack5":{"version":"6.5.16"},"@storybook/manager-webpack5":{"version":"6.5.16"},"@storybook/addon-console":{"version":"1.2.3"},"@storybook/react":{"version":"6.5.16"},"@storybook/source-loader":{"version":"6.5.16"},"@storybook/theming":{"version":"6.5.16"},"storybook":{"version":"5.3.22"}},"framework":{"name":"react"},"addons":{"@storybook/addon-docs":{"version":"6.5.16"},"@storybook/addon-a11y":{"version":"6.5.16"},"@storybook/addon-viewport":{"version":"6.5.16"},"@storybook/addon-actions":{"version":"6.5.16"},"@storybook/addon-essentials":{"version":"6.5.16"},"@storybook/addon-controls":{"version":"6.5.16"}}}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "data-transparency-ui",
3-
"version": "6.3.7",
3+
"version": "6.3.8",
44
"description": "Library of UI components powering Data Transparency websites",
55
"main": "dist/index.js",
66
"style": "dist/data-transparency-ui.css",

0 commit comments

Comments
 (0)