From b3dc597c7b33e7fc858e82b1605f1fe1137ec775 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Burzy=C5=84ski?= Date: Tue, 22 Aug 2023 18:21:49 +0200 Subject: [PATCH] Distribute completely separate files for the `worker` condition (#386) --- .changeset/gentle-carrots-smoke.md | 5 +++++ package.json | 22 +++++++++++----------- src/getSizingData.ts | 2 +- src/index.tsx | 4 ++-- src/resolved-conditions/browser.ts | 1 + src/resolved-conditions/development.ts | 1 + src/resolved-conditions/false.ts | 1 - src/resolved-conditions/node.ts | 1 + src/resolved-conditions/production.ts | 1 + src/resolved-conditions/true.ts | 1 - src/resolved-conditions/worker.ts | 1 + 11 files changed, 24 insertions(+), 16 deletions(-) create mode 100644 .changeset/gentle-carrots-smoke.md create mode 100644 src/resolved-conditions/browser.ts create mode 100644 src/resolved-conditions/development.ts delete mode 100644 src/resolved-conditions/false.ts create mode 100644 src/resolved-conditions/node.ts create mode 100644 src/resolved-conditions/production.ts delete mode 100644 src/resolved-conditions/true.ts create mode 100644 src/resolved-conditions/worker.ts diff --git a/.changeset/gentle-carrots-smoke.md b/.changeset/gentle-carrots-smoke.md new file mode 100644 index 00000000..3168aca2 --- /dev/null +++ b/.changeset/gentle-carrots-smoke.md @@ -0,0 +1,5 @@ +--- +'react-textarea-autosize': patch +--- + +Distribute completely separate files for the `worker` condition to avoid bundlers from aliasing files targeting node to the ones targeting browsers through the `package.json#browser` alias field. diff --git a/package.json b/package.json index a1a95e91..13a47f7a 100644 --- a/package.json +++ b/package.json @@ -27,9 +27,9 @@ }, "development": { "worker": { - "module": "./dist/react-textarea-autosize.development.esm.js", - "import": "./dist/react-textarea-autosize.development.cjs.mjs", - "default": "./dist/react-textarea-autosize.development.cjs.js" + "module": "./dist/react-textarea-autosize.development.worker.esm.js", + "import": "./dist/react-textarea-autosize.development.worker.cjs.mjs", + "default": "./dist/react-textarea-autosize.development.worker.cjs.js" }, "browser": { "module": "./dist/react-textarea-autosize.browser.development.esm.js", @@ -41,9 +41,9 @@ "default": "./dist/react-textarea-autosize.development.cjs.js" }, "worker": { - "module": "./dist/react-textarea-autosize.esm.js", - "import": "./dist/react-textarea-autosize.cjs.mjs", - "default": "./dist/react-textarea-autosize.cjs.js" + "module": "./dist/react-textarea-autosize.worker.esm.js", + "import": "./dist/react-textarea-autosize.worker.cjs.mjs", + "default": "./dist/react-textarea-autosize.worker.cjs.js" }, "browser": { "module": "./dist/react-textarea-autosize.browser.esm.js", @@ -58,13 +58,13 @@ }, "imports": { "#is-browser": { - "worker": "./src/resolved-conditions/false.ts", - "browser": "./src/resolved-conditions/true.ts", - "default": "./src/resolved-conditions/false.ts" + "worker": "./src/resolved-conditions/worker.ts", + "browser": "./src/resolved-conditions/browser.ts", + "default": "./src/resolved-conditions/node.ts" }, "#is-development": { - "development": "./src/resolved-conditions/true.ts", - "default": "./src/resolved-conditions/false.ts" + "development": "./src/resolved-conditions/development.ts", + "default": "./src/resolved-conditions/production.ts" } }, "sideEffects": false, diff --git a/src/getSizingData.ts b/src/getSizingData.ts index f42454e9..36c59bb6 100644 --- a/src/getSizingData.ts +++ b/src/getSizingData.ts @@ -1,4 +1,4 @@ -import isBrowser from '#is-browser'; +import { isBrowser } from '#is-browser'; import { pick } from './utils'; const SIZING_STYLE = [ diff --git a/src/index.tsx b/src/index.tsx index fc70296c..7ebd1080 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -1,6 +1,6 @@ import * as React from 'react'; -import isDevelopment from '#is-development'; -import isBrowser from '#is-browser'; +import { isDevelopment } from '#is-development'; +import { isBrowser } from '#is-browser'; import calculateNodeHeight from './calculateNodeHeight'; import getSizingData, { SizingData } from './getSizingData'; import { diff --git a/src/resolved-conditions/browser.ts b/src/resolved-conditions/browser.ts new file mode 100644 index 00000000..67615cda --- /dev/null +++ b/src/resolved-conditions/browser.ts @@ -0,0 +1 @@ +export const isBrowser = true; diff --git a/src/resolved-conditions/development.ts b/src/resolved-conditions/development.ts new file mode 100644 index 00000000..c063c3ad --- /dev/null +++ b/src/resolved-conditions/development.ts @@ -0,0 +1 @@ +export const isDevelopment = true; diff --git a/src/resolved-conditions/false.ts b/src/resolved-conditions/false.ts deleted file mode 100644 index 33136544..00000000 --- a/src/resolved-conditions/false.ts +++ /dev/null @@ -1 +0,0 @@ -export default false; diff --git a/src/resolved-conditions/node.ts b/src/resolved-conditions/node.ts new file mode 100644 index 00000000..31abeeff --- /dev/null +++ b/src/resolved-conditions/node.ts @@ -0,0 +1 @@ +export const isBrowser = false; diff --git a/src/resolved-conditions/production.ts b/src/resolved-conditions/production.ts new file mode 100644 index 00000000..06dd9e3d --- /dev/null +++ b/src/resolved-conditions/production.ts @@ -0,0 +1 @@ +export const isDevelopment = false; diff --git a/src/resolved-conditions/true.ts b/src/resolved-conditions/true.ts deleted file mode 100644 index ff3177ba..00000000 --- a/src/resolved-conditions/true.ts +++ /dev/null @@ -1 +0,0 @@ -export default true; diff --git a/src/resolved-conditions/worker.ts b/src/resolved-conditions/worker.ts new file mode 100644 index 00000000..31abeeff --- /dev/null +++ b/src/resolved-conditions/worker.ts @@ -0,0 +1 @@ +export const isBrowser = false;