2023-04-09 20:58:27 +02:00
|
|
|
import type { Ref } from 'vue';
|
2023-05-28 23:13:24 +02:00
|
|
|
import { useValidation } from '@/composable/validation';
|
2023-04-09 20:58:27 +02:00
|
|
|
|
2023-05-15 00:41:45 +02:00
|
|
|
const macAddressValidationRules = [
|
|
|
|
{
|
|
|
|
message: 'Invalid MAC address',
|
|
|
|
validator: (value: string) => value.trim().match(/^([0-9A-Fa-f]{2}[:-]){2,5}([0-9A-Fa-f]{2})$/),
|
|
|
|
},
|
|
|
|
];
|
|
|
|
|
2023-04-09 20:58:27 +02:00
|
|
|
function macAddressValidation(value: Ref) {
|
|
|
|
return useValidation({
|
|
|
|
source: value,
|
2023-05-15 00:41:45 +02:00
|
|
|
rules: macAddressValidationRules,
|
2023-04-09 20:58:27 +02:00
|
|
|
});
|
|
|
|
}
|
|
|
|
|
2023-10-31 13:34:24 +02:00
|
|
|
const partialMacAddressValidationRules = [
|
|
|
|
{
|
|
|
|
message: 'Invalid partial MAC address',
|
|
|
|
validator: (value: string) => value.trim().match(/^([0-9a-f]{2}[:\-. ]){0,5}([0-9a-f]{0,2})$/i),
|
|
|
|
},
|
|
|
|
];
|
|
|
|
|
|
|
|
function usePartialMacAddressValidation(value: Ref) {
|
|
|
|
return useValidation({
|
|
|
|
source: value,
|
|
|
|
rules: partialMacAddressValidationRules,
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
export { macAddressValidation, macAddressValidationRules, usePartialMacAddressValidation, partialMacAddressValidationRules };
|