Scrivito JS SDK 1.26.0 Released – Featuring Support for Lazy Image Loading

Improved website performance through lazy image loading

Native lazy-loading is a modern web technology that has been implemented by all major browser vendors in the recent years. It defers loading images until they are scrolled into view and thus reduces the bandwidth needed for a page to be displayed in full.

The Scrivito.ImageTag component is now compatible with browser-level lazy loading by respecting the loading=“lazy” property.

Overhauled in-place text editor

Over the years, Scrivito’s in-place HTML editor has become a bit rusty and has accumulated several small issues so we modernized it!

Editors will notice the new link toolbar for opening the destination of an HTML link even while editing in-place. The second noticeable change is the paragraph format drop-down menu, which combines the mutually exclusive options for headings and pre-formatted text.

We preserved the overall look and feel of the tool so that the editing experience remains the same. Under the hood, however, the new editor rectifies the issues listed below. Note that the new in-place editing features are only available to users of edit.scrivito.com.

Improvements and adjustments

  • Better text accessibility and improved screen reader support. For the bold, italic, and strike-through styles, semantic markup is used now, i.e., “strong”, “em” and “s” tags instead of “b”, “i” and “strike”.
  • Removing the styles of a headline now always works, even after merging it with the next paragraph.
  • Pasting text no longer inserts “span” tags with “style” attributes.
  • Nested lists with advanced CSS-based item numbering schemes now produce the expected numbers and a valid tag hierarchy.
  • Underlined text can now be changed back to non-underlined text in all situations.

Estimating the volume of a working copy

As an editor, you can now instantly see how many pages (or images, etc.) have been changed in a working copy simply by opening the “Working Copies” sidebar. Each element on this sidebar is now equipped with such a counter, enabling you to estimate the effort associated with the corresponding working copy.

Duplicating pages via the page hierarchy

For more convenience, pages can now also be duplicated from within the hierarchy browser. This eliminates the need to open the page before it can be duplicated in a second step using the corresponding item from the main menu.

Further improvements

  • Faster display of properties groups

    The properties of a page or widget can be grouped by means of a propertiesGroups definition in the call to Scrivito.provideEditingConfig. The tabs representing such properties groups in properties views can now be rendered faster by following the React recommendation to make such lists individually identifiable using a unique key. For details, see the documentation.

  • Clearer user interface for workflow actions

    For improved ease of use, when collaborating using workflows, the editing interface now displays buttons only for those actions that are available to the editor or reviewer.

  • Support for programmatically enriching textual website content

    For enhancing HTML markup as it can be found in attributes of the html type (used by text widgets, for example), the Scrivito.resolveHtmlUrls API method has been provided. It returns the markup passed in from such attributes, but with all internal URLs (pointing to content managed by the same Scrivito CMS) transformed to fully qualified URLs, allowing you to customize, i.e. further process, the markup before rendering it. This way, text fragments can be replaced, special highlighting can be applied, etc., to optimize the usability of your content for editors or visitors.

  • Displaying page and widget properties dynamically for more consistency

    On properties views of pages (and other types of content) as well as widgets, the attributes to be displayed or made available for editing can now be determined dynamically. If, for example, selecting a specific option using an enum attribute causes other attributes to become irrelevant, they can now be hidden. For this, the list of properties (and also properties groups) to include on properties views can now be provided by means of a callback in the editing configuration concerned.

  • API for determining a custom component’s context

    Custom components can show up either on a sidebar panel or in properties dialogs. Both use individual themes, dark and light respectively. Using the new Scrivito.uiContext method, such components can adapt their styles to their respective environment.

  • Fixed bugs

    • In some cases, HTML attributes in properties dialogs unexpectedly appeared as read-only. Editing rich text in properties dialogs now always works as expected.

    • Scrivito.ContentTag now handles clicks on links properly even if dangerouslySetInnerHTML has been passed in.

More great blog posts from Andreas Viebke

  • Advanced Date and Time Editing

    Latest updates to edit.scrivito.com

    After receiving feedback from power users, we’ve extended the date and time editing options. Manual date input Some editors need to provide many dates in their daily work. For these users, pointing and clicking again and again becomes tiresome after a while. With the new option to specify a date...

  • Deleting Website Sections in One Step

    Latest updates to edit.scrivito.com

    Sometimes, a section or subsection of a website becomes obsolete, for example, if a product is no longer sold, or part of the documentation isn’t needed anymore. In this situation, you can still delete the pages one by one, starting at the lowest hierarchy level of the section concerned, but you...

  • Modernized Buttons and Icons

    Latest updates to edit.scrivito.com

    We made the editing interface more attractive and user-friendly by brushing up its icon set. The icons are now easier to distinguish and more consistent in style. Some details have been removed from them so that the buttons work better for more editors, especially those with lower resolution...

  • Scrivito Editing Interface Improvements

    Latest updates to edit.scrivito.com

    Adding users to a working copy has become easier. The “Collaborators” selection box now also includes editors whose email address matches the search term. In the German-language Scrivito UI, you can now enter floating numbers in the standard German format, in which a comma instead of a period is...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.31.0 Released

    Server-side access to restricted content via Node.js You can now also access restricted Scrivito content on a server, e.g. for archiving your website content. For this, the apiKey option was added to Scrivito.configure . See also Using Scrivito with Node.js. Scrivito = require("scrivito")...

  • All Publish Buttons Now Work the Same

    Latest updates to edit.scrivito.com

    The behavior of the “Publish” buttons in Scrivito’s editing interface has been improved and aligned: All of these buttons now directly open the confirmation dialog which now also includes a button for opening the “Changes” list and getting an overview of the content that was altered. Thank you...

  • Scrivito Editing Interface Improvements

    Latest changes to edit.scrivito.com

    The active Content Browser tab is preserved The Content Browser sometimes prevented editors from quickly inspecting the properties of multiple objects one after the other. When the user selects another object of the same type, the active tab now remains open. Thank you for using Scrivito! Please...

  • Scrivito Editing Interface Improvements

    Latest changes to edit.scrivito.com

    A distinctive icon for new and changed images Editors mainly have to deal with two types of content objects: pages and images. To make it easier to spot such objects for reviewing them, a dedicated icon for images is now displayed in the “Changes” sidebar and dialog. Thank you for using Scrivito!...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.30.0 Released – Featuring Layout Components

    Introducing layout components, optionally with editable content You can now implement page-type-specific layout components and optionally have them render attributes for editor-defined content. If such layouts are present for a page that is part of the page hierarchy, the layout components of the...

  • Scrivito for Rails SDK 1.18.0 Released

    Added support for Ruby on Rails 7.0 The Scrivito for Rails SDK now supports Ruby on Rails 7.0. It requires Ruby 2.7 or later. Earlier Rails versions are no longer supported by Scrivito. Note that during the upgrade you will need to migrate from Rails 5.2 (with Scrivito 1.17.0 ) directly to Rails...