diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-03-12 18:39:36 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-03-12 18:39:36 +0530 |
| commit | 7ea487be4aaf8f3b3047e2a7b3c1da80744f258b (patch) | |
| tree | a4f91d979fe838aefe2ab8c4cecd9037b879e0aa /config/webpack/plugins/inject-script-webpack-plugin.js | |
| parent | 95becf369822cbb74f4cefb5658f3ff97e164d6e (diff) | |
| download | banglar-bhumi-utils-7ea487be4aaf8f3b3047e2a7b3c1da80744f258b.tar.gz banglar-bhumi-utils-7ea487be4aaf8f3b3047e2a7b3c1da80744f258b.zip | |
Passing url of extension assets to the injected javascript code using data arguments on the script tag.
Diffstat (limited to 'config/webpack/plugins/inject-script-webpack-plugin.js')
| -rw-r--r-- | config/webpack/plugins/inject-script-webpack-plugin.js | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/config/webpack/plugins/inject-script-webpack-plugin.js b/config/webpack/plugins/inject-script-webpack-plugin.js index 599871b..665d24e 100644 --- a/config/webpack/plugins/inject-script-webpack-plugin.js +++ b/config/webpack/plugins/inject-script-webpack-plugin.js @@ -2,6 +2,7 @@ const { sources } = require("webpack"); const path = require("path"); const { getFileNameHash } = webpackRequire("utils/filename-hash"); +const { getInjectedCode } = webpackRequire("utils/injected-code"); class InjectScriptPlugin { constructor(insertedBefore = false) { @@ -19,8 +20,14 @@ class InjectScriptPlugin { async assets => { for (const assetName in assets) { if (/\.js$/.test(assetName)) { + const injectedCodeResponse = getInjectedCode(compilation.getAsset(assetName).source.source()) + const scriptInjectorModuleName = getFileNameHash("script-injector", "shared", true); + compilation.updateAsset( + assetName, + new sources.RawSource(injectedCodeResponse[0]) + ); assets["scripts/" + path.basename(assetName)] = new sources.RawSource( - `$${getFileNameHash("script-injector", "shared", true)}.injectScriptHead("scripts/injected/${path.basename(assetName)}");` + `$${scriptInjectorModuleName}.injectScriptHead("scripts/injected/${path.basename(assetName)}", ${injectedCodeResponse[1]});` ); } } |
