Migrate Journey Workspaces from 22.10 to 23.04
Overview
Journey Workspaces 23.04 configuration is largely the same as 22.10 configuration with some exceptions. The configurations mentioned below are the the key areas affected by migration from 22.10 to 23.04. Nevertheless, it is important to review and modify other parts of the configuration as necessary to ensure compatibility with this release. For more information, see Upgrade to a new release.
note
App templates in this release are not backward compatible with older Journey Manager releases due to required API changes.
Actions refactor
In the previous release, the txnActions
property and the jobActions
property were used to define transaction and job actions, respectively. However, in this release, both txnActions
and jobActions
no longer exist as separate entities. Instead, the actions
property is used to define all actions. The action labels remain the same, but the structure has changed. The following code samples illustrate this change.
actions: {
Recover: {
label: 'Recover',
},
Withdraw: {
label: 'Withdraw',
},
ViewForm: {
label: 'View Form',
},
Receipt: {
label: 'Receipt',
},
// ...
},
txnActions: {
Recover: {
label: 'Recover',
},
Withdraw: {
label: 'Withdraw',
},
ViewForm: {
label: 'View Form',
},
// ...
},
jobActions: {
Receipt: {
label: 'Receipt',
},
// ...
},
note
The View Notes action is removed in this release as all notes can now be viewed in the new Notes card which consolidates all notes for an application into a single location. A new Add Notes action is introduced to enable adding notes against a task, and this can be added to any space configuration. To learn more about these action changes, see Actions.
In addition, the Receipt action, which was previously included in jobActions
, is now defined under the actions
property, following the same structure change. The new receipt source requires the Workspaces WAR file from the 23.04.0 release or later. Hence, if you need the receipt feature in your app, make sure to upgrade to Journey Manager 23.04.0 or later.
Key Info card refactor
A new jobKeyInfo
property is introduced in this release, allowing key info to be displayed at the application level as well as the task level. This new property complements the keyInfo
property which is unchanged in this release.
keyInfo: ['$primaryName', '$slaDate', '$assigned', '$currentTask', '$formLastModified'],
jobKeyInfo: ['$product', '$currentQueue', '$appAge'],
keyInfo: ['$primaryName', '$appId', '$slaDate', '$assigned', '$currentQueue', '$product'],
craco.config.js file changes
Open craco.config.js
, located in the root of your application's repo, and replace the file contents with the following:
module.exports = {
webpack: {
configure: webpackConfig => {
const scopePluginIndex = webpackConfig.resolve.plugins.findIndex(
({ constructor }) => constructor && constructor.name === 'ModuleScopePlugin'
);
// Required for Webpack 5/ Node 18
const webpackConfigNode18 = {
...webpackConfig,
resolve: {
...webpackConfig.resolve,
fallback: {
...webpackConfig.resolve.fallback,
stream: require.resolve("stream-browserify"),
},
},
};
webpackConfigNode18.resolve.plugins.splice(scopePluginIndex, 1);
return webpackConfigNode18;
}
}
};
You should now be able to run npm start
(or yarn start
) to start your application as normal.