2026-03-24 13:50:44 -07:00
|
|
|
<template>
|
|
|
|
|
<!-- Main Content -->
|
|
|
|
|
<div class="container mt-4 upload-container">
|
|
|
|
|
<h2 class="mb-4">Upload Pool Data</h2>
|
|
|
|
|
|
|
|
|
|
<div class="card mb-4">
|
2026-04-15 17:27:22 +00:00
|
|
|
<TableUploadRequirements />
|
2026-03-24 13:50:44 -07:00
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="card">
|
|
|
|
|
<div class="card-header bg-light">
|
|
|
|
|
<h5 class="mb-0">Upload Data</h5>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="card-body">
|
2026-03-27 08:39:38 -07:00
|
|
|
<CSVUpload
|
2026-03-27 14:06:50 -07:00
|
|
|
upload-url="/api/upload/pool/flyover"
|
2026-03-27 08:39:38 -07:00
|
|
|
@doError="onError"
|
|
|
|
|
@doFileSelected="onFileSelected"
|
2026-03-27 14:06:50 -07:00
|
|
|
@doSuccess="onUploadSuccess"
|
|
|
|
|
/>
|
2026-03-24 13:50:44 -07:00
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="text-muted text-center mt-4">
|
|
|
|
|
<small
|
|
|
|
|
>Need assistance? Contact
|
|
|
|
|
<a href="mailto:support@example.com">support@example.com</a></small
|
|
|
|
|
>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
2026-03-27 08:39:38 -07:00
|
|
|
<script setup lang="ts">
|
|
|
|
|
import CSVUpload from "@/components/CSVUpload.vue";
|
2026-04-15 17:27:22 +00:00
|
|
|
import TableUploadRequirements from "@/components/TableUploadRequirements.vue";
|
2026-03-27 11:33:21 -07:00
|
|
|
import { router } from "@/router";
|
2026-03-27 08:39:38 -07:00
|
|
|
|
2026-03-31 14:52:53 +00:00
|
|
|
function onError(err: Error) {
|
2026-03-27 08:39:38 -07:00
|
|
|
console.error("CSV upload error", err);
|
|
|
|
|
}
|
2026-03-31 14:52:53 +00:00
|
|
|
function onFileSelected(file: File) {
|
2026-03-27 08:39:38 -07:00
|
|
|
console.log("file selected", file);
|
|
|
|
|
}
|
2026-03-31 14:52:53 +00:00
|
|
|
function onUploadSuccess(data: any) {
|
2026-03-27 11:33:21 -07:00
|
|
|
console.log("upload success", data);
|
|
|
|
|
router.push("/_" + data.uri);
|
2026-03-27 08:39:38 -07:00
|
|
|
}
|
|
|
|
|
</script>
|