94 lines
2.7 KiB
JavaScript
94 lines
2.7 KiB
JavaScript
import { computed } from 'vue';
|
|
import { a as useConfigStore } from './server.mjs';
|
|
|
|
computed(() => {
|
|
return {
|
|
pattern: /^[A-Za-z]*$/,
|
|
message: "\u0641\u0642\u0637 \u062D\u0631\u0648\u0641 \u0627\u0646\u06AF\u0644\u06CC\u0633\u06CC \u0645\u062C\u0627\u0632 \u0627\u0633\u062A"
|
|
};
|
|
});
|
|
function inputRules(title) {
|
|
const configStore = useConfigStore();
|
|
if (title) {
|
|
return [{ required: true, message: `${configStore.useString("requiredTitle", title)}` }];
|
|
} else {
|
|
return [{ required: true, message: `${configStore.useString("required")}` }];
|
|
}
|
|
}
|
|
function inputRulesNoMessage() {
|
|
return [{ required: true, message: "" }];
|
|
}
|
|
const justNumberRequired = (value) => {
|
|
return {
|
|
required: true,
|
|
validator: isNumber,
|
|
trigger: "change"
|
|
};
|
|
};
|
|
const justNumberNoMessage = (value) => {
|
|
return {
|
|
required: false,
|
|
validator: isNumberNoMessageNoRequired,
|
|
trigger: "change"
|
|
};
|
|
};
|
|
const justNumberRequiredNoMessage = (value) => {
|
|
return {
|
|
required: true,
|
|
validator: isNumberNoMessage,
|
|
trigger: "change"
|
|
};
|
|
};
|
|
async function isNumber(_rule, value) {
|
|
const configStore = useConfigStore();
|
|
let temp = parseInt(value);
|
|
if (!value) {
|
|
return Promise.reject(`${configStore.useString("required")}`);
|
|
}
|
|
if (!Number.isInteger(temp)) {
|
|
return Promise.reject(`${configStore.useString("isNumber")}`);
|
|
}
|
|
return Promise.resolve();
|
|
}
|
|
async function isNumberNoMessage(_rule, value) {
|
|
let temp = parseInt(value);
|
|
if (!value) {
|
|
return Promise.reject();
|
|
}
|
|
if (!Number.isInteger(temp)) {
|
|
return Promise.reject();
|
|
}
|
|
return Promise.resolve();
|
|
}
|
|
async function isNumberNoMessageNoRequired(_rule, value) {
|
|
let temp = parseInt(value);
|
|
if (!Number.isInteger(temp)) {
|
|
return Promise.reject();
|
|
}
|
|
return Promise.resolve();
|
|
}
|
|
const justNumberRequiredMaxMin = (price) => {
|
|
const configStore = useConfigStore();
|
|
return {
|
|
required: true,
|
|
validator: (_rule, value) => {
|
|
let temp = Number(value);
|
|
if (!value) {
|
|
return Promise.reject(`${configStore.useString("required")}`);
|
|
}
|
|
if (!Number.isFinite(temp)) {
|
|
return Promise.reject(`${configStore.useString("isNumber")}`);
|
|
}
|
|
if (0 < price && price < temp && price != -1)
|
|
return Promise.reject(`${configStore.useString("discountAmountIsGreater")}`);
|
|
if ((temp < 0 || temp > 100) && price == -1)
|
|
return Promise.reject(`${configStore.useString("outSideRange")}`);
|
|
return Promise.resolve();
|
|
},
|
|
trigger: "change"
|
|
};
|
|
};
|
|
|
|
export { inputRules as a, justNumberRequiredNoMessage as b, justNumberRequired as c, justNumberRequiredMaxMin as d, inputRulesNoMessage as i, justNumberNoMessage as j };
|
|
//# sourceMappingURL=inputRules-BErREp_b.mjs.map
|