2020-02-23 04:48:12 -05:00
|
|
|
export const isUrl = (url: string): boolean => (url.startsWith('http://') || url.startsWith('https://'))
|
2020-06-28 03:30:58 -04:00
|
|
|
export const isUrlEncode = (url: string): boolean => {
|
|
|
|
url = url || ''
|
|
|
|
try {
|
|
|
|
return url !== decodeURI(url)
|
|
|
|
} catch (e) {
|
|
|
|
// if some error caught, try to let it go
|
|
|
|
return true
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export const handleUrlEncode = (url: string): string => {
|
|
|
|
if (!isUrlEncode(url)) {
|
|
|
|
url = encodeURI(url)
|
|
|
|
}
|
|
|
|
return url
|
|
|
|
}
|
2020-12-26 10:39:48 -05:00
|
|
|
|
|
|
|
/**
|
|
|
|
* streamline the full plugin name to a simple one
|
|
|
|
* for example:
|
|
|
|
* 1. picgo-plugin-xxx -> xxx
|
|
|
|
* 2. @xxx/picgo-plugin-yyy -> yyy
|
|
|
|
* @param name pluginFullName
|
|
|
|
*/
|
|
|
|
export const handleStreamlinePluginName = (name: string) => {
|
|
|
|
if (/^@[^/]+\/picgo-plugin-/.test(name)) {
|
|
|
|
return name.replace(/^@[^/]+\/picgo-plugin-/, '')
|
|
|
|
} else {
|
|
|
|
return name.replace(/picgo-plugin-/, '')
|
|
|
|
}
|
|
|
|
}
|