Skip to content

Commit

Permalink
Merge pull request #1900 from patricklx/vite-ext-es
Browse files Browse the repository at this point in the history
vite: change ext-es format
  • Loading branch information
ef4 committed May 14, 2024
2 parents 9c504b3 + df5eb1f commit efd6c9a
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 6 deletions.
8 changes: 4 additions & 4 deletions packages/core/src/virtual-content.ts
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ export default setComponentTemplate(template, templateOnlyComponent(undefined, "

export function virtualExternalESModule(specifier: string, exports: string[] | undefined): string {
if (exports) {
return externalESPrefix + specifier + `?exports=${exports.join(',')}`;
return externalESPrefix + specifier + `/exports=${exports.join(',')}`;
} else {
return externalESPrefix + specifier;
}
Expand All @@ -142,12 +142,12 @@ export function virtualExternalCJSModule(specifier: string): string {
function decodeVirtualExternalESModule(filename: string): { moduleName: string; exports: string[] } | undefined {
if (filename.startsWith(externalESPrefix)) {
let exports: string[] = [];
let url = new URL(filename.slice(externalESPrefix.length), 'http://example.com');
let nameString = url.searchParams.get('exports');
let components = filename.split('/exports=');
let nameString = components[1];
if (nameString) {
exports = nameString.split(',');
}
let moduleName = url.pathname.slice(1);
let moduleName = components[0].slice(externalESPrefix.length);
return { moduleName, exports };
}
}
Expand Down
4 changes: 2 additions & 2 deletions tests/scenarios/compat-renaming-test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -272,12 +272,12 @@ appScenarios
expectAudit
.module('./components/import-somebody-elses-original.js')
.resolves('somebody-elses-package')
.to(resolve('/@embroider/ext-es/somebody-elses-package?exports=default').split(sep).join('/'));
.to(resolve('/@embroider/ext-es/somebody-elses-package/exports=default').split(sep).join('/'));

expectAudit
.module('./components/import-somebody-elses-original.js')
.resolves('somebody-elses-package/deeper')
.to(resolve('/@embroider/ext-es/somebody-elses-package/deeper?exports=default').split(sep).join('/'));
.to(resolve('/@embroider/ext-es/somebody-elses-package/deeper/exports=default').split(sep).join('/'));
});
test('single file package gets captured and renamed', function () {
expectAudit
Expand Down

0 comments on commit efd6c9a

Please sign in to comment.