From dc4430f494c26f63d725d389df07995abcba99c2 Mon Sep 17 00:00:00 2001 From: Joseph John Aas Cooper Date: Thu, 29 Jun 2023 13:44:18 +0200 Subject: [PATCH 01/19] fix: dimension item design --- .../DimensionsPanel/List/DimensionItem.js | 53 +++---- .../DimensionsPanel/List/OptionsButton.js | 31 +++- .../List/styles/DimensionItem.style.js | 137 +++++++++--------- .../List/styles/DimensionList.style.js | 5 +- 4 files changed, 120 insertions(+), 106 deletions(-) diff --git a/src/components/DimensionsPanel/List/DimensionItem.js b/src/components/DimensionsPanel/List/DimensionItem.js index 7b3bd648b..0fd402b80 100644 --- a/src/components/DimensionsPanel/List/DimensionItem.js +++ b/src/components/DimensionsPanel/List/DimensionItem.js @@ -8,7 +8,7 @@ import { } from '../../../modules/predefinedDimensions.js' import OptionsButton from './OptionsButton.js' import RecommendedIcon from './RecommendedIcon.js' -import { styles } from './styles/DimensionItem.style.js' +import styles from './styles/DimensionItem.style.js' class DimensionItem extends Component { state = { mouseOver: false } @@ -27,26 +27,16 @@ class DimensionItem extends Component { getDimensionIcon = () => { const Icon = getPredefinedDimensionProp(this.props.id, 'icon') return Icon ? ( - + ) : ( - + ) } getDimensionType = () => { - const { id, name, isDeactivated } = this.props + const { id, name } = this.props - return ( - - {name} - - ) + return {name} } render() { @@ -59,17 +49,12 @@ class DimensionItem extends Component { onClick, onOptionsClick, innerRef, - style, dataTest, ...rest } = this.props const Icon = this.getDimensionIcon() const Label = this.getDimensionType() - const itemStyle = - isSelected && !isDeactivated - ? { ...styles.item, ...styles.selected } - : styles.item const optionsRef = createRef() @@ -87,24 +72,25 @@ class DimensionItem extends Component { onMouseOver={this.onMouseOver} onMouseLeave={this.onMouseExit} ref={innerRef} - style={Object.assign( - {}, - itemStyle, - style, - !isDeactivated && styles.clickable - )} + className={` + item + ${!isDeactivated ? `clickable` : `deactivated`} + ${isSelected && !isDeactivated ? `selected` : ``} + `} data-test={dataTest} onClick={onLabelClick} {...rest} >
-
{Icon}
-
+
{Icon}
+
{Label}
{isLocked && ( -
+
)}
{onOptionsClick ? (
{this.state.mouseOver && !isDeactivated && !isLocked ? ( ) : null}
) : null} + ) } @@ -145,7 +131,6 @@ DimensionItem.propTypes = { isDeactivated: PropTypes.bool, isLocked: PropTypes.bool, isRecommended: PropTypes.bool, - style: PropTypes.object, onClick: PropTypes.func, onOptionsClick: PropTypes.func, } diff --git a/src/components/DimensionsPanel/List/OptionsButton.js b/src/components/DimensionsPanel/List/OptionsButton.js index 0686000a2..202bada66 100644 --- a/src/components/DimensionsPanel/List/OptionsButton.js +++ b/src/components/DimensionsPanel/List/OptionsButton.js @@ -2,14 +2,35 @@ import { IconMore16 } from '@dhis2/ui' import PropTypes from 'prop-types' import React from 'react' -const OptionsButton = ({ style, onClick }) => ( - +const OptionsButton = ({ onClick }) => ( + <> + + + ) OptionsButton.propTypes = { - style: PropTypes.object, onClick: PropTypes.func, } diff --git a/src/components/DimensionsPanel/List/styles/DimensionItem.style.js b/src/components/DimensionsPanel/List/styles/DimensionItem.style.js index c0a7ebd33..632be2ac5 100644 --- a/src/components/DimensionsPanel/List/styles/DimensionItem.style.js +++ b/src/components/DimensionsPanel/List/styles/DimensionItem.style.js @@ -1,67 +1,74 @@ import { colors, theme } from '@dhis2/ui' +import css from 'styled-jsx/css' -export const styles = { - labelWrapper: { - padding: '2px 5px 2px 0', - }, - text: { - color: colors.grey900, - userSelect: 'none', - wordBreak: 'break-word', - fontSize: '14px', - }, - textDeactivated: { - cursor: 'auto', - color: colors.grey500, - }, - item: { - display: 'flex', - minHeight: '24px', - marginTop: 3, - marginBottom: 3, - alignItems: 'center', - borderRadius: '2px', - }, - clickable: { - cursor: 'pointer', - }, - selected: { - backgroundColor: theme.secondary100, - fontWeight: 500, - }, - fixedDimensionIcon: { - paddingLeft: '6px', - paddingBottom: '2px', - }, - dynamicDimensionIcon: { - paddingLeft: '9px', - paddingRight: '9px', - }, - iconWrapper: { - display: 'flex', - flexDirection: 'column', - padding: '3px 8px 0 8px', - }, - optionsWrapper: { - position: 'relative', - left: '5px', - width: '20px', - height: '20px', - }, - optionsButton: { - display: 'flex', - alignItems: 'center', - justifyContent: 'center', - height: '20px', - width: '20px', - padding: 0, - border: 'none', - background: 'none', - outline: 'none', - cursor: 'pointer', - }, - label: { - display: 'flex', - outline: 'none', - }, -} +export default css` + .label { + display: flex; + outline: none; + color: ${colors.grey900}; + user-select: none; + word-break: break-word; + font-size: 14px; + } + .label-wrapper { + padding: 2px 5px 2px 0; + } + .item { + display: flex; + min-height: 24px; + margin-top: 3px; + margin-bottom: 3px; + align-items: center; + border-radius: 2px; + } + .item:hover { + background-color: ${colors.grey200}; + } + .item:active { + background-color: ${colors.grey300}; + } + .deactivated { + color: ${colors.grey500}; + } + .deactivated:hover { + background-color: transparent; + cursor: not-allowed; + } + .label-deactivated { + color: ${colors.grey500}; + } + .clickable { + cursor: pointer; + } + .selected { + background-color: ${theme.secondary100}; + font-weight: 500; + } + .selected:hover { + background-color: ${theme.secondary200}; + } + .fixed-dimension-icon { + padding-left: 6px; + padding-bottom: 2px; + } + .dynamic-dimension-icon { + padding-left: 9px; + padding-right: 9px; + } + .icon-wrapper { + display: flex; + flex-direction: column; + padding: 3px 8px 0 8px; + } + .lock-wrapper { + display: flex; + align-items: center; + color: ${colors.grey600}; + } + .options-wrapper { + position: relative; + left: 5px; + width: 20px; + height: 20px; + } +` diff --git a/src/components/DimensionsPanel/List/styles/DimensionList.style.js b/src/components/DimensionsPanel/List/styles/DimensionList.style.js index de1760c82..571e7e7ef 100644 --- a/src/components/DimensionsPanel/List/styles/DimensionList.style.js +++ b/src/components/DimensionsPanel/List/styles/DimensionList.style.js @@ -26,9 +26,10 @@ export default css` .header { text-transform: uppercase; font-size: 11px; - color: ${colors.grey700}; - margin: 5px 0; + color: ${colors.grey600}; + margin: 0 0 ${spacers.dp8} 0; letter-spacing: 0.3px; + font-weight: 400; } .section:not(:last-child) { margin-bottom: ${spacers.dp24}; From a3cbc548777dae860bf3c1e2dba7a28bec6637cc Mon Sep 17 00:00:00 2001 From: Joseph John Aas Cooper Date: Thu, 29 Jun 2023 15:04:34 +0200 Subject: [PATCH 02/19] chore: update test snapshots --- .../__snapshots__/DimensionItem.spec.js.snap | 309 ++++-------------- 1 file changed, 72 insertions(+), 237 deletions(-) diff --git a/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap b/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap index 1c33a04bf..b9ff35cd2 100644 --- a/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap +++ b/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap @@ -2,68 +2,37 @@ exports[`DimensionItem matches the snapshot 1`] = `
  • Period @@ -73,73 +42,43 @@ exports[`DimensionItem matches the snapshot 1`] = ` />
    + -
  • + {onOptionsClick ? ( +
    + {this.state.mouseOver && + !isDeactivated && + !isLocked ? ( + + ) : null} +
    + ) : null} + {isLocked && ( +
    {LockIcon}
    + )} + + ) } } diff --git a/src/components/DimensionsPanel/List/OptionsButton.js b/src/components/DimensionsPanel/List/OptionsButton.js index 202bada66..b7200ddcf 100644 --- a/src/components/DimensionsPanel/List/OptionsButton.js +++ b/src/components/DimensionsPanel/List/OptionsButton.js @@ -20,10 +20,11 @@ const OptionsButton = ({ onClick }) => ( background: none; outline: none; cursor: pointer; - border-radius: 4px; + border-top-right-radius: 2px; + border-bottom-left-radius: 2px; } button:hover { - background-color: rgba(0, 0, 0, 0.12); + background-color: rgba(0, 0, 0, 0.09); } `} diff --git a/src/components/DimensionsPanel/List/RecommendedIcon.js b/src/components/DimensionsPanel/List/RecommendedIcon.js index 3a8b75dc9..12609d3a7 100644 --- a/src/components/DimensionsPanel/List/RecommendedIcon.js +++ b/src/components/DimensionsPanel/List/RecommendedIcon.js @@ -9,7 +9,6 @@ const RecommendedIcon = ({ isRecommended, dataTest }) =>
    diff --git a/src/components/DimensionsPanel/List/styles/DimensionItem.module.css b/src/components/DimensionsPanel/List/styles/DimensionItem.module.css new file mode 100644 index 000000000..b89b36275 --- /dev/null +++ b/src/components/DimensionsPanel/List/styles/DimensionItem.module.css @@ -0,0 +1,79 @@ +.item { + color: var(--colors-grey900); + background-color: transparent; + fill: var(--colors-grey800); + display: flex; + outline: none; + justify-content: space-between; + padding: 0 0 0 4px; + margin: 0; + border-radius: 2px; + cursor: pointer; + min-height: 22px; + border: 1px solid transparent; +} + +.item:not(.deactivated):not(.dragging):hover { + background-color: var(--colors-grey100); + border-color: var(--colors-grey400); +} + +.label { + display: flex; + align-items: center; +} +.labelWrapper { + display: flex; + align-items: center; +} +.labelText { + font-size: 13px; + line-height: 15px; + margin-top: 1px; +} + +.iconWrapper { + width: 16px; + height: 16px; + margin: 2px 4px 0 0; + flex: 0 0 auto; + align-self: flex-start; +} + +.item.deactivated { + opacity: 0.5; + cursor: not-allowed; +} +.item.selected { + background-color: var(--colors-teal100); + border: 1px solid var(--colors-teal200); + color: var(--colors-teal900); + fill: var(--colors-teal800); + font-weight: 400; +} +.item.selected:not(.deactivated):hover { + background: #cdeae8; + border-color: #93c4bf; + box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); +} + +.optionsWrapper { + width: 20px; + height: 20px; +} + +.lockWrapper svg path { + fill: var(--colors-grey800); +} +.lockWrapper { + background: var(--colors-grey300); + height: 20px; + padding: 0 1px 0 2px; + display: flex; + align-items: center; + justify-content: center; +} + +.item.selected .lockWrapper svg path { + fill: var(--colors-teal900); +} diff --git a/src/components/DimensionsPanel/List/styles/DimensionItem.style.js b/src/components/DimensionsPanel/List/styles/DimensionItem.style.js deleted file mode 100644 index 632be2ac5..000000000 --- a/src/components/DimensionsPanel/List/styles/DimensionItem.style.js +++ /dev/null @@ -1,74 +0,0 @@ -import { colors, theme } from '@dhis2/ui' -import css from 'styled-jsx/css' - -export default css` - .label { - display: flex; - outline: none; - color: ${colors.grey900}; - user-select: none; - word-break: break-word; - font-size: 14px; - } - .label-wrapper { - padding: 2px 5px 2px 0; - } - .item { - display: flex; - min-height: 24px; - margin-top: 3px; - margin-bottom: 3px; - align-items: center; - border-radius: 2px; - } - .item:hover { - background-color: ${colors.grey200}; - } - .item:active { - background-color: ${colors.grey300}; - } - .deactivated { - color: ${colors.grey500}; - } - .deactivated:hover { - background-color: transparent; - cursor: not-allowed; - } - .label-deactivated { - color: ${colors.grey500}; - } - .clickable { - cursor: pointer; - } - .selected { - background-color: ${theme.secondary100}; - font-weight: 500; - } - .selected:hover { - background-color: ${theme.secondary200}; - } - .fixed-dimension-icon { - padding-left: 6px; - padding-bottom: 2px; - } - .dynamic-dimension-icon { - padding-left: 9px; - padding-right: 9px; - } - .icon-wrapper { - display: flex; - flex-direction: column; - padding: 3px 8px 0 8px; - } - .lock-wrapper { - display: flex; - align-items: center; - color: ${colors.grey600}; - } - .options-wrapper { - position: relative; - left: 5px; - width: 20px; - height: 20px; - } -` diff --git a/src/components/DimensionsPanel/List/styles/DimensionList.style.js b/src/components/DimensionsPanel/List/styles/DimensionList.style.js index 571e7e7ef..a7d4e7ded 100644 --- a/src/components/DimensionsPanel/List/styles/DimensionList.style.js +++ b/src/components/DimensionsPanel/List/styles/DimensionList.style.js @@ -22,6 +22,9 @@ export default css` .list { margin: 0; padding: 0; + display: flex; + flex-direction: column; + gap: 4px; } .header { text-transform: uppercase; diff --git a/src/components/DimensionsPanel/List/styles/RecommendedIcon.style.js b/src/components/DimensionsPanel/List/styles/RecommendedIcon.style.js index af7fa2d8b..66a385268 100644 --- a/src/components/DimensionsPanel/List/styles/RecommendedIcon.style.js +++ b/src/components/DimensionsPanel/List/styles/RecommendedIcon.style.js @@ -2,11 +2,11 @@ import { theme } from '@dhis2/ui' export const styles = { recommendedIcon: { - backgroundColor: theme.secondary300, - height: '8px', - width: '8px', + backgroundColor: theme.secondary400, + height: '6px', + width: '6px', borderRadius: '4px', - marginLeft: '5px', + marginLeft: '6px', display: 'inline-block', cursor: 'pointer', }, diff --git a/src/components/DimensionsPanel/styles/DimensionsPanel.style.js b/src/components/DimensionsPanel/styles/DimensionsPanel.style.js index 8bf0b3294..d6f6b4e10 100644 --- a/src/components/DimensionsPanel/styles/DimensionsPanel.style.js +++ b/src/components/DimensionsPanel/styles/DimensionsPanel.style.js @@ -5,7 +5,7 @@ export const styles = { height: '100%', display: 'flex', flexDirection: 'column', - backgroundColor: colors.grey050, + backgroundColor: colors.white, padding: '8px', overflow: 'hidden', }, From a0e9ba9684778234394747ecb5d08ede638cef56 Mon Sep 17 00:00:00 2001 From: martinkrulltott Date: Mon, 18 Dec 2023 11:23:33 +0100 Subject: [PATCH 04/19] fix: append className passed in as prop --- .../DimensionsPanel/List/DimensionItem.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/components/DimensionsPanel/List/DimensionItem.js b/src/components/DimensionsPanel/List/DimensionItem.js index a4088a8f8..42e868594 100644 --- a/src/components/DimensionsPanel/List/DimensionItem.js +++ b/src/components/DimensionsPanel/List/DimensionItem.js @@ -51,6 +51,7 @@ class DimensionItem extends Component { onOptionsClick, innerRef, dataTest, + className, ...rest } = this.props @@ -91,10 +92,14 @@ class DimensionItem extends Component { onMouseOver={this.onMouseOver} onMouseLeave={this.onMouseExit} ref={innerRef} - className={cx(style.item, { - [style.deactivated]: isDeactivated, - [style.selected]: isSelected && !isDeactivated, - })} + className={cx( + style.item, + { + [style.deactivated]: isDeactivated, + [style.selected]: isSelected && !isDeactivated, + }, + className + )} data-test={dataTest} onClick={onLabelClick} {...rest} @@ -144,6 +149,7 @@ DimensionItem.propTypes = { id: PropTypes.string.isRequired, isSelected: PropTypes.bool.isRequired, // XXX name: PropTypes.string.isRequired, + className: PropTypes.string, dataTest: PropTypes.string, innerRef: PropTypes.func, isDeactivated: PropTypes.bool, From 30b56da57135410ff564d62afb2ea7c22f3445fa Mon Sep 17 00:00:00 2001 From: martinkrulltott Date: Mon, 18 Dec 2023 11:24:41 +0100 Subject: [PATCH 05/19] chore: update snapshots --- .../__snapshots__/DimensionItem.spec.js.snap | 391 +++++++++--------- 1 file changed, 190 insertions(+), 201 deletions(-) diff --git a/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap b/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap index b9ff35cd2..3465accf1 100644 --- a/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap +++ b/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap @@ -1,240 +1,229 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`DimensionItem matches the snapshot 1`] = ` -
  • -
    + +
  • - +
    + +
    +
    + + + Period + + + +
    -
    - - Period - - -
    -
  • - ) } diff --git a/src/components/DimensionsPanel/List/styles/DimensionItem.module.css b/src/components/DimensionsPanel/List/styles/DimensionItem.module.css deleted file mode 100644 index 88dc05214..000000000 --- a/src/components/DimensionsPanel/List/styles/DimensionItem.module.css +++ /dev/null @@ -1,83 +0,0 @@ -.item { - color: var(--colors-grey900); - background-color: transparent; - fill: var(--colors-grey800); - display: flex; - outline: none; - justify-content: space-between; - padding: 0 0 0 4px; - margin: 0; - border-radius: 2px; - cursor: pointer; - min-height: 22px; - border: 1px solid transparent; -} - -.item:not(.deactivated):not(.dragging):hover { - background-color: var(--colors-grey100); - border-color: var(--colors-grey400); -} - -.label { - display: flex; - align-items: center; -} -.labelWrapper { - display: flex; - align-items: center; -} -.labelText { - font-size: 13px; - line-height: 15px; - margin-top: 1px; -} - -.iconWrapper { - width: 16px; - height: 16px; - margin: 2px 4px 0 0; - flex: 0 0 auto; - align-self: flex-start; -} - -.item.deactivated { - opacity: 0.5; - cursor: not-allowed; -} -.item.selected { - background-color: var(--colors-teal100); - border: 1px solid var(--colors-teal200); - color: var(--colors-teal900); - fill: var(--colors-teal800); - font-weight: 400; -} -.item.selected:not(.deactivated):hover { - background: #cdeae8; - border-color: #93c4bf; - box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); -} - -.optionsWrapper { - width: 20px; - height: 20px; -} - -.lockWrapper svg path { - fill: var(--colors-grey800); -} - -.lockWrapper { - background: var(--colors-grey300); - height: 20px; - padding: 0 1px 0 2px; - display: flex; - align-items: center; - justify-content: center; -} - -.item.selected .lockWrapper { - background: #cbe7e5; -} -.item.selected .lockWrapper svg path { - fill: var(--colors-teal900); -} diff --git a/src/components/DimensionsPanel/List/styles/DimensionItem.style.js b/src/components/DimensionsPanel/List/styles/DimensionItem.style.js new file mode 100644 index 000000000..a4e9aed8f --- /dev/null +++ b/src/components/DimensionsPanel/List/styles/DimensionItem.style.js @@ -0,0 +1,88 @@ +import { colors } from '@dhis2/ui' +import css from 'styled-jsx/css' + +export default css` + .item { + color: ${colors.grey900}; + background-color: transparent; + fill: ${colors.grey800}; + display: flex; + outline: none; + justify-content: space-between; + padding: 0 0 0 4px; + margin: 0; + border-radius: 2px; + cursor: pointer; + min-height: 22px; + border: 1px solid transparent; + } + + .item:not(.deactivated):not(.dragging):hover { + background-color: ${colors.grey100}; + border-color: ${colors.grey400}; + } + + .label { + display: flex; + align-items: center; + } + .labelWrapper { + display: flex; + align-items: center; + } + .labelText { + font-size: 13px; + line-height: 15px; + margin-top: 1px; + } + + .iconWrapper { + width: 16px; + height: 16px; + margin: 2px 4px 0 0; + flex: 0 0 auto; + align-self: flex-start; + } + + .item.deactivated { + opacity: 0.5; + cursor: not-allowed; + } + .item.selected { + background-color: ${colors.teal100}; + border: 1px solid ${colors.teal200}; + color: ${colors.teal900}; + fill: ${colors.teal800}; + font-weight: 400; + } + .item.selected:not(.deactivated):hover { + background: #cdeae8; + border-color: #93c4bf; + box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); + } + + .optionsWrapper { + width: 20px; + height: 20px; + } + + .lockWrapper svg path { + fill: ${colors.grey800}; + } + + .lockWrapper { + background: ${colors.grey300}; + height: 20px; + padding: 0 1px 0 2px; + display: flex; + align-items: center; + justify-content: center; + } + + .item.selected .lockWrapper { + background: #cbe7e5; + } + .item.selected .lockWrapper svg path { + fill: ${colors.teal900}; + } +` From c581ff4490fcf57b4b1c0a09488a3028c167641c Mon Sep 17 00:00:00 2001 From: martinkrulltott Date: Fri, 22 Dec 2023 10:24:56 +0100 Subject: [PATCH 08/19] chore: update snapshots --- .../__snapshots__/DimensionItem.spec.js.snap | 105 +++++++++++++----- 1 file changed, 79 insertions(+), 26 deletions(-) diff --git a/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap b/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap index 3465accf1..965f99522 100644 --- a/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap +++ b/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap @@ -10,7 +10,7 @@ exports[`DimensionItem matches the snapshot 1`] = ` theme={false} />
  • -
    - +
    +
    -
    - +
    + @@ -39,6 +48,7 @@ exports[`DimensionItem matches the snapshot 1`] = `
  • + + ) const onLabelClick = () => { @@ -118,15 +123,13 @@ class DimensionItem extends Component { />
    - {onOptionsClick ? ( + {onOptionsClick && !isDeactivated && !isLocked ? (
    - {this.state.mouseOver && - !isDeactivated && - !isLocked ? ( + {this.state.mouseOver ? ( ) : null} - {isLocked &&
    {LockIcon}
    } + {isLocked && LockIcon} From b529ce11b3bf6705892ea3357404bb43dfaa1bd5 Mon Sep 17 00:00:00 2001 From: Martin Ohlson Date: Fri, 3 May 2024 15:11:45 +0200 Subject: [PATCH 14/19] chore: update snapshot --- .../List/__tests__/__snapshots__/DimensionItem.spec.js.snap | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap b/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap index 965f99522..f58b07faa 100644 --- a/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap +++ b/src/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap @@ -116,6 +116,7 @@ exports[`DimensionItem matches the snapshot with locked 1`] = ` />
    +