0.10.2 (2026-08-04)
- editors: expose block_id and action_id behind an Advanced toggle (d0d0938)
- editors: expose block_id and action_id behind an Advanced toggle (b537e9b)
- ci: grant pull-requests write so the preview comment can post (c388a24)
- ci: grant pull-requests write so the preview comment can post (1b02e35)
- deps: bump slack-block-kit-validator to 0.1.13 for duplicate action_id (84623cb)
0.10.1 (2026-07-22)
- add "Done" button to close block editor context windows (2775c6b)
- add Done button to block editor popover (0f509f0)
- add undo/redo to the block builder (7878585)
- add undo/redo to the block builder (1847f38)
0.10.0 (2026-07-17)
editing={{ onUpdate }}is nowonUpdate={...}(the EditingConfig wrapper is removed; load fields already moved toloading):EditingConfig.onLoadMessage,loadRecentMessages, andinitialTargetare removed. Move them to theloadingprop unchanged:
- apply deep-review fixes — notification correctness, flatten onUpdate, doc/cleanup (20d8d18)
- decouple message loading from update-in-place — loading works in compose-only mode (e4ed168)
- drop the legacy editing load fields — editing is onUpdate-only (d49572e)
- preserve the draft on compose-only banner exit; scope docs (239bb3a)
0.9.10 (2026-07-17)
- caller-customized send — compose-only mode, send-dialog extras, exported primitives (5c8b33e)
- send-dialog extras slot, compose-only primaryAction, exported send primitives (122c2d3)
0.9.9 (2026-07-07)
- add accepted state indicator and Done button to JsonDrawer (6b4b691)
0.9.8 (2026-07-02)
- drop preview_images from data_visualization blocks on retrieval (8706a80)
- sanitize: drop retrieval-only preview_images from data_visualization (5ed158c)
0.9.7 (2026-07-02)
- styles: scope bk-utilities layer to .bk-root / .bk-portal-content (c12ee96)
- styles: scope bk-utilities layer to .bk-root / .bk-portal-content (f91db17)
0.9.6 (2026-07-02)
- editing: pre-load a message into edit mode via editing.initialTarget (aa73bf6)
- editing: pre-load a message into edit mode via editing.initialTarget (a7ed7e8)
0.9.5 (2026-07-01)
- load-dialog: rename find button to "Load message" (ae78d23)
- load-dialog: rename find button to "Load message" (f0228b3)
0.9.4 (2026-07-01)
- json-drawer: add a copy-to-clipboard button on the JSON pane (949f8c5)
- load-dialog: make recent-message previews select-then-load (3a815ae)
- load-dialog: rename Load/Edit copy to Find (0bd5d40)
- load-dialog: shape recent-message previews like Slack messages (d9f0cd1)
- load-dialog: surface Slack sign-in in the find dialog (9736c06)
- update-dialog: add Slack sign-in button with background polling (d144fff)
- update-dialog: Slack sign-in button with background polling (cf2bb4b)
- load-dialog: hide "open as new" for no-match verdicts (6f92686)
- load-dialog: stop clipping the selected-row outline (53079f1)
0.9.3 (2026-07-01)
- load: cleanse blocks on load, not only on send (d56ce81)
- sanitize: scope image-metadata strip to image objects only (001a41b)
- sanitize: strip retrieval-only image metadata before send (d9032fe)
- sanitize: strip retrieval-only image metadata before send (bb1e0b4)
0.9.2 (2026-06-30)
- hooks: resolve worktree-local lefthook instead of path-baking shim (9797918)
- hooks: resolve worktree-local lefthook instead of path-baking shim (d8bc585)
0.9.1 (2026-06-30)
- load-dialog: keep Load button visible and always show a content preview (e71d192)
- load-dialog: show pretty date with raw ts in parens for recent messages (45c55c3)
- reorder send-dialog inputs and switch Load button to mail-search icon (3278291)
- toolbar: keep Load message button visible after a message is loaded (de947a6)
0.9.0 (2026-06-30)
- editing:
EditingConfig.loadRecentMessagesnow takes achannelId
- editing: scope recent-messages picker to a chosen channel (6ed0ad7)
0.8.11 (2026-06-30)
- editing: opt-in message edit mode (load existing + update) (2eac3cf)
- editing: optional author username + icon for the loaded message (d14c429)
- editing: restore Load button; split update into update/send-as-new (345c727)
- editing: show a formatted date in the edit banner (b0e1b5b)
- toolbar: default the send button label to "Review & send" (2e076ca)
- toolbar: align Docs link sizing with the other buttons (f0f4367)
0.8.10 (2026-06-30)
- carousel: full card editor per card + Home Tabs template icon URL (e32874b)
- carousel: full card editor per card; fix Home Tabs template icon URL (0825ef4)
0.8.9 (2026-06-29)
- container: drag blocks into and out of containers on the canvas (2be9e6a)
- container: drag blocks into and out of containers on the canvas (f500dc5)
- container: scope child toolbars to their own hover (2bd06f0)
0.8.8 (2026-06-29)
0.8.7 (2026-06-24)
- add data_visualization (chart) block support (3b477af)
- add underline text style support to rich text editor (732583b)
- rich-text: support underline text style in rich_text blocks (b9a5986)
- support the new Slack data visualization blocks (1e85c06)
- pin slack-blocks-to-jsx to ^1.0.6 (1.0.7 does not exist) (17708c5)
- test: polyfill localStorage for Node 22 unit tests (1f8d995)
0.8.6 (2026-06-12)
- host-controllable preview theme, configurable Send label, Slack JSON import, clearer error indicator (1737fe1)
- host-controllable preview theme, configurable Send label, Slack JSON import, clearer error indicator (00c41f2)
0.8.5 (2026-06-11)
- rich-text: autolink, ordered-list input rule, and soft line breaks (ENG-4850) (cf4d68a)
- rich-text: autolink, ordered-list input rule, and soft line breaks (ENG-4850) (17eb863)
0.8.4 (2026-06-04)
- add emoji picker and rich-text emoji support (89f0ac8)
- emoji: customEmojis prop, preview hook, non-blocking validation (ENG-4792 Phase 1) (870c01d)
- emoji: emoji picker + WYSIWYG emoji node (ENG-4792 Phase 2) (8dc1e65)
- ci: gate release-please publish on releases_created == 'true' (5cd6066)
- ci: gate release-please publish on releases_created == 'true' (f0cf9c7)
- collapse context-block validation error cascade (#88) (9f696c4)
- emoji: clear stale unicode on structured-editor pick; copy-on-write validation sanitizer (bf7e71d)
0.8.3 (2026-05-20)
- task-card: edit details and output rich-text fields in the UI (de41c81)
- task-card: edit details and output rich-text fields in the UI (bbe39ef)
0.8.2 (2026-05-20)
- ci: publish via npm CLI for Trusted Publisher OIDC (#76) (aab5ec8)
- ci: publish via npx and tag prereleases explicitly (#78) (7475c86)
0.8.1 (2026-05-20)
0.8.0 (2026-05-19)
- prepare 0.7.0 release with peer-dep migration and consumer polish (#70)
- palette: consolidate variants to mirror Slack's Block Kit Builder (#39)
- rename package to @tightknitai/block-kitchen (#30)
- palette: consumer-defined palette via
paletteprop (#26) - allowedBlockTypes + allowedSurfaces allowlists (#17)
- a11y: enforce axe in Storybook and fix violations (#14) (565b656)
- add
themeprop for branding the builder chrome (#29) (957c7cd) - add standalone TemplatePicker component (#34) (ef63a69)
- allowedBlockTypes + allowedSurfaces allowlists (#17) (a5185ad)
- demo: make templates panel resizable and auto-shrinking (#54) (8e28fe8)
- demo: prepare for public hosting (#45) (a77cf11)
- dnd: show clear landing position while dragging a block (#19) (dd3554b)
- input: show per-element hint in empty Placeholder field (#67) (4ee73ad)
- mobile: make the builder fully responsive (#65) (5bee7cd)
- palette: consolidate variants to mirror Slack's Block Kit Builder (#39) (b3950c5)
- palette: consumer-defined palette via
paletteprop (#26) (07f09c5) - palette: quick search + collapsible categories (#35) (62e9d00)
- prepare 0.7.0 release with peer-dep migration and consumer polish (#70) (f6c9d7a)
- rename package to @tightknitai/block-kitchen (#30) (f34bd51)
- templates: ship richer default template gallery as library export (#56) (a0c4886)
- theme: add eclectic preset themes (Slack, Ocean, Sunset, Mono, Cyberpunk) (#50) (cd611aa)
- toolbar: restyle docs link and make it configurable (#41) (74cf1d0)
- a11y: keyboard-accessible block reordering + tighter focus order (#60) (01aa7e9)
- a11y: label upstream image/video toggle so axe button-name passes (#24) (543436f)
- block-row: align selection chrome with the visible block (#37) (f0a3a4d)
- ci: publish to npm from release-please workflow (#53) (42ec905)
- demo: apply .dark to <html> so portals follow dark mode (#42) (c81d1a7)
- demo: move templates collapse button to inner edge (#59) (5c2967b)
- palette: align focus + hover styling on the same row element (#31) (ac9495f)
- palette: prevent horizontal scroll on the block menu list (#27) (ba4a1cb)
- preview: clip preview frame children to rounded corners (#43) (4d05156)
- preview: give preview canvas a Slack-style grey for contrast (#55) (1b9ddfc)
- preview: make every block row span the full preview width (#49) (f8fd36c)
- preview: stop double-translating select chevrons (#33) (ce2a228)
- preview: theme the preview canvas via --muted token (#66) (80d766e)
- preview: tighten markdown block list spacing (#57) (50774a1)
- release: drop test step from prepublishOnly (#63) (431ef49)
- security: sanitize URL schemes in block payloads, preview, and editors (#46) (43b1dfc)
- ui: mobile-friendly toolbar, palette sheet, and demo header (#69) (44b4731)
0.6.3-alpha.0 (2026-05-18)
0.6.2-alpha.0 (2026-05-16)
- mobile: make the builder fully responsive (#65) (5bee7cd)
- templates: ship richer default template gallery as library export (#56) (a0c4886)
- a11y: keyboard-accessible block reordering + tighter focus order (#60) (01aa7e9)
- demo: move templates collapse button to inner edge (#59) (5c2967b)
- preview: theme the preview canvas via --muted token (#66) (80d766e)
- release: drop test step from prepublishOnly (#63) (431ef49)
0.6.1-alpha.0 (2026-05-16)
- demo: make templates panel resizable and auto-shrinking (#54) (8e28fe8)
- demo: prepare for public hosting (#45) (a77cf11)
- theme: add eclectic preset themes (Slack, Ocean, Sunset, Mono, Cyberpunk) (#50) (cd611aa)
- ci: publish to npm from release-please workflow (#53) (42ec905)
- preview: give preview canvas a Slack-style grey for contrast (#55) (1b9ddfc)
- preview: make every block row span the full preview width (#49) (f8fd36c)
- preview: tighten markdown block list spacing (#57) (50774a1)
- security: sanitize URL schemes in block payloads, preview, and editors (#46) (43b1dfc)
0.6.0-alpha.0 (2026-05-16)
- palette: consolidate variants to mirror Slack's Block Kit Builder (#39)
- palette: consolidate variants to mirror Slack's Block Kit Builder (#39) (b3950c5)
- toolbar: restyle docs link and make it configurable (#41) (74cf1d0)
0.5.2-alpha.0 (2026-05-16)
0.5.1-alpha.0 (2026-05-16)
0.5.0-alpha.0 (2026-05-16)
- rename package to @tightknitai/block-kitchen (#30)
- palette: consumer-defined palette via
paletteprop (#26) - allowedBlockTypes + allowedSurfaces allowlists (#17)
- a11y: enforce axe in Storybook and fix violations (#14) (565b656)
- add
themeprop for branding the builder chrome (#29) (957c7cd) - allowedBlockTypes + allowedSurfaces allowlists (#17) (a5185ad)
- dnd: show clear landing position while dragging a block (#19) (dd3554b)
- palette: consumer-defined palette via
paletteprop (#26) (07f09c5) - rename package to @tightknitai/block-kitchen (#30) (f34bd51)
- a11y: label upstream image/video toggle so axe button-name passes (#24) (543436f)
- palette: align focus + hover styling on the same row element (#31) (ac9495f)
- palette: prevent horizontal scroll on the block menu list (#27) (ba4a1cb)
- preview: stop double-translating select chevrons (#33) (ce2a228)
0.3.0-alpha.0 (2026-05-16)
- allowedBlockTypes + allowedSurfaces allowlists (#17)