feat(rich-text): RichText form field on Tiptap #98
Loading…
Reference in a new issue
No description provided.
Delete branch "task/pienter-ui__rich-text-field__rich-text-component"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Adds
RichText(@pienter/ui/components/RichText.vue), a formatted-text form field on headless Tiptap 3.v-modelis an HTML string limited to one fixed set: paragraphs, headings 2 and 3, bold, italic, lists, links, blockquote. Empty is''. The model only updates on a user edit, so loading a value never marks a form unsaved.href(http, https, mailto, tel, or relative).readonlykeeps a focusable read-only textbox without a toolbar; links are clickable.@tiptap/vue-3,@tiptap/pm,@tiptap/starter-kit,@tiptap/extension-link,@floating-ui/dom. Only apps that importRichTextbundle them. ADR 0010 records this together with HTML storage.Checks: typecheck, lint, format, tests (54),
build:vue,build:storybookgreen. Stories exercised in Chrome.Not verified, needs a visible browser tab: focus return after Undo disables itself and after Escape in the link popover; sticky toolbar in the LongBody story; link-on-paste; Safari, Firefox, screen readers.
Restart the dev servers after merging:
package.jsongains anexportsentry.