Skip to main content

v1.0.0-rc.1

  • Added — Library: a new toolbar button opens a catalogue of ready-made blocks, patterns and templates; browse by library, type and category, preview at desktop, tablet or mobile size, then insert.
  • Added — Library: save a selection of blocks as a pattern or a template from the block menu (Save to library), filed in a library and a category you create as you go and rename or delete from the sidebar.
  • Added — Library: inserting a pattern brings the styles it needs, in a single undo step; the classes, variables and at-rules you already have are reused, never overwritten.
  • Added — Library: share your libraries with other sites running Unblock through access tokens, each opening the libraries you choose, and connect the sites you were given a token for.
  • Improved — Editor: the selected breakpoint now follows the actual canvas width when resizing or switching device, so every breakpoint can be reached; some tablet breakpoints could never be selected by resizing before.

Library

  • Added — Library: a new toolbar button opens a catalogue of ready-made blocks, patterns and templates; browse by library, type and category, preview at desktop, tablet or mobile size, then insert.
  • Added — Library: save a selection of blocks as a pattern or a template from the block menu (Save to library), filed in a library and a category you create as you go and rename or delete from the sidebar.
  • Added — Library: inserting a pattern brings the styles it needs, in a single undo step; the classes, variables and at-rules you already have are reused, never overwritten.
  • Added — Library: share your libraries with other sites running Unblock through access tokens, each opening the libraries you choose, and connect the sites you were given a token for.
  • Added — Settings: enable or disable the Unblock Library in the editor.

Editor

  • Improved — Editor: the selected breakpoint now follows the actual canvas width when resizing or switching device, so every breakpoint can be reached; some tablet breakpoints could never be selected by resizing before.
  • Improved — Editor: resizing the canvas with a block selected is smoother; the style panels refresh once the resize settles instead of on every step.
  • Changed — Editor: Unblock blocks now start from a small style reset, in the editor and on the frontend: no default margins, images limited to their container width, and links with a class inheriting the text colour.
  • Changed — Editor: the style element is now reserved to users allowed to save unfiltered HTML; the others get a permission notice instead of markup silently emptied on save.
  • Fixed — Editor: in the Site Editor, the HTML, CSS and JavaScript panel titles were almost invisible (light text on the white panel); they now show in the panel's own text colour.
  • Fixed — Editor: on WordPress 7.1, dragging the canvas resize handles no longer resized the canvas once a breakpoint was selected, and the canvas stayed stuck at that width when switching back to Desktop.
  • Fixed — Editor: selecting a block no longer changes its layout; the outline and the add-block button are drawn outside the block, nothing is inserted into your markup.
  • Fixed — Editor: Element blocks using a button, link, list or another tag that cannot hold extra children no longer raise an invalid-nesting error when selected.
  • Fixed — Editor: Unblock blocks no longer break the Widgets screen.
  • Fixed — Editor: a form inside a block no longer submits, reloads the editor or runs the browser's field validation while you edit it in the canvas.
  • Fixed — Editor: selecting text in an Unblock block no longer drops the selection or slows the editor down.
  • Fixed — Editor: Text blocks can be edited inside content-only sections, like core paragraphs.
  • Fixed — Editor: in the Site Editor, WordPress notices, such as the confirmation after saving a pattern, were hidden behind the Unblock and Library windows; they now show on top.
  • Fixed — HTML inspector: typing an unfinished attribute such as class= filled it with the block's internal data.
  • Fixed — Controls: choosing the Create row in a field that accepts new values put the row's label in the field instead of the name you typed.

AI

  • Changed — AI: MCP sessions are now reserved to administrators by default; developers can open them to other roles with the unblock/ai/mcp/can_use filter.
  • Added — AI: developers can restrict the AI assistant to specific roles with the unblock/ai/chat/can_use filter (anyone who can edit posts by default).
  • Fixed — AI: for users who cannot manage the design system, the assistant staged styles that could never be saved; it now builds without styles, like the library does.
  • Fixed — AI: the assistant no longer adds JavaScript for users who cannot save it; the code was silently dropped on save.
  • Fixed — AI: image generation now requires the permission to upload files, so contributors can no longer add media through the assistant.
  • Fixed — AI: HTML the assistant inserted was broken when an expression held a comparison, such as {{ count < 5 }}.

CSS

  • Added — CSS import: a class whose whole body is a custom property, such as a utility modifier, was imported as a variable and lost; the new as:selector directive keeps it as a selector.
  • Improved — CSS import: importing a large stylesheet spread over many collections is much faster.
  • Fixed — CSS import: importing into a collection could drop the base breakpoint, leaving selectors without their default state.
  • Fixed — CSS import: a :root variable already filed in a collection was duplicated on every import instead of being reused.
  • Fixed — CSS import: an empty collection was created when every selector being imported already existed.
  • Fixed — Multisite: on a network, the generated CSS and JavaScript files were written to the wrong uploads folder.

Security

  • Changed — Security: content saved by users who cannot post unfiltered HTML is sanitized more strictly; inline style attributes are filtered and embedded SVG is cleaned.
  • Fixed — Security: dynamic data reached through brackets or a fallback, such as (user ?? 0).user_email, could return fields reserved to higher capabilities.

Developer

  • Added — The unblock/library/share_access filter decides who may pull a shared library, for paid or per-site access, and receives the access token id in its context.
  • Added — The unblock/library/sources filter and the UNBK_LIBRARY_TRUSTED_KEYS constant pin a shared library's public key, so its content is trusted as-is.
  • Added — The unblock/library/can_use and unblock/library/can_manage filters decide who can browse and insert from the library, and who can manage its libraries, categories and patterns (administrators by default).
  • Changed — The unblock/css/can_read and unblock/css/can_write filters no longer receive the REST request as a second argument.