Skip to content

Commit 5994a0f

Browse files
feat: allow default condition to be anywhere
2 parents e389708 + 1213f32 commit 5994a0f

File tree

3 files changed

+3
-10
lines changed

3 files changed

+3
-10
lines changed

lib/util/entrypoints.js

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -464,17 +464,11 @@ function conditionalMapping(conditionalMapping_, conditionNames) {
464464

465465
loop: while (lookup.length > 0) {
466466
const [mapping, conditions, j] = lookup[lookup.length - 1];
467-
const last = conditions.length - 1;
468467

469468
for (let i = j; i < conditions.length; i++) {
470469
const condition = conditions[i];
471470

472-
// assert default. Could be last only
473-
if (i !== last) {
474-
if (condition === "default") {
475-
throw new Error("Default condition should be last one");
476-
}
477-
} else if (condition === "default") {
471+
if (condition === "default") {
478472
const innerMapping = mapping[condition];
479473
// is nested
480474
if (isConditionalMapping(innerMapping)) {

test/exportsField.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -543,7 +543,7 @@ describe("Process exports field", function exportsField() {
543543
},
544544
{
545545
name: "Direct mapping #7",
546-
expect: new Error(), // Default is first one
546+
expect: ["./src/index.js"], // Default is first one
547547
suite: [
548548
{
549549
".": {

test/importsField.test.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -451,7 +451,7 @@ describe("Process imports field", function exportsField() {
451451
},
452452
{
453453
name: "Direct mapping #7",
454-
expect: new Error(), // Default is first one
454+
expect: ["./src/index.js"], // Default is first one
455455
suite: [
456456
{
457457
"#a": {
@@ -1309,7 +1309,6 @@ describe("ImportsFieldPlugin", () => {
13091309
fs.rmdirSync(dir);
13101310
if (err) return done(err);
13111311
if (!result) return done(new Error("No result"));
1312-
console.log(result);
13131312
expect(result).toEqual(file);
13141313
done();
13151314
});

0 commit comments

Comments
 (0)