We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 7bbf330 commit eeeb61eCopy full SHA for eeeb61e
src/features/Projects/stores/slices/project.ts
@@ -460,10 +460,19 @@ export const createProjectSlice: StateCreator<
460
},
461
462
generateId(prefix) {
463
- const countWithPrefix = get().getSavedProjects(prefix).length;
464
- const id = `${prefix}-${countWithPrefix + 1}`;
465
-
466
- return id;
+ const keys = get().getSavedProjects(prefix);
+ const nums = keys
+ .map((k) => {
+ const m = k.match(`^${prefix}-(\\d+)$`);
467
+ return m ? parseInt(m[1], 10) : NaN;
468
+ })
469
+ .filter((n) => !Number.isNaN(n));
470
+
471
+ const used = new Set(nums);
472
+ let i = 1;
473
+ while (used.has(i)) i++;
474
475
+ return `${prefix}-${i}`;
476
477
478
generateName(id, prefix, isShared = false) {
0 commit comments