Skip to content

Commit

Permalink
feat: add viewer distributions
Browse files Browse the repository at this point in the history
closes #4
  • Loading branch information
marstamm committed Apr 13, 2022
1 parent b6ce389 commit bfd6c52
Show file tree
Hide file tree
Showing 25 changed files with 836 additions and 16 deletions.
3 changes: 3 additions & 0 deletions lib/base/NavigatedViewer.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import NavigatedViewer from 'bpmn-js/lib/NavigatedViewer';

export default NavigatedViewer;
3 changes: 3 additions & 0 deletions lib/base/Viewer.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import Viewer from 'bpmn-js/lib/Viewer';

export default Viewer;
39 changes: 39 additions & 0 deletions lib/camunda-cloud/NavigatedViewer.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import inherits from 'inherits';

import BaseViewer from '../base/NavigatedViewer';

import iconRendererModule from '@bpmn-io/element-templates-icons-renderer';

import drilldownModule from './features/drilldown';

import zeebeModdle from 'zeebe-bpmn-moddle/resources/zeebe.json';


/**
*
* @param {Object} options
*/
export default function NavigatedViewer(options = {}) {

options = {
...options,
moddleExtensions: {
zeebe: zeebeModdle,
...options.moddleExtensions
}
};

BaseViewer.call(this, options);
}

inherits(NavigatedViewer, BaseViewer);

NavigatedViewer.prototype._camundaCloudModules = [
drilldownModule,
iconRendererModule
];

NavigatedViewer.prototype._modules = [].concat(
BaseViewer.prototype._modules,
NavigatedViewer.prototype._camundaCloudModules
);
39 changes: 39 additions & 0 deletions lib/camunda-cloud/Viewer.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import inherits from 'inherits';

import BaseViewer from '../base/Viewer';

import iconRendererModule from '@bpmn-io/element-templates-icons-renderer';

import drilldownModule from './features/drilldown';

import zeebeModdle from 'zeebe-bpmn-moddle/resources/zeebe.json';


/**
*
* @param {Object} options
*/
export default function Viewer(options = {}) {

options = {
...options,
moddleExtensions: {
zeebe: zeebeModdle,
...options.moddleExtensions
}
};

BaseViewer.call(this, options);
}

inherits(Viewer, BaseViewer);

Viewer.prototype._camundaCloudModules = [
drilldownModule,
iconRendererModule
];

Viewer.prototype._modules = [].concat(
BaseViewer.prototype._modules,
Viewer.prototype._camundaCloudModules
);
25 changes: 25 additions & 0 deletions lib/camunda-platform/NavigatedViewer.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import inherits from 'inherits';

import BaseViewer from '../base/NavigatedViewer';

import camundaModdle from 'camunda-bpmn-moddle/resources/camunda.json';


/**
*
* @param {Object} options
*/
export default function NavigatedViewer(options = {}) {

options = {
...options,
moddleExtensions: {
camunda: camundaModdle,
...options.moddleExtensions
}
};

BaseViewer.call(this, options);
}

inherits(NavigatedViewer, BaseViewer);
24 changes: 24 additions & 0 deletions lib/camunda-platform/Viewer.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import inherits from 'inherits';

import BaseViewer from '../base/Viewer';

import camundaModdle from 'camunda-bpmn-moddle/resources/camunda.json';

/**
*
* @param {Object} options
*/
export default function Viewer(options = {}) {

options = {
...options,
moddleExtensions: {
camunda: camundaModdle,
...options.moddleExtensions
}
};

BaseViewer.call(this, options);
}

inherits(Viewer, BaseViewer);
28 changes: 20 additions & 8 deletions rollup.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ import { terser } from 'rollup-plugin-terser';

import copy from 'rollup-plugin-copy';

const { capitalize, getAllCombinations } = require('./util/index');

const outputDir = 'dist';

const domains = [
Expand All @@ -18,6 +20,14 @@ const domains = [
'camunda-platform'
];

const distributions = [
'modeler',
'viewer',
'navigatedViewer'
];

const buildMatrix = getAllCombinations(domains, distributions);

const styles = [
{
src: resolve('bpmn-js', '/dist/assets/diagram-js.css'),
Expand All @@ -43,32 +53,34 @@ const styles = [
src: resolve('bpmn-js-properties-panel', '/dist/assets/element-templates.css'),
dest: 'dist/assets'
}
].concat(domains.map(function(domain) {
].concat(buildMatrix.map(function([ domain, dist ]) {
return {
src: 'styles/' + domain + '-modeler.css',
src: `styles/${domain}-${dist}.css`,
dest: 'dist/assets'
};
}));

const distros = domains.map(function(domain) {
const distros = buildMatrix.map(function([ domain, dist ]) {
return {
input: domain + '/Modeler',
output: domain + '-modeler'
name: 'Bpmn' + capitalize(dist),
input: `${domain}/${capitalize(dist)}`,
output: `${domain}-${dist}`
};
});

const configs = distros.reduce(function(configs, distro) {
const {
input,
output
output,
name
} = distro;

return [
...configs,
{
input: `./lib/${input}.js`,
output: {
name: 'BpmnModeler',
name: name,
file: `${outputDir}/${output}.development.js`,
format: 'umd'
},
Expand All @@ -79,7 +91,7 @@ const configs = distros.reduce(function(configs, distro) {
{
input: `./lib/${input}.js`,
output: {
name: 'BpmnModeler',
name: name,
file: `${outputDir}/${output}.production.min.js`,
format: 'umd'
},
Expand Down
2 changes: 2 additions & 0 deletions styles/base-navigatedViewer.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
@import './diagram-js.css';
@import './bpmn-js.css';
2 changes: 2 additions & 0 deletions styles/base-viewer.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
@import './diagram-js.css';
@import './bpmn-js.css';
1 change: 1 addition & 0 deletions styles/camunda-cloud-navigatedViewer.css
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
@import './base-viewer.css';
1 change: 1 addition & 0 deletions styles/camunda-cloud-viewer.css
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
@import './base-viewer.css';
1 change: 1 addition & 0 deletions styles/camunda-platform-navigatedViewer.css
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
@import './base-viewer.css';
1 change: 1 addition & 0 deletions styles/camunda-platform-viewer.css
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
@import './base-viewer.css';
32 changes: 24 additions & 8 deletions tasks/test-distro.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,26 @@
const { getAllCombinations } = require('../util');

var execSync = require('execa').sync;

const domains = [
'base',
'camunda-cloud',
'camunda-platform'
];

const distributions = [
'modeler',
'viewer',
'navigatedViewer'
];

const environments = [
'development',
'production'
];

const testMatrix = getAllCombinations(domains, distributions, environments);

var failures = 0;

function runTest(variant, env) {
Expand All @@ -26,14 +47,9 @@ function runTest(variant, env) {

function test() {

runTest('base-modeler', 'development');
runTest('base-modeler', 'production');

runTest('camunda-cloud-modeler', 'development');
runTest('camunda-cloud-modeler', 'production');

runTest('camunda-platform-modeler', 'development');
runTest('camunda-platform-modeler', 'production');
testMatrix.forEach(function([ domain, dist, env ]) {
runTest(`${domain}-${dist}`, env);
});

if (failures) {
process.exit(1);
Expand Down
Loading

0 comments on commit bfd6c52

Please sign in to comment.