@setoelkahfi / svara / commits / c7d6ea7

file names are pain

mellbacon committed Aug 10, 2022 at 21:00 UTC c7d6ea71cf5a95c8b1832aed4d91b12128e9660d
1 file changed +12 -3
src/components/Modal/RenameModel.svelte
+12 -3
@@ -12,6 +12,8 @@
12 : "-";
13
14 let invalid = false;
15 + let invalidtext = "";
16 +
17 function getExt() {
18 extinput = filenameinput.split(".")[1];
19 if (extinput === undefined || extinput === "") {
@@ -34,11 +36,11 @@
36 </div>
37 <div class="input">
38 <Input
37 - invalid={invalid}
39 + {invalid}
40 bind:value={filenameinput}
41 labelText="Name:"
42 placeholder="Enter name..."
41 - invalidText="Enter a name for your file"
43 + invalidText={invalidtext}
44 on:input={() => {
45 invalid = false;
46 getExt();
@@ -57,8 +59,15 @@
59 <div
60 class="button"
61 on:click={async () => {
60 - if (filenameinput === "" || undefined) {
62 + // TODO: process any/all invalid characters (different per OS apparently)
63 + if (filenameinput === "" || filenameinput === "." || filenameinput === "/" || filenameinput === "\\" || undefined) {
64 invalid = true;
65 + if (filenameinput === "." || filenameinput === "/" || filenameinput === "\\") {
66 + invalidtext = `"${filenameinput}"" is not a valid file or directory name`;
67 + }
68 + else {
69 + invalidtext = "Enter a name for your file";
70 + }
71 return;
72 }
73 let oldpath = path;