03:11
<Jack Works>

From the modules call today:

// mod1
export let a;
export { a as b };

// mod2
export { a as x } from "mod1";

// mod3
export { b as x } from "mod3";

// mod4
export * from "mod2"
export * from "mod3"

If the use case is to detect not-actually-ambiguous ambigous re-exports, then the source of mod1 needs a way to say that a and b internally refer to the same local binding

then what about letting the export name (optionally) be an array? e.g. for code

export let a, b
export { a as c }

it reflected as exports: [ ["a", "c"], "b" ]

07:52
<littledan>
Oh, with the ModuleSource constructor, sure
17:00
<guybedford>
Jack Works: the same unification can be achieved by including localName in future
17:01
<guybedford>
kriskowal: I think if we were to consolidate wildcardExports() that would require a discriminant field at this point for the return value such as { exportType: 'direct' } etc.
17:01
<guybedford>
whereas if we don't consolidate, we can avoid a discriminant even when supporting full bindings information