Require unique names for profiles

739d0c95c3b1b2d6565a58aff06ba378b3fc5428

Cohee <18619528+Cohee1207@users.noreply.github.com>

1 files changed, +7 -2Showing whitespace changes
public/scripts/extensions/connection-manager/index.js+7 -2
@@ -147,14 +147,19 @@ async function createConnectionProfile(forceName = null) {
147147
148148 const profileForDisplay = makeFancyProfile(profile);
149149 const template = await renderExtensionTemplateAsync(MODULE_NAME, 'profile', { profile: profileForDisplay });
150150 const checkNameisNameTaken = (n) => extension_settings.connectionManager.profiles.some(p => p.name === n);
151151 const suggestedName = getUniqueName(collapseSpaces(`${profile.api ?? ''} ${profile.model ?? ''} - ${profile.preset ?? ''}`), checkNameisNameTaken);
152152 const name = forceName ?? await callGenericPopup(template, POPUP_TYPE.INPUT, suggestedName, { rows: 2 });
153153
154154 if (!name) {
155155 return null;
156156 }
157157
158+ if (isNameTaken(name)) {
159+ toastr.error('A profile with the same name already exists.');
160+ return null;
161+ }
162+
158163 profile.name = name;
159164 return profile;
160165}