diff --git a/packages/components/src/mobile/bottom-sheet-select-control/index.native.js b/packages/components/src/mobile/bottom-sheet-select-control/index.native.js
index a379b950a5145c..93df1217206364 100644
--- a/packages/components/src/mobile/bottom-sheet-select-control/index.native.js
+++ b/packages/components/src/mobile/bottom-sheet-select-control/index.native.js
@@ -71,7 +71,7 @@ const BottomSheetSelectControl = ( {
) }
disabled={ disabled }
>
-
+ { disabled ? null : }
}
showSheet={ showSubSheet }
diff --git a/packages/components/src/mobile/bottom-sheet-text-control/index.native.js b/packages/components/src/mobile/bottom-sheet-text-control/index.native.js
index be7ddd8e9085e2..54a678b1ae0a14 100644
--- a/packages/components/src/mobile/bottom-sheet-text-control/index.native.js
+++ b/packages/components/src/mobile/bottom-sheet-text-control/index.native.js
@@ -65,7 +65,7 @@ const BottomSheetTextControl = ( {
placeholder={ cellPlaceholder || placeholder || '' }
disabled={ disabled }
>
-
+ { disabled ? null : }
}
showSheet={ showSubSheet }
diff --git a/packages/components/src/mobile/bottom-sheet/cell.native.js b/packages/components/src/mobile/bottom-sheet/cell.native.js
index ec359f7a9a4952..47c288b1311594 100644
--- a/packages/components/src/mobile/bottom-sheet/cell.native.js
+++ b/packages/components/src/mobile/bottom-sheet/cell.native.js
@@ -26,6 +26,7 @@ import { withPreferredColorScheme } from '@wordpress/compose';
import styles from './styles.scss';
import platformStyles from './cellStyles.scss';
import TouchableRipple from './ripple';
+import LockIcon from './lock-icon';
const isIOS = Platform.OS === 'ios';
class BottomSheetCell extends Component {
@@ -93,6 +94,7 @@ class BottomSheetCell extends Component {
accessibilityRole,
disabled = false,
disabledStyle = styles.cellDisabled,
+ showLockIcon = true,
activeOpacity,
onPress,
onLongPress,
@@ -374,6 +376,7 @@ class BottomSheetCell extends Component {
] }
>
{ children }
+ { disabled && showLockIcon && (
+
+
+
+ ) }
{ help && (
diff --git a/packages/components/src/mobile/bottom-sheet/color-cell.native.js b/packages/components/src/mobile/bottom-sheet/color-cell.native.js
index 2783c23ce21def..76cdc56930805a 100644
--- a/packages/components/src/mobile/bottom-sheet/color-cell.native.js
+++ b/packages/components/src/mobile/bottom-sheet/color-cell.native.js
@@ -11,7 +11,7 @@ import Cell from './cell';
import styles from './styles.scss';
export default function BottomSheetColorCell( props ) {
- const { color, withColorIndicator = true, ...cellProps } = props;
+ const { color, withColorIndicator = true, disabled, ...cellProps } = props;
return (
{ withColorIndicator && color && (
) }
-
+ { disabled ? null : }
|
);
}
diff --git a/packages/components/src/mobile/bottom-sheet/lock-icon/index.native.js b/packages/components/src/mobile/bottom-sheet/lock-icon/index.native.js
new file mode 100644
index 00000000000000..2d281e6bc89eaf
--- /dev/null
+++ b/packages/components/src/mobile/bottom-sheet/lock-icon/index.native.js
@@ -0,0 +1,19 @@
+/**
+ * WordPress dependencies
+ */
+import { Icon, lock } from '@wordpress/icons';
+import { usePreferredColorSchemeStyle } from '@wordpress/compose';
+
+/**
+ * Internal dependencies
+ */
+import styles from './styles.scss';
+
+export default function LockIcon() {
+ const iconStyle = usePreferredColorSchemeStyle(
+ styles.icon,
+ styles[ 'icon--dark' ]
+ );
+
+ return ;
+}
diff --git a/packages/components/src/mobile/bottom-sheet/lock-icon/styles.native.scss b/packages/components/src/mobile/bottom-sheet/lock-icon/styles.native.scss
new file mode 100644
index 00000000000000..fccde19eb1c21f
--- /dev/null
+++ b/packages/components/src/mobile/bottom-sheet/lock-icon/styles.native.scss
@@ -0,0 +1,8 @@
+.icon {
+ color: $gray-dark;
+ margin-left: 6px;
+}
+
+.icon--dark {
+ color: $gray-light;
+}
diff --git a/packages/components/src/mobile/bottom-sheet/radio-cell.native.js b/packages/components/src/mobile/bottom-sheet/radio-cell.native.js
index db9793ff76e0b5..2700cb0f923882 100644
--- a/packages/components/src/mobile/bottom-sheet/radio-cell.native.js
+++ b/packages/components/src/mobile/bottom-sheet/radio-cell.native.js
@@ -10,7 +10,7 @@ import { usePreferredColorSchemeStyle } from '@wordpress/compose';
import Cell from './cell';
import styles from './styles.scss';
-export default function BottomSheetColorCell( props ) {
+export default function BottomSheetRadioCell( props ) {
const { selected, ...cellProps } = props;
const selectedIconStyle = usePreferredColorSchemeStyle(
@@ -29,6 +29,7 @@ export default function BottomSheetColorCell( props ) {
}
editable={ false }
value={ '' }
+ showLockIcon={ selected }
>
{ selected && (
diff --git a/packages/components/src/mobile/bottom-sheet/range-cell.native.js b/packages/components/src/mobile/bottom-sheet/range-cell.native.js
index 592acbd6810b51..fa4780b00eee82 100644
--- a/packages/components/src/mobile/bottom-sheet/range-cell.native.js
+++ b/packages/components/src/mobile/bottom-sheet/range-cell.native.js
@@ -15,6 +15,7 @@ import { withPreferredColorScheme } from '@wordpress/compose';
* Internal dependencies
*/
import Cell from './cell';
+import LockIcon from './lock-icon';
import styles from './range-cell.scss';
import RangeTextInput from './range-text-input';
import { toFixed } from '../utils';
@@ -219,6 +220,7 @@ class BottomSheetRangeCell extends Component {
accessible={ false }
valueStyle={ styles.valueStyle }
disabled={ disabled }
+ showLockIcon={ false }
>
{ preview }
@@ -260,6 +262,7 @@ class BottomSheetRangeCell extends Component {
{ children }
) }
+ { disabled && }
diff --git a/packages/components/src/mobile/bottom-sheet/styles.native.scss b/packages/components/src/mobile/bottom-sheet/styles.native.scss
index ccec337a35edcd..5292b04c13731a 100644
--- a/packages/components/src/mobile/bottom-sheet/styles.native.scss
+++ b/packages/components/src/mobile/bottom-sheet/styles.native.scss
@@ -1,5 +1,7 @@
//Bottom Sheet
+$cell-disable-opacity: 0.38;
+
.bottomModal {
justify-content: flex-end;
margin: 0;
@@ -288,11 +290,11 @@
}
.placeholderColorDisabled {
- color: lighten($gray, 20%);
+ color: rgba($gray-dark, $cell-disable-opacity);
}
.placeholderColorDisabledDark {
- color: lighten($gray-dark, 10%);
+ color: rgba($white, $cell-disable-opacity);
}
.applyButton {
@@ -327,5 +329,5 @@
}
.cellDisabled {
- opacity: 0.3;
+ opacity: $cell-disable-opacity;
}