From cbff2dd589872d16a1237578ab22d0c1209c8231 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20=C5=BB=C3=B3=C5=82kiewski?= Date: Mon, 27 Jul 2026 13:50:28 +0200 Subject: [PATCH 1/2] docs: make web stable --- README.md | 8 ++------ docs/INPUT_API_REFERENCE.md | 2 -- docs/TEXT_API_REFERENCE.md | 2 -- docs/WEB.md | 30 +----------------------------- 4 files changed, 3 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 688439c90..970c70951 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ - ⚡ Fully native input and display components (Supports New Architecture only) - 💻 HTML-based parsing with live, synchronous text styling - 🎨 Fully customizable styles for seamless UI integration -- 🌐 Solid mobile support with an experimental Web implementation +- 🌐 Solid mobile and web support `EnrichedTextInput`, the rich text input component is an uncontrolled input. This means that it doesn't use any state or props to store its value, but instead directly interacts with the underlying platform-specific components. Thanks to this, the component is really performant and simple to use while offering complex and advanced features no other solution has. @@ -46,7 +46,7 @@ We can help you build your next dream product – ## Prerequisites -- `react-native-enriched-html` currently supports Android and iOS, Web implementation is still experimental. +- `react-native-enriched-html` currently supports Android, iOS and Web. - It works only with [the React Native New Architecture (Fabric)](https://reactnative.dev/architecture/landing-page) and supports following React Native releases: `0.81`, `0.82`, `0.83`, `0.84`, `0.85` and `0.86`. ## Installation @@ -379,10 +379,6 @@ See the [EnrichedText API Reference](docs/TEXT_API_REFERENCE.md) for the `Enrich - Only one level of lists is supported. We currently do not support nested lists. -## Future Plans - -- Web support: currently in the experimental stage. Details in [docs/WEB.md](docs/WEB.md). - ## Contributing See the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the repository and the development workflow. diff --git a/docs/INPUT_API_REFERENCE.md b/docs/INPUT_API_REFERENCE.md index 67ed97a5d..20dfad7aa 100644 --- a/docs/INPUT_API_REFERENCE.md +++ b/docs/INPUT_API_REFERENCE.md @@ -1,7 +1,5 @@ # API Reference -> **Web support is experimental.** Behavior may change without a major version bump. - ## Props ### `allowFontScaling` diff --git a/docs/TEXT_API_REFERENCE.md b/docs/TEXT_API_REFERENCE.md index af7f375df..40e951a18 100644 --- a/docs/TEXT_API_REFERENCE.md +++ b/docs/TEXT_API_REFERENCE.md @@ -1,7 +1,5 @@ # EnrichedText API Reference -> **Web support is experimental.** Behavior may change without a major version bump. - ## Props ### `allowFontScaling` diff --git a/docs/WEB.md b/docs/WEB.md index 1c1f9763e..78ec25cfe 100644 --- a/docs/WEB.md +++ b/docs/WEB.md @@ -1,28 +1,7 @@ -# Web Support (Experimental) - -Web support is still experimental. APIs and behavior can change in future releases without a major version bump. Expect breaking changes until the web path is stabilized. +# Web Support ## Enriched Text Input -### What works - -- Inline marks: bold, italic, underline, strikethrough, inline code -- Headings (h1-h6) -- Blockquote, code block -- Ordered lists, unordered lists, checkbox lists -- Images (via `setImage` ref method and optional `onPasteImages` when pasting image data) -- Manual links (via `setLink` ref method) -- Mentions -- Automatic link detection -- `getHTML`, `setValue`, selection mapping -- Core callbacks: `onChange`, `onChangeState`, `onFocus`, `onBlur`, `onSelectionChange` -- Submit props: `submitBehavior` and `onSubmitEditing`. `returnKeyType` is only a hint, it maps to [enterkeyhint](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint) (`done`, `go`, `next`, `previous`, `search`, `send`, `default`/`enter`). Not all values of `ReturnKeyTypeOptions` are supported, the behavior of this prop is heavily dependent on the browser's capabilities. -- Input theming via `placeholderTextColor`, `cursorColor` and `selectionColor` props -- Keyboard shortcuts for formatting -- `useHtmlNormalizer` -- Setting text alignment via `setTextAlignment()` -- `textShortcuts` - ### Keyboard shortcuts See [Web Keyboard Shortcuts](./INPUT_API_REFERENCE.md#web-keyboard-shortcuts) for the up-to-date list of Web keyboard shortcuts. @@ -36,13 +15,6 @@ See [Web Keyboard Shortcuts](./INPUT_API_REFERENCE.md#web-keyboard-shortcuts) fo ## Enriched Text -### What works - -- Customizing the styling using props: `style`, `htmlStyle`, `selectionColor`. -- `selectable` prop -- `useHtmlNormalizer` -- `onLinkPress` and `onMentionPress` callbacks - ### Unsupported - **`ellipsizeMode`**: ignored on web. From fb8668ff5ed9eac4fc9147e53594521fbd08c739 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20=C5=BB=C3=B3=C5=82kiewski?= Date: Mon, 27 Jul 2026 14:54:11 +0200 Subject: [PATCH 2/2] docs: remove future plans --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 970c70951..b6a37868d 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,6 @@ We can help you build your next dream product – - [EnrichedText component](#enrichedtext-component) - [API Reference](#api-reference) - [Known limitations](#known-limitations) -- [Future Plans](#future-plans) - [Contributing](#contributing) - [License](#license) @@ -290,7 +289,7 @@ You can find some examples in the [usage section](#usage) or in the example app. - [onFocus](docs/INPUT_API_REFERENCE.md#onfocus) - emits whenever input focuses. - [onBlur](docs/INPUT_API_REFERENCE.md) - emits whenever input blurs. - [onChangeText](docs/INPUT_API_REFERENCE.md#onchangetext) - returns the input's text anytime it changes. -- [onChangeHtml](docs/INPUT_API_REFERENCE.md#onchangehtml) - returns HTML string parsed from current input text and styles anytime it would change. As parsing the HTML on each input change is a pretty expensive operation, not assigning the event's callback will speed up iOS input a bit. We are considering adding some API to improve it, see [future plans](#future-plans). +- [onChangeHtml](docs/INPUT_API_REFERENCE.md#onchangehtml) - returns HTML string parsed from current input text and styles anytime it would change. As parsing the HTML on each input change is a pretty expensive operation, not assigning the event's callback will speed up iOS input a bit. - [onChangeSelection](docs/INPUT_API_REFERENCE.md#onchangeselection) - returns all the data needed for working with selections (as of now it's mainly useful for [links](#links)). - [onLinkDetected](docs/INPUT_API_REFERENCE.md#onlinkdetected) - returns link's detailed info whenever user selection is near one. - [onMentionDetected](docs/INPUT_API_REFERENCE.md#onmentiondetected) - returns mention's detailed info whenever user selection is near one.