Measurable Success «10 Checkpoints for Future-Proof Enterprise CMS» White Paper
Measurable Success - White Paper

Scrivito JS SDK 1.3.0 Is Available

Major improvements

Tour for beginners

Scrivito now includes a tour, which introduces the main editing controls to users who are new to Scrivito. After opening the Example App from within the dashboard, the tour starts automatically, but it can also be started using the "Start tour" item in the page menu.

Content Browser lets you open the selected object

After selecting a page or a binary object (e.g. an image) in the Content Browser, a button for conveniently opening it is now available. The object is opened in a new tab.

Widgetlist rendering now supports passing props

When rendering a widgetlist using a Scrivito.ContentTag component, it is now possible to pass props to the individual widgets via a special prop named widgetProps. This comes in especially handy when rendering tightly coupled widgets. Please see the API documentation for details and usage examples.

In-memory tenant for isolating tests from the CMS

A Scrivito-based app can now use an in-memory CMS tenant, meaning that the app can be executed without being connected to a Scrivito CMS. This is handy for running tests that create and access content you don't want to show up on your actual website. Furthermore, no network connection is required for creating, accessing or updating content. The in-memory tenant can be activated via Scrivito.configure().

Scrivito.BackgroundImageTag supports setting background properties

The Scrivito.BackgroundImageTag component now supports providing additional background properties like attachment, position and color. Previously, the values of these properties were fixed.

New API for easily uploading files

The Scrivito JS SDK now provides an easy-to-use method for uploading a file in the process of creating a binary object: Obj.createFromFile. The details can be found in the API documentation.

Further improvements

Fetching the first search result made easier

An ObjSearch instance represents the search results determined by a call to Obj.where() or Obj.all(). The new ObjSearch#first() method lets you fetch the first CMS object from the result set without having to check its size.

Improved pre-rendering support

Scrivito now supports pre-rendering proper canonical URLs for pages. For this, the “protocol://host:port” part (the origin) of the URL returned by Scrivito.urlFor() can now be configured using the new origin key in the options parameter of Scrivito.configure(). Previously, always window.location.origin was used, which is the default now.

Improved UI speed

Due to optimized rerendering, especially when editing text, the user interface is now even more responsive.

Rendering markup programmatically

The new Scrivito.renderPage method renders the markup of a page. It can be used in conjunction with pre-rendering and similar tasks in which the markup of a page needs to generated.

Minimum required React version

Starting at version 1.3.0, ScrivitoJS requires React 16.4.0 or above.

Bugfixes

In rare cases, the contentType, contentLength, contentUrl and metadata instance methods of an Obj could return undocumented results. Now, all of these methods return reasonable values in all cases. Also, Obj#get, Widget#get and MetadataCollection#get now return null instead of undefined if a value is not defined.