mirror of
https://github.com/Sevichecc/Urara-Blog.git
synced 2025-05-03 19:19:30 +08:00
33 lines
858 B
Text
33 lines
858 B
Text
/**
|
|
* @typedef URL
|
|
* @property {string} hash
|
|
* @property {string} host
|
|
* @property {string} hostname
|
|
* @property {string} href
|
|
* @property {string} origin
|
|
* @property {string} password
|
|
* @property {string} pathname
|
|
* @property {string} port
|
|
* @property {string} protocol
|
|
* @property {string} search
|
|
* @property {any} searchParams
|
|
* @property {string} username
|
|
* @property {() => string} toString
|
|
* @property {() => string} toJSON
|
|
*/
|
|
|
|
/**
|
|
* @param {unknown} fileURLOrPath
|
|
* @returns {fileURLOrPath is URL}
|
|
*/
|
|
// From: <https://github.com/nodejs/node/blob/fcf8ba4/lib/internal/url.js#L1501>
|
|
export function isUrl(fileURLOrPath) {
|
|
return (
|
|
fileURLOrPath !== null &&
|
|
typeof fileURLOrPath === 'object' &&
|
|
// @ts-expect-error: indexable.
|
|
fileURLOrPath.href &&
|
|
// @ts-expect-error: indexable.
|
|
fileURLOrPath.origin
|
|
)
|
|
}
|