Skip to content

feat(core): add ContentEditableController for DOM-based editing#134

Merged
Nowely merged 4 commits intonextfrom
simpl-dom
Mar 7, 2026
Merged

feat(core): add ContentEditableController for DOM-based editing#134
Nowely merged 4 commits intonextfrom
simpl-dom

Conversation

@Nowely
Copy link
Owner

@Nowely Nowely commented Mar 6, 2026

Summary

  • Adds ContentEditableController to manage contenteditable DOM behavior as a dedicated core feature
  • Integrates the controller into coreFeatures and Lifecycle for proper initialization/sync
  • Fixes sync not being called when the controller is enabled
  • Removes duplicate token usage in useCoreFeatures hook
  • Updates TextSpan in both React and Vue to reflect the new controller integration
  • Adjusts slot specs to align with updated behavior

@vercel
Copy link

vercel bot commented Mar 6, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
marked-input Ready Ready Preview, Comment Mar 6, 2026 4:54pm
markput-website Ready Ready Preview, Comment Mar 6, 2026 4:54pm

@Nowely Nowely changed the title feat(core): move ContentEditableController to core feat(core): add ContentEditableController for reactive contenteditable management Mar 6, 2026
Nowely added 2 commits March 7, 2026 13:09
…tures

- Introduced `ContentEditableController` to manage content editable states.
- Registered `ContentEditableController` in core features and store.
- Updated `Lifecycle` to synchronize content editable state during focus recovery.
- Removed readOnly handling from `TextSpan` components in React and Vue, allowing for dynamic content editing.
…troller

- Moved the `this.sync()` call to the beginning of the `enable` method to ensure synchronization occurs immediately when the controller is enabled.
- Updated tests in `Base.spec.tsx` and `slots.spec.tsx` to check for the presence of elements and their attributes more reliably, improving test accuracy.
@vercel
Copy link

vercel bot commented Mar 7, 2026

Deployment failed with the following error:

Resource is limited - try again in 7 hours (more than 100, code: "api-deployments-free-per-day").

Learn More: https://vercel.com/nowelys-projects?upgradeToPro=build-rate-limit

- Eliminated redundant declaration of `tokens` in the `useCoreFeatures` hook to streamline the code.
- Ensured that the `tokens` variable is only defined once, improving readability and maintainability.
@vercel
Copy link

vercel bot commented Mar 7, 2026

Deployment failed with the following error:

Resource is limited - try again in 4 hours (more than 100, code: "api-deployments-free-per-day").

Learn More: https://vercel.com/nowelys-projects?upgradeToPro=build-rate-limit

@Nowely Nowely changed the title feat(core): add ContentEditableController for reactive contenteditable management feat(core): add ContentEditableController for DOM-based editing Mar 7, 2026
…casting

- Removed redundant type casting for `slots` and `slotProps` in `TextSpan.vue`, enhancing code clarity and maintainability.
- Streamlined the component's setup by directly using the store's state without additional type assertions.
@Nowely Nowely merged commit 633133b into next Mar 7, 2026
6 of 9 checks passed
@Nowely Nowely deleted the simpl-dom branch March 7, 2026 13:43
Nowely pushed a commit that referenced this pull request Mar 7, 2026
🤖 I have created a release *beep* *boop*
---


## [0.5.0](0.4.0...0.5.0)
(2026-03-07)


### Features

* **core:** add ContentEditableController for DOM-based editing
([#134](#134))
([633133b](633133b))


### Refactoring

* extract shared logic from framework adapters to core
([#145](#145))
([795c0e8](795c0e8))
* improve Signal typing with interface augmentation for
framework-specific use() return types
([#143](#143))
([e6d4efc](e6d4efc))


### Miscellaneous

* migrate to pnpm catalog for centralized dependency management
([#140](#140))
([b71cd55](b71cd55))
* update oxlint configuration
([#144](#144))
([1db73ec](1db73ec))


### Tests

* add comprehensive Vue component tests with Vitest
([#142](#142))
([231f3dc](231f3dc))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant