diff --git a/src/hooks/usePasteTextClipboardData.ts b/src/hooks/usePasteTextClipboardData.ts index 43011a85..093fd9a5 100644 --- a/src/hooks/usePasteTextClipboardData.ts +++ b/src/hooks/usePasteTextClipboardData.ts @@ -3,7 +3,7 @@ import { useKeyboardStore } from '@/store' import { pasteCustomClipboardString } from '@/utils/clipboard' import { parseText2Paragraphs } from '@/utils/textParser' import { getImageDataURL, isSVGString, svg2File } from '@/utils/image' -import { isValidImgURL, isValidURL } from '@/utils/common' +import { isValidURL } from '@/utils/common' import useCreateElement from '@/hooks/useCreateElement' import useAddSlidesOrElements from '@/hooks/useAddSlidesOrElements' @@ -12,6 +12,16 @@ interface PasteTextClipboardDataOptions { onlyElements?: boolean } +/** + * 判断图片URL字符串 + * + * !!!注意,你需要判断允许哪些来源的图片地址被匹配,然后自行编写正则表达式 + * !!!必须确保图片来源都是合法、可靠、可控、无访问限制的 + */ +const isValidImgURL = (url: string) => { + return /^https:\/\/pptist.cn(\/[\w-./?%&=]*)?\.(jpg|jpeg|png|svg|webp)(\?.*)?$/i.test(url) +} + export default () => { const { shiftKeyState } = storeToRefs(useKeyboardStore()) diff --git a/src/utils/common.ts b/src/utils/common.ts index ff6ac440..0e26f6bb 100644 --- a/src/utils/common.ts +++ b/src/utils/common.ts @@ -21,11 +21,4 @@ export const isPC = () => { */ export const isValidURL = (url: string) => { return /^(https?:\/\/)([\w-]+\.)+[\w-]{2,}(\/[\w-./?%&=]*)?$/i.test(url) -} - -/** - * 判断图片URL字符串 - */ -export const isValidImgURL = (url: string) => { - return /^(https?:\/\/)([\w-]+\.)+[\w-]{2,}(\/[\w-./?%&=]*)?\.(jpg|jpeg|png|svg|webp)(\?.*)?$/i.test(url) } \ No newline at end of file