fix: Render valid urls only in custom attributes (#3921)

This commit is contained in:
Muhsin Keloth
2022-02-07 13:04:27 +05:30
committed by GitHub
parent 047070ad87
commit 9f37a6e2ba
5 changed files with 23 additions and 21 deletions

View File

@@ -1,5 +1,5 @@
import { mapGetters } from 'vuex';
import { isValidURL } from '../helper/URLHelper';
export default {
computed: {
...mapGetters({
@@ -63,16 +63,11 @@ export default {
Number.isInteger(Number(attributeValue)) && Number(attributeValue) > 0
);
},
isAttributeLink(attributeValue) {
/* eslint-disable no-useless-escape */
const URL_REGEX = /^https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)$/gm;
return URL_REGEX.test(attributeValue);
},
attributeDisplayType(attributeValue) {
if (this.isAttributeNumber(attributeValue)) {
return 'number';
}
if (this.isAttributeLink(attributeValue)) {
if (isValidURL(attributeValue)) {
return 'link';
}
return 'text';