IO-1110 Added Used space to media browser

This commit is contained in:
Patrick Fic
2021-06-09 13:58:34 -07:00
parent 9f6bb5e71e
commit cd55b8b093
7 changed files with 75 additions and 5 deletions

View File

@@ -2,19 +2,19 @@
"expo": { "expo": {
"name": "ImEX Mobile", "name": "ImEX Mobile",
"slug": "imexmobile", "slug": "imexmobile",
"version": "1.2.1", "version": "1.2.2",
"extra": { "expover": "2" }, "extra": { "expover": "1" },
"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.2.1", "buildNumber": "1.2.2",
"googleServicesFile": "./GoogleService-Info.plist" "googleServicesFile": "./GoogleService-Info.plist"
}, },
"android": { "android": {
"package": "com.imex.imexmobile", "package": "com.imex.imexmobile",
"versionCode": 1020100, "versionCode": 1020200,
"googleServicesFile": "./google-services.json" "googleServicesFile": "./google-services.json"
}, },
"splash": { "splash": {

View File

@@ -1,4 +1,4 @@
<babeledit_project be_version="2.7.1" version="1.2"> <babeledit_project version="1.2" be_version="2.7.1">
<!-- <!--
BabelEdit project file BabelEdit project file
@@ -1446,6 +1446,27 @@
</translation> </translation>
</translations> </translations>
</concept_node> </concept_node>
<concept_node>
<name>storageused</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>temporarystorage</name> <name>temporarystorage</name>
<definition_loaded>false</definition_loaded> <definition_loaded>false</definition_loaded>

View File

@@ -0,0 +1,44 @@
import { useQuery } from "@apollo/client";
import React from "react";
import { ProgressBar } from "react-native-paper";
import { connect } from "react-redux";
import { createStructuredSelector } from "reselect";
import { GET_DOC_SIZE_TOTALS } from "../../graphql/documents.queries";
import { selectBodyshop } from "../../redux/user/user.selectors";
import { View, Text } from "react-native";
import { useTranslation } from "react-i18next";
import { formatBytes } from "../../util/document-upload.utility";
const mapStateToProps = createStructuredSelector({
bodyshop: selectBodyshop,
});
const mapDispatchToProps = (dispatch) => ({
//setUserLanguage: language => dispatch(setUserLanguage(language))
});
export default connect(mapStateToProps, mapDispatchToProps)(JobSpaceAvailable);
export function JobSpaceAvailable({ bodyshop, style, jobid }) {
const { t } = useTranslation();
const { data } = useQuery(GET_DOC_SIZE_TOTALS, {
variables: { jobId: jobid },
skip: !jobid,
});
if (!jobid || !data) return <></>;
const progress =
data.documents_aggregate.aggregate.sum.size /
((bodyshop && bodyshop.jobsizelimit) || 1);
return (
<View style={{ margin: 10 }}>
<Text style={{ marginBottom: 5 }}>
{t("mediabrowser.labels.storageused", {
used: formatBytes(data.documents_aggregate.aggregate.sum.size),
total: formatBytes((bodyshop && bodyshop.jobsizelimit) || 1),
percent: Math.round(progress * 100),
})}
</Text>
<ProgressBar style={[style]} progress={progress} />
</View>
);
}

View File

@@ -8,6 +8,7 @@ import { createStructuredSelector } from "reselect";
import { logImEXEvent } from "../../firebase/firebase.analytics"; import { logImEXEvent } from "../../firebase/firebase.analytics";
import { selectCurrentCameraJobId } from "../../redux/app/app.selectors"; import { selectCurrentCameraJobId } from "../../redux/app/app.selectors";
import CameraSelectJob from "../camera-select-job/camera-select-job.component"; import CameraSelectJob from "../camera-select-job/camera-select-job.component";
import JobSpaceAvailable from "../job-space-available/job-space-available.component";
import UploadDeleteSwitch from "../upload-delete-switch/upload-delete-switch.component"; import UploadDeleteSwitch from "../upload-delete-switch/upload-delete-switch.component";
import UploadProgress from "../upload-progress/upload-progress.component"; import UploadProgress from "../upload-progress/upload-progress.component";
@@ -31,6 +32,7 @@ export function ImageBrowserScreen({ selectedCameraJobId }) {
return ( return (
<View style={[styles.flex, styles.container]}> <View style={[styles.flex, styles.container]}>
<CameraSelectJob /> <CameraSelectJob />
<JobSpaceAvailable jobid={selectedCameraJobId} key={`${tick}-space`} />
<UploadDeleteSwitch /> <UploadDeleteSwitch />
{!selectedCameraJobId && ( {!selectedCameraJobId && (
<View <View

View File

@@ -96,6 +96,7 @@
"selectjobassetselector": "Please select a job to upload media. ", "selectjobassetselector": "Please select a job to upload media. ",
"storageexceeded": "Unable to uploaded selected files because there is not sufficient space available on this job.", "storageexceeded": "Unable to uploaded selected files because there is not sufficient space available on this job.",
"storageexceeded_title": "Unable to upload file(s)", "storageexceeded_title": "Unable to upload file(s)",
"storageused": "Storage Used: {{used}} / {{total}} ({{percent}}%)",
"temporarystorage": "* Temporary Storage *", "temporarystorage": "* Temporary Storage *",
"uploading": "Uploading" "uploading": "Uploading"
}, },

View File

@@ -96,6 +96,7 @@
"selectjobassetselector": "", "selectjobassetselector": "",
"storageexceeded": "", "storageexceeded": "",
"storageexceeded_title": "", "storageexceeded_title": "",
"storageused": "",
"temporarystorage": "", "temporarystorage": "",
"uploading": "" "uploading": ""
}, },

View File

@@ -96,6 +96,7 @@
"selectjobassetselector": "", "selectjobassetselector": "",
"storageexceeded": "", "storageexceeded": "",
"storageexceeded_title": "", "storageexceeded_title": "",
"storageused": "",
"temporarystorage": "", "temporarystorage": "",
"uploading": "" "uploading": ""
}, },