upload project source code

This commit is contained in:
2026-04-30 18:49:43 +08:00
commit 9b394ba682
2277 changed files with 660945 additions and 0 deletions

View File

@@ -0,0 +1,271 @@
import { x as ElFormItem, y as ElInput, i as ElIcon, l as ElTooltip, h as ElButton, w as ElForm, r as ElText, t as ElLink } from "./element-plus.CkEW9frc.js";
import { J as defineComponent, e9 as useI18n, ev as useModel, aO as resolveComponent, S as openBlock, _ as createElementBlock, a1 as createBaseVNode, aa as toDisplayString, o as unref, $ as createVNode, a0 as withCtx, a_ as withKeys, a9 as createTextVNode, r as ref, j as computed } from "./.pnpm.BW3P1y8f.js";
import { U as UserAPI } from "./index.CMd5bD1r.js";
import "./codemirror.CvJAcn2d.js";
const _hoisted_1 = {
"text-center": "",
"m-0": "",
"mb-20px": ""
};
const _hoisted_2 = {
"flex-center": "",
"gap-10px": ""
};
const _sfc_main = /* @__PURE__ */ defineComponent({
__name: "ResetPwd",
props: {
"modelValue": {},
"modelModifiers": {},
"presetUsername": {},
"presetUsernameModifiers": {},
"presetPassword": {},
"presetPasswordModifiers": {}
},
emits: ["update:modelValue", "update:presetUsername", "update:presetPassword"],
setup(__props) {
const loading = ref(false);
const isCapsLock = ref(false);
const { t } = useI18n();
const modelValue = useModel(__props, "modelValue");
const presetUsername = useModel(__props, "presetUsername");
const presetPassword = useModel(__props, "presetPassword");
const toLogin = () => {
modelValue.value = "login";
};
const model = ref({
username: "",
new_password: "",
confirmPassword: ""
});
const rules = computed(() => {
return {
username: [
{
required: true,
trigger: "blur",
message: t("login.message.username.required")
}
],
new_password: [
{
required: true,
trigger: "blur",
message: t("login.message.password.required")
},
{
min: 6,
message: t("login.message.password.min"),
trigger: "blur"
}
],
confirmPassword: [
{
required: true,
trigger: "blur",
message: t("login.message.password.required")
},
{
min: 6,
message: t("login.message.password.min"),
trigger: "blur"
},
{
validator: (_, value) => {
return value === model.value.new_password;
},
trigger: "blur",
message: t("login.message.password.inconformity")
}
],
mobile: [
{
required: true,
trigger: "blur",
message: t("login.message.captchaCode.required")
}
]
};
});
const formRef = ref();
const submit = async () => {
var _a;
try {
const valid = await ((_a = formRef.value) == null ? void 0 : _a.validate());
if (!valid) return;
loading.value = true;
await UserAPI.forgetPassword(model.value);
presetUsername.value = model.value.username;
presetPassword.value = model.value.new_password;
toLogin();
} catch (error) {
console.error(error);
} finally {
loading.value = false;
}
};
function checkCapsLock(event) {
if (event instanceof KeyboardEvent) {
isCapsLock.value = event.getModifierState("CapsLock");
}
}
return (_ctx, _cache) => {
const _component_User = resolveComponent("User");
const _component_el_icon = ElIcon;
const _component_el_input = ElInput;
const _component_el_form_item = ElFormItem;
const _component_Lock = resolveComponent("Lock");
const _component_el_tooltip = ElTooltip;
const _component_el_button = ElButton;
const _component_el_form = ElForm;
const _component_el_text = ElText;
const _component_el_link = ElLink;
return openBlock(), createElementBlock("div", null, [
createBaseVNode("h3", _hoisted_1, toDisplayString(unref(t)("login.resetPassword")), 1),
createVNode(_component_el_form, {
ref_key: "formRef",
ref: formRef,
model: unref(model),
rules: unref(rules),
size: "large",
"label-suffix": ":"
}, {
default: withCtx(() => [
createVNode(_component_el_form_item, { prop: "username" }, {
default: withCtx(() => [
createVNode(_component_el_input, {
modelValue: unref(model).username,
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => unref(model).username = $event),
modelModifiers: { trim: true },
placeholder: unref(t)("login.username"),
clearable: ""
}, {
prefix: withCtx(() => [
createVNode(_component_el_icon, null, {
default: withCtx(() => [
createVNode(_component_User)
]),
_: 1
})
]),
_: 1
}, 8, ["modelValue", "placeholder"])
]),
_: 1
}),
createVNode(_component_el_tooltip, {
visible: unref(isCapsLock),
content: unref(t)("login.capsLock"),
placement: "right"
}, {
default: withCtx(() => [
createVNode(_component_el_form_item, { prop: "new_password" }, {
default: withCtx(() => [
createVNode(_component_el_input, {
modelValue: unref(model).new_password,
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => unref(model).new_password = $event),
modelModifiers: { trim: true },
placeholder: unref(t)("login.password"),
type: "password",
"show-password": "",
clearable: "",
onKeyup: [
checkCapsLock,
withKeys(submit, ["enter"])
]
}, {
prefix: withCtx(() => [
createVNode(_component_el_icon, null, {
default: withCtx(() => [
createVNode(_component_Lock)
]),
_: 1
})
]),
_: 1
}, 8, ["modelValue", "placeholder"])
]),
_: 1
})
]),
_: 1
}, 8, ["visible", "content"]),
createVNode(_component_el_tooltip, {
visible: unref(isCapsLock),
content: unref(t)("login.capsLock"),
placement: "right"
}, {
default: withCtx(() => [
createVNode(_component_el_form_item, { prop: "confirmPassword" }, {
default: withCtx(() => [
createVNode(_component_el_input, {
modelValue: unref(model).confirmPassword,
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => unref(model).confirmPassword = $event),
modelModifiers: { trim: true },
placeholder: unref(t)("login.message.password.confirm"),
type: "password",
"show-password": "",
clearable: "",
onKeyup: [
checkCapsLock,
withKeys(submit, ["enter"])
]
}, {
prefix: withCtx(() => [
createVNode(_component_el_icon, null, {
default: withCtx(() => [
createVNode(_component_Lock)
]),
_: 1
})
]),
_: 1
}, 8, ["modelValue", "placeholder"])
]),
_: 1
})
]),
_: 1
}, 8, ["visible", "content"]),
createVNode(_component_el_form_item, null, {
default: withCtx(() => [
createVNode(_component_el_button, {
type: "warning",
class: "w-full",
onClick: submit
}, {
default: withCtx(() => [
createTextVNode(toDisplayString(unref(t)("login.resetPassword")), 1)
]),
_: 1
})
]),
_: 1
})
]),
_: 1
}, 8, ["model", "rules"]),
createBaseVNode("div", _hoisted_2, [
createVNode(_component_el_text, { size: "default" }, {
default: withCtx(() => [
createTextVNode(toDisplayString(unref(t)("login.thinkOfPasswd")), 1)
]),
_: 1
}),
createVNode(_component_el_link, {
type: "primary",
underline: "never",
onClick: toLogin
}, {
default: withCtx(() => [
createTextVNode(toDisplayString(unref(t)("login.login")), 1)
]),
_: 1
})
])
]);
};
}
});
export {
_sfc_main as default
};