From c5134eb93eadb6b0501a05a7cf89e7a6dc33dd90 Mon Sep 17 00:00:00 2001 From: Markin Igor <markin.io210@gmail.com> Date: Wed, 31 Oct 2018 16:20:03 +0300 Subject: [PATCH] Rework {{methods}} placeholder and disabled methods mangling due to make them accessible from outside. --- javascript/src/viamapi-iframe.js | 11 +++++++++-- javascript/webpack.config.js | 11 +++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/javascript/src/viamapi-iframe.js b/javascript/src/viamapi-iframe.js index 9d5927e..1b8a8a7 100644 --- a/javascript/src/viamapi-iframe.js +++ b/javascript/src/viamapi-iframe.js @@ -4,7 +4,11 @@ const pkijs = require('pkijs'); const asn1js = require('asn1js'); const pvutils = require('pvutils'); const Penpal = require('penpal').default; -window.axios = require('axios'); +const axios = require('axios'); + +// Make these libs accessible from other scripts +window.Penpal = Penpal; +window.axios = axios; //********************************************************************************* const CERTIFIATE_Version_1 = 0; @@ -2188,7 +2192,10 @@ const connection = Penpal.connectToParent({ }) }); }, - //{{methods}} + // Previously there was "//{{methods}}" placeholder, but we can't use it anymore since Uglify in webpack + // stripping this comment and there is no chance to preserve it + // (even with special words like @preserve or comment /*! */) + placeholderForExternalMethods:1 } }); diff --git a/javascript/webpack.config.js b/javascript/webpack.config.js index b93e164..7e9f89d 100644 --- a/javascript/webpack.config.js +++ b/javascript/webpack.config.js @@ -1,8 +1,19 @@ +const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); + module.exports = { mode: 'production', entry: { 'viamapi-client': './src/viamapi-client.js', 'viamapi-iframe': './src/viamapi-iframe.js', 'wopiapi-iframe': './src/wopiapi-iframe.js' + }, + optimization: { + minimizer: [ + new UglifyJsPlugin({ + uglifyOptions: { + mangle: false + } + }) + ] } }; -- GitLab