From a07d28670d64ddfd76bccee6479c5a5b3d5e831f Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Fri, 4 Aug 2023 15:36:16 -0700 Subject: [PATCH] Timetickets Fixes --- app.json | 6 +- assets/RomeOnlineIcon.png | Bin 0 -> 27645 bytes .../screen-employee-sign-in.component.jsx | 83 ++++++++++-------- .../screen-main/screen-main.component.jsx | 21 ++--- .../screen-settings.component.jsx | 2 +- .../screen-sign-in.component.jsx | 2 +- .../screen-splash/screen-splash.component.jsx | 2 +- .../screen-time-ticket-browser.component.jsx | 48 ++++------ 8 files changed, 77 insertions(+), 87 deletions(-) create mode 100644 assets/RomeOnlineIcon.png diff --git a/app.json b/app.json index b1c689c..855f2f4 100644 --- a/app.json +++ b/app.json @@ -32,7 +32,7 @@ ] }, "splash": { - "image": "./assets/RomeSplash.png", + "image": "./assets/RomeOnlineIcon.png", "backgroundColor": "#efefef" }, "notification": { @@ -42,9 +42,7 @@ "fallbackToCacheTimeout": 0, "url": "https://u.expo.dev/df105e21-a07f-4425-af10-2200a7704a48" }, - "assetBundlePatterns": [ - "**/*" - ], + "assetBundlePatterns": ["**/*"], "web": { "favicon": "./assets/RomeIcon.png", "config": { diff --git a/assets/RomeOnlineIcon.png b/assets/RomeOnlineIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..c48b5e9381aa10661d996b84ad70b8375b3b50ca GIT binary patch literal 27645 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 VLEECd5U{jlk8~eDz-l|h{tvhrAGZJi literal 0 HcmV?d00001 diff --git a/components/screen-employee-sign-in/screen-employee-sign-in.component.jsx b/components/screen-employee-sign-in/screen-employee-sign-in.component.jsx index 4f29785..40efadc 100644 --- a/components/screen-employee-sign-in/screen-employee-sign-in.component.jsx +++ b/components/screen-employee-sign-in/screen-employee-sign-in.component.jsx @@ -18,7 +18,7 @@ import ErrorDisplay from "../error-display/error-display.component"; const mapStateToProps = createStructuredSelector({ currentEmployee: selectCurrentEmployee, signingIn: selectSigningIn, - signingError: selectSignInError, + signinError: selectSignInError, }); const mapDispatchToProps = (dispatch) => ({ @@ -27,7 +27,7 @@ const mapDispatchToProps = (dispatch) => ({ }); export function EmployeeSignIn({ - signingError, + signinError, signingIn, employeeSignInStart, }) { @@ -46,40 +46,45 @@ export function EmployeeSignIn({ onSubmit={formSubmit} > {({ handleChange, handleBlur, handleSubmit, values }) => { -const signingErrorMsg = signingError ? () : null; - return( - - - - {signingErrorMsg} - - - ) -}} + return ( + + + + + {signinError ? ( + + ) : null} + + ); + }} @@ -91,10 +96,12 @@ const localStyles = StyleSheet.create({ display: "flex", flex: 1, }, + item: { + marginTop: 12, + marginBottom: 12, + }, signInContainer: { flex: 1, - }, - input: { margin: 12, }, }); diff --git a/components/screen-main/screen-main.component.jsx b/components/screen-main/screen-main.component.jsx index 8b97379..266a0d6 100644 --- a/components/screen-main/screen-main.component.jsx +++ b/components/screen-main/screen-main.component.jsx @@ -1,18 +1,20 @@ -import React, { useEffect, useRef } from "react"; +import { Ionicons } from "@expo/vector-icons"; +import { createBottomTabNavigator } from "@react-navigation/bottom-tabs"; +import { NavigationContainer } from "@react-navigation/native"; +import { createNativeStackNavigator } from "@react-navigation/native-stack"; import i18n from "i18next"; import moment from "moment"; +import React, { useEffect, useRef } from "react"; import { AppState } from "react-native"; import { Button } from "react-native-paper"; -import { Ionicons } from "@expo/vector-icons"; -import { NavigationContainer } from "@react-navigation/native"; -import { createBottomTabNavigator } from "@react-navigation/bottom-tabs"; -import { createNativeStackNavigator } from "@react-navigation/native-stack"; import { logImEXEvent } from "../../firebase/firebase.analytics"; import { connect } from "react-redux"; import { createStructuredSelector } from "reselect"; import { setCameraJob, setCameraJobId } from "../../redux/app/app.actions"; +import { employeeSignOut } from "../../redux/employee/employee.actions"; +import { selectCurrentEmployee } from "../../redux/employee/employee.selectors"; import { checkUserSession, emailSignInStart, @@ -22,8 +24,6 @@ import { selectBodyshop, selectCurrentUser, } from "../../redux/user/user.selectors"; -import { employeeSignOut } from "../../redux/employee/employee.actions"; -import { selectCurrentEmployee } from "../../redux/employee/employee.selectors"; import ScreenJobDetail from "../screen-job-detail/screen-job-detail.component"; import ScreenJobList from "../screen-job-list/screen-job-list.component"; @@ -32,12 +32,11 @@ import ScreenSettingsComponent from "../screen-settings/screen-settings.componen import ScreenSignIn from "../screen-sign-in/screen-sign-in.component"; import ScreenSplash from "../screen-splash/screen-splash.component"; +import SignOutButton from "../Buttons/employee-sign-out-button.component"; import EmployeeSignIn from "../screen-employee-sign-in/screen-employee-sign-in.component"; import ScreenTimeTicketBrowser from "../screen-time-ticket-browser/screen-time-ticket-browser.component"; -import SignOutButton from "../Buttons/employee-sign-out-button.component"; -import AddTimeTicketButton from "../Buttons/create-time-ticket-button.component"; -import ScreenTimeTicketCreate from "../time-ticket/screen-time-ticket-create.component"; import ScreenTimeTicketClockoffComponent from "../time-ticket/screen-time-ticket-clockoff.component"; +import ScreenTimeTicketCreate from "../time-ticket/screen-time-ticket-create.component"; const ActiveJobStack = createNativeStackNavigator(); const MoreStack = createNativeStackNavigator(); @@ -160,6 +159,8 @@ const TimeTicketBrowserStackNavigator = connect( name="TimeTicketBrowser" options={{ title: i18n.t("timeticketbrowser.titles.timeticketbrowsertab"), + // eslint-disable-next-line react/display-name + headerRight: () => , }} component={ScreenTimeTicketBrowser} /> diff --git a/components/screen-settings/screen-settings.component.jsx b/components/screen-settings/screen-settings.component.jsx index 8696345..07bafd6 100644 --- a/components/screen-settings/screen-settings.component.jsx +++ b/components/screen-settings/screen-settings.component.jsx @@ -21,7 +21,7 @@ export default function ScreenSettingsComponent() { > {t("settings.labels.version", { - number: `${Constants.manifest.version}-${Constants.manifest.extra.expover}`, + number: `${Constants.expoConfig.version}-${Constants.expoConfig.extra.expover}`, })} diff --git a/components/screen-sign-in/screen-sign-in.component.jsx b/components/screen-sign-in/screen-sign-in.component.jsx index f2ca1b2..c0ee82d 100644 --- a/components/screen-sign-in/screen-sign-in.component.jsx +++ b/components/screen-sign-in/screen-sign-in.component.jsx @@ -5,7 +5,7 @@ import { Image, StyleSheet, Text, View } from "react-native"; import { Button, TextInput, Title } from "react-native-paper"; import { connect } from "react-redux"; import { createStructuredSelector } from "reselect"; -import Logo from "../../assets/logo192.png"; +import Logo from "../../assets/RomeOnlineIcon.png"; import { emailSignInStart } from "../../redux/user/user.actions"; import { selectCurrentUser, diff --git a/components/screen-splash/screen-splash.component.jsx b/components/screen-splash/screen-splash.component.jsx index 0f138d0..67a5981 100644 --- a/components/screen-splash/screen-splash.component.jsx +++ b/components/screen-splash/screen-splash.component.jsx @@ -2,7 +2,7 @@ import React from "react"; import { useTranslation } from "react-i18next"; import { ActivityIndicator, Image, StyleSheet, View } from "react-native"; import { Title, Subheading, Divider } from "react-native-paper"; -import Logo from "../../assets/logo192.png"; +import Logo from "../../assets/RomeOnlineIcon.png"; import SignOutButton from "../sign-out-button/sign-out-button.component"; export default function ScreenSplash({ noAccess }) { diff --git a/components/screen-time-ticket-browser/screen-time-ticket-browser.component.jsx b/components/screen-time-ticket-browser/screen-time-ticket-browser.component.jsx index b3ba682..dafa6f2 100644 --- a/components/screen-time-ticket-browser/screen-time-ticket-browser.component.jsx +++ b/components/screen-time-ticket-browser/screen-time-ticket-browser.component.jsx @@ -1,18 +1,10 @@ -import React, { useCallback, useState, useRef } from "react"; import moment from "moment"; -import { - View, - Text, - StyleSheet, - ScrollView, - RefreshControl, - FlatList, -} from "react-native"; +import React, { useCallback, useState } from "react"; +import { FlatList, RefreshControl, StyleSheet, Text, View } from "react-native"; import { ActivityIndicator, Button, Card, - Headline, Subheading, } from "react-native-paper"; import styles from "../styles"; @@ -24,37 +16,37 @@ import { createStructuredSelector } from "reselect"; import { employeeGetRatesStart } from "../../redux/employee/employee.actions"; import { selectCurrentEmployee, - selectRates, - selectGettingRates, - selectSignInError, selectEmployeeFullName, + selectGettingRates, + selectRates, + selectSignInError, } from "../../redux/employee/employee.selectors"; import { selectBodyshop } from "../../redux/user/user.selectors"; -import CostCenterSelect from "../Selects/select-cost-center"; -import ErrorDisplay from "../error-display/error-display.component"; +import { useMutation, useQuery } from "@apollo/client"; +import { + INSERT_NEW_TIME_TICKET, + QUERY_ACTIVE_TIME_TICKETS, +} from "../../graphql/timetickets.queries"; import { selectCurrentTimeTicketJob, selectCurrentTimeTicketJobId, } from "../../redux/timetickets/timetickets.selectors"; -import { INSERT_NEW_TIME_TICKET } from "../../graphql/timetickets.queries"; -import { useMutation, useQuery } from "@apollo/client"; -import { QUERY_ACTIVE_TIME_TICKETS } from "../../graphql/timetickets.queries"; +import CostCenterSelect from "../Selects/select-cost-center"; +import ErrorDisplay from "../error-display/error-display.component"; // import EmployeeClockedInList from "../time-ticket-lists/employee-clockedin-list.component"; import { useTranslation } from "react-i18next"; import ClockedinListItem from "../time-ticket-items/clockedin-list-item.component"; -import SignOutButton from "../Buttons/employee-sign-out-button.component"; -import AddTimeTicketButton from "../Buttons/create-time-ticket-button.component"; -import KeyboardAvoidingComponent from "../keyboards/KeyboardAvoidingComponent"; -import JobSearchAndSelectModal from "../Modals/JobSearchAndSelectModal"; import { useNavigation } from "@react-navigation/native"; +import JobSearchAndSelectModal from "../Modals/JobSearchAndSelectModal"; +import KeyboardAvoidingComponent from "../keyboards/KeyboardAvoidingComponent"; const mapStateToProps = createStructuredSelector({ currentEmployee: selectCurrentEmployee, loaderGettingRates: selectGettingRates, - signingError: selectSignInError, + signinError: selectSignInError, currentBodyshop: selectBodyshop, currentRatesNCostCenters: selectRates, currentSelectedTimeTicketJobId: selectCurrentTimeTicketJobId, @@ -68,14 +60,9 @@ const mapDispatchToProps = (dispatch) => ({ }); export function ScreenTimeTicketBrowser({ - loaderGettingRates, currentEmployee, - employeeGetRatesStart, - signingError, currentBodyshop, currentRatesNCostCenters, - currentSelectedTimeTicketJob, - currentSelectedTimeTicketJobId, currentEmployeeFullName, }) { const { t } = useTranslation(); @@ -198,7 +185,6 @@ export function ScreenTimeTicketBrowser({ } /> {currentEmployeeFullName && ( @@ -226,9 +212,7 @@ export function ScreenTimeTicketBrowser({ icon="plus" style={{ margin: 8 }} > - - {t("timeticketbrowser.actions.ticket")} - + {t("timeticketbrowser.actions.ticket")} {/*