Skip to content

Commit

Permalink
progress Expensify#8:updatePreferredSkinTone() + JsDoc upd in User.js
Browse files Browse the repository at this point in the history
Signed-off-by: Ashutosh Khanduala <ashu.khanduala@gmail.com>
  • Loading branch information
ashuvssut committed Oct 12, 2023
1 parent 35726f6 commit 2ba2e82
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,7 @@ const propTypes = {
forwardedRef: PropTypes.func,

/** Stores user's preferred skin tone */
preferredSkinTone: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),

preferredSkinTone: PropTypes.oneOfType([PropTypes.number, PropTypes.string]), // TODO: preferredSkinTone must be number (always)
/** Stores user's frequently used emojis */
// eslint-disable-next-line react/forbid-prop-types
frequentlyUsedEmojis: PropTypes.arrayOf(PropTypes.object),
Expand Down Expand Up @@ -64,7 +63,6 @@ const EmojiPickerMenu = (props) => {
// prevent auto focus when open picker for mobile device
const shouldFocusInputOnScreenFocus = canFocusInputOnScreenFocus();

this.updatePreferredSkinTone = this.updatePreferredSkinTone.bind(this);
this.setFirstNonHeaderIndex = this.setFirstNonHeaderIndex.bind(this);
this.getItemLayout = this.getItemLayout.bind(this);
this.scrollToHeader = this.scrollToHeader.bind(this);
Expand Down Expand Up @@ -409,11 +407,12 @@ const EmojiPickerMenu = (props) => {
/**
* @param {Number} skinTone
*/
function updatePreferredSkinTone(skinTone) {
if (preferredSkinTone === skinTone) {
function updatePreferredSkinTone(skinTone: number) {
if (Number(preferredSkinTone) === skinTone) { // TODO: temp Number() for safety
return;
}

// TODO: Change JS Doc in User.js (type string => number)
User.updatePreferredSkinTone(skinTone);
}

Expand Down Expand Up @@ -537,7 +536,7 @@ const EmojiPickerMenu = (props) => {
ListEmptyComponent={<Text style={[styles.textLabel, styles.colorMuted]}>{translate('common.noResultsFound')}</Text>}
/>
<EmojiSkinToneList
updatePreferredSkinTone={this.updatePreferredSkinTone}
updatePreferredSkinTone={updatePreferredSkinTone}
preferredSkinTone={preferredSkinTone}
/>
</View>
Expand Down
2 changes: 1 addition & 1 deletion src/libs/actions/User.js
Original file line number Diff line number Diff line change
Expand Up @@ -541,7 +541,7 @@ function subscribeToUserEvents() {

/**
* Sync preferredSkinTone with Onyx and Server
* @param {String} skinTone
* @param {Number} skinTone
*/
function updatePreferredSkinTone(skinTone) {
const optimisticData = [
Expand Down

0 comments on commit 2ba2e82

Please sign in to comment.