Edwinexd / Edwinexd/sql-validator
Allow open & save to file (window.showOpenFilePicker)
- Vorherrschende Sprache
- TypeScript
- Sterne
- 4
- Forks
- 2
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
There is a webapi in development that could be used to allow users to open/create a save file once and then repeatedly save to the same file without creating a bunch of dumps in the users download folder
https://developer.mozilla.org/en-US/docs/Web/API/Window/showOpenFilePicker#browser_compatibility
Example generated by Chatgpt:
```js
// Open file
async function openFile() {
const [fileHandle] = await window.showOpenFilePicker();
const file = await fileHandle.getFile();
const contents = await file.text();
console.log(contents); // Load file contents
return fileHandle; // Return handle for saving
}
// Save file
async function saveFile(fileHandle, data) {
const writableStream = await fileHandle.createWritable();
await writableStream.write(data); // Write new content
await writableStream.close();
}
```
Edit: might be more readily available then I initially thought https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileHandle
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne mit dem bestehenden Verhalten des Repositorys beim Öffnen, Speichern und Herunterladen von Dateien; im Issue werden keine Quelldateien oder Tests genannt. Prüfe die verlinkte MDN-Dokumentation zu showOpenFilePicker und FileSystemFileHandle und lege anschließend den Browser-Support sowie das erwartete Verhalten beim wiederholten Speichern fest, bevor du mit der Implementierung beginnst. Als erledigt gilt die Aufgabe, wenn das Öffnen oder Erstellen einer Datei und das Speichern nachfolgender Inhalte in dieser Datei ohne wiederholte Downloads möglich ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- typescript
- Bereich
- frontend, web-dev
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100