Add rel=noopener to links that take users to external sites (#1980)

* Add rel=noopener to links that take users to external sites

* Update Storyshots for Link changes

* Fix invalid isExternalURL function usage

* Update snapshots
This commit is contained in:
Jonatan Witoszek 2022-10-04 14:28:26 +02:00 committed by GitHub
parent 58d2a2b438
commit aceae75ce7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 109 additions and 3 deletions

2
package-lock.json generated
View file

@ -27156,7 +27156,7 @@
"request-progress": { "request-progress": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz",
"integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", "integrity": "sha1-TKdUCBx/7GP1BeT6qCWqBs1mnb4=",
"dev": true, "dev": true,
"requires": { "requires": {
"throttleit": "^1.0.0" "throttleit": "^1.0.0"

View file

@ -19,12 +19,28 @@ interface ExternalLinkProps extends React.HTMLProps<HTMLAnchorElement> {
} }
const ExternalLink: React.FC<ExternalLinkProps> = props => { const ExternalLink: React.FC<ExternalLinkProps> = props => {
const { className, children, href, typographyProps, ...rest } = props; const {
className,
children,
href,
typographyProps,
target,
rel,
...rest
} = props;
const classes = useStyles(props); const classes = useStyles(props);
const opensNewTab = target === "_blank";
return ( return (
<a href={href} className={classes.link} {...rest}> <a
href={href}
className={classes.link}
target={target}
rel={rel ?? opensNewTab ? "noopener noreferer" : ""}
{...rest}
>
<Typography className={className} color="primary" {...typographyProps}> <Typography className={className} color="primary" {...typographyProps}>
{children} {children}
</Typography> </Typography>

View file

@ -50,11 +50,15 @@ const Link: React.FC<LinkProps> = props => {
onClick, onClick,
disabled, disabled,
href, href,
target,
rel,
...linkProps ...linkProps
} = props; } = props;
const classes = useStyles(props); const classes = useStyles(props);
const opensNewTab = target === "_blank";
const commonLinkProps = { const commonLinkProps = {
className: classNames(className, { className: classNames(className, {
[classes.root]: true, [classes.root]: true,
@ -71,6 +75,9 @@ const Link: React.FC<LinkProps> = props => {
event.preventDefault(); event.preventDefault();
onClick(event); onClick(event);
}, },
target,
rel:
rel ?? (opensNewTab && isExternalURL(href)) ? "noopener noreferer" : "",
...linkProps, ...linkProps,
}; };

View file

@ -232,6 +232,7 @@ export const OrderNormalDetails: React.FC<OrderNormalDetailsProps> = ({
window.open( window.open(
order.invoices.find(invoice => invoice.id === id)?.url, order.invoices.find(invoice => invoice.id === id)?.url,
"_blank", "_blank",
"rel=noopener",
) )
} }
onInvoiceGenerate={() => onInvoiceGenerate={() =>

View file

@ -241,6 +241,7 @@ export const OrderUnconfirmedDetails: React.FC<OrderUnconfirmedDetailsProps> = (
window.open( window.open(
order.invoices.find(invoice => invoice.id === id)?.url, order.invoices.find(invoice => invoice.id === id)?.url,
"_blank", "_blank",
"rel=noopener",
) )
} }
onInvoiceGenerate={() => onInvoiceGenerate={() =>

View file

@ -6416,6 +6416,7 @@ exports[`Storyshots Generics / External Link default 1`] = `
<a <a
class="ExternalLink-link-id" class="ExternalLink-link-id"
href="http://www.google.com" href="http://www.google.com"
rel=""
> >
<div <div
class="MuiTypography-root-id MuiTypography-body1-id MuiTypography-colorPrimary-id" class="MuiTypography-root-id MuiTypography-body1-id MuiTypography-colorPrimary-id"
@ -6442,6 +6443,7 @@ exports[`Storyshots Generics / External Link new tab 1`] = `
<a <a
class="ExternalLink-link-id" class="ExternalLink-link-id"
href="http://www.google.com" href="http://www.google.com"
rel="noopener noreferer"
target="_blank" target="_blank"
> >
<div <div
@ -9643,6 +9645,7 @@ exports[`Storyshots Generics / Link with choices default 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Åland Islands Åland Islands
<svg <svg
@ -17936,6 +17939,7 @@ exports[`Storyshots Orders / Order details channel section default 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/dh87hf34hk8i" href="/channels/dh87hf34hk8i"
rel=""
> >
International store International store
</a> </a>
@ -18985,6 +18989,7 @@ exports[`Storyshots Orders / OrderHistory default 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -24586,6 +24591,7 @@ exports[`Storyshots Shipping zones with no options selected 1`] = `
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
data-test-id="shipping-add-link" data-test-id="shipping-add-link"
rel=""
> >
Add Shipping Zones Add Shipping Zones
</a> </a>
@ -24802,6 +24808,7 @@ exports[`Storyshots Shipping zones with options selected 1`] = `
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
data-test-id="shipping-add-link" data-test-id="shipping-add-link"
rel=""
> >
Add Shipping Zones Add Shipping Zones
</a> </a>
@ -25001,6 +25008,7 @@ exports[`Storyshots Views / Apps / App details default 1`] = `
<a <a
class="ExternalLink-link-id" class="ExternalLink-link-id"
href="http://localhost:8888/support" href="http://localhost:8888/support"
rel="noopener noreferer"
target="_blank" target="_blank"
> >
<div <div
@ -25109,6 +25117,7 @@ exports[`Storyshots Views / Apps / App details default 1`] = `
<a <a
class="ExternalLink-link-id" class="ExternalLink-link-id"
href="http://localhost:8888/app-data-privacy" href="http://localhost:8888/app-data-privacy"
rel="noopener noreferer"
target="_blank" target="_blank"
> >
<div <div
@ -25176,6 +25185,7 @@ exports[`Storyshots Views / Apps / App details loading 1`] = `
<a <a
class="ExternalLink-link-id" class="ExternalLink-link-id"
href="http://localhost:8888/support" href="http://localhost:8888/support"
rel="noopener noreferer"
target="_blank" target="_blank"
> >
<div <div
@ -114384,6 +114394,7 @@ exports[`Storyshots Views / Orders / Order details cancelled 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -114688,6 +114699,7 @@ exports[`Storyshots Views / Orders / Order details cancelled 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -116406,6 +116418,7 @@ exports[`Storyshots Views / Orders / Order details default 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -116742,6 +116755,7 @@ exports[`Storyshots Views / Orders / Order details default 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -118460,6 +118474,7 @@ exports[`Storyshots Views / Orders / Order details fulfilled 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -118796,6 +118811,7 @@ exports[`Storyshots Views / Orders / Order details fulfilled 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -121061,6 +121077,7 @@ exports[`Storyshots Views / Orders / Order details no customer note 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -121397,6 +121414,7 @@ exports[`Storyshots Views / Orders / Order details no customer note 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -123057,6 +123075,7 @@ exports[`Storyshots Views / Orders / Order details no payment 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -123393,6 +123412,7 @@ exports[`Storyshots Views / Orders / Order details no payment 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -125111,6 +125131,7 @@ exports[`Storyshots Views / Orders / Order details no shipping address 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -125439,6 +125460,7 @@ exports[`Storyshots Views / Orders / Order details no shipping address 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -127157,6 +127179,7 @@ exports[`Storyshots Views / Orders / Order details partially fulfilled 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -127493,6 +127516,7 @@ exports[`Storyshots Views / Orders / Order details partially fulfilled 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -129211,6 +129235,7 @@ exports[`Storyshots Views / Orders / Order details payment confirmed 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -129547,6 +129572,7 @@ exports[`Storyshots Views / Orders / Order details payment confirmed 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -131265,6 +131291,7 @@ exports[`Storyshots Views / Orders / Order details payment error 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -131601,6 +131628,7 @@ exports[`Storyshots Views / Orders / Order details payment error 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -133319,6 +133347,7 @@ exports[`Storyshots Views / Orders / Order details pending payment 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -133655,6 +133684,7 @@ exports[`Storyshots Views / Orders / Order details pending payment 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -135386,6 +135416,7 @@ exports[`Storyshots Views / Orders / Order details refunded payment 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -135722,6 +135753,7 @@ exports[`Storyshots Views / Orders / Order details refunded payment 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -137440,6 +137472,7 @@ exports[`Storyshots Views / Orders / Order details rejected payment 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -137776,6 +137809,7 @@ exports[`Storyshots Views / Orders / Order details rejected payment 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -139494,6 +139528,7 @@ exports[`Storyshots Views / Orders / Order details unfulfilled 1`] = `
</div> </div>
<a <a
class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id TimelineEventHeader-titleElement-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Jane Doe Jane Doe
</a> </a>
@ -139830,6 +139865,7 @@ exports[`Storyshots Views / Orders / Order details unfulfilled 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -140193,6 +140229,7 @@ exports[`Storyshots Views / Orders / Order draft default 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
<span <span
class="Money-currency-id" class="Money-currency-id"
@ -140320,6 +140357,7 @@ exports[`Storyshots Views / Orders / Order draft default 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
<span <span
class="Money-currency-id" class="Money-currency-id"
@ -140384,6 +140422,7 @@ exports[`Storyshots Views / Orders / Order draft default 1`] = `
<td> <td>
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Add Discount Add Discount
</a> </a>
@ -140569,6 +140608,7 @@ exports[`Storyshots Views / Orders / Order draft default 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -141161,6 +141201,7 @@ exports[`Storyshots Views / Orders / Order draft no user permissions 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
<span <span
class="Money-currency-id" class="Money-currency-id"
@ -141288,6 +141329,7 @@ exports[`Storyshots Views / Orders / Order draft no user permissions 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
<span <span
class="Money-currency-id" class="Money-currency-id"
@ -141352,6 +141394,7 @@ exports[`Storyshots Views / Orders / Order draft no user permissions 1`] = `
<td> <td>
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Add Discount Add Discount
</a> </a>
@ -141537,6 +141580,7 @@ exports[`Storyshots Views / Orders / Order draft no user permissions 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -141864,6 +141908,7 @@ exports[`Storyshots Views / Orders / Order draft with errors 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
<span <span
class="Money-currency-id" class="Money-currency-id"
@ -141991,6 +142036,7 @@ exports[`Storyshots Views / Orders / Order draft with errors 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
<span <span
class="Money-currency-id" class="Money-currency-id"
@ -142055,6 +142101,7 @@ exports[`Storyshots Views / Orders / Order draft with errors 1`] = `
<td> <td>
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
Add Discount Add Discount
</a> </a>
@ -142245,6 +142292,7 @@ exports[`Storyshots Views / Orders / Order draft with errors 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -142611,6 +142659,7 @@ exports[`Storyshots Views / Orders / Order draft without lines 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/channels/123454" href="/channels/123454"
rel=""
> >
Default Channel Default Channel
</a> </a>
@ -181116,6 +181165,7 @@ exports[`Storyshots Views / Products / Create product variant no warehouses 1`]
There are no warehouses set up for your store. To add stock quantity to the variant please There are no warehouses set up for your store. To add stock quantity to the variant please
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
configure a warehouse configure a warehouse
</a> </a>
@ -184355,6 +184405,7 @@ exports[`Storyshots Views / Products / Product edit form errors 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
All Warehouses All Warehouses
<svg <svg
@ -185080,6 +185131,7 @@ exports[`Storyshots Views / Products / Product edit form errors 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -186393,6 +186445,7 @@ exports[`Storyshots Views / Products / Product edit limits reached 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
All Warehouses All Warehouses
<svg <svg
@ -187118,6 +187171,7 @@ exports[`Storyshots Views / Products / Product edit limits reached 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -188343,6 +188397,7 @@ exports[`Storyshots Views / Products / Product edit no limits 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
All Warehouses All Warehouses
<svg <svg
@ -189068,6 +189123,7 @@ exports[`Storyshots Views / Products / Product edit no limits 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -190030,6 +190086,7 @@ exports[`Storyshots Views / Products / Product edit no product attributes 1`] =
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
All Warehouses All Warehouses
<svg <svg
@ -190755,6 +190812,7 @@ exports[`Storyshots Views / Products / Product edit no product attributes 1`] =
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -192578,6 +192636,7 @@ exports[`Storyshots Views / Products / Product edit no stock and no variants 1`]
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -194401,6 +194460,7 @@ exports[`Storyshots Views / Products / Product edit no stock, no variants and no
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -196224,6 +196284,7 @@ exports[`Storyshots Views / Products / Product edit no variants 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -197449,6 +197510,7 @@ exports[`Storyshots Views / Products / Product edit when data is fully loaded 1`
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
All Warehouses All Warehouses
<svg <svg
@ -198174,6 +198236,7 @@ exports[`Storyshots Views / Products / Product edit when data is fully loaded 1`
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -199331,6 +199394,7 @@ exports[`Storyshots Views / Products / Product edit when loading data 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id Link-disabled-id" class="Link-root-id Link-primary-id Link-noUnderline-id Link-disabled-id"
href="" href=""
rel=""
> >
... ...
</a> </a>
@ -200225,6 +200289,7 @@ exports[`Storyshots Views / Products / Product edit when product has no images 1
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
All Warehouses All Warehouses
<svg <svg
@ -200950,6 +201015,7 @@ exports[`Storyshots Views / Products / Product edit when product has no images 1
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -202773,6 +202839,7 @@ exports[`Storyshots Views / Products / Product edit when product has no variants
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -203998,6 +204065,7 @@ exports[`Storyshots Views / Products / Product edit with channels 1`] = `
> >
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
rel=""
> >
All Warehouses All Warehouses
<svg <svg
@ -204723,6 +204791,7 @@ exports[`Storyshots Views / Products / Product edit with channels 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-noUnderline-id" class="Link-root-id Link-primary-id Link-noUnderline-id"
href="/product-types/pt76406" href="/product-types/pt76406"
rel=""
> >
Versatile Versatile
</a> </a>
@ -246982,6 +247051,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details default 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjE%3D" href="/shipping/U2hpcHBpbmdab25lOjE%3D"
rel=""
> >
Europe Europe
</a> </a>
@ -246992,6 +247062,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details default 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjI%3D" href="/shipping/U2hpcHBpbmdab25lOjI%3D"
rel=""
> >
Oceania Oceania
</a> </a>
@ -247002,6 +247073,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details default 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjM%3D" href="/shipping/U2hpcHBpbmdab25lOjM%3D"
rel=""
> >
Asia Asia
</a> </a>
@ -247012,6 +247084,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details default 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjQ%3D" href="/shipping/U2hpcHBpbmdab25lOjQ%3D"
rel=""
> >
Americas Americas
</a> </a>
@ -247022,6 +247095,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details default 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjU%3D" href="/shipping/U2hpcHBpbmdab25lOjU%3D"
rel=""
> >
Africa Africa
</a> </a>
@ -247798,6 +247872,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details form errors 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjE%3D" href="/shipping/U2hpcHBpbmdab25lOjE%3D"
rel=""
> >
Europe Europe
</a> </a>
@ -247808,6 +247883,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details form errors 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjI%3D" href="/shipping/U2hpcHBpbmdab25lOjI%3D"
rel=""
> >
Oceania Oceania
</a> </a>
@ -247818,6 +247894,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details form errors 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjM%3D" href="/shipping/U2hpcHBpbmdab25lOjM%3D"
rel=""
> >
Asia Asia
</a> </a>
@ -247828,6 +247905,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details form errors 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjQ%3D" href="/shipping/U2hpcHBpbmdab25lOjQ%3D"
rel=""
> >
Americas Americas
</a> </a>
@ -247838,6 +247916,7 @@ exports[`Storyshots Views / Warehouses / Warehouse details form errors 1`] = `
<a <a
class="Link-root-id Link-primary-id Link-underline-id" class="Link-root-id Link-primary-id Link-underline-id"
href="/shipping/U2hpcHBpbmdab25lOjU%3D" href="/shipping/U2hpcHBpbmdab25lOjU%3D"
rel=""
> >
Africa Africa
</a> </a>
@ -251469,6 +251548,7 @@ exports[`Storyshots Warehouses with no options selected 1`] = `
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
data-test-id="warehouse-add-link" data-test-id="warehouse-add-link"
rel=""
> >
Add Warehouses Add Warehouses
</a> </a>
@ -251723,6 +251803,7 @@ exports[`Storyshots Warehouses with options selected 1`] = `
<a <a
class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id" class="MuiTypography-root-id Link-root-id Link-primary-id Link-noUnderline-id MuiTypography-body1-id"
data-test-id="warehouse-add-link" data-test-id="warehouse-add-link"
rel=""
> >
Add Warehouses Add Warehouses
</a> </a>