From 8a05002a53fb975d6981dd7cb207ee4d331d57a4 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Thu, 23 Mar 2023 11:09:54 -0400 Subject: [PATCH] disallow directories being created in place of files and vice versa --- src/routes/tutorial/[slug]/filetree/Filetree.svelte | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/routes/tutorial/[slug]/filetree/Filetree.svelte b/src/routes/tutorial/[slug]/filetree/Filetree.svelte index 989a23b27..87773164c 100644 --- a/src/routes/tutorial/[slug]/filetree/Filetree.svelte +++ b/src/routes/tutorial/[slug]/filetree/Filetree.svelte @@ -29,7 +29,14 @@ collapsed, add: async (name, type) => { - if (!$solution[name] && !exercise.editing_constraints.create.has(name)) { + const expected = $solution[name]; + + if (type !== expected.type) { + modal_text = `${name.slice(exercise.scope.prefix.length)} should be a ${expected.type}, not a ${type}!`; + return; + } + + if (!expected && !exercise.editing_constraints.create.has(name)) { modal_text = 'Only the following files and folders are allowed to be created in this exercise:\n' + Array.from(exercise.editing_constraints.create).join('\n');