mirror of
https://github.com/CharaChorder/DeviceManager.git
synced 2026-01-07 02:22:52 +00:00
@@ -92,6 +92,7 @@ const config = {
|
|||||||
"stat_2",
|
"stat_2",
|
||||||
"description",
|
"description",
|
||||||
"add_circle",
|
"add_circle",
|
||||||
|
"refresh",
|
||||||
],
|
],
|
||||||
codePoints: {
|
codePoints: {
|
||||||
speed: "e9e4",
|
speed: "e9e4",
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ const de = {
|
|||||||
sync: {
|
sync: {
|
||||||
TITLE_READ: "Neueste Änderungen werden abgerufen",
|
TITLE_READ: "Neueste Änderungen werden abgerufen",
|
||||||
TITLE_WRITE: "Änderungen werden gespeichert",
|
TITLE_WRITE: "Änderungen werden gespeichert",
|
||||||
|
RELOAD: "Neu laden",
|
||||||
},
|
},
|
||||||
backup: {
|
backup: {
|
||||||
TITLE: "Verlauf speichern",
|
TITLE: "Verlauf speichern",
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ const en = {
|
|||||||
sync: {
|
sync: {
|
||||||
TITLE_READ: "Reading latest changes",
|
TITLE_READ: "Reading latest changes",
|
||||||
TITLE_WRITE: "Saving changes to device",
|
TITLE_WRITE: "Saving changes to device",
|
||||||
|
RELOAD: "Reload",
|
||||||
},
|
},
|
||||||
modal: {
|
modal: {
|
||||||
CLOSE: "Close",
|
CLOSE: "Close",
|
||||||
|
|||||||
@@ -55,6 +55,12 @@ export async function initSerial(manual = false) {
|
|||||||
const device = get(serialPort) ?? new CharaDevice()
|
const device = get(serialPort) ?? new CharaDevice()
|
||||||
await device.init(manual)
|
await device.init(manual)
|
||||||
serialPort.set(device)
|
serialPort.set(device)
|
||||||
|
sync()
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function sync() {
|
||||||
|
const device = get(serialPort)
|
||||||
|
if (!device) return
|
||||||
const chordCount = await device.getChordCount()
|
const chordCount = await device.getChordCount()
|
||||||
syncStatus.set("downloading")
|
syncStatus.set("downloading")
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +1,32 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {syncProgress, syncStatus} from "$lib/serial/connection"
|
import {serialPort, syncProgress, syncStatus, sync} from "$lib/serial/connection"
|
||||||
import LL from "../i18n/i18n-svelte"
|
import LL from "../i18n/i18n-svelte"
|
||||||
import {fly} from "svelte/transition"
|
import {slide} from "svelte/transition"
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{#if $syncStatus !== "done"}
|
<div class="container">
|
||||||
<div transition:fly={{y: 40}}>
|
{#if $syncStatus !== "done"}
|
||||||
<progress max={$syncProgress?.max ?? 1} value={$syncProgress?.current ?? 1}></progress>
|
<div transition:slide>
|
||||||
{#if $syncStatus === "downloading"}
|
<progress max={$syncProgress?.max ?? 1} value={$syncProgress?.current ?? 1}></progress>
|
||||||
<div>{$LL.sync.TITLE_READ()}</div>
|
{#if $syncStatus === "downloading"}
|
||||||
{:else}
|
<div>{$LL.sync.TITLE_READ()}</div>
|
||||||
<div>{$LL.sync.TITLE_WRITE()}</div>
|
{:else}
|
||||||
{/if}
|
<div>{$LL.sync.TITLE_WRITE()}</div>
|
||||||
</div>
|
{/if}
|
||||||
{/if}
|
</div>
|
||||||
|
{:else if $serialPort}
|
||||||
|
<button transition:slide on:click={sync}><span class="icon">refresh</span>{$LL.sync.RELOAD()}</button>
|
||||||
|
{/if}
|
||||||
|
</div>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
|
.container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
div {
|
div {
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user