Release 1.0.11 with minor fixes.
This commit is contained in:
10
app.json
10
app.json
@@ -2,23 +2,23 @@
|
|||||||
"expo": {
|
"expo": {
|
||||||
"name": "imexmobile",
|
"name": "imexmobile",
|
||||||
"slug": "imexmobile",
|
"slug": "imexmobile",
|
||||||
"version": "1.0.9",
|
"version": "1.0.12",
|
||||||
"orientation": "default",
|
"orientation": "default",
|
||||||
"icon": "./assets/logo192noa.png",
|
"icon": "./assets/logo192noa.png",
|
||||||
"ios": {
|
"ios": {
|
||||||
"supportsTablet": true,
|
"supportsTablet": true,
|
||||||
"bundleIdentifier": "com.imex.imexmobile",
|
"bundleIdentifier": "com.imex.imexmobile",
|
||||||
"buildNumber": "1.0.9",
|
"buildNumber": "1.0.12",
|
||||||
"googleServicesFile": "./GoogleService-Info.plist"
|
"googleServicesFile": "./GoogleService-Info.plist"
|
||||||
},
|
},
|
||||||
"android": {
|
"android": {
|
||||||
"package": "com.imex.imexmobile",
|
"package": "com.imex.imexmobile",
|
||||||
"versionCode": 9,
|
"versionCode": 12,
|
||||||
"googleServicesFile": "./google-services.json"
|
"googleServicesFile": "./google-services.json"
|
||||||
},
|
},
|
||||||
"splash": {
|
"splash": {
|
||||||
"image": "./assets/logo1024.png",
|
"image": "./assets/Splash.png",
|
||||||
"resizeMode": "contain",
|
|
||||||
"backgroundColor": "#efefef"
|
"backgroundColor": "#efefef"
|
||||||
},
|
},
|
||||||
"notification": {
|
"notification": {
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 48 KiB |
@@ -1012,6 +1012,27 @@
|
|||||||
</translation>
|
</translation>
|
||||||
</translations>
|
</translations>
|
||||||
</concept_node>
|
</concept_node>
|
||||||
|
<concept_node>
|
||||||
|
<name>PAP</name>
|
||||||
|
<definition_loaded>false</definition_loaded>
|
||||||
|
<description></description>
|
||||||
|
<comment></comment>
|
||||||
|
<default_text></default_text>
|
||||||
|
<translations>
|
||||||
|
<translation>
|
||||||
|
<language>en-US</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
<translation>
|
||||||
|
<language>es-MX</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
<translation>
|
||||||
|
<language>fr-CA</language>
|
||||||
|
<approved>false</approved>
|
||||||
|
</translation>
|
||||||
|
</translations>
|
||||||
|
</concept_node>
|
||||||
<concept_node>
|
<concept_node>
|
||||||
<name>PAR</name>
|
<name>PAR</name>
|
||||||
<definition_loaded>false</definition_loaded>
|
<definition_loaded>false</definition_loaded>
|
||||||
|
|||||||
@@ -47,6 +47,8 @@ export default function JobDocumentsComponent({ job, loading, refetch }) {
|
|||||||
style={{
|
style={{
|
||||||
flex: 1,
|
flex: 1,
|
||||||
flexDirection: "column",
|
flexDirection: "column",
|
||||||
|
justifyContent: "center",
|
||||||
|
alignItems: "center",
|
||||||
margin: 5,
|
margin: 5,
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
import Dinero from "dinero.js";
|
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { FlatList, RefreshControl, StyleSheet, Text, View } from "react-native";
|
import { FlatList, RefreshControl, StyleSheet, Text, View } from "react-native";
|
||||||
import { ScrollView } from "react-native-gesture-handler";
|
|
||||||
import { Card, DataTable } from "react-native-paper";
|
import { Card, DataTable } from "react-native-paper";
|
||||||
|
|
||||||
export default function JobLines({ job, loading, refetch }) {
|
export default function JobLines({ job, loading, refetch }) {
|
||||||
@@ -18,66 +16,59 @@ export default function JobLines({ job, loading, refetch }) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ScrollView horizontal>
|
<View style={{ flex: 1 }}>
|
||||||
<View>
|
<DataTable>
|
||||||
<DataTable>
|
<DataTable.Header>
|
||||||
<DataTable.Header>
|
<DataTable.Title style={{ flex: 4 }}>
|
||||||
<DataTable.Title style={{ flex: 4 }}>
|
{t("jobdetail.labels.lines_desc")}
|
||||||
{t("jobdetail.labels.lines_desc")}
|
</DataTable.Title>
|
||||||
</DataTable.Title>
|
<DataTable.Title style={{ flex: 2 }}>
|
||||||
<DataTable.Title style={{ flex: 2 }}>
|
{t("jobdetail.labels.lines_lbr_ty")}
|
||||||
{t("jobdetail.labels.lines_lbr_ty")}
|
</DataTable.Title>
|
||||||
</DataTable.Title>
|
<DataTable.Title style={{ flex: 1 }}>
|
||||||
<DataTable.Title style={{ flex: 1 }}>
|
{t("jobdetail.labels.lines_lb_hrs")}
|
||||||
{t("jobdetail.labels.lines_lb_hrs")}
|
</DataTable.Title>
|
||||||
</DataTable.Title>
|
<DataTable.Title style={{ flex: 2 }}>
|
||||||
<DataTable.Title style={{ flex: 2 }}>
|
{t("jobdetail.labels.lines_part_type")}
|
||||||
{t("jobdetail.labels.lines_part_type")}
|
</DataTable.Title>
|
||||||
</DataTable.Title>
|
<DataTable.Title style={{ flex: 1 }}>
|
||||||
<DataTable.Title style={{ flex: 1 }}>
|
{t("jobdetail.labels.lines_qty")}
|
||||||
{t("jobdetail.labels.lines_qty")}
|
</DataTable.Title>
|
||||||
</DataTable.Title>
|
<DataTable.Title style={{ flex: 1 }}>
|
||||||
<DataTable.Title style={{ flex: 1 }}>
|
{t("jobdetail.labels.lines_price")}
|
||||||
{t("jobdetail.labels.lines_price")}
|
</DataTable.Title>
|
||||||
</DataTable.Title>
|
</DataTable.Header>
|
||||||
</DataTable.Header>
|
</DataTable>
|
||||||
</DataTable>
|
|
||||||
|
|
||||||
<FlatList
|
<FlatList
|
||||||
data={job.joblines}
|
data={job.joblines}
|
||||||
refreshControl={
|
refreshControl={
|
||||||
<RefreshControl refreshing={loading} onRefresh={onRefresh} />
|
<RefreshControl refreshing={loading} onRefresh={onRefresh} />
|
||||||
}
|
}
|
||||||
keyExtractor={(item) => item.id}
|
keyExtractor={(item) => item.id}
|
||||||
renderItem={(object) => (
|
renderItem={(object) => (
|
||||||
<DataTable.Row>
|
<DataTable.Row>
|
||||||
<DataTable.Cell style={{ flex: 4 }}>
|
<DataTable.Cell style={{ flex: 4 }}>
|
||||||
{object.item.line_desc}
|
{object.item.line_desc}
|
||||||
</DataTable.Cell>
|
</DataTable.Cell>
|
||||||
<DataTable.Cell style={{ flex: 2 }}>
|
<DataTable.Cell style={{ flex: 2 }}>
|
||||||
{object.item.mod_lbr_ty &&
|
{object.item.mod_lbr_ty &&
|
||||||
t(`jobdetail.lbr_types.${object.item.mod_lbr_ty}`)}
|
t(`jobdetail.lbr_types.${object.item.mod_lbr_ty}`)}
|
||||||
</DataTable.Cell>
|
</DataTable.Cell>
|
||||||
<DataTable.Cell style={{ flex: 1 }}>
|
<DataTable.Cell style={{ flex: 1 }}>
|
||||||
{object.item.mod_lb_hrs}
|
{object.item.mod_lb_hrs}
|
||||||
</DataTable.Cell>
|
</DataTable.Cell>
|
||||||
<DataTable.Cell style={{ flex: 2 }}>
|
<DataTable.Cell style={{ flex: 2 }}>
|
||||||
{object.item.part_type &&
|
{object.item.part_type &&
|
||||||
t(`jobdetail.part_types.${object.item.part_type}`)}
|
t(`jobdetail.part_types.${object.item.part_type}`)}
|
||||||
</DataTable.Cell>
|
</DataTable.Cell>
|
||||||
<DataTable.Cell style={{ flex: 1 }}>
|
<DataTable.Cell style={{ flex: 1 }}>
|
||||||
{object.item.part_qty}
|
{object.item.part_qty}
|
||||||
</DataTable.Cell>
|
</DataTable.Cell>
|
||||||
<DataTable.Cell style={{ flex: 1 }}>
|
</DataTable.Row>
|
||||||
{Dinero({
|
)}
|
||||||
amount: Math.round((object.item.act_price || 0) * 100),
|
/>
|
||||||
}).toFormat()}
|
</View>
|
||||||
</DataTable.Cell>
|
|
||||||
</DataTable.Row>
|
|
||||||
)}
|
|
||||||
/>
|
|
||||||
</View>
|
|
||||||
</ScrollView>
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -27,8 +27,8 @@ export default function ScreenJobDetail({ route }) {
|
|||||||
const renderTabBar = (props) => (
|
const renderTabBar = (props) => (
|
||||||
<TabBar
|
<TabBar
|
||||||
{...props}
|
{...props}
|
||||||
indicatorStyle={{ backgroundColor: "white" }}
|
indicatorStyle={{ backgroundColor: "#ffffff" }}
|
||||||
style={{ backgroundColor: "dodgerblue" }}
|
// style={{ backgroundColor: "dodgerblue" }}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -72,6 +72,7 @@ export default function ScreenJobDetail({ route }) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<TabView
|
<TabView
|
||||||
|
style={{ flex: 1 }}
|
||||||
navigationState={{ index, routes }}
|
navigationState={{ index, routes }}
|
||||||
renderScene={renderScene}
|
renderScene={renderScene}
|
||||||
onIndexChange={setIndex}
|
onIndexChange={setIndex}
|
||||||
|
|||||||
4
env.js
4
env.js
@@ -10,7 +10,7 @@ const ENV = {
|
|||||||
"https://api.cloudinary.com/v1_1/bodyshop",
|
"https://api.cloudinary.com/v1_1/bodyshop",
|
||||||
REACT_APP_CLOUDINARY_ENDPOINT: "https://res.cloudinary.com/bodyshop",
|
REACT_APP_CLOUDINARY_ENDPOINT: "https://res.cloudinary.com/bodyshop",
|
||||||
REACT_APP_CLOUDINARY_API_KEY: "473322739956866",
|
REACT_APP_CLOUDINARY_API_KEY: "473322739956866",
|
||||||
REACT_APP_CLOUDINARY_THUMB_TRANSFORMATIONS: "h_200,w_200,c_thumb",
|
REACT_APP_CLOUDINARY_THUMB_TRANSFORMATIONS: "c_fill,f_auto,h_250,w_250",
|
||||||
firebase: {
|
firebase: {
|
||||||
apiKey: "AIzaSyDPLT8GiDHDR1R4nI66Qi0BY1aYviDPioc",
|
apiKey: "AIzaSyDPLT8GiDHDR1R4nI66Qi0BY1aYviDPioc",
|
||||||
authDomain: "imex-dev.firebaseapp.com",
|
authDomain: "imex-dev.firebaseapp.com",
|
||||||
@@ -28,7 +28,7 @@ const ENV = {
|
|||||||
"https://api.cloudinary.com/v1_1/bodyshop",
|
"https://api.cloudinary.com/v1_1/bodyshop",
|
||||||
REACT_APP_CLOUDINARY_ENDPOINT: "https://res.cloudinary.com/bodyshop",
|
REACT_APP_CLOUDINARY_ENDPOINT: "https://res.cloudinary.com/bodyshop",
|
||||||
REACT_APP_CLOUDINARY_API_KEY: "473322739956866",
|
REACT_APP_CLOUDINARY_API_KEY: "473322739956866",
|
||||||
REACT_APP_CLOUDINARY_THUMB_TRANSFORMATIONS: "h_200,w_200,c_thumb",
|
REACT_APP_CLOUDINARY_THUMB_TRANSFORMATIONS: "c_fill,f_auto,h_250,w_250",
|
||||||
firebase: {
|
firebase: {
|
||||||
apiKey: "AIzaSyDSezy-jGJreo7ulgpLdlpOwAOrgcaEkhU",
|
apiKey: "AIzaSyDSezy-jGJreo7ulgpLdlpOwAOrgcaEkhU",
|
||||||
authDomain: "imex-prod.firebaseapp.com",
|
authDomain: "imex-prod.firebaseapp.com",
|
||||||
|
|||||||
@@ -51,7 +51,7 @@
|
|||||||
"react-native-progress": "^4.1.2",
|
"react-native-progress": "^4.1.2",
|
||||||
"react-native-reanimated": "~1.13.0",
|
"react-native-reanimated": "~1.13.0",
|
||||||
"react-native-screens": "~2.15.0",
|
"react-native-screens": "~2.15.0",
|
||||||
"react-native-tab-view": "^3.0.0",
|
"react-native-tab-view": "3.0.1",
|
||||||
"react-native-web": "~0.13.12",
|
"react-native-web": "~0.13.12",
|
||||||
"react-redux": "^7.2.2",
|
"react-redux": "^7.2.2",
|
||||||
"redux": "^4.0.5",
|
"redux": "^4.0.5",
|
||||||
|
|||||||
@@ -63,6 +63,7 @@
|
|||||||
"PAM": "Remanufactured",
|
"PAM": "Remanufactured",
|
||||||
"PAN": "New/OEM",
|
"PAN": "New/OEM",
|
||||||
"PAO": "Other",
|
"PAO": "Other",
|
||||||
|
"PAP": "OEM Partial",
|
||||||
"PAR": "Recored",
|
"PAR": "Recored",
|
||||||
"PAS": "Sublet",
|
"PAS": "Sublet",
|
||||||
"PASL": "Sublet"
|
"PASL": "Sublet"
|
||||||
|
|||||||
@@ -63,6 +63,7 @@
|
|||||||
"PAM": "",
|
"PAM": "",
|
||||||
"PAN": "",
|
"PAN": "",
|
||||||
"PAO": "",
|
"PAO": "",
|
||||||
|
"PAP": "",
|
||||||
"PAR": "",
|
"PAR": "",
|
||||||
"PAS": "",
|
"PAS": "",
|
||||||
"PASL": ""
|
"PASL": ""
|
||||||
|
|||||||
@@ -63,6 +63,7 @@
|
|||||||
"PAM": "",
|
"PAM": "",
|
||||||
"PAN": "",
|
"PAN": "",
|
||||||
"PAO": "",
|
"PAO": "",
|
||||||
|
"PAP": "",
|
||||||
"PAR": "",
|
"PAR": "",
|
||||||
"PAS": "",
|
"PAS": "",
|
||||||
"PASL": ""
|
"PASL": ""
|
||||||
|
|||||||
@@ -7399,10 +7399,10 @@ react-native-screens@~2.15.0:
|
|||||||
resolved "https://registry.npmjs.org/react-native-screens/-/react-native-screens-2.15.2.tgz"
|
resolved "https://registry.npmjs.org/react-native-screens/-/react-native-screens-2.15.2.tgz"
|
||||||
integrity sha512-CagNf2APXkVoRlF3Mugr264FbKbrBg9eXUkqhIPVeZB8EsdS8XPrnt99yj/pzmT+yJMBY0dGrjXT8+68WYh6YQ==
|
integrity sha512-CagNf2APXkVoRlF3Mugr264FbKbrBg9eXUkqhIPVeZB8EsdS8XPrnt99yj/pzmT+yJMBY0dGrjXT8+68WYh6YQ==
|
||||||
|
|
||||||
react-native-tab-view@^3.0.0:
|
react-native-tab-view@3.0.1:
|
||||||
version "3.0.0"
|
version "3.0.1"
|
||||||
resolved "https://registry.npmjs.org/react-native-tab-view/-/react-native-tab-view-3.0.0.tgz"
|
resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-3.0.1.tgz#7ed8c5c4a0bb48fa8895e612d26e6d545ed03447"
|
||||||
integrity sha512-uuvLV3KWVXx3ZEESBYALo4w8fuHFUrrg2K2OCtfHv+xOmTWjjRzm+opi0PMXSLOxl7+uMeJvJYEzR13B6pXpkA==
|
integrity sha512-L7qXtYz5Z+NdWyu38zaJrlHA/8H6rNFRZXe3ydym12UEEPPoefbVZ71b9YK2O6QP0u4pUlzMpMVM/Lsz2DJ4jg==
|
||||||
|
|
||||||
react-native-web@~0.13.12:
|
react-native-web@~0.13.12:
|
||||||
version "0.13.18"
|
version "0.13.18"
|
||||||
|
|||||||
Reference in New Issue
Block a user