Skip to content

Commit 5331897

Browse files
committed
Merge commit 'f5bc61cdd2ad903ca73072a1f1977623f3edd066' into OSDEV-2269-add-uri-format-support-for-partner-field
# Conflicts: # doc/release/RELEASE-NOTES.md
2 parents 937d850 + f5bc61c commit 5331897

13 files changed

Lines changed: 99 additions & 127 deletions

File tree

doc/release/RELEASE-NOTES.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html
99
* Product name: Open Supply Hub
1010
* Release date: December 13, 2025
1111

12+
### Code/API changes
13+
* [OSDEV-2280](https://opensupplyhub.atlassian.net/browse/OSDEV-2280) - Introduced a new reusable `ImportantNote` component in the new claim flow to replace custom implementations of important notes across multiple components (`BusinessStep`, `ContactInfoStep`, and `ClaimInfoSection`), improving code maintainability and consistency.
14+
1215
### What's new
16+
* [OSDEV-2280](https://opensupplyhub.atlassian.net/browse/OSDEV-2280) - Added prominent PII (Personally Identifiable Information) warning notes at file upload stages throughout the new claim flow to inform users that they should NOT submit documents containing personal information, home addresses, personal utility bills, or personal phone numbers, enhancing data security and user privacy protection.
1317
* [OSDEV-2269](https://opensupplyhub.atlassian.net/browse/OSDEV-2269) - Added URI format support for partner fields with JSON schema. Properties defined with `"format": "uri"` are rendered as clickable links on production location profile pages.
1418

1519
### Release instructions

src/react/src/components/InitialClaimFlow/ClaimForm/Steps/BusinessStep/BusinessStep.jsx

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ import { withStyles } from '@material-ui/core/styles';
55
import Grid from '@material-ui/core/Grid';
66
import Typography from '@material-ui/core/Typography';
77
import TextField from '@material-ui/core/TextField';
8-
import Warning from '@material-ui/icons/Warning';
98
import { Link } from 'react-router-dom';
109

11-
import FormFieldTitle from '../../../Shared/FormFieldTitle.jsx/FormFieldTitle';
10+
import FormFieldTitle from '../../../Shared/FormFieldTitle/FormFieldTitle';
11+
import ImportantNote from '../../../Shared/ImportantNote/ImportantNote';
1212
import StyledSelect from '../../../../Filters/StyledSelect';
1313
import InputErrorText from '../../../../Contribute/InputErrorText';
1414
import ClaimAttachmentsUploader from '../../../../ClaimAttachmentsUploader';
@@ -195,6 +195,7 @@ const BusinessStep = ({
195195
<div className={classes.documentUploadContainer}>
196196
{showDocumentUpload && (
197197
<Grid item xs={12}>
198+
<ImportantNote text="We do NOT require and you should NOT submit documents containing personal information, home addresses, personal utility bills, or personal phone numbers. Only submit business documents." />
198199
<ClaimAttachmentsUploader
199200
inputId="company-address-verification-documents"
200201
title="Upload your documents"
@@ -218,6 +219,9 @@ const BusinessStep = ({
218219
/>
219220
</div>
220221
)}
222+
<div className={classes.importantNoteWrapper}>
223+
<ImportantNote text="Verification documents must show the same name and address as listed on Open Supply Hub." />
224+
</div>
221225
</Grid>
222226
)}
223227
</div>
@@ -287,23 +291,6 @@ const BusinessStep = ({
287291
/>
288292
)}
289293
</div>
290-
{showDocumentUpload && (
291-
<div className={classes.boxWarningContainer}>
292-
<Typography
293-
variant="body2"
294-
className={classes.boxWarningText}
295-
>
296-
<span className={classes.boxWarningTextIcon}>
297-
<Warning className={classes.warningIcon} />
298-
<strong>IMPORTANT!</strong>
299-
</span>
300-
<span>
301-
&nbsp;Verification documents must show the same name
302-
and address as listed on Open Supply Hub.
303-
</span>
304-
</Typography>
305-
</div>
306-
)}
307294
</div>
308295
);
309296
};

src/react/src/components/InitialClaimFlow/ClaimForm/Steps/BusinessStep/styles.js

Lines changed: 4 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -24,31 +24,7 @@ const businessStepStyles = theme =>
2424
}),
2525
documentUploadContainer: Object.freeze({
2626
maxWidth: '1071px',
27-
}),
28-
boxWarningContainer: Object.freeze({
29-
maxWidth: '1071px',
30-
boxSizing: 'border-box',
31-
backgroundColor: COLOURS.LIGHT_RED,
32-
padding: theme.spacing.unit * 1.5,
33-
display: 'flex',
34-
alignItems: 'center',
35-
marginTop: '20px',
36-
}),
37-
boxWarningText: Object.freeze({
38-
fontSize: '18px',
39-
display: 'inline-flex',
40-
alignItems: 'center',
41-
}),
42-
warningIcon: Object.freeze({
43-
color: COLOURS.MATERIAL_RED,
44-
marginRight: theme.spacing.unit,
45-
fontSize: 16,
46-
marginTop: '2px',
47-
}),
48-
boxWarningTextIcon: Object.freeze({
49-
display: 'inline-flex',
50-
alignItems: 'center',
51-
marginRight: theme.spacing.unit,
27+
marginTop: theme.spacing.unit * 2.5,
5228
}),
5329
disabledField: Object.freeze({
5430
cursor: 'default',
@@ -90,6 +66,9 @@ const businessStepStyles = theme =>
9066
errorInput: Object.freeze({
9167
color: COLOURS.RED,
9268
}),
69+
importantNoteWrapper: Object.freeze({
70+
marginTop: theme.spacing.unit * 2.5,
71+
}),
9372
});
9473

9574
export default businessStepStyles;

src/react/src/components/InitialClaimFlow/ClaimForm/Steps/ContactInfoStep/ContactInfoStep.jsx

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import Grid from '@material-ui/core/Grid';
1414
import Typography from '@material-ui/core/Typography';
1515
import TextField from '@material-ui/core/TextField';
1616
import Switch from '@material-ui/core/Switch';
17-
import Warning from '@material-ui/icons/Warning';
1817
import withScrollReset from '../../../HOCs/withScrollReset';
1918
import contactInfoStepStyles from './styles';
2019
import { EMPLOYMENT_VERIFICATION_OPTIONS } from './constants';
@@ -28,7 +27,8 @@ import StyledSelect from '../../../../Filters/StyledSelect';
2827
import { getSelectStyles } from '../../../../../util/util';
2928
import ClaimAttachmentsUploader from '../../../../ClaimAttachmentsUploader';
3029
import DialogTooltip from '../../../../Contribute/DialogTooltip';
31-
import FormFieldTitle from '../../../Shared/FormFieldTitle.jsx/FormFieldTitle';
30+
import FormFieldTitle from '../../../Shared/FormFieldTitle/FormFieldTitle';
31+
import ImportantNote from '../../../Shared/ImportantNote/ImportantNote';
3232
import findSelectedOption from '../utils';
3333
import InputErrorText from '../../../../Contribute/InputErrorText';
3434
import { selectStyles } from '../../styles';
@@ -191,20 +191,8 @@ const ContactInfoStep = ({
191191
</div>
192192
)}
193193
</div>
194-
<div className={`${classes.boxWarningContainer}`}>
195-
<Typography
196-
variant="body2"
197-
className={classes.boxWarningText}
198-
>
199-
<span className={classes.boxWarningTextIcon}>
200-
<Warning className={classes.warningIcon} />
201-
<strong>IMPORTANT!</strong>
202-
</span>
203-
<span>
204-
&nbsp;Your name and job title must match the person
205-
associated with the email address provided above.
206-
</span>
207-
</Typography>
194+
<div className={classes.importantNoteWrapper}>
195+
<ImportantNote text="Your name and job title must match the person associated with the email address provided above." />
208196
</div>
209197
<div className={classes.fieldContainer}>
210198
<FormFieldTitle
@@ -300,6 +288,9 @@ const ContactInfoStep = ({
300288
<div>
301289
{showDocumentUpload && (
302290
<Grid item xs={12} className={classes.gridSpacing}>
291+
<div className={classes.importantNoteWrapper}>
292+
<ImportantNote text="We do NOT require and you should NOT submit documents containing personal information, home addresses, personal utility bills, or personal phone numbers. Only submit business documents." />
293+
</div>
303294
<ClaimAttachmentsUploader
304295
inputId="employment-verification-upload"
305296
title={

src/react/src/components/InitialClaimFlow/ClaimForm/Steps/ContactInfoStep/styles.js

Lines changed: 3 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -26,31 +26,6 @@ const contactInfoStepStyles = theme =>
2626
marginRight: '15px',
2727
},
2828
}),
29-
boxWarningText: {
30-
fontSize: '18px',
31-
display: 'inline-flex',
32-
alignItems: 'center',
33-
},
34-
warningIcon: {
35-
color: COLOURS.MATERIAL_RED,
36-
marginRight: theme.spacing.unit,
37-
fontSize: 16,
38-
marginTop: '2px',
39-
},
40-
boxWarningTextIcon: {
41-
display: 'inline-flex',
42-
alignItems: 'center',
43-
marginRight: theme.spacing.unit,
44-
},
45-
boxWarningContainer: {
46-
maxWidth: '1071px',
47-
boxSizing: 'border-box',
48-
backgroundColor: COLOURS.LIGHT_RED,
49-
padding: theme.spacing.unit * 1.5,
50-
display: 'flex',
51-
alignItems: 'center',
52-
marginTop: '20px',
53-
},
5429
sectionTitle: Object.freeze({
5530
fontSize: '24px',
5631
fontWeight: theme.typography.fontWeightSemiBold,
@@ -119,6 +94,9 @@ const contactInfoStepStyles = theme =>
11994
flexDirection: 'column',
12095
},
12196
}),
97+
importantNoteWrapper: Object.freeze({
98+
marginTop: theme.spacing.unit * 2.5,
99+
}),
122100
});
123101

