From 86aafc6afa4fad5607362f962186a98360b0ea04 Mon Sep 17 00:00:00 2001 From: Petr Broz Date: Tue, 4 Jun 2019 10:10:43 +0200 Subject: [PATCH 1/5] Additional input/output props for DA activities. --- src/forge-da.js | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/src/forge-da.js b/src/forge-da.js index 767bceb..ba37944 100755 --- a/src/forge-da.js +++ b/src/forge-da.js @@ -386,6 +386,27 @@ function _collectActivityInputs(val) { _activityInputs.push({ name: val }); } +function _collectActivityInputZips(val) { + if (_activityInputs.length === 0) { + throw new Error('Cannot assign zip property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); + } + _activityInputs[_activityInputs.length - 1].zip = (val.toLowerCase() === 'true'); +} + +function _collectActivityInputRequires(val) { + if (_activityInputs.length === 0) { + throw new Error('Cannot assign required property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); + } + _activityInputs[_activityInputs.length - 1].required = (val.toLowerCase() === 'true'); +} + +function _collectActivityInputDescriptions(val) { + if (_activityInputs.length === 0) { + throw new Error('Cannot assign description property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); + } + _activityInputs[_activityInputs.length - 1].description = val; +} + function _collectActivityInputLocalNames(val) { if (_activityInputs.length === 0) { throw new Error('Cannot assign local name property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); @@ -397,6 +418,27 @@ function _collectActivityOutputs(val) { _activityOutputs.push({ name: val }); } +function _collectActivityOutputZips(val) { + if (_activityOutputs.length === 0) { + throw new Error('Cannot assign zip property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); + } + _activityOutputs[_activityOutputs.length - 1].zip = (val.toLowerCase() === 'true'); +} + +function _collectActivityOutputRequires(val) { + if (_activityOutputs.length === 0) { + throw new Error('Cannot assign required property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); + } + _activityOutputs[_activityOutputs.length - 1].required = (val.toLowerCase() === 'true'); +} + +function _collectActivityOutputDescriptions(val) { + if (_activityOutputs.length === 0) { + throw new Error('Cannot assign description property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); + } + _activityOutputs[_activityOutputs.length - 1].description = val; +} + function _collectActivityOutputLocalNames(val) { if (_activityOutputs.length === 0) { throw new Error('Cannot assign local name property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); @@ -412,8 +454,14 @@ program .option('-d, --description ', 'Optional activity description.') .option('--script', 'Optional engine-specific script to pass to activity.') .option('-i, --input ', 'Activity input ID (can be used multiple times).', _collectActivityInputs) + .option('-iz, --input-zip ', 'Optional zip flag for the last activity input (can be used multiple times).', _collectActivityInputZips) + .option('-ir, --input-required ', 'Optional required flag for the last activity input (can be used multiple times).', _collectActivityInputRequires) + .option('-id, --input-description ', 'Optional description for the last activity input (can be used multiple times).', _collectActivityInputDescriptions) .option('-iln, --input-local-name ', 'Optional local name for the last activity input (can be used multiple times).', _collectActivityInputLocalNames) .option('-o, --output ', 'Activity output ID (can be used multiple times).', _collectActivityOutputs) + .option('-oz, --output-zip ', 'Optional zip flag for the last activity output (can be used multiple times).', _collectActivityOutputZips) + .option('-or, --output-required ', 'Optional required flag for the last activity output (can be used multiple times).', _collectActivityOutputRequires) + .option('-od, --output-description ', 'Optional description for the last activity output (can be used multiple times).', _collectActivityOutputDescriptions) .option('-oln, --output-local-name ', 'Optional local name for the last activity output (can be used multiple times).', _collectActivityOutputLocalNames) .action(async function(name, bundle, bundlealias, engine, command) { try { @@ -450,8 +498,14 @@ program .option('-d, --description ', 'Optional activity description.') .option('--script', 'Optional engine-specific script to pass to activity.') .option('-i, --input ', 'Activity input ID (can be used multiple times).', _collectActivityInputs) + .option('-iz, --input-zip ', 'Optional zip flag for the last activity input (can be used multiple times).', _collectActivityInputZips) + .option('-ir, --input-required ', 'Optional required flag for the last activity input (can be used multiple times).', _collectActivityInputRequires) + .option('-id, --input-description ', 'Optional description for the last activity input (can be used multiple times).', _collectActivityInputDescriptions) .option('-iln, --input-local-name ', 'Optional local name for the last activity input (can be used multiple times).', _collectActivityInputLocalNames) .option('-o, --output ', 'Activity output ID (can be used multiple times).', _collectActivityOutputs) + .option('-oz, --output-zip ', 'Optional zip flag for the last activity output (can be used multiple times).', _collectActivityOutputZips) + .option('-or, --output-required ', 'Optional required flag for the last activity output (can be used multiple times).', _collectActivityOutputRequires) + .option('-od, --output-description ', 'Optional description for the last activity output (can be used multiple times).', _collectActivityOutputDescriptions) .option('-oln, --output-local-name ', 'Optional local name for the last activity output (can be used multiple times).', _collectActivityOutputLocalNames) .action(async function(name, bundle, bundlealias, engine, command) { try { From 3372966c47e9618db1d0fb2ea1712a62151893d1 Mon Sep 17 00:00:00 2001 From: Petr Broz Date: Tue, 4 Jun 2019 10:21:04 +0200 Subject: [PATCH 2/5] Support for DA workitem input/output headers. --- src/forge-da.js | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/src/forge-da.js b/src/forge-da.js index ba37944..aee02ec 100755 --- a/src/forge-da.js +++ b/src/forge-da.js @@ -651,6 +651,19 @@ function _collectWorkitemInputURLs(val) { _workitemInputs[_workitemInputs.length - 1].url = val; } +function _collectWorkitemInputHeaders(val) { + if (_workitemInputs.length === 0) { + throw new Error('Cannot assign header property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); + } + if (!_workitemInputs[_workitemInputs.length - 1].headers) { + _workitemInputs[_workitemInputs.length - 1].headers = {}; + } + const tokens = val.split(':'); + const name = tokens[0].trim(); + const value = tokens[1].trim(); + _workitemInputs[_workitemInputs.length - 1].headers[name] = value; +} + function _collectWorkitemOutputs(val) { _workitemOutputs.push({ name: val }); } @@ -669,17 +682,32 @@ function _collectWorkitemOutputURLs(val) { _workitemOutputs[_workitemOutputs.length - 1].url = val; } +function _collectWorkitemOutputHeaders(val) { + if (_workitemOutputs.length === 0) { + throw new Error('Cannot assign header property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); + } + if (!_workitemOutputs[_workitemOutputs.length - 1].headers) { + _workitemOutputs[_workitemOutputs.length - 1].headers = {}; + } + const tokens = val.split(':'); + const name = tokens[0].trim(); + const value = tokens[1].trim(); + _workitemOutputs[_workitemOutputs.length - 1].headers[name] = value; +} + program .command('create-workitem [activity] [activityalias]') .alias('cw') .description('Create new work item.') .option('-s, --short', 'Output work item ID instead of the entire JSON.') .option('-i, --input ', 'Work item input ID (can be used multiple times).', _collectWorkitemInputs) - .option('-iln, --input-local-name ', 'Optional local name of the last work item input (can be used multiple times).', _collectWorkitemInputLocalNames) .option('-iu, --input-url ', 'URL of the last work item input (can be used multiple times).', _collectWorkitemInputURLs) + .option('-iln, --input-local-name ', 'Optional local name of the last work item input (can be used multiple times).', _collectWorkitemInputLocalNames) + .option('-ih, --input-header ', 'Optional HTTP request header for the last work item input (can be used multiple times).', _collectWorkitemInputHeaders) .option('-o, --output ', 'Work item output ID (can be used multiple times).', _collectWorkitemOutputs) - .option('-oln, --output-local-name ', 'Optional local name of the last work item output (can be used multiple times).', _collectWorkitemOutputLocalNames) .option('-ou, --output-url ', 'URL of the last work item output (can be used multiple times).', _collectWorkitemOutputURLs) + .option('-oln, --output-local-name ', 'Optional local name of the last work item output (can be used multiple times).', _collectWorkitemOutputLocalNames) + .option('-oh, --output-header ', 'Optional HTTP request header for the last work item output (can be used multiple times).', _collectWorkitemOutputHeaders) .action(async function(activity, activityalias, command) { try { if (!activity) { From ac38be162fcfcdac17a06beb4575b40b31145708 Mon Sep 17 00:00:00 2001 From: Petr Broz Date: Tue, 4 Jun 2019 10:34:59 +0200 Subject: [PATCH 3/5] Simplified DA activity input/output processing. --- src/forge-da.js | 102 ++++++++++++++++-------------------------------- 1 file changed, 34 insertions(+), 68 deletions(-) diff --git a/src/forge-da.js b/src/forge-da.js index aee02ec..fc06069 100755 --- a/src/forge-da.js +++ b/src/forge-da.js @@ -386,64 +386,26 @@ function _collectActivityInputs(val) { _activityInputs.push({ name: val }); } -function _collectActivityInputZips(val) { - if (_activityInputs.length === 0) { - throw new Error('Cannot assign zip property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _activityInputs[_activityInputs.length - 1].zip = (val.toLowerCase() === 'true'); -} - -function _collectActivityInputRequires(val) { - if (_activityInputs.length === 0) { - throw new Error('Cannot assign required property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _activityInputs[_activityInputs.length - 1].required = (val.toLowerCase() === 'true'); -} - -function _collectActivityInputDescriptions(val) { - if (_activityInputs.length === 0) { - throw new Error('Cannot assign description property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _activityInputs[_activityInputs.length - 1].description = val; -} - -function _collectActivityInputLocalNames(val) { - if (_activityInputs.length === 0) { - throw new Error('Cannot assign local name property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _activityInputs[_activityInputs.length - 1].localName = val; +function _collectActivityInputProps(propName, transform = (val) => val) { + return function(val) { + if (_activityInputs.length === 0) { + throw new Error(`Cannot assign property "${propName}" when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.`); + } + _activityInputs[_activityInputs.length - 1][propName] = transform(val); + }; } function _collectActivityOutputs(val) { _activityOutputs.push({ name: val }); } -function _collectActivityOutputZips(val) { - if (_activityOutputs.length === 0) { - throw new Error('Cannot assign zip property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _activityOutputs[_activityOutputs.length - 1].zip = (val.toLowerCase() === 'true'); -} - -function _collectActivityOutputRequires(val) { - if (_activityOutputs.length === 0) { - throw new Error('Cannot assign required property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _activityOutputs[_activityOutputs.length - 1].required = (val.toLowerCase() === 'true'); -} - -function _collectActivityOutputDescriptions(val) { - if (_activityOutputs.length === 0) { - throw new Error('Cannot assign description property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _activityOutputs[_activityOutputs.length - 1].description = val; -} - -function _collectActivityOutputLocalNames(val) { - if (_activityOutputs.length === 0) { - throw new Error('Cannot assign local name property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _activityOutputs[_activityOutputs.length - 1].localName = val; +function _collectActivityOutputProps(propName, transform = (val) => val) { + return function(val) { + if (_activityOutputs.length === 0) { + throw new Error(`Cannot assign property "${propName}" when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.`); + } + _activityOutputs[_activityOutputs.length - 1][propName] = transform(val); + }; } program @@ -454,15 +416,15 @@ program .option('-d, --description ', 'Optional activity description.') .option('--script', 'Optional engine-specific script to pass to activity.') .option('-i, --input ', 'Activity input ID (can be used multiple times).', _collectActivityInputs) - .option('-iz, --input-zip ', 'Optional zip flag for the last activity input (can be used multiple times).', _collectActivityInputZips) - .option('-ir, --input-required ', 'Optional required flag for the last activity input (can be used multiple times).', _collectActivityInputRequires) - .option('-id, --input-description ', 'Optional description for the last activity input (can be used multiple times).', _collectActivityInputDescriptions) - .option('-iln, --input-local-name ', 'Optional local name for the last activity input (can be used multiple times).', _collectActivityInputLocalNames) + .option('-iz, --input-zip ', 'Optional zip flag for the last activity input (can be used multiple times).', _collectActivityInputProps('zip', (val) => val.toLowerCase() === 'true')) + .option('-ir, --input-required ', 'Optional required flag for the last activity input (can be used multiple times).', _collectActivityInputProps('required', (val) => val.toLowerCase() === 'true')) + .option('-id, --input-description ', 'Optional description for the last activity input (can be used multiple times).', _collectActivityInputProps('description')) + .option('-iln, --input-local-name ', 'Optional local name for the last activity input (can be used multiple times).', _collectActivityInputProps('localName')) .option('-o, --output ', 'Activity output ID (can be used multiple times).', _collectActivityOutputs) - .option('-oz, --output-zip ', 'Optional zip flag for the last activity output (can be used multiple times).', _collectActivityOutputZips) - .option('-or, --output-required ', 'Optional required flag for the last activity output (can be used multiple times).', _collectActivityOutputRequires) - .option('-od, --output-description ', 'Optional description for the last activity output (can be used multiple times).', _collectActivityOutputDescriptions) - .option('-oln, --output-local-name ', 'Optional local name for the last activity output (can be used multiple times).', _collectActivityOutputLocalNames) + .option('-oz, --output-zip ', 'Optional zip flag for the last activity output (can be used multiple times).', _collectActivityOutputProps('zip', (val) => val.toLowerCase() === 'true')) + .option('-or, --output-required ', 'Optional required flag for the last activity output (can be used multiple times).', _collectActivityOutputProps('required', (val) => val.toLowerCase() === 'true')) + .option('-od, --output-description ', 'Optional description for the last activity output (can be used multiple times).', _collectActivityOutputProps('description')) + .option('-oln, --output-local-name ', 'Optional local name for the last activity output (can be used multiple times).', _collectActivityOutputProps('localName')) .action(async function(name, bundle, bundlealias, engine, command) { try { if (!bundle) { @@ -479,6 +441,10 @@ program description = `${name} created via Forge CLI Utils.`; } + console.log(_activityInputs); + console.log(_activityOutputs); + return; + let activity = await designAutomation.createActivity(name, description, bundle, bundlealias, engine, _activityInputs, _activityOutputs, command.script); if (command.short) { log(activity.id); @@ -498,15 +464,15 @@ program .option('-d, --description ', 'Optional activity description.') .option('--script', 'Optional engine-specific script to pass to activity.') .option('-i, --input ', 'Activity input ID (can be used multiple times).', _collectActivityInputs) - .option('-iz, --input-zip ', 'Optional zip flag for the last activity input (can be used multiple times).', _collectActivityInputZips) - .option('-ir, --input-required ', 'Optional required flag for the last activity input (can be used multiple times).', _collectActivityInputRequires) - .option('-id, --input-description ', 'Optional description for the last activity input (can be used multiple times).', _collectActivityInputDescriptions) - .option('-iln, --input-local-name ', 'Optional local name for the last activity input (can be used multiple times).', _collectActivityInputLocalNames) + .option('-iz, --input-zip ', 'Optional zip flag for the last activity input (can be used multiple times).', _collectActivityInputProps('zip', (val) => val.toLowerCase() === 'true')) + .option('-ir, --input-required ', 'Optional required flag for the last activity input (can be used multiple times).', _collectActivityInputProps('required', (val) => val.toLowerCase() === 'true')) + .option('-id, --input-description ', 'Optional description for the last activity input (can be used multiple times).', _collectActivityInputProps('description')) + .option('-iln, --input-local-name ', 'Optional local name for the last activity input (can be used multiple times).', _collectActivityInputProps('localName')) .option('-o, --output ', 'Activity output ID (can be used multiple times).', _collectActivityOutputs) - .option('-oz, --output-zip ', 'Optional zip flag for the last activity output (can be used multiple times).', _collectActivityOutputZips) - .option('-or, --output-required ', 'Optional required flag for the last activity output (can be used multiple times).', _collectActivityOutputRequires) - .option('-od, --output-description ', 'Optional description for the last activity output (can be used multiple times).', _collectActivityOutputDescriptions) - .option('-oln, --output-local-name ', 'Optional local name for the last activity output (can be used multiple times).', _collectActivityOutputLocalNames) + .option('-oz, --output-zip ', 'Optional zip flag for the last activity output (can be used multiple times).', _collectActivityOutputProps('zip', (val) => val.toLowerCase() === 'true')) + .option('-or, --output-required ', 'Optional required flag for the last activity output (can be used multiple times).', _collectActivityOutputProps('required', (val) => val.toLowerCase() === 'true')) + .option('-od, --output-description ', 'Optional description for the last activity output (can be used multiple times).', _collectActivityOutputProps('description')) + .option('-oln, --output-local-name ', 'Optional local name for the last activity output (can be used multiple times).', _collectActivityOutputProps('localName')) .action(async function(name, bundle, bundlealias, engine, command) { try { if (!bundle) { From f99acf49af8bf2368fbce9dece9f224907e20315 Mon Sep 17 00:00:00 2001 From: Petr Broz Date: Tue, 4 Jun 2019 10:44:37 +0200 Subject: [PATCH 4/5] Simplified DA workitem input/output processing. --- src/forge-da.js | 46 ++++++++++++++++++---------------------------- 1 file changed, 18 insertions(+), 28 deletions(-) diff --git a/src/forge-da.js b/src/forge-da.js index fc06069..3df54de 100755 --- a/src/forge-da.js +++ b/src/forge-da.js @@ -603,18 +603,13 @@ function _collectWorkitemInputs(val) { _workitemInputs.push({ name: val }); } -function _collectWorkitemInputLocalNames(val) { - if (_workitemInputs.length === 0) { - throw new Error('Cannot assign local name property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _workitemInputs[_workitemInputs.length - 1].localName = val; -} - -function _collectWorkitemInputURLs(val) { - if (_workitemInputs.length === 0) { - throw new Error('Cannot assign url property when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _workitemInputs[_workitemInputs.length - 1].url = val; +function _collectWorkitemInputProps(propName, transform = (val) => val) { + return function(val) { + if (_workitemInputs.length === 0) { + throw new Error(`Cannot assign property "${propName}" when no --input was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.`); + } + _workitemInputs[_workitemInputs.length - 1][propName] = transform(val); + }; } function _collectWorkitemInputHeaders(val) { @@ -634,18 +629,13 @@ function _collectWorkitemOutputs(val) { _workitemOutputs.push({ name: val }); } -function _collectWorkitemOutputLocalNames(val) { - if (_workitemOutputs.length === 0) { - throw new Error('Cannot assign local name property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _workitemOutputs[_workitemOutputs.length - 1].localName = val; -} - -function _collectWorkitemOutputURLs(val) { - if (_workitemOutputs.length === 0) { - throw new Error('Cannot assign url property when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.'); - } - _workitemOutputs[_workitemOutputs.length - 1].url = val; +function _collectWorkitemOutputProps(propName, transform = (val) => val) { + return function(val) { + if (_workitemOutputs.length === 0) { + throw new Error(`Cannot assign property "${propName}" when no --output was provided. See https://github.com/petrbroz/forge-cli-utils/wiki/Design-Automation-Inputs-and-Outputs.`); + } + _workitemOutputs[_workitemOutputs.length - 1][propName] = transform(val); + }; } function _collectWorkitemOutputHeaders(val) { @@ -667,12 +657,12 @@ program .description('Create new work item.') .option('-s, --short', 'Output work item ID instead of the entire JSON.') .option('-i, --input ', 'Work item input ID (can be used multiple times).', _collectWorkitemInputs) - .option('-iu, --input-url ', 'URL of the last work item input (can be used multiple times).', _collectWorkitemInputURLs) - .option('-iln, --input-local-name ', 'Optional local name of the last work item input (can be used multiple times).', _collectWorkitemInputLocalNames) + .option('-iu, --input-url ', 'URL of the last work item input (can be used multiple times).', _collectWorkitemInputProps('url')) + .option('-iln, --input-local-name ', 'Optional local name of the last work item input (can be used multiple times).', _collectWorkitemInputProps('localName')) .option('-ih, --input-header ', 'Optional HTTP request header for the last work item input (can be used multiple times).', _collectWorkitemInputHeaders) .option('-o, --output ', 'Work item output ID (can be used multiple times).', _collectWorkitemOutputs) - .option('-ou, --output-url ', 'URL of the last work item output (can be used multiple times).', _collectWorkitemOutputURLs) - .option('-oln, --output-local-name ', 'Optional local name of the last work item output (can be used multiple times).', _collectWorkitemOutputLocalNames) + .option('-ou, --output-url ', 'URL of the last work item output (can be used multiple times).', _collectWorkitemOutputProps('url')) + .option('-oln, --output-local-name ', 'Optional local name of the last work item output (can be used multiple times).', _collectWorkitemOutputProps('localName')) .option('-oh, --output-header ', 'Optional HTTP request header for the last work item output (can be used multiple times).', _collectWorkitemOutputHeaders) .action(async function(activity, activityalias, command) { try { From d210aa363be0b04f0b90cb693639a1c5a8278fbd Mon Sep 17 00:00:00 2001 From: Petr Broz Date: Tue, 4 Jun 2019 10:46:02 +0200 Subject: [PATCH 5/5] Bumped version to 0.10.0. --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index b805c33..d8c461b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "forge-cli-utils", - "version": "0.9.0", + "version": "0.10.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 8f6f120..4d30efa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "forge-cli-utils", - "version": "0.9.0", + "version": "0.10.0", "description": "Command line tools for Autodesk Forge services.", "author": "Petr Broz ", "license": "MIT",