update adv upload
This commit is contained in:
parent
bd239cf71b
commit
cd88d5aed9
1 changed files with 48 additions and 13 deletions
|
|
@ -43,18 +43,21 @@
|
||||||
|
|
||||||
// Each country can target a different SFTP host (configured on the backend
|
// Each country can target a different SFTP host (configured on the backend
|
||||||
// via ADV_SFTP_COUNTRY_CONFIG). The selected country is sent with the upload.
|
// via ADV_SFTP_COUNTRY_CONFIG). The selected country is sent with the upload.
|
||||||
|
// NOTE: only Thailand is enabled for now — other countries need their SFTP
|
||||||
|
// config (host/password/remote_dir) set on the backend before being added.
|
||||||
|
// To enable a country later, uncomment it here AND add it to ADV_SFTP_COUNTRY_CONFIG.
|
||||||
const COUNTRIES = [
|
const COUNTRIES = [
|
||||||
{ value: 'tha', label: 'Thailand (tha)' },
|
{ value: 'tha', label: 'Thailand (tha)' }
|
||||||
{ value: 'mys', label: 'Malaysia (mys)' },
|
// { value: 'mys', label: 'Malaysia (mys)' },
|
||||||
{ value: 'aus', label: 'Australia (aus)' },
|
// { value: 'aus', label: 'Australia (aus)' },
|
||||||
{ value: 'sgp', label: 'Singapore (sgp)' },
|
// { value: 'sgp', label: 'Singapore (sgp)' },
|
||||||
{ value: 'hkg', label: 'Hong Kong (hkg)' },
|
// { value: 'hkg', label: 'Hong Kong (hkg)' },
|
||||||
{ value: 'gbr', label: 'United Kingdom (gbr)' },
|
// { value: 'gbr', label: 'United Kingdom (gbr)' },
|
||||||
{ value: 'uae_dubai', label: 'UAE Dubai (uae_dubai)' },
|
// { value: 'uae_dubai', label: 'UAE Dubai (uae_dubai)' },
|
||||||
{ value: 'ltu', label: 'Lithuania (ltu)' },
|
// { value: 'ltu', label: 'Lithuania (ltu)' },
|
||||||
{ value: 'rou', label: 'Romania (rou)' },
|
// { value: 'rou', label: 'Romania (rou)' },
|
||||||
{ value: 'lva', label: 'Latvia (lva)' },
|
// { value: 'lva', label: 'Latvia (lva)' },
|
||||||
{ value: 'est', label: 'Estonia (est)' }
|
// { value: 'est', label: 'Estonia (est)' }
|
||||||
];
|
];
|
||||||
|
|
||||||
let selectedCountry = $state('tha');
|
let selectedCountry = $state('tha');
|
||||||
|
|
@ -91,6 +94,26 @@
|
||||||
let isAdbConnected = $derived(Boolean(AdbInstance.instance));
|
let isAdbConnected = $derived(Boolean(AdbInstance.instance));
|
||||||
let pushingToMachine = $state(false);
|
let pushingToMachine = $state(false);
|
||||||
let pushProgress = $state({ current: 0, total: 0, name: '', percent: 0 });
|
let pushProgress = $state({ current: 0, total: 0, name: '', percent: 0 });
|
||||||
|
let connecting = $state(false);
|
||||||
|
|
||||||
|
async function connectMachine() {
|
||||||
|
if (AdbInstance.instance) {
|
||||||
|
addNotification('INFO:Machine already connected');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
connecting = true;
|
||||||
|
try {
|
||||||
|
await adb.connnectViaWebUSB(false);
|
||||||
|
addNotification(
|
||||||
|
AdbInstance.instance ? 'INFO:Machine connected' : 'WARN:No machine selected'
|
||||||
|
);
|
||||||
|
} catch (error) {
|
||||||
|
console.error('[Adv] connect error:', error);
|
||||||
|
addNotification(`ERR:Connect failed: ${error instanceof Error ? error.message : 'unknown'}`);
|
||||||
|
} finally {
|
||||||
|
connecting = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
let generatingManifest = $state(false);
|
let generatingManifest = $state(false);
|
||||||
|
|
||||||
|
|
@ -372,8 +395,8 @@
|
||||||
|
|
||||||
uploading = false;
|
uploading = false;
|
||||||
|
|
||||||
const successCount = files.filter((f) => f.status === 'success').length;
|
const successCount = pendingFiles.filter((f) => f.status === 'success').length;
|
||||||
const errorCount = files.filter((f) => f.status === 'error').length;
|
const errorCount = pendingFiles.filter((f) => f.status === 'error').length;
|
||||||
|
|
||||||
if (errorCount === 0) {
|
if (errorCount === 0) {
|
||||||
addNotification(`INFO:Uploaded ${successCount} adv video(s) successfully`);
|
addNotification(`INFO:Uploaded ${successCount} adv video(s) successfully`);
|
||||||
|
|
@ -572,6 +595,18 @@
|
||||||
{isAdbConnected ? 'Machine connected' : 'Machine offline'}
|
{isAdbConnected ? 'Machine connected' : 'Machine offline'}
|
||||||
</Badge>
|
</Badge>
|
||||||
|
|
||||||
|
{#if !isAdbConnected}
|
||||||
|
<Button variant="outline" onclick={connectMachine} disabled={connecting}>
|
||||||
|
{#if connecting}
|
||||||
|
<Spinner class="mr-2 h-4 w-4" />
|
||||||
|
Connecting...
|
||||||
|
{:else}
|
||||||
|
<MonitorPlay class="mr-2 h-4 w-4" />
|
||||||
|
Connect Machine
|
||||||
|
{/if}
|
||||||
|
</Button>
|
||||||
|
{/if}
|
||||||
|
|
||||||
{#if files.length > 0}
|
{#if files.length > 0}
|
||||||
<Button
|
<Button
|
||||||
variant="outline"
|
variant="outline"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue