shop-wx/scripts/window-path-loader.js

30 lines
922 B
JavaScript
Raw Normal View History

// fix: https://github.com/unibest-tech/unibest/issues/219
// Windows path loader for Node.js ESM
// This loader converts Windows absolute paths to file:// URLs
import { pathToFileURL } from 'node:url'
/**
* Resolve hook for ESM loader
* Converts Windows absolute paths to file:// URLs
*/
export function resolve(specifier, context, defaultResolve) {
// Check if this is a Windows absolute path (starts with drive letter like C:)
if (specifier.match(/^[a-z]:\\/i) || specifier.match(/^[a-z]:\//i)) {
// Convert Windows path to file:// URL
const fileUrl = pathToFileURL(specifier).href
return defaultResolve(fileUrl, context, defaultResolve)
}
// For all other specifiers, use the default resolve
return defaultResolve(specifier, context, defaultResolve)
}
/**
* Load hook for ESM loader
*/
export function load(url, context, defaultLoad) {
return defaultLoad(url, context, defaultLoad)
}