Scrivito JS SDK 1.25.0 Released – Featuring TypeScript Support

Posted on September 14, 2021
BETA

Introducing TypeScript definitions

Under the hood, Scrivito has been using TypeScript for quite a while now, and it’s time to let Scrivito application developers benefit from TypeScript as well. Developing Scrivito apps is now much faster and less error prone than ever.

This Scrivito SDK release is the first to include types. See Getting Started with TypeScript for details. – Note that we’re reserving the right to rename or adjust the definitions during the beta phase.

We would highly appreciate your feedback on what you would like to see improved, extended, or altered.

Editing interface improvements

Copypasting including subpages

Like “Paste as subpage”, this new menu command places a copy of the page on the clipboard underneath the current page. However, subpages are included, meaning that any site section (i.e. partial page hierarchy) can be duplicated, provided that the user’s permissions are sufficient for this.

Displaying thumbnails in the Content Browser

To enable editors to better distinguish the various page, image, etc., types of content in the Content Browser, developers can now assign thumbnails to them. For this, a new callback, thumbnailForContent, was made available in the editing configuration of object classes.

For your convenience, Scrivito now automatically converts email addresses to links by adding the “mailto” prefix to them.

Linked-by counter

Editors can now determine the number of pages that link to or reference a specific page or image without having to open the “Linked by” tab in the page properties or the Content Browser. For this, the “Linked by” tab label now includes this number.

Disabling HTML markup editing

To prevent editors from viewing or changing the markup of an html attribute, you can now hide the corresponding “HTML” tab from the page or widget properties by setting its showHtmlSource flag to false in the editing configuration.

Validation notifications are limited to the changes sidebar

On most sidebar panels, indicating validations by means of colored borders turned out to be counterproductive so we removed them from all panels except “Changes”.

Customizable preview sizes

To be able to offer a customized set of preview sizes to editors, you can now replace the default options on the corresponding sidebar with your own ones. For this, the Scrivito.configurePreviewSizes method has been provided.

Further improvements

Customizing widgets on creation

Next to pages (and all other kinds of CMS content), now also widgets that are created using Scrivito’s editing interface can be initialized (e.g. by setting their attributes depending on their context) via the initialize callback in the editing configuration for their respective class.

API for checking if the editor may change a page

For preventing unauthorized changes in a working copy through custom editing components or custom dialogs, an API method for checking the editor’s permission to alter a specific piece of content, e.g. a page, Scrivito.canEdit has been added. In contrast to Scrivito.canWrite, the new method also takes account of the workflow this content is subject to.

Fixed bugs

  • A bug, which prevented the Scrivito.LinkTag component from properly navigating inside the editing interface with _top as the target, has been fixed.
  • The Scrivito.currentEditor API method resulted in an error if the current editor didn’t have permission to manage users. It now works as intended for all editors.