124102
export default contactInfoStepStyles;

src/react/src/components/InitialClaimFlow/ClaimForm/Steps/EligibilityStep/EligibilityStep.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import eligibilityStepStyles from './styles';
1818
import RELATIONSHIP_OPTIONS from './constants';
1919
import InputErrorText from '../../../../Contribute/InputErrorText';
2020
import findSelectedOption from '../utils';
21-
import FormFieldTitle from '../../../Shared/FormFieldTitle.jsx/FormFieldTitle';
21+
import FormFieldTitle from '../../../Shared/FormFieldTitle/FormFieldTitle';
2222
import { selectStyles } from '../../styles';
2323

2424
const EligibilityStep = ({

src/react/src/components/InitialClaimFlow/ClaimForm/Steps/ProfileStep/ProfileStep.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import Tooltip from '@material-ui/core/Tooltip';
1212
import HelpOutline from '@material-ui/icons/HelpOutline';
1313
import IconButton from '@material-ui/core/IconButton';
1414
import Switch from '@material-ui/core/Switch';
15-
import FormFieldTitle from '../../../Shared/FormFieldTitle.jsx/FormFieldTitle';
15+
import FormFieldTitle from '../../../Shared/FormFieldTitle/FormFieldTitle';
1616
import DialogTooltip from '../../../../Contribute/DialogTooltip';
1717
import StyledSelect from '../../../../Filters/StyledSelect';
1818
import InputErrorText from '../../../../Contribute/InputErrorText';

src/react/src/components/InitialClaimFlow/ClaimIntro/ClaimInfoSection.jsx

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import React from 'react';
22
import PropTypes from 'prop-types';
33
import { withStyles } from '@material-ui/core/styles';
44
import Typography from '@material-ui/core/Typography';
5-
import InfoIcon from '@material-ui/icons/Info';
65
import DialogTooltip from '../../Contribute/DialogTooltip';
6+
import ImportantNote from '../Shared/ImportantNote/ImportantNote';
77
import { ClaimFacilityInfoLink } from '../../../util/constants';
88
import { claimInfoStyles } from './styles';
99
import ExampleImage from './ExampleImage';
@@ -245,21 +245,10 @@ const ClaimInfoSection = ({ classes, children }) => (
245245
</div>
246246
</div>
247247
<div className={classes.boxContainerWrapper}>
248-
<div
249-
className={`${classes.boxContainer} ${classes.boxWarningContainer}`}
250-
>
251-
<Typography variant="body2" className={classes.boxWarningText}>
252-
<span className={classes.boxWarningTextIcon}>
253-
<InfoIcon className={classes.warningIcon} />
254-
<strong>IMPORTANT!</strong>
255-
</span>
256-
<span>
257-
&nbsp;Any documentation appearing to be forged or
258-
counterfeit may result in your claim request being
259-
denied.
260-
</span>
261-
</Typography>
262-
</div>
248+
<ImportantNote
249+
text="Any documentation appearing to be forged or counterfeit may result in your claim request being denied."
250+
iconType="info"
251+
/>
263252
</div>
264253
<div>{children}</div>
265254
</div>

src/react/src/components/InitialClaimFlow/ClaimIntro/styles.js

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -165,30 +165,6 @@ export const claimInfoStyles = theme => ({
165165
gap: theme.spacing.unit * 3,
166166
marginTop: '20px',
167167
},
168-
boxWarningContainer: {
169-
maxWidth: '1071px',
170-
boxSizing: 'border-box',
171-
backgroundColor: COLOURS.LIGHT_RED,
172-
padding: theme.spacing.unit * 1.5,
173-
display: 'flex',
174-
alignItems: 'center',
175-
},
176-
boxWarningText: {
177-
fontSize: '18px',
178-
display: 'inline-flex',
179-
alignItems: 'center',
180-
},
181-
warningIcon: {
182-
color: COLOURS.MATERIAL_RED,
183-
marginRight: theme.spacing.unit,
184-
fontSize: 16,
185-
marginTop: '2px',
186-
},
187-
boxWarningTextIcon: {
188-
display: 'inline-flex',
189-
alignItems: 'center',
190-
marginRight: theme.spacing.unit,
191-
},
192168
blueStep: {
193169
backgroundColor: COLOURS.EXTRA_LIGHT_BLUE,
194170
border: `1px solid ${theme.palette.common.black}`,

src/react/src/components/InitialClaimFlow/Shared/FormFieldTitle.jsx/FormFieldTitle.jsx renamed to src/react/src/components/InitialClaimFlow/Shared/FormFieldTitle/FormFieldTitle.jsx

File renamed without changes.

0 commit comments

Comments
 (0)