Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 0 additions & 26 deletions .changeset/precompiled-utilities-and-token-export.md

This file was deleted.

28 changes: 28 additions & 0 deletions packages/react/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,33 @@
# @e412/rnui-react

## 0.3.0

### Patch Changes

- 6108a93: Add a precompiled utility layer and a declared token export.

**Why:** rnui is normally consumed with Tailwind running in the consumer's build, so any class you write compiles on demand. But it is also consumed _precompiled_ — as a single stylesheet embedded in a design tool or preview. In that mode a class Tailwind never emitted silently does nothing: no error, no warning, the element just renders unstyled. Ordinary layout markup (`gap-10`, `grid-cols-4`, `max-w-4xl`, `text-3xl`) hit this constantly.

**`@e412/rnui-themes/utilities`** — a precompiled stylesheet (~353 KB, ~40 KB gzip) covering complete scales rather than only the values rnui's own components happen to use:
- spacing `0`–`24` across `p m gap space-x space-y w h min-w min-h` and every axis/side variant
- `text-xs`–`text-9xl`, `font-thin`–`font-black`, `tracking-*`, `leading-*`
- `grid-cols-1..12`, `col-span-*`, `row-span-*`
- `max-w-xs`–`max-w-7xl`, `rounded-*`, `border-*`, `opacity-0..100`
- `sm: md: lg: xl:` responsive and `hover: focus: active: disabled: dark:` states on the interactive subset

Import it only if you cannot run Tailwind yourself; if you can, keep importing `@e412/rnui-themes` and let your build compile what you use.

**`@e412/rnui-themes/safelist`** — the safelist source, for adding these scales to your own Tailwind build.

**`dist/utilities.json`** — the classes that actually shipped, derived from the compiled output rather than the safelist source, so tooling can tell a consumer "`gap-9` is not in this bundle" instead of letting it fail silently.

**`dist/tokens.json`** — the declared public token surface: 399 tokens across every theme, each with its name, theme, `kind` (`color` | `dimension` | `font` | `radius`), value, and light/dark pair. Built from the hand-authored theme sources, never from compiled CSS, so Tailwind's internal custom properties are structurally excluded. This is now the source of truth for token extraction — do not scan the generated stylesheets. Tokens a theme's dark ramp omits are flagged `darkInherited` rather than silently presented as declared.

**`@e412/rnui-react`:** renamed the private custom properties `--cell-size` / `--cell-radius` (Calendar) and `--data-grid-fill-size` (DataGrid) to a `--rnui-_` prefix, so they are unambiguously internal and not mistaken for design tokens. These were never documented as customization points. `--sidebar-width` and `--sidebar-width-icon` are deliberately unchanged: they are set via a `style` prop on `SidebarProvider`, which is a supported override.

- Updated dependencies [6108a93]
- @e412/rnui-themes@0.3.0

## 0.2.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/react/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@e412/rnui-react",
"version": "0.2.0",
"version": "0.3.0",
"repository": {
"type": "git",
"url": "git+https://github.com/aloks98/rnui.git",
Expand Down
25 changes: 25 additions & 0 deletions packages/themes/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,30 @@
# @e412/rnui-themes

## 0.3.0

### Minor Changes

- 6108a93: Add a precompiled utility layer and a declared token export.

**Why:** rnui is normally consumed with Tailwind running in the consumer's build, so any class you write compiles on demand. But it is also consumed _precompiled_ — as a single stylesheet embedded in a design tool or preview. In that mode a class Tailwind never emitted silently does nothing: no error, no warning, the element just renders unstyled. Ordinary layout markup (`gap-10`, `grid-cols-4`, `max-w-4xl`, `text-3xl`) hit this constantly.

**`@e412/rnui-themes/utilities`** — a precompiled stylesheet (~353 KB, ~40 KB gzip) covering complete scales rather than only the values rnui's own components happen to use:
- spacing `0`–`24` across `p m gap space-x space-y w h min-w min-h` and every axis/side variant
- `text-xs`–`text-9xl`, `font-thin`–`font-black`, `tracking-*`, `leading-*`
- `grid-cols-1..12`, `col-span-*`, `row-span-*`
- `max-w-xs`–`max-w-7xl`, `rounded-*`, `border-*`, `opacity-0..100`
- `sm: md: lg: xl:` responsive and `hover: focus: active: disabled: dark:` states on the interactive subset

Import it only if you cannot run Tailwind yourself; if you can, keep importing `@e412/rnui-themes` and let your build compile what you use.

**`@e412/rnui-themes/safelist`** — the safelist source, for adding these scales to your own Tailwind build.

**`dist/utilities.json`** — the classes that actually shipped, derived from the compiled output rather than the safelist source, so tooling can tell a consumer "`gap-9` is not in this bundle" instead of letting it fail silently.

**`dist/tokens.json`** — the declared public token surface: 399 tokens across every theme, each with its name, theme, `kind` (`color` | `dimension` | `font` | `radius`), value, and light/dark pair. Built from the hand-authored theme sources, never from compiled CSS, so Tailwind's internal custom properties are structurally excluded. This is now the source of truth for token extraction — do not scan the generated stylesheets. Tokens a theme's dark ramp omits are flagged `darkInherited` rather than silently presented as declared.

**`@e412/rnui-react`:** renamed the private custom properties `--cell-size` / `--cell-radius` (Calendar) and `--data-grid-fill-size` (DataGrid) to a `--rnui-_` prefix, so they are unambiguously internal and not mistaken for design tokens. These were never documented as customization points. `--sidebar-width` and `--sidebar-width-icon` are deliberately unchanged: they are set via a `style` prop on `SidebarProvider`, which is a supported override.

## 0.2.0

## 0.1.1
Expand Down
2 changes: 1 addition & 1 deletion packages/themes/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@e412/rnui-themes",
"version": "0.2.0",
"version": "0.3.0",
"repository": {
"type": "git",
"url": "git+https://github.com/aloks98/rnui.git",
Expand Down