This commit is contained in:
2026-03-12 17:13:13 +08:00
parent 97af24ab2b
commit 914ca64c10
6 changed files with 293 additions and 200 deletions

View File

@@ -106,11 +106,26 @@ function registerGetDomains(): void {
/**
* Create a new domain
* Deduplication: Check if domain+username already exists
*/
function registerCreateDomain(): void {
handleWithParams<CreateDomainParams, Domain>(
"createDomain",
async (params) => {
// Check for duplicate domain+username
const existingDomains = await listDomains();
const duplicate = existingDomains.find(
(d) =>
d.domain.toLowerCase() === params.domain.toLowerCase() &&
d.username.toLowerCase() === params.username.toLowerCase()
);
if (duplicate) {
throw new Error(
`Domain "${params.domain}" with user "${params.username}" already exists. Please edit the existing domain instead.`
);
}
const now = new Date().toISOString();
const domain: Domain = {
id: uuidv4(),