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.

More great blog posts from Andreas Viebke

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.41.0 RC 1 Released

    Interface Builder improvements Handling data connection errors If you encounter an issue inside your connection callback (e.g. an HTTP 4xx response from a backend), and you want to communicate this to the user, you can now resolve the callback using a Scrivito.DataConnectionError instance to...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.40.0 Released

    Improvements Intermediately rendered components during loading time Scrivito.provideComponent now lets you give proper feedback to the visitor in cases where the actual component that is provided requires some time to load and render itself. This usually short time gap can now be bridged by...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.39.0 Released

    Improvements Enhanced data classes The Scrivito SDK now offers all attributes of a data class as placeholders for its instances, unless configured otherwise via the editing configuration. > As a developer using > Scrivito.provideDataClass > to load external data, you can now also return IDs of...

  • Bienvenue sur Scrivito !

    Latest updates to edit.scrivito.com

    Bienvenue sur Scrivito ! For all you French-speaking users, the Scrivito editing interface is now also available in your language. In addition to dialogs and buttons in French, input fields for page and widget properties have support for locale-specific calendar labels and French number...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.38.0 Released

    Improvements Accessing the current user’s picture The Scrivito.currentEditor API now seamlessly integrates with IAM, allowing developers to access the picture URL associated with the current editor’s IAM profile. Easier attribute type migration There are situations in which a developer needs to...

  • Creating and Linking a Details Page

    Latest updates to edit.scrivito.com

    > After introducing details pages for data items in version 1.36.0 of the Scrivito SDK, the editing interface now offers you to create such a page for a given data class directly from within a data item. If, for example, you have a card widget in your data list widget, and this card widget has a...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.37.0 Released

    Improvements Updating data items using custom logic By defining the update callback of Scrivito.provideDataItem , you can now smoothly update data items using your own logic. This gives you greater control and flexibility in managing your data within your Scrivito app. Prerendering fails early...

  • Scrivito Enterprise CMS - Product Illustration

    Scrivito JS SDK 1.36.1 Bugfix Release

    This release fixes a bug found in version 1.36.0 of the Scrivito JS SDK: Under certain conditions, the renderChild prop of Scrivito.ChildListTag received an argument that was not a child object. This could lead to unexpected app crashes. We apologize for any inconvenience this may have caused!

  • Managing Users and Teams in the JustRelate Console

    Latest updates to edit.scrivito.com

    Scrivito’s user management has moved to the Console After introducing the JustRelate Console in April this year and announcing that authorized Scrivito users would be able to manage their account’s users and teams there, we finally did it: Clicking “Manage users” in the main menu now opens a new...

  • Scrivito JS SDK 1.35.1 Bugfix Release

    Bugfixes All API keys now work properly in Node.js environments In the Scrivito JS SDK, version 1.35.0, we added support for private API keys in a Node.js environment. Due to an encoding error when passing the credentials to the Scrivito backend, some keys didn’t grant access to restricted...