From f81832a7c87ef8d361520e5106fc28c08d33e214 Mon Sep 17 00:00:00 2001 From: Imani Manyara Date: Fri, 13 Nov 2026 09:03:05 -0500 Subject: [PATCH] File the unreleased notes under 0.1.0 v0.1.0 is re-cut on this tree, so the work listed under [Unreleased] ships in it. Its notes move into the [0.1.0] section, which is what the release publishes; each heading appears once. --- CHANGELOG.md | 136 ++++++++++++++++++++++++--------------------------- 1 file changed, 63 insertions(+), 73 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f3ad97..62b2c5e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,31 +4,9 @@ All notable changes to `ichava/icon-browser` follow [Keep a Changelog](https://k ## [Unreleased] -### Changed - -- **`zustand` may resolve to 5.1.x (`>=5.0.15 <5.2.0`, icon-browser#147).** It was held below 5.1.0 because 5.1.0 narrows `persist.rehydrate()`'s type, which changed the published type of the old library's `useStore` and failed `check:public-api`. That check went with the library build in icon-browser#146, so the hold had no reason left. Typecheck and the 993 Vitest tests pass on 5.1.0, and `inertia-app.*` is rebuilt from a fresh `npm install --no-package-lock`, as `committed-build.yml` does. -- **The browser UI's source lives in this repository** (react consolidation 3d). `ichava/react-icon-browser`'s `main` at `3cdbd1b` is imported as a snapshot with no history: its `src/` into `resources/js/`, its tooling and fixture catalogue into `.dev/browser/`, its fonts into `resources/assets/fonts/`, and its other root files into `.dev/imported/react-icon-browser/`; the 20 Metronic baseline paths are not imported. `npm run build:prod` builds the committed bundle from that source: `theme.css` is compiled with Tailwind and scoped to `[data-ichava-theme]` as the library build did, and `ichava.scss` no longer scans the browser's files. The browser's 875 Vitest tests (and 3 skipped) run here, 994 passing in all. TypeScript 6 and Tailwind ^4.3 match the source, and `typecheck:inertia` uses its stricter `tsconfig.base.json`. -- **The shared Untitled UI pieces come from `@ichava/js-ui-kernel/react`**, pinned to `bc5120c` as in ichava.com: `cx`, `is-react-component`, the avatar base components, radio buttons, toggle, featured icon and `uui-theme.css`. Tabs and dropdown stay local. -- **The Untitled UI PRO components are included as part of the product** (owner, 2026-11-12): the 12 the browser uses, in five folders [LICENSE](LICENSE) lists, each keeping its PRO header. See [Architecture](docs/architecture.md#untitled-ui-pro-components). - -### Deprecated - -- **`npm run build:lib`, `npm run sync:react-icon-browser`, `npm run check:consumers` and `resources/vendor/react-icon-browser`.** The scripts print where the work moved and exit 0; the directory is no longer rebuilt, and its `prepaint.html`, which the prepaint component still inlines, is written by `npm run build:prepaint`. The ten files whose code moved to the kernel are deprecated re-exports. Removing any of them needs the owner's yes. - -### Fixed - -- **Re-vendored `ichava/react-icon-browser` at `41b0a4b`** (react-icon-browser#214): one caret for every dropdown and popover, drawn in the panel's own colours over its edge and centred on the trigger (the header menus drew none), and the "Cookies & storage" notice moves by its grip or the arrow keys, inside the window, for the session. `inertia-app.*` rebuilt with `npm run build:prod` after a fresh `npm install --no-package-lock`, as `committed-build.yml` does. `zustand` is held at `>=5.0.15 <5.1.0`, the vendored library's own range: 5.1.0 (2026-11-06) changes the type react-icon-browser publishes for `useStore`, and a fresh build that took it would no longer match the committed bundle. - -- **The browser page works under a host's nonce-based CSP.** A host that sends its own policy with a per-request nonce (`script-src 'self' 'nonce-…'`, as ichava.com does) hands that nonce to Vite; the page now puts it on the loader's `