in hugegraph-hubble/hubble-fe/src/stores/GraphManagementStore/metadataConfigsStore/edgeTypeStore.ts [416:552]
validateNewEdgeType(category: EdgeTypeValidateFields, initial = false) {
let isReady = true;
if (category === 'name') {
if (!/^[\w\u4e00-\u9fa5]{1,128}$/.test(this.newEdgeType.name)) {
if (this.newEdgeType.name.length === 0) {
!initial &&
(this.validateNewEdgeTypeErrorMessage.name = i18next.t(
'addition.store.item-is-required'
));
isReady = false;
} else {
!initial &&
(this.validateNewEdgeTypeErrorMessage.name = i18next.t(
'addition.store.rule4'
));
isReady = false;
}
} else {
this.validateNewEdgeTypeErrorMessage.name = '';
}
}
if (category === 'sourceLabel') {
if (this.newEdgeType.source_label === '') {
!initial &&
(this.validateNewEdgeTypeErrorMessage.properties = i18next.t(
'addition.store.item-is-required'
));
isReady = false;
}
}
if (category === 'targetLabel') {
if (this.newEdgeType.target_label === '') {
!initial &&
(this.validateNewEdgeTypeErrorMessage.properties = i18next.t(
'addition.store.item-is-required'
));
isReady = false;
}
}
if (category === 'properties') {
if (
this.newEdgeType.properties.length === 0 &&
this.newEdgeType.link_multi_times
) {
!initial &&
(this.validateNewEdgeTypeErrorMessage.properties = i18next.t(
'addition.store.item-is-required'
));
isReady = false;
}
}
if (category === 'sortKeys') {
if (
this.newEdgeType.link_multi_times &&
this.newEdgeType.sort_keys.length === 0
) {
!initial &&
(this.validateNewEdgeTypeErrorMessage.sortKeys = i18next.t(
'addition.store.item-is-required'
));
isReady = false;
}
}
if (category === 'displayFeilds') {
if (this.newEdgeType.style.display_fields.length === 0) {
!initial &&
(this.validateNewEdgeTypeErrorMessage.displayFeilds = i18next.t(
'addition.store.item-is-required'
));
isReady = false;
}
}
if (category === 'propertyIndexes') {
this.isAddNewPropertyIndexReady = true;
this.validateNewEdgeTypeErrorMessage.propertyIndexes = this.newEdgeType.property_indexes.map(
({ name, type, fields }) => {
const validatedPropertyIndex = {
name: '',
type: '',
properties: ''
};
if (!/^[\w\u4e00-\u9fa5]{1,128}$/.test(name)) {
if (!initial) {
if (name.length !== 0) {
validatedPropertyIndex.name = i18next.t('addition.store.rule4');
} else {
validatedPropertyIndex.name = i18next.t(
'addition.store.item-is-required'
);
}
}
isReady = false;
this.isAddNewPropertyIndexReady = false;
} else {
validatedPropertyIndex.name = '';
}
if (type.length === 0) {
!initial &&
(validatedPropertyIndex.type = i18next.t(
'addition.store.item-is-required'
));
isReady = false;
this.isAddNewPropertyIndexReady = false;
} else {
validatedPropertyIndex.type = '';
}
if (Array.isArray(fields)) {
if (fields.length === 0) {
!initial &&
(validatedPropertyIndex.properties = i18next.t(
'addition.store.item-is-required'
));
isReady = false;
this.isAddNewPropertyIndexReady = false;
}
} else {
validatedPropertyIndex.properties = '';
}
return validatedPropertyIndex;
}
);
}
return isReady;
}