-
Notifications
You must be signed in to change notification settings - Fork 360
Open
Description
I have a project where I have a main-export and multiple other exports. The other exports are extensions that depend on the main-export, but I don't want them to be in the main-export to keep it as small as possible.
Users should be able to do:
import {Thing} from 'package';
// optional addition
import {OtherThing} from 'package/a';(or similarly using multiple script-tags with the umd-builds)
As for the source-files, it's roughly like this:
// index.ts
export * from './main';
// main.ts
export class Thing {}
// a.ts
import {Thing} from './main';
export class OtherThing extends Thing {}And the package.json contains these sub-exports:
"exports": {
".": {
"import": "./dist/index.modern.js",
"require": "./dist/index.js",
"umd": "./dist/index.umd.js",
"browser": "./dist/index.module.js"
},
"./a": {
"import": "./dist/a.modern.js",
"require": "./dist/a.js",
"umd": "./dist/a.umd.js",
"browser": "./dist/a.module.js"
},
}
With this, the output-files for './a' (all formats) have the entire definition of './main.ts' inlined.
So my question is, is there a way to configure microbundle to treat those other files as externals?
Metadata
Metadata
Assignees
Labels
No labels