Minimal, dependency-free replacement for @rollup/plugin-multi-entry.
Rollup does not accept glob patterns as input. This plugin expands the configured glob(s) into
a single virtual entry that re-exports every matched module, so the whole app/ tree is bundled
and Stone can collect the modules with Object.values(import * as ...).
Unlike export *, each file's exports are re-exported under a unique, per-file ALIAS. Two files
exporting the same name (e.g. every i18n bundle exporting common, or two handlers both exporting
routes) therefore never collide into one namespace, so nothing is silently dropped and Rollup
emits no "Conflicting namespaces" warning. The alias keys are unique, so Object.values() on the
bundle namespace still yields exactly one entry per original export.
Glob negation is supported: a !-prefixed pattern (e.g. !app/i18n/**) is used as an ignore.
Minimal, dependency-free replacement for
@rollup/plugin-multi-entry.Rollup does not accept glob patterns as
input. This plugin expands the configured glob(s) into a single virtual entry that re-exports every matched module, so the wholeapp/tree is bundled and Stone can collect the modules withObject.values(import * as ...).Unlike
export *, each file's exports are re-exported under a unique, per-file ALIAS. Two files exporting the same name (e.g. every i18n bundle exportingcommon, or two handlers both exportingroutes) therefore never collide into one namespace, so nothing is silently dropped and Rollup emits no "Conflicting namespaces" warning. The alias keys are unique, soObject.values()on the bundle namespace still yields exactly one entry per original export.Glob negation is supported: a
!-prefixed pattern (e.g.!app/i18n/**) is used as an ignore.