Updated stores
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
<script lang="ts">
|
||||
import { availableSheets, selectedSheet, currentStep } from '$lib/stores';
|
||||
import { selectedSheet, currentStep } from '$lib/stores';
|
||||
import type { SheetInfoType } from '$lib/stores';
|
||||
import { searchSheets } from '$lib/google';
|
||||
import { onMount } from 'svelte';
|
||||
import Navigator from './subcomponents/Navigator.svelte';
|
||||
@@ -25,19 +26,11 @@
|
||||
|
||||
try {
|
||||
searchResults = await searchSheets(searchQuery);
|
||||
availableSheets.set(
|
||||
searchResults.map((sheet) => ({
|
||||
spreadsheetId: sheet.spreadsheetId || sheet.id,
|
||||
name: sheet.name,
|
||||
url: sheet.webViewLink
|
||||
}))
|
||||
);
|
||||
hasSearched = true;
|
||||
} catch (err) {
|
||||
console.error('Error searching sheets:', err);
|
||||
error = 'Failed to search sheets. Please check your connection and try again.';
|
||||
searchResults = [];
|
||||
availableSheets.set([]);
|
||||
} finally {
|
||||
isLoading = false;
|
||||
}
|
||||
@@ -57,11 +50,24 @@
|
||||
}
|
||||
}
|
||||
|
||||
function saveRecentSheet(sheet) {
|
||||
// Remove duplicates
|
||||
recentSheets = recentSheets.filter(s => s.id !== sheet.id);
|
||||
recentSheets.unshift(sheet);
|
||||
|
||||
// Limit to 5 recent sheets
|
||||
if (recentSheets.length > 5) {
|
||||
recentSheets.pop();
|
||||
}
|
||||
|
||||
localStorage.setItem(RECENT_SHEETS_KEY, JSON.stringify(recentSheets));
|
||||
}
|
||||
|
||||
function handleSelectSheet(sheet) {
|
||||
const sheetData = {
|
||||
spreadsheetId: sheet.spreadsheetId || sheet.id,
|
||||
const sheetData: SheetInfoType = {
|
||||
id: sheet.id,
|
||||
name: sheet.name,
|
||||
url: sheet.webViewLink || sheet.url
|
||||
webViewLink: sheet.webViewLink
|
||||
};
|
||||
selectedSheet.set(sheetData);
|
||||
}
|
||||
@@ -264,5 +270,6 @@
|
||||
textBack="Back to Auth"
|
||||
textForwardDisabled="Select a sheet"
|
||||
textForwardEnabled="Continue"
|
||||
onForward={() => saveRecentSheet($selectedSheet)}
|
||||
/>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user