From bdd7b800c804d7be1e32326af47e23a5df569080 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 13 Aug 2026 10:31:33 +0000 Subject: [PATCH] chore(release): version packages --- .changeset/native-close-on-back-default.md | 7 --- .changeset/native-substrate.md | 38 ---------------- .changeset/state-machine-0-3-2.md | 9 ---- packages/core/dialog/CHANGELOG.md | 43 ++++++++++++++++++ packages/core/dialog/package.json | 2 +- packages/native/dialog/CHANGELOG.md | 51 ++++++++++++++++++++++ packages/native/dialog/package.json | 2 +- packages/react/dialog/CHANGELOG.md | 44 +++++++++++++++++++ packages/react/dialog/package.json | 2 +- 9 files changed, 141 insertions(+), 57 deletions(-) delete mode 100644 .changeset/native-close-on-back-default.md delete mode 100644 .changeset/native-substrate.md delete mode 100644 .changeset/state-machine-0-3-2.md create mode 100644 packages/native/dialog/CHANGELOG.md diff --git a/.changeset/native-close-on-back-default.md b/.changeset/native-close-on-back-default.md deleted file mode 100644 index 2ccedb2..0000000 --- a/.changeset/native-close-on-back-default.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@dunky.dev/native-dialog': minor ---- - -Hardware Back now dismisses the dialog by default: `closeOnBack` defaults to `true` on the native substrate (the core default stays `false`). - -Back is Android's dismiss gesture for transient surfaces — native `Dialog`s are `cancelable` by default — and it plays the same role Escape does on the web, where `closeOnEscape` already defaults to `true`. Requiring an opt-in inverted that platform expectation. Opt out per dialog with `closeOnBack={false}`; the `onBackNavigation` veto is unchanged. diff --git a/.changeset/native-substrate.md b/.changeset/native-substrate.md deleted file mode 100644 index 042f910..0000000 --- a/.changeset/native-substrate.md +++ /dev/null @@ -1,38 +0,0 @@ ---- -'@dunky.dev/native-dialog': minor -'@dunky.dev/dialog': minor -'@dunky.dev/react-dialog': patch ---- - -Add `@dunky.dev/native-dialog` — the React Native binding for the dialog, the -first package of the native substrate. Same compound API as the React -binding; the parts translate the core's logical bindings into React Native -props (`onPress`, `accessibilityState`, `accessibilityViewIsModal`), the -Portal renders the host's `Modal`, and the hardware Back press reports -through the core `closeOnBack` contract. - -```tsx -import { Dialog } from '@dunky.dev/native-dialog' -; - - Open - - - - - - Title - - Close - - - - - -``` - -`@dunky.dev/dialog` now exports `dialogEffects` — the substrate-free effect -list (the controlled-open echo) every binding consumes instead of -re-implementing, so the controlled contract can't fork between substrates. A -substrate composes its host-specific effects around it (the React binding -adds its DOM Escape listener); the echo itself is written once, in core. diff --git a/.changeset/state-machine-0-3-2.md b/.changeset/state-machine-0-3-2.md deleted file mode 100644 index acb0536..0000000 --- a/.changeset/state-machine-0-3-2.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@dunky.dev/dialog': patch -'@dunky.dev/react-dialog': patch -'@dunky.dev/native-dialog': patch ---- - -Update the state-machine runtime packages to 0.3.2. - -For `@dunky.dev/native-dialog` this fixes a native crash on Android: the runtime's `normalize` used to emit the machine's `role: 'dialog'` as the legacy `accessibilityRole` prop, which Android rejects at mount (`Invalid accessibility role value: dialog`). It now emits React Native's web-aligned `role` prop, which also restores the intended semantics on iOS (VoiceOver previously got no dialog traits at all). `hidden` now lands on `aria-hidden` instead of being silently ignored. diff --git a/packages/core/dialog/CHANGELOG.md b/packages/core/dialog/CHANGELOG.md index 980e09b..28044cc 100644 --- a/packages/core/dialog/CHANGELOG.md +++ b/packages/core/dialog/CHANGELOG.md @@ -1,5 +1,48 @@ # @dunky.dev/dialog +## 0.3.0 + +### Minor Changes + +- [#33](https://github.com/dunky-dev/ui/pull/33) [`21cc0b8`](https://github.com/dunky-dev/ui/commit/21cc0b82d858789ea0e6a90a7e8d65f4a773d669) Thanks [@ivanbanov](https://github.com/ivanbanov)! - Add `@dunky.dev/native-dialog` — the React Native binding for the dialog, the + first package of the native substrate. Same compound API as the React + binding; the parts translate the core's logical bindings into React Native + props (`onPress`, `accessibilityState`, `accessibilityViewIsModal`), the + Portal renders the host's `Modal`, and the hardware Back press reports + through the core `closeOnBack` contract. + + ```tsx + import { Dialog } from '@dunky.dev/native-dialog' + ; + + Open + + + + + + Title + + Close + + + + + + ``` + + `@dunky.dev/dialog` now exports `dialogEffects` — the substrate-free effect + list (the controlled-open echo) every binding consumes instead of + re-implementing, so the controlled contract can't fork between substrates. A + substrate composes its host-specific effects around it (the React binding + adds its DOM Escape listener); the echo itself is written once, in core. + +### Patch Changes + +- [#33](https://github.com/dunky-dev/ui/pull/33) [`b02dc81`](https://github.com/dunky-dev/ui/commit/b02dc81c524e19dd660bf342ed9583ee91e6b6ee) Thanks [@ivanbanov](https://github.com/ivanbanov)! - Update the state-machine runtime packages to 0.3.2. + + For `@dunky.dev/native-dialog` this fixes a native crash on Android: the runtime's `normalize` used to emit the machine's `role: 'dialog'` as the legacy `accessibilityRole` prop, which Android rejects at mount (`Invalid accessibility role value: dialog`). It now emits React Native's web-aligned `role` prop, which also restores the intended semantics on iOS (VoiceOver previously got no dialog traits at all). `hidden` now lands on `aria-hidden` instead of being silently ignored. + ## 0.2.1 ### Patch Changes diff --git a/packages/core/dialog/package.json b/packages/core/dialog/package.json index e2fdd49..0df5913 100644 --- a/packages/core/dialog/package.json +++ b/packages/core/dialog/package.json @@ -1,6 +1,6 @@ { "name": "@dunky.dev/dialog", - "version": "0.2.1", + "version": "0.3.0", "description": "Framework-agnostic dialog interaction, modeled as a state machine.", "license": "MIT", "repository": { diff --git a/packages/native/dialog/CHANGELOG.md b/packages/native/dialog/CHANGELOG.md new file mode 100644 index 0000000..4cb9e4a --- /dev/null +++ b/packages/native/dialog/CHANGELOG.md @@ -0,0 +1,51 @@ +# @dunky.dev/native-dialog + +## 0.1.0 + +### Minor Changes + +- [#33](https://github.com/dunky-dev/ui/pull/33) [`8c0dde3`](https://github.com/dunky-dev/ui/commit/8c0dde3249d867de7fd556ba02f2bef26687f869) Thanks [@ivanbanov](https://github.com/ivanbanov)! - Hardware Back now dismisses the dialog by default: `closeOnBack` defaults to `true` on the native substrate (the core default stays `false`). + + Back is Android's dismiss gesture for transient surfaces — native `Dialog`s are `cancelable` by default — and it plays the same role Escape does on the web, where `closeOnEscape` already defaults to `true`. Requiring an opt-in inverted that platform expectation. Opt out per dialog with `closeOnBack={false}`; the `onBackNavigation` veto is unchanged. + +- [#33](https://github.com/dunky-dev/ui/pull/33) [`21cc0b8`](https://github.com/dunky-dev/ui/commit/21cc0b82d858789ea0e6a90a7e8d65f4a773d669) Thanks [@ivanbanov](https://github.com/ivanbanov)! - Add `@dunky.dev/native-dialog` — the React Native binding for the dialog, the + first package of the native substrate. Same compound API as the React + binding; the parts translate the core's logical bindings into React Native + props (`onPress`, `accessibilityState`, `accessibilityViewIsModal`), the + Portal renders the host's `Modal`, and the hardware Back press reports + through the core `closeOnBack` contract. + + ```tsx + import { Dialog } from '@dunky.dev/native-dialog' + ; + + Open + + + + + + Title + + Close + + + + + + ``` + + `@dunky.dev/dialog` now exports `dialogEffects` — the substrate-free effect + list (the controlled-open echo) every binding consumes instead of + re-implementing, so the controlled contract can't fork between substrates. A + substrate composes its host-specific effects around it (the React binding + adds its DOM Escape listener); the echo itself is written once, in core. + +### Patch Changes + +- [#33](https://github.com/dunky-dev/ui/pull/33) [`b02dc81`](https://github.com/dunky-dev/ui/commit/b02dc81c524e19dd660bf342ed9583ee91e6b6ee) Thanks [@ivanbanov](https://github.com/ivanbanov)! - Update the state-machine runtime packages to 0.3.2. + + For `@dunky.dev/native-dialog` this fixes a native crash on Android: the runtime's `normalize` used to emit the machine's `role: 'dialog'` as the legacy `accessibilityRole` prop, which Android rejects at mount (`Invalid accessibility role value: dialog`). It now emits React Native's web-aligned `role` prop, which also restores the intended semantics on iOS (VoiceOver previously got no dialog traits at all). `hidden` now lands on `aria-hidden` instead of being silently ignored. + +- Updated dependencies [[`21cc0b8`](https://github.com/dunky-dev/ui/commit/21cc0b82d858789ea0e6a90a7e8d65f4a773d669), [`b02dc81`](https://github.com/dunky-dev/ui/commit/b02dc81c524e19dd660bf342ed9583ee91e6b6ee)]: + - @dunky.dev/dialog@0.3.0 diff --git a/packages/native/dialog/package.json b/packages/native/dialog/package.json index 6b5e3ad..f47069c 100644 --- a/packages/native/dialog/package.json +++ b/packages/native/dialog/package.json @@ -1,6 +1,6 @@ { "name": "@dunky.dev/native-dialog", - "version": "0.0.0", + "version": "0.1.0", "description": "React Native binding for @dunky.dev/dialog.", "license": "MIT", "repository": { diff --git a/packages/react/dialog/CHANGELOG.md b/packages/react/dialog/CHANGELOG.md index 6749270..d78ac99 100644 --- a/packages/react/dialog/CHANGELOG.md +++ b/packages/react/dialog/CHANGELOG.md @@ -1,5 +1,49 @@ # @dunky.dev/react-dialog +## 0.2.2 + +### Patch Changes + +- [#33](https://github.com/dunky-dev/ui/pull/33) [`21cc0b8`](https://github.com/dunky-dev/ui/commit/21cc0b82d858789ea0e6a90a7e8d65f4a773d669) Thanks [@ivanbanov](https://github.com/ivanbanov)! - Add `@dunky.dev/native-dialog` — the React Native binding for the dialog, the + first package of the native substrate. Same compound API as the React + binding; the parts translate the core's logical bindings into React Native + props (`onPress`, `accessibilityState`, `accessibilityViewIsModal`), the + Portal renders the host's `Modal`, and the hardware Back press reports + through the core `closeOnBack` contract. + + ```tsx + import { Dialog } from '@dunky.dev/native-dialog' + ; + + Open + + + + + + Title + + Close + + + + + + ``` + + `@dunky.dev/dialog` now exports `dialogEffects` — the substrate-free effect + list (the controlled-open echo) every binding consumes instead of + re-implementing, so the controlled contract can't fork between substrates. A + substrate composes its host-specific effects around it (the React binding + adds its DOM Escape listener); the echo itself is written once, in core. + +- [#33](https://github.com/dunky-dev/ui/pull/33) [`b02dc81`](https://github.com/dunky-dev/ui/commit/b02dc81c524e19dd660bf342ed9583ee91e6b6ee) Thanks [@ivanbanov](https://github.com/ivanbanov)! - Update the state-machine runtime packages to 0.3.2. + + For `@dunky.dev/native-dialog` this fixes a native crash on Android: the runtime's `normalize` used to emit the machine's `role: 'dialog'` as the legacy `accessibilityRole` prop, which Android rejects at mount (`Invalid accessibility role value: dialog`). It now emits React Native's web-aligned `role` prop, which also restores the intended semantics on iOS (VoiceOver previously got no dialog traits at all). `hidden` now lands on `aria-hidden` instead of being silently ignored. + +- Updated dependencies [[`21cc0b8`](https://github.com/dunky-dev/ui/commit/21cc0b82d858789ea0e6a90a7e8d65f4a773d669), [`b02dc81`](https://github.com/dunky-dev/ui/commit/b02dc81c524e19dd660bf342ed9583ee91e6b6ee)]: + - @dunky.dev/dialog@0.3.0 + ## 0.2.1 ### Patch Changes diff --git a/packages/react/dialog/package.json b/packages/react/dialog/package.json index 2e34be6..2febb6d 100644 --- a/packages/react/dialog/package.json +++ b/packages/react/dialog/package.json @@ -1,6 +1,6 @@ { "name": "@dunky.dev/react-dialog", - "version": "0.2.1", + "version": "0.2.2", "description": "React binding for @dunky.dev/dialog.", "license": "MIT", "repository": {