From 907dbdde697b78a8c22a248e54464fe96479eba3 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
<41898282+github-actions[bot]@users.noreply.github.com>
Date: Mon, 8 Jun 2026 14:36:03 +0000
Subject: [PATCH] chore(release): version packages
---
.changeset/cli-incremental-build.md | 26 ---
.changeset/fluent-icons-rename.md | 15 --
.changeset/monorepo-migration.md | 11 -
.changeset/react-internal-reorg.md | 16 --
.changeset/react-string-event-handlers.md | 44 ----
packages/cli/CHANGELOG.md | 235 +++++++++++-----------
packages/cli/package.json | 2 +-
packages/fluent-icons/CHANGELOG.md | 28 ++-
packages/fluent-icons/package.json | 2 +-
packages/react/CHANGELOG.md | 78 ++++++-
packages/react/package.json | 2 +-
11 files changed, 208 insertions(+), 251 deletions(-)
delete mode 100644 .changeset/cli-incremental-build.md
delete mode 100644 .changeset/fluent-icons-rename.md
delete mode 100644 .changeset/monorepo-migration.md
delete mode 100644 .changeset/react-internal-reorg.md
delete mode 100644 .changeset/react-string-event-handlers.md
diff --git a/.changeset/cli-incremental-build.md b/.changeset/cli-incremental-build.md
deleted file mode 100644
index 304cfba..0000000
--- a/.changeset/cli-incremental-build.md
+++ /dev/null
@@ -1,26 +0,0 @@
----
-"@lcui/cli": minor
----
-
-feat(cli): incremental compilation with persistent build manifest
-
-`lcui build` is now incremental. A build manifest at
-`.lcui/build/manifest.json` records each source file's content hash, loader
-chain, dependency hashes (collected from `import`, sass `@use`/`@import`,
-postcss / tailwind config, etc.) and output hashes. Unchanged entries are
-skipped entirely on subsequent builds and their previous outputs are reused.
-
-Every write also goes through a content-aware `writeIfChanged`: if the new
-bytes match the file on disk, the file is not touched. This prevents
-spurious `mtime` updates from triggering a full `xmake` rebuild when nothing
-actually changed.
-
-New CLI flags:
-
-- `--force` — ignore the manifest and rebuild everything.
-- `--skip-xmake` — do not invoke `xmake` after compilation.
-
-The manifest is invalidated automatically when the CLI version, the
-compiler configuration, or `tsconfig.json` / `postcss.config.*` /
-`tailwind.config.*` / `lcui.config.js` change. `xmake` is also auto-skipped
-when no output file changed during the build.
diff --git a/.changeset/fluent-icons-rename.md b/.changeset/fluent-icons-rename.md
deleted file mode 100644
index 2fde678..0000000
--- a/.changeset/fluent-icons-rename.md
+++ /dev/null
@@ -1,15 +0,0 @@
----
-"@lcui/fluent-icons": major
----
-
-BREAKING: package renamed from `@lcui/react-icons` to `@lcui/fluent-icons`.
-
-The functionality is unchanged, but the package name on npm has moved. Update
-your dependency and import statements:
-
-```diff
-- import { Icon } from "@lcui/react-icons";
-+ import { Icon } from "@lcui/fluent-icons";
-```
-
-The previous package (`@lcui/react-icons`) will receive no further updates.
diff --git a/.changeset/monorepo-migration.md b/.changeset/monorepo-migration.md
deleted file mode 100644
index 6d2c1f3..0000000
--- a/.changeset/monorepo-migration.md
+++ /dev/null
@@ -1,11 +0,0 @@
----
-"@lcui/cli": patch
-"@lcui/react": patch
-"@lcui/fluent-icons": patch
----
-
-Repository restructure: the three packages now live in a single monorepo at
-[`lcui-dev/lcui-toolkit`](https://github.com/lcui-dev/lcui-toolkit), managed with
-npm workspaces and Changesets. The original repositories have been archived.
-No runtime behaviour changes; published artifacts are equivalent to the prior
-standalone releases.
diff --git a/.changeset/react-internal-reorg.md b/.changeset/react-internal-reorg.md
deleted file mode 100644
index 60d36ac..0000000
--- a/.changeset/react-internal-reorg.md
+++ /dev/null
@@ -1,16 +0,0 @@
----
-"@lcui/react": minor
----
-
-Internal: split `src/` into `runtime/`, `compiler/`, and `widgets/` subdirectories.
-
-Add subpath exports so callers can import a narrower surface area:
-
-```ts
-import { Button } from "@lcui/react/widgets";
-import { compile } from "@lcui/react/compiler";
-import { useState } from "@lcui/react/runtime";
-```
-
-No breaking changes — every symbol previously exported from `@lcui/react` is
-still available from the package root.
diff --git a/.changeset/react-string-event-handlers.md b/.changeset/react-string-event-handlers.md
deleted file mode 100644
index 97914ab..0000000
--- a/.changeset/react-string-event-handlers.md
+++ /dev/null
@@ -1,44 +0,0 @@
----
-"@lcui/react": minor
----
-
-feat(react): allow string C-function names on JSX event props
-
-`@lcui/cli`'s `ts-loader` has always supported ``
-as a way to bind a JSX event to a C function — at runtime the string is
-emitted as a `ui_widget_on(...)` call plus a forward declaration in the
-generated header. Until now this form failed TypeScript's type check because
-React declares e.g. `onClick` as `MouseEventHandler | undefined`.
-
-This release ships a focused JSX type augmentation that widens the subset of
-`on*` event props that LCUI actually dispatches to also accept `string`. The
-augmentation is loaded automatically when you `import` from `@lcui/react`,
-so no user-side configuration is required. Covered props (chosen from
-`ui_event_type_t`):
-
-- Mouse: `onClick`, `onDoubleClick`, `onMouseDown`, `onMouseUp`,
- `onMouseMove`, `onMouseOver`, `onMouseOut`, `onWheel`
-- Keyboard: `onKeyDown`, `onKeyUp`, `onKeyPress`
-- Focus: `onFocus`, `onBlur`
-- Clipboard: `onPaste`
-- Form / value change: `onChange` (semantic `"change"` event dispatched by
- widgets such as `TextInput`)
-
-Event-name compatibility is handled by a small remap table in the React
-compiler so the names users write match the names LCUI actually dispatches:
-
-- `onDoubleClick` → `"dblclick"` (instead of the default `"doubleclick"`)
-- everything else falls back to the existing `onXxx → "xxx"` rule
-
-`TextInputProps` now also declares `onChange` explicitly for better IDE
-hints on ``.
-
-Props for browser-only events (drag / pointer / animation / transition /
-contextmenu / touch with mismatched names) and the `SVGAttributes`
-namespace are intentionally **not** widened: passing a string on those will
-keep failing type-checking, so users do not end up with code that compiles
-but cannot bind at runtime.
-
-JavaScript callbacks (`onClick={() => { ... }}`) continue to work unchanged
-and remain type-checked as before. Invalid values like `onClick={42}` are
-still rejected.
diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md
index 61be8fc..a8d8ed2 100644
--- a/packages/cli/CHANGELOG.md
+++ b/packages/cli/CHANGELOG.md
@@ -1,211 +1,202 @@
## [1.2.2](https://github.com/lc-ui/lcui-cli/compare/v1.2.1...v1.2.2) (2025-01-26)
+## 1.3.0
-### Bug Fixes
-
-* 调整发版命令解决文件缺失问题 ([728a49f](https://github.com/lc-ui/lcui-cli/commit/728a49f881d8c2349c58f21d9fba4e0264783940))
+### Minor Changes
+- 2e72549: feat(cli): incremental compilation with persistent build manifest
+ `lcui build` is now incremental. A build manifest at
+ `.lcui/build/manifest.json` records each source file's content hash, loader
+ chain, dependency hashes (collected from `import`, sass `@use`/`@import`,
+ postcss / tailwind config, etc.) and output hashes. Unchanged entries are
+ skipped entirely on subsequent builds and their previous outputs are reused.
-## [1.2.1](https://github.com/lc-ui/lcui-cli/compare/v1.2.0...v1.2.1) (2025-01-26)
+ Every write also goes through a content-aware `writeIfChanged`: if the new
+ bytes match the file on disk, the file is not touched. This prevents
+ spurious `mtime` updates from triggering a full `xmake` rebuild when nothing
+ actually changed.
+ New CLI flags:
+ - `--force` — ignore the manifest and rebuild everything.
+ - `--skip-xmake` — do not invoke `xmake` after compilation.
-### Bug Fixes
+ The manifest is invalidated automatically when the CLI version, the
+ compiler configuration, or `tsconfig.json` / `postcss.config.*` /
+ `tailwind.config.*` / `lcui.config.js` change. `xmake` is also auto-skipped
+ when no output file changed during the build.
-* 解决命名冲突 ([affb31f](https://github.com/lc-ui/lcui-cli/commit/affb31fe2e3448be6e5045020a20c029c240d8e2))
+### Patch Changes
+- b39bde0: Repository restructure: the three packages now live in a single monorepo at
+ [`lcui-dev/lcui-toolkit`](https://github.com/lcui-dev/lcui-toolkit), managed with
+ npm workspaces and Changesets. The original repositories have been archived.
+ No runtime behaviour changes; published artifacts are equivalent to the prior
+ standalone releases.
+- Updated dependencies [b39bde0]
+- Updated dependencies [b39bde0]
+- Updated dependencies [83594b7]
+ - @lcui/react@0.6.0
+### Bug Fixes
-# [1.2.0](https://github.com/lc-ui/lcui-cli/compare/v1.1.0...v1.2.0) (2025-01-07)
+- 调整发版命令解决文件缺失问题 ([728a49f](https://github.com/lc-ui/lcui-cli/commit/728a49f881d8c2349c58f21d9fba4e0264783940))
+## [1.2.1](https://github.com/lc-ui/lcui-cli/compare/v1.2.0...v1.2.1) (2025-01-26)
### Bug Fixes
-* **compiler:** 纠正 App 路由中的页面组件名称 ([432c513](https://github.com/lc-ui/lcui-cli/commit/432c513086911d19b15446705093c589f205f52c))
+- 解决命名冲突 ([affb31f](https://github.com/lc-ui/lcui-cli/commit/affb31fe2e3448be6e5045020a20c029c240d8e2))
+# [1.2.0](https://github.com/lc-ui/lcui-cli/compare/v1.1.0...v1.2.0) (2025-01-07)
-### Features
+### Bug Fixes
-* 迁移至新版 LCUI ([8f3e2cb](https://github.com/lc-ui/lcui-cli/commit/8f3e2cbb0330a2dc0d8025c97a67ea605ce93bbb))
+- **compiler:** 纠正 App 路由中的页面组件名称 ([432c513](https://github.com/lc-ui/lcui-cli/commit/432c513086911d19b15446705093c589f205f52c))
+### Features
+- 迁移至新版 LCUI ([8f3e2cb](https://github.com/lc-ui/lcui-cli/commit/8f3e2cbb0330a2dc0d8025c97a67ea605ce93bbb))
# [1.1.0](https://github.com/lc-ui/lcui-cli/compare/v1.0.0...v1.1.0) (2024-12-22)
-
### Bug Fixes
-* 兼容 app 目录不存在的情况 ([2d7c1f9](https://github.com/lc-ui/lcui-cli/commit/2d7c1f998483c07be2bab6983ad29355beddff94))
-* 将组件名称转换为 snake 风格以解决名称不一致 ([2c5663f](https://github.com/lc-ui/lcui-cli/commit/2c5663ff85880fd224cbe804ee1d8b99b1e7e7fb))
-* 纠正项目构建命令 ([0f78e47](https://github.com/lc-ui/lcui-cli/commit/0f78e4727de764dfe6c266bd0fbd99847d299aaf))
-* 确定根目录时进入死循环 ([25d1e29](https://github.com/lc-ui/lcui-cli/commit/25d1e298fa2fa10d9da78f7d5b89214177cf8da9))
-* 删除多余的 setlocale() 调用 ([01ee1bd](https://github.com/lc-ui/lcui-cli/commit/01ee1bd6301464119a69bb019f7d2af41844910b))
-* gitub -> github ([#31](https://github.com/lc-ui/lcui-cli/issues/31)) ([2a2d4bf](https://github.com/lc-ui/lcui-cli/commit/2a2d4bfcd927b94d1059c0a98c392228d0826573))
-
+- 兼容 app 目录不存在的情况 ([2d7c1f9](https://github.com/lc-ui/lcui-cli/commit/2d7c1f998483c07be2bab6983ad29355beddff94))
+- 将组件名称转换为 snake 风格以解决名称不一致 ([2c5663f](https://github.com/lc-ui/lcui-cli/commit/2c5663ff85880fd224cbe804ee1d8b99b1e7e7fb))
+- 纠正项目构建命令 ([0f78e47](https://github.com/lc-ui/lcui-cli/commit/0f78e4727de764dfe6c266bd0fbd99847d299aaf))
+- 确定根目录时进入死循环 ([25d1e29](https://github.com/lc-ui/lcui-cli/commit/25d1e298fa2fa10d9da78f7d5b89214177cf8da9))
+- 删除多余的 setlocale() 调用 ([01ee1bd](https://github.com/lc-ui/lcui-cli/commit/01ee1bd6301464119a69bb019f7d2af41844910b))
+- gitub -> github ([#31](https://github.com/lc-ui/lcui-cli/issues/31)) ([2a2d4bf](https://github.com/lc-ui/lcui-cli/commit/2a2d4bfcd927b94d1059c0a98c392228d0826573))
### Features
-* 将 AppRouter 的编译功能改为可选 ([876423d](https://github.com/lc-ui/lcui-cli/commit/876423d77050dbbd12ca8270e48208e0cad99dec))
-* 支持编译同一文件中的多个组件 ([3ed9548](https://github.com/lc-ui/lcui-cli/commit/3ed9548ec86788c138b32707331a21baf881aab3))
-
-
+- 将 AppRouter 的编译功能改为可选 ([876423d](https://github.com/lc-ui/lcui-cli/commit/876423d77050dbbd12ca8270e48208e0cad99dec))
+- 支持编译同一文件中的多个组件 ([3ed9548](https://github.com/lc-ui/lcui-cli/commit/3ed9548ec86788c138b32707331a21baf881aab3))
## [1.0.1](https://github.com/lc-ui/lcui-cli/compare/v1.0.0...v1.0.1) (2024-05-14)
-
### Bug Fixes
-* 纠正项目构建命令 ([228fba3](https://github.com/lc-ui/lcui-cli/commit/228fba3d8dadfb4674331a33adfd8c5e228aad04))
-
-
+- 纠正项目构建命令 ([228fba3](https://github.com/lc-ui/lcui-cli/commit/228fba3d8dadfb4674331a33adfd8c5e228aad04))
# [1.0.0](https://github.com/lc-ui/lcui-cli/compare/v1.0.0-beta.2...v1.0.0) (2024-05-13)
-
-
# [1.0.0-beta.2](https://github.com/lc-ui/lcui-cli/compare/v1.0.0-beta.1...v1.0.0-beta.2) (2024-05-12)
-
### Bug Fixes
-* ERR_MODULE_NOT_FOUND ([b940da0](https://github.com/lc-ui/lcui-cli/commit/b940da0bc40a8ffcc014733769975ced803db673))
-
-
+- ERR_MODULE_NOT_FOUND ([b940da0](https://github.com/lc-ui/lcui-cli/commit/b940da0bc40a8ffcc014733769975ced803db673))
# [1.0.0-beta.1](https://github.com/lc-ui/lcui-cli/compare/v1.0.0-beta.0...v1.0.0-beta.1) (2024-05-12)
-
### Bug Fixes
-* **ui-loader:** 纠正组件 ident ([865a2e5](https://github.com/lc-ui/lcui-cli/commit/865a2e544ab56fb6f240d1da90e08468890acd30))
-
+- **ui-loader:** 纠正组件 ident ([865a2e5](https://github.com/lc-ui/lcui-cli/commit/865a2e544ab56fb6f240d1da90e08468890acd30))
### Features
-* **ui-loader:** 支持声明头文件包含 ([026ec0c](https://github.com/lc-ui/lcui-cli/commit/026ec0c31c81b3f774efae59d34caf808ed836af))
-* 编译完资源文件后执行 xmake ([414604c](https://github.com/lc-ui/lcui-cli/commit/414604c9c0e331c63bebe4c03fcca48d705421df))
-* 从项目目录内加载 postcss 配置 ([10f75c9](https://github.com/lc-ui/lcui-cli/commit/10f75c948b5fa94e9302e6058d3efd02c313a74f))
-* 改进 React 组件的编译 ([a2c7a4e](https://github.com/lc-ui/lcui-cli/commit/a2c7a4e61802c945b4336f38eb2dda016f52e5de))
-* 生成 UI 初始化代码和示例 main() 函数代码 ([0dafd1d](https://github.com/lc-ui/lcui-cli/commit/0dafd1dbcf37e4aa31dd129906d36a487b2200da))
-* 替换 react/jsx-runtime ([d6c1e46](https://github.com/lc-ui/lcui-cli/commit/d6c1e467e43f5db815bb6feaf290f4b374b869ef))
-* 添加 AppRouter 编译器 ([9e8e40f](https://github.com/lc-ui/lcui-cli/commit/9e8e40f178923e8cc2ddf2aeec00baa29f537f57))
-* 添加 hooks 和 UIPlugin,存储所有组件信息 ([d032b51](https://github.com/lc-ui/lcui-cli/commit/d032b51b58ad86252fffeebbcff3a50a643071a5))
-* 为 ts-loader 添加 AppRouter 生成目标 ([37d4fbb](https://github.com/lc-ui/lcui-cli/commit/37d4fbbaa754a543c55e3fd4898e5b17d20f6973))
-* compile 命令的 filePath 参数默认值为 app 目录 ([077d5fb](https://github.com/lc-ui/lcui-cli/commit/077d5fbd9ac8c290f4b710bc2ac6a96f8d7bf364))
-* compile 命令更名为 build ([722ddb9](https://github.com/lc-ui/lcui-cli/commit/722ddb9f53bc01e9e08e823567d93b642231ed2c))
-
-
+- **ui-loader:** 支持声明头文件包含 ([026ec0c](https://github.com/lc-ui/lcui-cli/commit/026ec0c31c81b3f774efae59d34caf808ed836af))
+- 编译完资源文件后执行 xmake ([414604c](https://github.com/lc-ui/lcui-cli/commit/414604c9c0e331c63bebe4c03fcca48d705421df))
+- 从项目目录内加载 postcss 配置 ([10f75c9](https://github.com/lc-ui/lcui-cli/commit/10f75c948b5fa94e9302e6058d3efd02c313a74f))
+- 改进 React 组件的编译 ([a2c7a4e](https://github.com/lc-ui/lcui-cli/commit/a2c7a4e61802c945b4336f38eb2dda016f52e5de))
+- 生成 UI 初始化代码和示例 main() 函数代码 ([0dafd1d](https://github.com/lc-ui/lcui-cli/commit/0dafd1dbcf37e4aa31dd129906d36a487b2200da))
+- 替换 react/jsx-runtime ([d6c1e46](https://github.com/lc-ui/lcui-cli/commit/d6c1e467e43f5db815bb6feaf290f4b374b869ef))
+- 添加 AppRouter 编译器 ([9e8e40f](https://github.com/lc-ui/lcui-cli/commit/9e8e40f178923e8cc2ddf2aeec00baa29f537f57))
+- 添加 hooks 和 UIPlugin,存储所有组件信息 ([d032b51](https://github.com/lc-ui/lcui-cli/commit/d032b51b58ad86252fffeebbcff3a50a643071a5))
+- 为 ts-loader 添加 AppRouter 生成目标 ([37d4fbb](https://github.com/lc-ui/lcui-cli/commit/37d4fbbaa754a543c55e3fd4898e5b17d20f6973))
+- compile 命令的 filePath 参数默认值为 app 目录 ([077d5fb](https://github.com/lc-ui/lcui-cli/commit/077d5fbd9ac8c290f4b710bc2ac6a96f8d7bf364))
+- compile 命令更名为 build ([722ddb9](https://github.com/lc-ui/lcui-cli/commit/722ddb9f53bc01e9e08e823567d93b642231ed2c))
# [1.0.0-beta.0](https://github.com/lc-ui/lcui-cli/compare/v0.4.0...v1.0.0-beta.0) (2023-12-16)
-
### Bug Fixes
-* typo ([6a72178](https://github.com/lc-ui/lcui-cli/commit/6a72178f68ef27c688e27442e6a25d8f21a93421))
-* **compile:** convert text to a UTF-8 array to solve the encoding problem of C source files ([914860c](https://github.com/lc-ui/lcui-cli/commit/914860c1d733878ad4a69faaaef70e1100022f99))
-* **compile:** incorrect file output path ([b5e8926](https://github.com/lc-ui/lcui-cli/commit/b5e892616dc6bdae338db9427d9b7e33d1ec40ea))
-* **compile:** incorrect resource output path ([9cfc622](https://github.com/lc-ui/lcui-cli/commit/9cfc62290a838efe3ca4459399edf180f73ce484))
-* **compile:** module should be generated after dependencies ([d71bc50](https://github.com/lc-ui/lcui-cli/commit/d71bc50b714a9ed6b6a6364d43002a8dee21eff9))
-* **compiler:** create folder before emitting files ([7cb8071](https://github.com/lc-ui/lcui-cli/commit/7cb80711e064fda66ee491ec6e882a13992c0e4a))
-* **compiler:** incorrect text definition code ([6c7ee53](https://github.com/lc-ui/lcui-cli/commit/6c7ee539b47668f7bcb2686a8c79cd2901f87b27))
-* **compiler:** module resolve and compile errors ([8f47fdb](https://github.com/lc-ui/lcui-cli/commit/8f47fdb6a1860f01f81aa88e792338c73251238c))
-
+- typo ([6a72178](https://github.com/lc-ui/lcui-cli/commit/6a72178f68ef27c688e27442e6a25d8f21a93421))
+- **compile:** convert text to a UTF-8 array to solve the encoding problem of C source files ([914860c](https://github.com/lc-ui/lcui-cli/commit/914860c1d733878ad4a69faaaef70e1100022f99))
+- **compile:** incorrect file output path ([b5e8926](https://github.com/lc-ui/lcui-cli/commit/b5e892616dc6bdae338db9427d9b7e33d1ec40ea))
+- **compile:** incorrect resource output path ([9cfc622](https://github.com/lc-ui/lcui-cli/commit/9cfc62290a838efe3ca4459399edf180f73ce484))
+- **compile:** module should be generated after dependencies ([d71bc50](https://github.com/lc-ui/lcui-cli/commit/d71bc50b714a9ed6b6a6364d43002a8dee21eff9))
+- **compiler:** create folder before emitting files ([7cb8071](https://github.com/lc-ui/lcui-cli/commit/7cb80711e064fda66ee491ec6e882a13992c0e4a))
+- **compiler:** incorrect text definition code ([6c7ee53](https://github.com/lc-ui/lcui-cli/commit/6c7ee539b47668f7bcb2686a8c79cd2901f87b27))
+- **compiler:** module resolve and compile errors ([8f47fdb](https://github.com/lc-ui/lcui-cli/commit/8f47fdb6a1860f01f81aa88e792338c73251238c))
### Features
-* **compile:** auto create widget prototype ([423891a](https://github.com/lc-ui/lcui-cli/commit/423891ac30cbffbdf6a0bb86e75fde4d0f62b279))
-* **compile:** add `style` attribute support ([29caa7b](https://github.com/lc-ui/lcui-cli/commit/29caa7b40f410d83e894421644a42ff401ba0c5b))
-* **compile:** add json-loader ([766d5c4](https://github.com/lc-ui/lcui-cli/commit/766d5c4fccd613d0946bb5188776052411e5378c))
-* **compile:** add loaders ([9ba82c7](https://github.com/lc-ui/lcui-cli/commit/9ba82c76cbc841fe4e0ca63c45fe199100b10edb))
-* **compile:** add logger ([48dbbf3](https://github.com/lc-ui/lcui-cli/commit/48dbbf3c8347f4241a5af1af8445032fa582fcdf))
-* **compile:** add react-tsx compiler ([f71cba9](https://github.com/lc-ui/lcui-cli/commit/f71cba96b2643989bfa462d0299573d80971dd80))
-* **compile:** add support for pre rendering React components ([7e71b3a](https://github.com/lc-ui/lcui-cli/commit/7e71b3a410302d39f9434c5c20b574a3f105f2f7))
-* **compile:** add ui-loader ([6db68cd](https://github.com/lc-ui/lcui-cli/commit/6db68cd1b386b3523b549688ed36823fd648fef6))
-* **compile:** convert resource file url ([6acfde9](https://github.com/lc-ui/lcui-cli/commit/6acfde96f678b4c9ae4d5f590772635036ea7ba4))
-* **compile:** file loader did not emit file ([bc2044e](https://github.com/lc-ui/lcui-cli/commit/bc2044ed8619e119ae6071502056eb70ad4f2170))
-* **compile:** improving component prototype name selection ([7838bf0](https://github.com/lc-ui/lcui-cli/commit/7838bf0669ecf81654a76085b2f288ad33de75f1))
-* **compile:** merge compilers ([5f2d5e4](https://github.com/lc-ui/lcui-cli/commit/5f2d5e42adc208d388f9dee9ad0f526bc2fb9d53))
-* **compile:** replace the XML parser and JSON data format ([c067504](https://github.com/lc-ui/lcui-cli/commit/c067504e6e47df1c1d84970b0945f39653859523))
-* **compile:** update sass and json compiler ([faf742e](https://github.com/lc-ui/lcui-cli/commit/faf742e51a6630c3bcff1ac6714d8677de66ef0d))
-* **compile:** update ts-loader compiler options ([cd6646d](https://github.com/lc-ui/lcui-cli/commit/cd6646d044094d3c683bdfa06030977e1b6c7d59))
-* **create:** install node modules ([6409a53](https://github.com/lc-ui/lcui-cli/commit/6409a5302ef2165084661653116534b17d829b4e))
-* add resource compiler ([182d08e](https://github.com/lc-ui/lcui-cli/commit/182d08ecf751207534dacccaf288b7624b282938))
-* delete i18n compiler and generator ([cda954e](https://github.com/lc-ui/lcui-cli/commit/cda954ec145485627f1a8429070ca67a4bb04adc))
-* remove generator ([3abf53a](https://github.com/lc-ui/lcui-cli/commit/3abf53aebabe5b6369a58cc58d60fc01982e6f0c))
-* **create:** remove origin remote ([9e4d41a](https://github.com/lc-ui/lcui-cli/commit/9e4d41a021da65449d324d02f77ca65b86429e2c))
-* **create:** update command lines ([8ac47d8](https://github.com/lc-ui/lcui-cli/commit/8ac47d89c777dbfb4b87f60ef68191a9ac932778))
-* remove makefile generators ([7b060ac](https://github.com/lc-ui/lcui-cli/commit/7b060ac18f508339f874b259671ea360d7cc313a))
-* simplify project creation and remove some commands ([995f0b6](https://github.com/lc-ui/lcui-cli/commit/995f0b6b4704e69894dc67ce4a2c8410a2cf4498))
-
+- **compile:** auto create widget prototype ([423891a](https://github.com/lc-ui/lcui-cli/commit/423891ac30cbffbdf6a0bb86e75fde4d0f62b279))
+- **compile:** add `style` attribute support ([29caa7b](https://github.com/lc-ui/lcui-cli/commit/29caa7b40f410d83e894421644a42ff401ba0c5b))
+- **compile:** add json-loader ([766d5c4](https://github.com/lc-ui/lcui-cli/commit/766d5c4fccd613d0946bb5188776052411e5378c))
+- **compile:** add loaders ([9ba82c7](https://github.com/lc-ui/lcui-cli/commit/9ba82c76cbc841fe4e0ca63c45fe199100b10edb))
+- **compile:** add logger ([48dbbf3](https://github.com/lc-ui/lcui-cli/commit/48dbbf3c8347f4241a5af1af8445032fa582fcdf))
+- **compile:** add react-tsx compiler ([f71cba9](https://github.com/lc-ui/lcui-cli/commit/f71cba96b2643989bfa462d0299573d80971dd80))
+- **compile:** add support for pre rendering React components ([7e71b3a](https://github.com/lc-ui/lcui-cli/commit/7e71b3a410302d39f9434c5c20b574a3f105f2f7))
+- **compile:** add ui-loader ([6db68cd](https://github.com/lc-ui/lcui-cli/commit/6db68cd1b386b3523b549688ed36823fd648fef6))
+- **compile:** convert resource file url ([6acfde9](https://github.com/lc-ui/lcui-cli/commit/6acfde96f678b4c9ae4d5f590772635036ea7ba4))
+- **compile:** file loader did not emit file ([bc2044e](https://github.com/lc-ui/lcui-cli/commit/bc2044ed8619e119ae6071502056eb70ad4f2170))
+- **compile:** improving component prototype name selection ([7838bf0](https://github.com/lc-ui/lcui-cli/commit/7838bf0669ecf81654a76085b2f288ad33de75f1))
+- **compile:** merge compilers ([5f2d5e4](https://github.com/lc-ui/lcui-cli/commit/5f2d5e42adc208d388f9dee9ad0f526bc2fb9d53))
+- **compile:** replace the XML parser and JSON data format ([c067504](https://github.com/lc-ui/lcui-cli/commit/c067504e6e47df1c1d84970b0945f39653859523))
+- **compile:** update sass and json compiler ([faf742e](https://github.com/lc-ui/lcui-cli/commit/faf742e51a6630c3bcff1ac6714d8677de66ef0d))
+- **compile:** update ts-loader compiler options ([cd6646d](https://github.com/lc-ui/lcui-cli/commit/cd6646d044094d3c683bdfa06030977e1b6c7d59))
+- **create:** install node modules ([6409a53](https://github.com/lc-ui/lcui-cli/commit/6409a5302ef2165084661653116534b17d829b4e))
+- add resource compiler ([182d08e](https://github.com/lc-ui/lcui-cli/commit/182d08ecf751207534dacccaf288b7624b282938))
+- delete i18n compiler and generator ([cda954e](https://github.com/lc-ui/lcui-cli/commit/cda954ec145485627f1a8429070ca67a4bb04adc))
+- remove generator ([3abf53a](https://github.com/lc-ui/lcui-cli/commit/3abf53aebabe5b6369a58cc58d60fc01982e6f0c))
+- **create:** remove origin remote ([9e4d41a](https://github.com/lc-ui/lcui-cli/commit/9e4d41a021da65449d324d02f77ca65b86429e2c))
+- **create:** update command lines ([8ac47d8](https://github.com/lc-ui/lcui-cli/commit/8ac47d89c777dbfb4b87f60ef68191a9ac932778))
+- remove makefile generators ([7b060ac](https://github.com/lc-ui/lcui-cli/commit/7b060ac18f508339f874b259671ea360d7cc313a))
+- simplify project creation and remove some commands ([995f0b6](https://github.com/lc-ui/lcui-cli/commit/995f0b6b4704e69894dc67ce4a2c8410a2cf4498))
### BREAKING CHANGES
-* remove generator
-* remove build, run and setup commands
-* The 3. x version of LCUI has an i18n library built-in, so the i18n generator and compiler need to be removed.
-
-
+- remove generator
+- remove build, run and setup commands
+- The 3. x version of LCUI has an i18n library built-in, so the i18n generator and compiler need to be removed.
# [0.4.0](https://github.com/lc-ui/lcui-cli/compare/v0.3.1...v0.4.0) (2021-05-10)
-
### Bug Fixes
-* **generator:** correct the link order of libraries in CMakeLists.txt ([cb8d087](https://github.com/lc-ui/lcui-cli/commit/cb8d087554bbd4ed3503bb4d64816ccd2436f4e2))
-* **utils:** add UTF-8 BOM to fix compiler warning C4819 ([9870f9e](https://github.com/lc-ui/lcui-cli/commit/9870f9edf8fb51aa41872f6a0183af3afe91bfb0))
-* makefile does not generated before the make tool detection ([9fb615d](https://github.com/lc-ui/lcui-cli/commit/9fb615da3c3429a6b834ed8190dbd2d8fbec223e))
-
+- **generator:** correct the link order of libraries in CMakeLists.txt ([cb8d087](https://github.com/lc-ui/lcui-cli/commit/cb8d087554bbd4ed3503bb4d64816ccd2436f4e2))
+- **utils:** add UTF-8 BOM to fix compiler warning C4819 ([9870f9e](https://github.com/lc-ui/lcui-cli/commit/9870f9edf8fb51aa41872f6a0183af3afe91bfb0))
+- makefile does not generated before the make tool detection ([9fb615d](https://github.com/lc-ui/lcui-cli/commit/9fb615da3c3429a6b834ed8190dbd2d8fbec223e))
### Features
-* add i18n config file generator ([fe4702a](https://github.com/lc-ui/lcui-cli/commit/fe4702a5ba05ed81759ff0796f3db96a5beecd65))
-* add setup command ([5d62398](https://github.com/lc-ui/lcui-cli/commit/5d62398f5965a98864dc171dde1aa4fcacb6297e))
-* add the arch option for build command ([6423f74](https://github.com/lc-ui/lcui-cli/commit/6423f74bb47fbc891ccd89378ee1acccb4b95be7))
-* add the clean option for build command ([845d026](https://github.com/lc-ui/lcui-cli/commit/845d026e68aaca43a4e1b82ebcb45e83e4b19058))
-* upgrade dependencies ([621329e](https://github.com/lc-ui/lcui-cli/commit/621329e48807dbeaef6b95b34b89b44ac4d04619))
-* **builder:** add sass compiler ([ddd78c4](https://github.com/lc-ui/lcui-cli/commit/ddd78c40e05653a28ab83d3f696eab73de9e4995))
-
-
+- add i18n config file generator ([fe4702a](https://github.com/lc-ui/lcui-cli/commit/fe4702a5ba05ed81759ff0796f3db96a5beecd65))
+- add setup command ([5d62398](https://github.com/lc-ui/lcui-cli/commit/5d62398f5965a98864dc171dde1aa4fcacb6297e))
+- add the arch option for build command ([6423f74](https://github.com/lc-ui/lcui-cli/commit/6423f74bb47fbc891ccd89378ee1acccb4b95be7))
+- add the clean option for build command ([845d026](https://github.com/lc-ui/lcui-cli/commit/845d026e68aaca43a4e1b82ebcb45e83e4b19058))
+- upgrade dependencies ([621329e](https://github.com/lc-ui/lcui-cli/commit/621329e48807dbeaef6b95b34b89b44ac4d04619))
+- **builder:** add sass compiler ([ddd78c4](https://github.com/lc-ui/lcui-cli/commit/ddd78c40e05653a28ab83d3f696eab73de9e4995))
## [0.3.1](https://github.com/lc-ui/lcui-cli/compare/v0.3.0...v0.3.1) (2021-05-06)
-
### Bug Fixes
-* **utils:** format() does not replace key values with dots ([fb80155](https://github.com/lc-ui/lcui-cli/commit/fb801553ab6b3fad74253d8e84468ede5129327c))
-
-
+- **utils:** format() does not replace key values with dots ([fb80155](https://github.com/lc-ui/lcui-cli/commit/fb801553ab6b3fad74253d8e84468ede5129327c))
# [0.3.0](https://github.com/lc-ui/lcui-cli/compare/v0.2.0...v0.3.0) (2021-01-12)
-
### Bug Fixes
-* husky installation failed ([18b03a9](https://github.com/lc-ui/lcui-cli/commit/18b03a90645eb266bb7a558f93c27a5824cef3fb))
-
+- husky installation failed ([18b03a9](https://github.com/lc-ui/lcui-cli/commit/18b03a90645eb266bb7a558f93c27a5824cef3fb))
### Features
-* add build command ([b705a8e](https://github.com/lc-ui/lcui-cli/commit/b705a8e78821eab6f2f85040c369e4c206b80af3))
-* add makefile generator ([0c05220](https://github.com/lc-ui/lcui-cli/commit/0c052200372cb3e1fddba783c9b66629cdfd63d6))
-* add run command ([513107c](https://github.com/lc-ui/lcui-cli/commit/513107c8e5b9c4848bcdd0be220bc703639a9a23))
-
-
+- add build command ([b705a8e](https://github.com/lc-ui/lcui-cli/commit/b705a8e78821eab6f2f85040c369e4c206b80af3))
+- add makefile generator ([0c05220](https://github.com/lc-ui/lcui-cli/commit/0c052200372cb3e1fddba783c9b66629cdfd63d6))
+- add run command ([513107c](https://github.com/lc-ui/lcui-cli/commit/513107c8e5b9c4848bcdd0be220bc703639a9a23))
# [0.2.0](https://github.com/lc-ui/lcui-cli/compare/v0.1.0...v0.2.0) (2020-03-02)
-
### Bug Fixes
-* flat() return empty object ([4673792](https://github.com/lc-ui/lcui-cli/commit/4673792))
-* variableName transformation incorrect ([f6a4074](https://github.com/lc-ui/lcui-cli/commit/f6a4074))
-
+- flat() return empty object ([4673792](https://github.com/lc-ui/lcui-cli/commit/4673792))
+- variableName transformation incorrect ([f6a4074](https://github.com/lc-ui/lcui-cli/commit/f6a4074))
### Features
-* add compiler for compile router config file ([f62f70f](https://github.com/lc-ui/lcui-cli/commit/f62f70f))
-* add the sourceDir option to the i18n compiler ([d07b14d](https://github.com/lc-ui/lcui-cli/commit/d07b14d))
-* rename 'ci18n' comamnd to 'compile i18n' ([ec0266e](https://github.com/lc-ui/lcui-cli/commit/ec0266e))
-
-
-
+- add compiler for compile router config file ([f62f70f](https://github.com/lc-ui/lcui-cli/commit/f62f70f))
+- add the sourceDir option to the i18n compiler ([d07b14d](https://github.com/lc-ui/lcui-cli/commit/d07b14d))
+- rename 'ci18n' comamnd to 'compile i18n' ([ec0266e](https://github.com/lc-ui/lcui-cli/commit/ec0266e))
diff --git a/packages/cli/package.json b/packages/cli/package.json
index d06365d..99b09d3 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@lcui/cli",
- "version": "1.2.2",
+ "version": "1.3.0",
"type": "module",
"description": "Command line interface for rapid LCUI development",
"main": "index.js",
diff --git a/packages/fluent-icons/CHANGELOG.md b/packages/fluent-icons/CHANGELOG.md
index c684be7..c04af4c 100644
--- a/packages/fluent-icons/CHANGELOG.md
+++ b/packages/fluent-icons/CHANGELOG.md
@@ -1,13 +1,35 @@
## [1.0.4](https://gitee.com/lcui-dev/fluent-ui-system-icons/compare/v1.0.3...v1.0.4) (2025-01-27)
+## 2.0.0
+### Major Changes
-## [1.0.3](https://gitee.com/lcui-dev/fluent-ui-system-icons/compare/v1.0.2...v1.0.3) (2024-12-23)
+- b39bde0: BREAKING: package renamed from `@lcui/react-icons` to `@lcui/fluent-icons`.
+ The functionality is unchanged, but the package name on npm has moved. Update
+ your dependency and import statements:
-### Bug Fixes
+ ```diff
+ - import { Icon } from "@lcui/react-icons";
+ + import { Icon } from "@lcui/fluent-icons";
+ ```
+
+ The previous package (`@lcui/react-icons`) will receive no further updates.
-* 仅在 fontSize 参数有效时设置样式 ([b12e133](https://gitee.com/lcui-dev/fluent-ui-system-icons/commits/b12e133b761ef42560ebf3dfead760711fadc93b))
+### Patch Changes
+- b39bde0: Repository restructure: the three packages now live in a single monorepo at
+ [`lcui-dev/lcui-toolkit`](https://github.com/lcui-dev/lcui-toolkit), managed with
+ npm workspaces and Changesets. The original repositories have been archived.
+ No runtime behaviour changes; published artifacts are equivalent to the prior
+ standalone releases.
+- Updated dependencies [b39bde0]
+- Updated dependencies [b39bde0]
+- Updated dependencies [83594b7]
+ - @lcui/react@0.6.0
+## [1.0.3](https://gitee.com/lcui-dev/fluent-ui-system-icons/compare/v1.0.2...v1.0.3) (2024-12-23)
+
+### Bug Fixes
+- 仅在 fontSize 参数有效时设置样式 ([b12e133](https://gitee.com/lcui-dev/fluent-ui-system-icons/commits/b12e133b761ef42560ebf3dfead760711fadc93b))
diff --git a/packages/fluent-icons/package.json b/packages/fluent-icons/package.json
index 9e66174..d674829 100644
--- a/packages/fluent-icons/package.json
+++ b/packages/fluent-icons/package.json
@@ -1,6 +1,6 @@
{
"name": "@lcui/fluent-icons",
- "version": "1.0.4",
+ "version": "2.0.0",
"type": "module",
"description": "An icon library for LCUI applications based on fluentui-system-icons",
"main": "dist/index.js",
diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md
index c97bf16..f5dedf0 100644
--- a/packages/react/CHANGELOG.md
+++ b/packages/react/CHANGELOG.md
@@ -1,28 +1,84 @@
# [0.5.0](https://gitee.com/lcui-dev/react/compare/v0.4.0...v0.5.0) (2025-01-07)
+## 0.6.0
-### Features
+### Minor Changes
-* 更新头文件名称 ui__widgets.h -> LCUI/widgets.h ([78fac30](https://gitee.com/lcui-dev/react/commits/78fac308d625babff87c2f1ff892b33ed78f1b84))
+- b39bde0: Internal: split `src/` into `runtime/`, `compiler/`, and `widgets/` subdirectories.
+ Add subpath exports so callers can import a narrower surface area:
+ ```ts
+ import { Button } from "@lcui/react/widgets";
+ import { compile } from "@lcui/react/compiler";
+ import { useState } from "@lcui/react/runtime";
+ ```
-# [0.4.0](https://gitee.com/lcui-dev/react/compare/v0.3.0...v0.4.0) (2024-12-22)
+ No breaking changes — every symbol previously exported from `@lcui/react` is
+ still available from the package root.
+- 83594b7: feat(react): allow string C-function names on JSX event props
-### Bug Fixes
+ `@lcui/cli`'s `ts-loader` has always supported ``
+ as a way to bind a JSX event to a C function — at runtime the string is
+ emitted as a `ui_widget_on(...)` call plus a forward declaration in the
+ generated header. Until now this form failed TypeScript's type check because
+ React declares e.g. `onClick` as `MouseEventHandler | undefined`.
+
+ This release ships a focused JSX type augmentation that widens the subset of
+ `on*` event props that LCUI actually dispatches to also accept `string`. The
+ augmentation is loaded automatically when you `import` from `@lcui/react`,
+ so no user-side configuration is required. Covered props (chosen from
+ `ui_event_type_t`):
+ - Mouse: `onClick`, `onDoubleClick`, `onMouseDown`, `onMouseUp`,
+ `onMouseMove`, `onMouseOver`, `onMouseOut`, `onWheel`
+ - Keyboard: `onKeyDown`, `onKeyUp`, `onKeyPress`
+ - Focus: `onFocus`, `onBlur`
+ - Clipboard: `onPaste`
+ - Form / value change: `onChange` (semantic `"change"` event dispatched by
+ widgets such as `TextInput`)
+
+ Event-name compatibility is handled by a small remap table in the React
+ compiler so the names users write match the names LCUI actually dispatches:
+ - `onDoubleClick` → `"dblclick"` (instead of the default `"doubleclick"`)
+ - everything else falls back to the existing `onXxx → "xxx"` rule
+
+ `TextInputProps` now also declares `onChange` explicitly for better IDE
+ hints on ``.
+
+ Props for browser-only events (drag / pointer / animation / transition /
+ contextmenu / touch with mismatched names) and the `SVGAttributes`
+ namespace are intentionally **not** widened: passing a string on those will
+ keep failing type-checking, so users do not end up with code that compiles
+ but cannot bind at runtime.
-* 结点名称与组件名称不一致 ([3cc733b](https://gitee.com/lcui-dev/react/commits/3cc733b5c869efb0c120c72057c1063f5afadae8))
-* 指定 ref 属性后未正确生成对应结构体成员 ([a3b7920](https://gitee.com/lcui-dev/react/commits/a3b792036a4e7cfeaed0446f286127e804a1b93a))
-* fmt() 函数生成的代码缺失必要头文件 ([efb4ea4](https://gitee.com/lcui-dev/react/commits/efb4ea456175964ed21eba800c889f51fe6816b5))
+ JavaScript callbacks (`onClick={() => { ... }}`) continue to work unchanged
+ and remain type-checked as before. Invalid values like `onClick={42}` are
+ still rejected.
+### Patch Changes
+
+- b39bde0: Repository restructure: the three packages now live in a single monorepo at
+ [`lcui-dev/lcui-toolkit`](https://github.com/lcui-dev/lcui-toolkit), managed with
+ npm workspaces and Changesets. The original repositories have been archived.
+ No runtime behaviour changes; published artifacts are equivalent to the prior
+ standalone releases.
### Features
-* 添加 ScrollArea 组件 ([bdbd870](https://gitee.com/lcui-dev/react/commits/bdbd870299aba7d54bc60a27aa1c4988a9d634e3))
-* 添加 Scrollbar 组件 ([766ca91](https://gitee.com/lcui-dev/react/commits/766ca91ff8c1ce3fe7d60b3f88355557d08221c2))
-* 支持用函数名称绑定事件处理器 ([31a38d6](https://gitee.com/lcui-dev/react/commits/31a38d65ec3065b7999581137dd2fe68a0755cbe))
-* useState() 函数支持传入第二个参数指定值类型 ([ace2bc2](https://gitee.com/lcui-dev/react/commits/ace2bc2a84d99d45d7ab3b2813096afa2852446c))
+- 更新头文件名称 ui\_\_widgets.h -> LCUI/widgets.h ([78fac30](https://gitee.com/lcui-dev/react/commits/78fac308d625babff87c2f1ff892b33ed78f1b84))
+
+# [0.4.0](https://gitee.com/lcui-dev/react/compare/v0.3.0...v0.4.0) (2024-12-22)
+
+### Bug Fixes
+- 结点名称与组件名称不一致 ([3cc733b](https://gitee.com/lcui-dev/react/commits/3cc733b5c869efb0c120c72057c1063f5afadae8))
+- 指定 ref 属性后未正确生成对应结构体成员 ([a3b7920](https://gitee.com/lcui-dev/react/commits/a3b792036a4e7cfeaed0446f286127e804a1b93a))
+- fmt() 函数生成的代码缺失必要头文件 ([efb4ea4](https://gitee.com/lcui-dev/react/commits/efb4ea456175964ed21eba800c889f51fe6816b5))
+### Features
+- 添加 ScrollArea 组件 ([bdbd870](https://gitee.com/lcui-dev/react/commits/bdbd870299aba7d54bc60a27aa1c4988a9d634e3))
+- 添加 Scrollbar 组件 ([766ca91](https://gitee.com/lcui-dev/react/commits/766ca91ff8c1ce3fe7d60b3f88355557d08221c2))
+- 支持用函数名称绑定事件处理器 ([31a38d6](https://gitee.com/lcui-dev/react/commits/31a38d65ec3065b7999581137dd2fe68a0755cbe))
+- useState() 函数支持传入第二个参数指定值类型 ([ace2bc2](https://gitee.com/lcui-dev/react/commits/ace2bc2a84d99d45d7ab3b2813096afa2852446c))
diff --git a/packages/react/package.json b/packages/react/package.json
index 73b1182..cd1ff06 100644
--- a/packages/react/package.json
+++ b/packages/react/package.json
@@ -1,6 +1,6 @@
{
"name": "@lcui/react",
- "version": "0.5.0",
+ "version": "0.6.0",
"type": "module",
"description": "A React library for LCUI development",
"main": "lib/index.js",