From 75aaa16b234c0843797539cb31e22d0202dabf62 Mon Sep 17 00:00:00 2001 From: Andrew Rosiclair Date: Wed, 7 Sep 2022 10:26:22 +0100 Subject: [PATCH 1/9] stop loading full policy in withFullPolicy --- src/pages/workspace/withFullPolicy.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/pages/workspace/withFullPolicy.js b/src/pages/workspace/withFullPolicy.js index 224fdaf77364..aec72b2ba751 100644 --- a/src/pages/workspace/withFullPolicy.js +++ b/src/pages/workspace/withFullPolicy.js @@ -109,7 +109,6 @@ export default function (WrappedComponent) { const isFromFullPolicy = lodashGet(props, 'policy.isFromFullPolicy', false) || lodashGet(props, `policy.policy_${policyID}.isFromFullPolicy`, false); if (_.isString(policyID) && !_.isEmpty(policyID) && (!isFromFullPolicy || !isPreviousRouteInSameWorkspace(currentRoute.name, policyID))) { - Policy.loadFullPolicy(policyID); Policy.updateLastAccessedWorkspace(policyID); } From 03251493f84ee4190a652f2427858b9231c4e108 Mon Sep 17 00:00:00 2001 From: Andrew Rosiclair Date: Wed, 7 Sep 2022 10:48:58 +0100 Subject: [PATCH 2/9] update jsdoc --- src/pages/workspace/withFullPolicy.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/workspace/withFullPolicy.js b/src/pages/workspace/withFullPolicy.js index aec72b2ba751..65a0a0dfc8f8 100644 --- a/src/pages/workspace/withFullPolicy.js +++ b/src/pages/workspace/withFullPolicy.js @@ -86,7 +86,7 @@ const fullPolicyDefaultProps = { }; /* - * HOC for loading a full policy. It checks the route params and if current route has a policyID that the previous route did not, it full-loads that policy. + * HOC for connecting a policy in Onyx corresponding to the policyID in route params */ export default function (WrappedComponent) { const propTypes = { From 8878af71944c5af2ff8206588d5b74b2bd89a0d4 Mon Sep 17 00:00:00 2001 From: Andrew Rosiclair Date: Wed, 7 Sep 2022 12:09:06 +0100 Subject: [PATCH 3/9] rename withFullPolicy to withPolicy --- src/components/AvatarWithIndicator.js | 4 +-- src/components/RoomNameInput.js | 8 +++--- src/pages/ReportSettingsPage.js | 8 +++--- .../workspace/WorkspaceBankAccountPage.js | 4 +-- src/pages/workspace/WorkspaceInitialPage.js | 8 +++--- src/pages/workspace/WorkspaceInvitePage.js | 8 +++--- src/pages/workspace/WorkspaceMembersPage.js | 8 +++--- src/pages/workspace/WorkspaceNewRoomPage.js | 8 +++--- .../workspace/WorkspacePageWithSections.js | 4 +-- src/pages/workspace/WorkspaceSettingsPage.js | 8 +++--- .../reimburse/WorkspaceReimburseView.js | 4 +-- .../{withFullPolicy.js => withPolicy.js} | 26 +++++++++---------- 12 files changed, 49 insertions(+), 49 deletions(-) rename src/pages/workspace/{withFullPolicy.js => withPolicy.js} (88%) diff --git a/src/components/AvatarWithIndicator.js b/src/components/AvatarWithIndicator.js index 55f097588b00..f8c627adfd25 100644 --- a/src/components/AvatarWithIndicator.js +++ b/src/components/AvatarWithIndicator.js @@ -11,7 +11,7 @@ import policyMemberPropType from '../pages/policyMemberPropType'; import bankAccountPropTypes from './bankAccountPropTypes'; import cardPropTypes from './cardPropTypes'; import userWalletPropTypes from '../pages/EnablePayments/userWalletPropTypes'; -import {fullPolicyPropTypes} from '../pages/workspace/withFullPolicy'; +import {policyPropTypes} from '../pages/workspace/withPolicy'; import * as PolicyUtils from '../libs/PolicyUtils'; import * as PaymentMethods from '../libs/actions/PaymentMethods'; @@ -29,7 +29,7 @@ const propTypes = { policiesMemberList: PropTypes.objectOf(policyMemberPropType), /** All the user's policies (from Onyx via withFullPolicy) */ - policies: PropTypes.objectOf(fullPolicyPropTypes.policy), + policies: PropTypes.objectOf(policyPropTypes.policy), /** List of bank accounts */ bankAccountList: PropTypes.objectOf(bankAccountPropTypes), diff --git a/src/components/RoomNameInput.js b/src/components/RoomNameInput.js index 8bd14fe9408c..b0d7373adb94 100644 --- a/src/components/RoomNameInput.js +++ b/src/components/RoomNameInput.js @@ -5,7 +5,7 @@ import CONST from '../CONST'; import ONYXKEYS from '../ONYXKEYS'; import compose from '../libs/compose'; import withLocalize, {withLocalizePropTypes} from './withLocalize'; -import withFullPolicy, {fullPolicyDefaultProps, fullPolicyPropTypes} from '../pages/workspace/withFullPolicy'; +import withPolicy, {policyDefaultProps, policyPropTypes} from '../pages/workspace/withPolicy'; import TextInput from './TextInput'; const propTypes = { @@ -22,7 +22,7 @@ const propTypes = { errorText: PropTypes.string, ...withLocalizePropTypes, - ...fullPolicyPropTypes, + ...policyPropTypes, /* Onyx Props */ @@ -53,7 +53,7 @@ const defaultProps = { initialValue: '', disabled: false, errorText: '', - ...fullPolicyDefaultProps, + ...policyDefaultProps, forwardedRef: () => {}, }; @@ -114,7 +114,7 @@ RoomNameInput.defaultProps = defaultProps; export default compose( withLocalize, - withFullPolicy, + withPolicy, withOnyx({ reports: { key: ONYXKEYS.COLLECTION.REPORT, diff --git a/src/pages/ReportSettingsPage.js b/src/pages/ReportSettingsPage.js index cc041cbe13e7..f2dd49bb8679 100644 --- a/src/pages/ReportSettingsPage.js +++ b/src/pages/ReportSettingsPage.js @@ -18,7 +18,7 @@ import Text from '../components/Text'; import Button from '../components/Button'; import RoomNameInput from '../components/RoomNameInput'; import Picker from '../components/Picker'; -import withFullPolicy, {fullPolicyDefaultProps, fullPolicyPropTypes} from './workspace/withFullPolicy'; +import withPolicy, {policyDefaultProps, policyPropTypes} from './workspace/withPolicy'; import * as ValidationUtils from '../libs/ValidationUtils'; import OfflineWithFeedback from '../components/OfflineWithFeedback'; @@ -31,7 +31,7 @@ const propTypes = { }), }).isRequired, - ...fullPolicyPropTypes, + ...policyPropTypes, ...withLocalizePropTypes, /* Onyx Props */ @@ -80,7 +80,7 @@ const propTypes = { }; const defaultProps = { - ...fullPolicyDefaultProps, + ...policyDefaultProps, report: { reportID: 0, reportName: '', @@ -292,7 +292,7 @@ ReportSettingsPage.displayName = 'ReportSettingsPage'; export default compose( withLocalize, - withFullPolicy, + withPolicy, withOnyx({ report: { key: ({route}) => `${ONYXKEYS.COLLECTION.REPORT}${route.params.reportID}`, diff --git a/src/pages/workspace/WorkspaceBankAccountPage.js b/src/pages/workspace/WorkspaceBankAccountPage.js index 6b95d4685ddd..64bd69cb9bd3 100644 --- a/src/pages/workspace/WorkspaceBankAccountPage.js +++ b/src/pages/workspace/WorkspaceBankAccountPage.js @@ -21,7 +21,7 @@ import Section from '../../components/Section'; import WorkspaceResetBankAccountModal from './WorkspaceResetBankAccountModal'; import styles from '../../styles/styles'; import CONST from '../../CONST'; -import withFullPolicy from './withFullPolicy'; +import withPolicy from './withPolicy'; import Button from '../../components/Button'; import MenuItem from '../../components/MenuItem'; import FullPageNotFoundView from '../../components/BlockingViews/FullPageNotFoundView'; @@ -131,5 +131,5 @@ export default compose( key: ONYXKEYS.REIMBURSEMENT_ACCOUNT, }, }), - withFullPolicy, + withPolicy, )(WorkspaceBankAccountPage); diff --git a/src/pages/workspace/WorkspaceInitialPage.js b/src/pages/workspace/WorkspaceInitialPage.js index 08610ce151b9..270927d030db 100644 --- a/src/pages/workspace/WorkspaceInitialPage.js +++ b/src/pages/workspace/WorkspaceInitialPage.js @@ -20,7 +20,7 @@ import HeaderWithCloseButton from '../../components/HeaderWithCloseButton'; import compose from '../../libs/compose'; import Avatar from '../../components/Avatar'; import FullPageNotFoundView from '../../components/BlockingViews/FullPageNotFoundView'; -import withFullPolicy, {fullPolicyPropTypes, fullPolicyDefaultProps} from './withFullPolicy'; +import withPolicy, {policyPropTypes, policyDefaultProps} from './withPolicy'; import * as PolicyActions from '../../libs/actions/Policy'; import * as PolicyUtils from '../../libs/PolicyUtils'; import CONST from '../../CONST'; @@ -30,7 +30,7 @@ import policyMemberPropType from '../policyMemberPropType'; import OfflineWithFeedback from '../../components/OfflineWithFeedback'; const propTypes = { - ...fullPolicyPropTypes, + ...policyPropTypes, ...withLocalizePropTypes, /** The employee list of this policy (coming from Onyx) */ @@ -38,7 +38,7 @@ const propTypes = { }; const defaultProps = { - ...fullPolicyDefaultProps, + ...policyDefaultProps, policyMemberList: {}, }; @@ -249,7 +249,7 @@ WorkspaceInitialPage.displayName = 'WorkspaceInitialPage'; export default compose( withLocalize, - withFullPolicy, + withPolicy, withOnyx({ policyMemberList: { key: ({policy}) => `${ONYXKEYS.COLLECTION.POLICY_MEMBER_LIST}${policy.id}`, diff --git a/src/pages/workspace/WorkspaceInvitePage.js b/src/pages/workspace/WorkspaceInvitePage.js index bf44055c9c9b..1ee96f4620eb 100644 --- a/src/pages/workspace/WorkspaceInvitePage.js +++ b/src/pages/workspace/WorkspaceInvitePage.js @@ -20,7 +20,7 @@ import CONST from '../../CONST'; import FullScreenLoadingIndicator from '../../components/FullscreenLoadingIndicator'; import * as Link from '../../libs/actions/Link'; import Text from '../../components/Text'; -import withFullPolicy, {fullPolicyPropTypes, fullPolicyDefaultProps} from './withFullPolicy'; +import withPolicy, {policyPropTypes, policyDefaultProps} from './withPolicy'; const personalDetailsPropTypes = PropTypes.shape({ /** The login of the person (either email or phone number) */ @@ -50,11 +50,11 @@ const propTypes = { }), }).isRequired, - ...fullPolicyPropTypes, + ...policyPropTypes, ...withLocalizePropTypes, }; -const defaultProps = fullPolicyDefaultProps; +const defaultProps = policyDefaultProps; class WorkspaceInvitePage extends React.Component { constructor(props) { @@ -333,7 +333,7 @@ WorkspaceInvitePage.defaultProps = defaultProps; export default compose( withLocalize, - withFullPolicy, + withPolicy, withOnyx({ personalDetails: { key: ONYXKEYS.PERSONAL_DETAILS, diff --git a/src/pages/workspace/WorkspaceMembersPage.js b/src/pages/workspace/WorkspaceMembersPage.js index db12309ce7b7..1de2d1759565 100644 --- a/src/pages/workspace/WorkspaceMembersPage.js +++ b/src/pages/workspace/WorkspaceMembersPage.js @@ -25,7 +25,7 @@ import withWindowDimensions, {windowDimensionsPropTypes} from '../../components/ import OptionRow from '../../components/OptionRow'; import CheckboxWithTooltip from '../../components/CheckboxWithTooltip'; import Hoverable from '../../components/Hoverable'; -import withFullPolicy, {fullPolicyPropTypes, fullPolicyDefaultProps} from './withFullPolicy'; +import withPolicy, {policyPropTypes, policyDefaultProps} from './withPolicy'; import CONST from '../../CONST'; import OfflineWithFeedback from '../../components/OfflineWithFeedback'; import {withNetwork} from '../../components/OnyxProvider'; @@ -45,13 +45,13 @@ const propTypes = { }), }).isRequired, - ...fullPolicyPropTypes, + ...policyPropTypes, ...withLocalizePropTypes, ...windowDimensionsPropTypes, ...networkPropTypes, }; -const defaultProps = fullPolicyDefaultProps; +const defaultProps = policyDefaultProps; class WorkspaceMembersPage extends React.Component { constructor(props) { @@ -367,7 +367,7 @@ WorkspaceMembersPage.defaultProps = defaultProps; export default compose( withLocalize, withWindowDimensions, - withFullPolicy, + withPolicy, withNetwork(), withOnyx({ personalDetails: { diff --git a/src/pages/workspace/WorkspaceNewRoomPage.js b/src/pages/workspace/WorkspaceNewRoomPage.js index 1dae4d8d5b67..a1595890e00f 100644 --- a/src/pages/workspace/WorkspaceNewRoomPage.js +++ b/src/pages/workspace/WorkspaceNewRoomPage.js @@ -3,7 +3,7 @@ import {ScrollView, View} from 'react-native'; import _ from 'underscore'; import {withOnyx} from 'react-native-onyx'; import PropTypes from 'prop-types'; -import withFullPolicy, {fullPolicyDefaultProps, fullPolicyPropTypes} from './withFullPolicy'; +import withPolicy, {policyDefaultProps, policyPropTypes} from './withPolicy'; import * as Report from '../../libs/actions/Report'; import withLocalize, {withLocalizePropTypes} from '../../components/withLocalize'; import compose from '../../libs/compose'; @@ -38,14 +38,14 @@ const propTypes = { /** Are we loading the createPolicyRoom command */ isLoadingCreatePolicyRoom: PropTypes.bool, - ...fullPolicyPropTypes, + ...policyPropTypes, ...withLocalizePropTypes, }; const defaultProps = { betas: [], isLoadingCreatePolicyRoom: false, - ...fullPolicyDefaultProps, + ...policyDefaultProps, }; class WorkspaceNewRoomPage extends React.Component { @@ -203,7 +203,7 @@ WorkspaceNewRoomPage.propTypes = propTypes; WorkspaceNewRoomPage.defaultProps = defaultProps; export default compose( - withFullPolicy, + withPolicy, withOnyx({ betas: { key: ONYXKEYS.BETAS, diff --git a/src/pages/workspace/WorkspacePageWithSections.js b/src/pages/workspace/WorkspacePageWithSections.js index d6fc3b3a09e6..7c0ecacc0d8a 100644 --- a/src/pages/workspace/WorkspacePageWithSections.js +++ b/src/pages/workspace/WorkspacePageWithSections.js @@ -15,7 +15,7 @@ import * as BankAccounts from '../../libs/actions/BankAccounts'; import BankAccount from '../../libs/models/BankAccount'; import reimbursementAccountPropTypes from '../ReimbursementAccount/reimbursementAccountPropTypes'; import userPropTypes from '../settings/userPropTypes'; -import withFullPolicy from './withFullPolicy'; +import withPolicy from './withPolicy'; import {withNetwork} from '../../components/OnyxProvider'; import networkPropTypes from '../../components/networkPropTypes'; @@ -131,6 +131,6 @@ export default compose( key: ONYXKEYS.REIMBURSEMENT_ACCOUNT, }, }), - withFullPolicy, + withPolicy, withNetwork(), )(WorkspacePageWithSections); diff --git a/src/pages/workspace/WorkspaceSettingsPage.js b/src/pages/workspace/WorkspaceSettingsPage.js index a35c1fc690a2..40c370abb92b 100644 --- a/src/pages/workspace/WorkspaceSettingsPage.js +++ b/src/pages/workspace/WorkspaceSettingsPage.js @@ -19,18 +19,18 @@ import Picker from '../../components/Picker'; import TextInput from '../../components/TextInput'; import FixedFooter from '../../components/FixedFooter'; import WorkspacePageWithSections from './WorkspacePageWithSections'; -import withFullPolicy, {fullPolicyPropTypes, fullPolicyDefaultProps} from './withFullPolicy'; +import withPolicy, {policyPropTypes, policyDefaultProps} from './withPolicy'; import {withNetwork} from '../../components/OnyxProvider'; import OfflineWithFeedback from '../../components/OfflineWithFeedback'; import FullPageNotFoundView from '../../components/BlockingViews/FullPageNotFoundView'; const propTypes = { - ...fullPolicyPropTypes, + ...policyPropTypes, ...withLocalizePropTypes, }; const defaultProps = { - ...fullPolicyDefaultProps, + ...policyDefaultProps, }; class WorkspaceSettingsPage extends React.Component { @@ -162,7 +162,7 @@ WorkspaceSettingsPage.propTypes = propTypes; WorkspaceSettingsPage.defaultProps = defaultProps; export default compose( - withFullPolicy, + withPolicy, withOnyx({ currencyList: {key: ONYXKEYS.CURRENCY_LIST}, }), diff --git a/src/pages/workspace/reimburse/WorkspaceReimburseView.js b/src/pages/workspace/reimburse/WorkspaceReimburseView.js index e4899ce9426b..30da75a415b5 100644 --- a/src/pages/workspace/reimburse/WorkspaceReimburseView.js +++ b/src/pages/workspace/reimburse/WorkspaceReimburseView.js @@ -17,7 +17,7 @@ import * as Link from '../../../libs/actions/Link'; import compose from '../../../libs/compose'; import ONYXKEYS from '../../../ONYXKEYS'; import * as Policy from '../../../libs/actions/Policy'; -import withFullPolicy from '../withFullPolicy'; +import withPolicy from '../withPolicy'; import CONST from '../../../CONST'; import Button from '../../../components/Button'; import {withNetwork} from '../../../components/OnyxProvider'; @@ -292,7 +292,7 @@ WorkspaceReimburseView.propTypes = propTypes; WorkspaceReimburseView.displayName = 'WorkspaceReimburseView'; export default compose( - withFullPolicy, + withPolicy, withLocalize, withNetwork(), withOnyx({ diff --git a/src/pages/workspace/withFullPolicy.js b/src/pages/workspace/withPolicy.js similarity index 88% rename from src/pages/workspace/withFullPolicy.js rename to src/pages/workspace/withPolicy.js index 65a0a0dfc8f8..f209d492f71c 100644 --- a/src/pages/workspace/withFullPolicy.js +++ b/src/pages/workspace/withPolicy.js @@ -35,7 +35,7 @@ function isPreviousRouteInSameWorkspace(routeName, policyID) { ); } -const fullPolicyPropTypes = { +const policyPropTypes = { /** The policy object for the current route */ policy: PropTypes.shape({ /** The ID of the policy */ @@ -81,7 +81,7 @@ const fullPolicyPropTypes = { policyMemberList: PropTypes.objectOf(policyMemberPropType), }; -const fullPolicyDefaultProps = { +const policyDefaultProps = { policy: {}, }; @@ -94,16 +94,16 @@ export default function (WrappedComponent) { * That way, if a ref is passed to a component wrapped in the HOC, the ref is a reference to the wrapped component, not the HOC. */ forwardedRef: PropTypes.func, - ...fullPolicyPropTypes, + ...policyPropTypes, }; const defaultProps = { forwardedRef: () => {}, - ...fullPolicyDefaultProps, + ...policyDefaultProps, }; - const WithFullPolicy = (props) => { + const WithPolicy = (props) => { const currentRoute = _.last(useNavigationState(state => state.routes || [])); const policyID = getPolicyIDFromRoute(currentRoute); const isFromFullPolicy = lodashGet(props, 'policy.isFromFullPolicy', false) || lodashGet(props, `policy.policy_${policyID}.isFromFullPolicy`, false); @@ -127,12 +127,12 @@ export default function (WrappedComponent) { ); }; - WithFullPolicy.propTypes = propTypes; - WithFullPolicy.defaultProps = defaultProps; - WithFullPolicy.displayName = `withFullPolicy(${getComponentDisplayName(WrappedComponent)})`; - const withFullPolicy = React.forwardRef((props, ref) => ( + WithPolicy.propTypes = propTypes; + WithPolicy.defaultProps = defaultProps; + WithPolicy.displayName = `withFullPolicy(${getComponentDisplayName(WrappedComponent)})`; + const withPolicy = React.forwardRef((props, ref) => ( // eslint-disable-next-line react/jsx-props-no-spreading - + )); return withOnyx({ @@ -142,10 +142,10 @@ export default function (WrappedComponent) { policyMemberList: { key: props => `${ONYXKEYS.COLLECTION.POLICY_MEMBER_LIST}${getPolicyIDFromRoute(props.route)}`, }, - })(withFullPolicy); + })(withPolicy); } export { - fullPolicyPropTypes, - fullPolicyDefaultProps, + policyPropTypes, + policyDefaultProps, }; From b7c64c73a60fb21ea561842863e020f9e76eda59 Mon Sep 17 00:00:00 2001 From: Andrew Rosiclair Date: Wed, 7 Sep 2022 12:14:43 +0100 Subject: [PATCH 4/9] remove full policy and route changing checks --- src/pages/workspace/withPolicy.js | 23 +---------------------- 1 file changed, 1 insertion(+), 22 deletions(-) diff --git a/src/pages/workspace/withPolicy.js b/src/pages/workspace/withPolicy.js index f209d492f71c..6d0bbee4d2e4 100644 --- a/src/pages/workspace/withPolicy.js +++ b/src/pages/workspace/withPolicy.js @@ -2,7 +2,6 @@ import _ from 'underscore'; import lodashGet from 'lodash/get'; import React from 'react'; import PropTypes from 'prop-types'; -import Str from 'expensify-common/lib/str'; import {withOnyx} from 'react-native-onyx'; import {useNavigationState} from '@react-navigation/native'; import CONST from '../../CONST'; @@ -11,9 +10,6 @@ import * as Policy from '../../libs/actions/Policy'; import ONYXKEYS from '../../ONYXKEYS'; import policyMemberPropType from '../policyMemberPropType'; -let previousRouteName = ''; -let previousRoutePolicyID = ''; - /** * @param {Object} route * @returns {String} @@ -22,19 +18,6 @@ function getPolicyIDFromRoute(route) { return lodashGet(route, 'params.policyID', ''); } -/** - * @param {String} routeName - * @param {String} policyID - * @returns {Boolean} - */ -function isPreviousRouteInSameWorkspace(routeName, policyID) { - return ( - Str.startsWith(routeName, 'Workspace') - && Str.startsWith(previousRouteName, 'Workspace') - && policyID === previousRoutePolicyID - ); -} - const policyPropTypes = { /** The policy object for the current route */ policy: PropTypes.shape({ @@ -106,15 +89,11 @@ export default function (WrappedComponent) { const WithPolicy = (props) => { const currentRoute = _.last(useNavigationState(state => state.routes || [])); const policyID = getPolicyIDFromRoute(currentRoute); - const isFromFullPolicy = lodashGet(props, 'policy.isFromFullPolicy', false) || lodashGet(props, `policy.policy_${policyID}.isFromFullPolicy`, false); - if (_.isString(policyID) && !_.isEmpty(policyID) && (!isFromFullPolicy || !isPreviousRouteInSameWorkspace(currentRoute.name, policyID))) { + if (_.isString(policyID) && !_.isEmpty(policyID)) { Policy.updateLastAccessedWorkspace(policyID); } - previousRouteName = currentRoute.name; - previousRoutePolicyID = policyID; - const rest = _.omit(props, ['forwardedRef', 'policy', 'policyMemberList']); return ( Date: Wed, 7 Sep 2022 12:25:41 +0100 Subject: [PATCH 5/9] remove unnecessary prop omission --- src/pages/workspace/withPolicy.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/pages/workspace/withPolicy.js b/src/pages/workspace/withPolicy.js index 6d0bbee4d2e4..ca3d0fa2f450 100644 --- a/src/pages/workspace/withPolicy.js +++ b/src/pages/workspace/withPolicy.js @@ -94,14 +94,12 @@ export default function (WrappedComponent) { Policy.updateLastAccessedWorkspace(policyID); } - const rest = _.omit(props, ['forwardedRef', 'policy', 'policyMemberList']); + const rest = _.omit(props, ['forwardedRef']); return ( ); }; From 19774be5d331de51d25585cc200d51b7ba7d9824 Mon Sep 17 00:00:00 2001 From: Andrew Rosiclair Date: Wed, 7 Sep 2022 12:37:07 +0100 Subject: [PATCH 6/9] removed unnecessary use of withPolicy --- src/components/RoomNameInput.js | 4 ---- src/pages/ReportSettingsPage.js | 4 ---- src/pages/workspace/WorkspaceNewRoomPage.js | 5 ----- 3 files changed, 13 deletions(-) diff --git a/src/components/RoomNameInput.js b/src/components/RoomNameInput.js index b0d7373adb94..55e1a2296a7a 100644 --- a/src/components/RoomNameInput.js +++ b/src/components/RoomNameInput.js @@ -5,7 +5,6 @@ import CONST from '../CONST'; import ONYXKEYS from '../ONYXKEYS'; import compose from '../libs/compose'; import withLocalize, {withLocalizePropTypes} from './withLocalize'; -import withPolicy, {policyDefaultProps, policyPropTypes} from '../pages/workspace/withPolicy'; import TextInput from './TextInput'; const propTypes = { @@ -22,7 +21,6 @@ const propTypes = { errorText: PropTypes.string, ...withLocalizePropTypes, - ...policyPropTypes, /* Onyx Props */ @@ -53,7 +51,6 @@ const defaultProps = { initialValue: '', disabled: false, errorText: '', - ...policyDefaultProps, forwardedRef: () => {}, }; @@ -114,7 +111,6 @@ RoomNameInput.defaultProps = defaultProps; export default compose( withLocalize, - withPolicy, withOnyx({ reports: { key: ONYXKEYS.COLLECTION.REPORT, diff --git a/src/pages/ReportSettingsPage.js b/src/pages/ReportSettingsPage.js index f2dd49bb8679..ad9fdcaeaf98 100644 --- a/src/pages/ReportSettingsPage.js +++ b/src/pages/ReportSettingsPage.js @@ -18,7 +18,6 @@ import Text from '../components/Text'; import Button from '../components/Button'; import RoomNameInput from '../components/RoomNameInput'; import Picker from '../components/Picker'; -import withPolicy, {policyDefaultProps, policyPropTypes} from './workspace/withPolicy'; import * as ValidationUtils from '../libs/ValidationUtils'; import OfflineWithFeedback from '../components/OfflineWithFeedback'; @@ -31,7 +30,6 @@ const propTypes = { }), }).isRequired, - ...policyPropTypes, ...withLocalizePropTypes, /* Onyx Props */ @@ -80,7 +78,6 @@ const propTypes = { }; const defaultProps = { - ...policyDefaultProps, report: { reportID: 0, reportName: '', @@ -292,7 +289,6 @@ ReportSettingsPage.displayName = 'ReportSettingsPage'; export default compose( withLocalize, - withPolicy, withOnyx({ report: { key: ({route}) => `${ONYXKEYS.COLLECTION.REPORT}${route.params.reportID}`, diff --git a/src/pages/workspace/WorkspaceNewRoomPage.js b/src/pages/workspace/WorkspaceNewRoomPage.js index a1595890e00f..6a1c3b9c0436 100644 --- a/src/pages/workspace/WorkspaceNewRoomPage.js +++ b/src/pages/workspace/WorkspaceNewRoomPage.js @@ -3,7 +3,6 @@ import {ScrollView, View} from 'react-native'; import _ from 'underscore'; import {withOnyx} from 'react-native-onyx'; import PropTypes from 'prop-types'; -import withPolicy, {policyDefaultProps, policyPropTypes} from './withPolicy'; import * as Report from '../../libs/actions/Report'; import withLocalize, {withLocalizePropTypes} from '../../components/withLocalize'; import compose from '../../libs/compose'; @@ -38,14 +37,11 @@ const propTypes = { /** Are we loading the createPolicyRoom command */ isLoadingCreatePolicyRoom: PropTypes.bool, - ...policyPropTypes, - ...withLocalizePropTypes, }; const defaultProps = { betas: [], isLoadingCreatePolicyRoom: false, - ...policyDefaultProps, }; class WorkspaceNewRoomPage extends React.Component { @@ -203,7 +199,6 @@ WorkspaceNewRoomPage.propTypes = propTypes; WorkspaceNewRoomPage.defaultProps = defaultProps; export default compose( - withPolicy, withOnyx({ betas: { key: ONYXKEYS.BETAS, From 75f977fa174028342d7844cc15126d2d5f9c70db Mon Sep 17 00:00:00 2001 From: Andrew Rosiclair Date: Wed, 7 Sep 2022 16:07:14 +0100 Subject: [PATCH 7/9] added betas prop type --- src/pages/workspace/WorkspaceNewRoomPage.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pages/workspace/WorkspaceNewRoomPage.js b/src/pages/workspace/WorkspaceNewRoomPage.js index 6a1c3b9c0436..440362bb91eb 100644 --- a/src/pages/workspace/WorkspaceNewRoomPage.js +++ b/src/pages/workspace/WorkspaceNewRoomPage.js @@ -34,6 +34,9 @@ const propTypes = { policyID: PropTypes.string, }).isRequired, + /** List of betas available to current user */ + betas: PropTypes.arrayOf(PropTypes.string), + /** Are we loading the createPolicyRoom command */ isLoadingCreatePolicyRoom: PropTypes.bool, From 238085306366885763b7a89b169d747eb7be8210 Mon Sep 17 00:00:00 2001 From: Andrew Rosiclair Date: Wed, 7 Sep 2022 16:08:24 +0100 Subject: [PATCH 8/9] remove unnecessary default props --- src/pages/ReportSettingsPage.js | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/pages/ReportSettingsPage.js b/src/pages/ReportSettingsPage.js index ad9fdcaeaf98..8e9745fc3821 100644 --- a/src/pages/ReportSettingsPage.js +++ b/src/pages/ReportSettingsPage.js @@ -77,16 +77,6 @@ const propTypes = { }).isRequired, }; -const defaultProps = { - report: { - reportID: 0, - reportName: '', - policyID: '', - notificationPreference: '', - visibility: '', - }, -}; - class ReportSettingsPage extends Component { constructor(props) { super(props); @@ -284,7 +274,6 @@ class ReportSettingsPage extends Component { } ReportSettingsPage.propTypes = propTypes; -ReportSettingsPage.defaultProps = defaultProps; ReportSettingsPage.displayName = 'ReportSettingsPage'; export default compose( From 9a4040bfd046523c8f40e01689236ca805885487 Mon Sep 17 00:00:00 2001 From: Andrew Rosiclair Date: Wed, 7 Sep 2022 17:08:51 +0100 Subject: [PATCH 9/9] fix bad merge --- src/pages/ReportSettingsPage.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/pages/ReportSettingsPage.js b/src/pages/ReportSettingsPage.js index 8e9745fc3821..0fe5d285fb92 100644 --- a/src/pages/ReportSettingsPage.js +++ b/src/pages/ReportSettingsPage.js @@ -274,7 +274,6 @@ class ReportSettingsPage extends Component { } ReportSettingsPage.propTypes = propTypes; -ReportSettingsPage.displayName = 'ReportSettingsPage'; export default compose( withLocalize,