Robin Malfait 5df5daa76c
Add missing main field for @tailwindcss/browser (#15594)
This PR adds a `main` and `browser` field for the `@tailwindcss/browser`
package.

In the package, we do have the `exports` field setup, which is an
alternative to the `main` field according to the docs:

> The "exports" provides a modern alternative to "main" …
>
> —
https://docs.npmjs.com/cli/v10/configuring-npm/package-json?v=true#exports

However, if you look at the unpkg link:
https://unpkg.com/@tailwindcss/browser, it tries to load the `index.js`
file. This is probably a bug in the unpkg resolver.

That said, if you look at other CDNs such as esm.sh, it does resolve
correctly: https://esm.sh/@tailwindcss/browser

According to the npm docs:

> If `main` is not set, it defaults to `index.js` in the package's root
folder.
>
> —
https://docs.npmjs.com/cli/v10/configuring-npm/package-json?v=true#main

This explains why unpkg is trying to load the `index.js` file.


Additionally, the npm docs also mention the `browser` field:

> If your module is meant to be used client-side the browser field
should be used instead of the main field. This is helpful to hint users
that it might rely on primitives that aren't available in Node.js
modules. (e.g. window)
>
> —
https://docs.npmjs.com/cli/v10/configuring-npm/package-json?v=true#browser

So this PR also adds that field just to be sure.
2025-01-10 07:39:00 -05:00

38 lines
946 B
JSON

{
"name": "@tailwindcss/browser",
"version": "4.0.0-beta.9",
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
"license": "MIT",
"main": "./dist/index.mjs",
"browser": "./dist/index.mjs",
"repository": {
"type": "git",
"url": "https://github.com/tailwindlabs/tailwindcss.git",
"directory": "packages/@tailwindcss-browser"
},
"bugs": "https://github.com/tailwindlabs/tailwindcss/issues",
"homepage": "https://tailwindcss.com",
"scripts": {
"lint": "tsc --noEmit",
"build": "tsup-node",
"dev": "pnpm run build -- --watch",
"test:ui": "playwright test"
},
"exports": {
".": "./dist/index.mjs",
"./package.json": "./package.json"
},
"files": [
"dist"
],
"publishConfig": {
"provenance": true,
"access": "public"
},
"devDependencies": {
"h3": "^1.13.0",
"listhen": "^1.9.0",
"tailwindcss": "workspace:*"
}
}