重构duckduckgo邮箱获取
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
getCloudflareTempEmailAddressFromResponse,
|
||||
getCloudflareTempEmailConfig,
|
||||
getCustomEmailPoolEmail,
|
||||
getRegistrationEmailBaseline,
|
||||
getState,
|
||||
ensureMail2925AccountForFlow,
|
||||
joinCloudflareTempEmailUrl,
|
||||
@@ -59,7 +60,7 @@
|
||||
const localPart = String(options.localPart || '').trim().toLowerCase() || generateCloudflareAliasLocalPart();
|
||||
const aliasEmail = `${localPart}@${domain}`;
|
||||
|
||||
await setEmailState(aliasEmail);
|
||||
await setEmailState(aliasEmail, { source: 'generated:cloudflare' });
|
||||
await addLog(`Cloudflare 邮箱:已生成 ${aliasEmail}`, 'ok');
|
||||
return aliasEmail;
|
||||
}
|
||||
@@ -161,7 +162,7 @@
|
||||
throw new Error('Cloudflare Temp Email 未返回可用邮箱地址。');
|
||||
}
|
||||
|
||||
await setEmailState(address);
|
||||
await setEmailState(address, { source: 'generated:cloudflare-temp-email' });
|
||||
await addLog(`Cloudflare Temp Email:已生成 ${address}`, 'ok');
|
||||
return address;
|
||||
}
|
||||
@@ -174,7 +175,7 @@
|
||||
throwIfStopped();
|
||||
const {
|
||||
generateNew = true,
|
||||
previousEmail = '',
|
||||
baselineEmail = '',
|
||||
} = options;
|
||||
|
||||
await addLog(`Duck 邮箱:正在打开自动填充设置(${generateNew ? '生成新地址' : '复用当前地址'})...`);
|
||||
@@ -185,7 +186,7 @@
|
||||
source: 'background',
|
||||
payload: {
|
||||
generateNew,
|
||||
previousEmail: normalizeEmailForComparison(previousEmail),
|
||||
baselineEmail: normalizeEmailForComparison(baselineEmail),
|
||||
},
|
||||
});
|
||||
|
||||
@@ -196,7 +197,7 @@
|
||||
throw new Error('未返回 Duck 邮箱地址。');
|
||||
}
|
||||
|
||||
await setEmailState(result.email);
|
||||
await setEmailState(result.email, { source: 'generated:duck' });
|
||||
await addLog(`Duck 邮箱:${result.generated ? '已生成' : '已读取'} ${result.email}`, 'ok');
|
||||
return result.email;
|
||||
}
|
||||
@@ -214,7 +215,7 @@
|
||||
);
|
||||
}
|
||||
|
||||
await setEmailState(email);
|
||||
await setEmailState(email, { source: 'generated:custom-pool' });
|
||||
await addLog(`自定义邮箱池:已取用 ${email}`, 'ok');
|
||||
return email;
|
||||
}
|
||||
@@ -253,7 +254,7 @@
|
||||
}
|
||||
|
||||
const email = buildGeneratedAliasEmail(mergedState);
|
||||
await setEmailState(email);
|
||||
await setEmailState(email, { source: `generated:${provider || 'alias'}` });
|
||||
await addLog(`${provider === 'gmail' ? 'Gmail +tag' : '2925'}:已生成 ${email}`, 'ok');
|
||||
return email;
|
||||
}
|
||||
@@ -311,11 +312,20 @@
|
||||
if (generator === CLOUDFLARE_TEMP_EMAIL_GENERATOR) {
|
||||
return fetchCloudflareTempEmailAddress(mergedState, options);
|
||||
}
|
||||
const resolvedDuckBaselineEmail = typeof getRegistrationEmailBaseline === 'function'
|
||||
? getRegistrationEmailBaseline(mergedState, {
|
||||
preferredEmail: options.currentEmail,
|
||||
fallbackEmail: options.baselineEmail,
|
||||
})
|
||||
: String(
|
||||
options.currentEmail
|
||||
|| options.baselineEmail
|
||||
|| mergedState.email
|
||||
|| ''
|
||||
).trim();
|
||||
return fetchDuckEmail({
|
||||
...options,
|
||||
previousEmail: options.previousEmail !== undefined
|
||||
? options.previousEmail
|
||||
: mergedState.email,
|
||||
baselineEmail: resolvedDuckBaselineEmail,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user