Enabling versioning in Swift publication
DX Core publishing versions pages by default in the publishing process. To enable versioning for content within the Assets app and other content applications when using Swift publication, each respective application needs configuration.
Configuring content apps
To configure content applications for versioning with Swift publication, follow the steps illustrated using the Personas app below.
-
Modify
versions.yaml
: Update this dialog definition to inherit version configurations from theswift-versioning-ui
module.personalization-personas-app/dialogs/versions.yaml!inherit:swift-versioning-ui:versions (1) actions: commit: appName: personas-app subAppName: detail
1 Changed from the default !inherit:ui-framework-jcr:versions
. -
Update publishing actions: Ensure all publishing, deletion, and restore actions use the
external
catalog.personalization-personas-app/apps/personas-app.yaml... activate: catalog: external (1) $type: jcrCommandAction command: publish icon: icon-publish availability: writePermissionRequired: true rules: IsNotDeletedRule: *IsNotDeletedRule ...
1 Changed from the default versioned
.
Configuring the DAM app
The DAM app’s versioning configuration for Swift publication mirrors that of other content apps. You should decorate publishing, deletion, and restore actions for Swift publication.
-
The
catalog
property must be set toexternal
. -
The
bulk
property isn’t supported and must be set tofalse
.
publish:
icon: icon-publish
class: info.magnolia.ui.contentapp.action.JcrCommandActionDefinition
command: publish
catalog: external (1)
bulk: false (2)
availability:
multiple: true
writePermissionRequired: true
rules:
notDeleted: *notDeleted
isPublishable: &isPublishable
$type: jcrPublishableRule
1 | The catalog property is set to external for Swift publication. |
2 | The bulk property is set to false because it isn’t supported in Swift publication. |