From 340c6ccf7633f77c1d8386d89aea23be26e81d3a Mon Sep 17 00:00:00 2001 From: Bryan Ashby Date: Sun, 15 Jul 2018 11:49:56 -0600 Subject: [PATCH] Fix asset parsing for path-to-method, etc. --- core/asset.js | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/core/asset.js b/core/asset.js index 2204b1da..b3d62154 100644 --- a/core/asset.js +++ b/core/asset.js @@ -29,19 +29,23 @@ const ALL_ASSETS = [ 'sysStat', ]; -const ASSET_RE = new RegExp('\\@(' + ALL_ASSETS.join('|') + ')\\:([\\w\\d\\.]*)(?:\\/([\\w\\d\\_]+))*'); +const ASSET_RE = new RegExp( + '^@(' + ALL_ASSETS.join('|') + ')' + + /:(?:([^:]+):)?([A-Za-z0-9_\-.]+)$/.source +); function parseAsset(s) { const m = ASSET_RE.exec(s); - if(m) { - let result = { type : m[1] }; + const result = { type : m[1] }; if(m[3]) { - result.location = m[2]; - result.asset = m[3]; + result.asset = m[3]; + if(m[2]) { + result.location = m[2]; + } } else { - result.asset = m[2]; + result.asset = m[2]; } return result;