diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-06-03 13:09:04 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-06-03 13:09:04 +0530 |
| commit | a38b8ca3c6146c2db03167d6ff94e445d756a202 (patch) | |
| tree | 0d315bd68158336d4241cec75685a8b15b4c00d6 /config | |
| parent | 7ea487be4aaf8f3b3047e2a7b3c1da80744f258b (diff) | |
| download | banglar-bhumi-utils-a38b8ca3c6146c2db03167d6ff94e445d756a202.tar.gz banglar-bhumi-utils-a38b8ca3c6146c2db03167d6ff94e445d756a202.zip | |
Added captha removal and autocomplete to GRN search.
Diffstat (limited to 'config')
| -rw-r--r-- | config/webpack.config.js | 61 | ||||
| -rw-r--r-- | config/webpack/plugins/create-injected-shared-modules-webpack-plugin.js | 8 | ||||
| -rw-r--r-- | config/webpack/plugins/create-manifest-webpack-plugin/index.js | 17 | ||||
| -rw-r--r-- | config/webpack/plugins/inject-script-webpack-plugin.js | 8 | ||||
| -rw-r--r-- | config/webpack/utils/build-file.js (renamed from config/webpack/utils/filename-hash.js) | 2 |
5 files changed, 36 insertions, 60 deletions
diff --git a/config/webpack.config.js b/config/webpack.config.js index 9618e33..70b87ca 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -18,7 +18,7 @@ const CreateInjectedSharedModulesPlugin = webpackRequire("plugins/create-injecte const { inlineJavascript } = webpackRequire("utils/inline-javascript"); const { getScriptRuntimeFromType } = webpackRequire("utils/script-runtime"); -const { getFileNameHash } = webpackRequire("utils/filename-hash"); +const { getFileName } = webpackRequire("utils/build-file"); const scripts = webpackRequire("utils/scripts"); const sharedModules = webpackRequire("utils/shared-modules"); @@ -48,29 +48,24 @@ for (const scriptPath in scripts) { let destinationFolder = "scripts"; switch (scriptType) { - case "injected-after": + case "injected": scriptEntries = injectedAfterScriptEntries; destinationFolder = "scripts/injected"; break; - case "injected-before": - scriptEntries = injectedBeforeScriptEntries; - destinationFolder = "scripts/injected"; - break; - default: scriptEntries = uninjectedScriptEntries; } scriptEntries[`${scriptType} - "${scriptPath}"`] = { import: inlineJavascript(currentScripts.map(script => `import "${path.resolve(SOURCE_DIR, "scripts", script)}";`).join("\n")), - filename: `${destinationFolder}/${getFileNameHash(scriptType, scriptPath)}.js` + filename: `${destinationFolder}/${getFileName(scriptType, scriptPath)}.js` }; } } for (const sharedModule of sharedModules) { - const sharedModuleNameHash = getFileNameHash(sharedModule, "shared"); + const sharedModuleNameHash = getFileName(sharedModule, "shared"); const sharedModuleGlobalVariableName = `$${sharedModuleNameHash.substring(sharedModuleNameHash.length - 16)}`; sharedModuleEntries[sharedModule] = { import: path.resolve(SOURCE_DIR, "shared", sharedModule), @@ -138,23 +133,6 @@ const sharedModuleOptions = { } }; -const injectedModulesOptions = { - externals: sharedModuleExternals, - externalsType: "var", - module: { - rules: [ - { - test: /banglar-bhumi-utils\/src\/.*.(^.?|\.[^d]|[^.]d|[^.][^d])\.(t|j)s$/, - loader: path.resolve(CONFIG_DIR, "webpack/loader/count-imports-loader.js"), - options: { - sharedModulesImportedCount: injectedSharedModulesImportedCount - }, - enforce: "post" - } - ] - } -}; - const uninjectedScriptConfiguration = merge( commonOptions, sharedModuleOptions, @@ -163,10 +141,23 @@ const uninjectedScriptConfiguration = merge( } ); -const injectedAfterScriptConfiguration = merge( +const injectedScriptConfiguration = merge( commonOptions, - injectedModulesOptions, { + externals: sharedModuleExternals, + externalsType: "var", + module: { + rules: [ + { + test: /banglar-bhumi-utils\/src\/.*.(^.?|\.[^d]|[^.]d|[^.][^d])\.(t|j)s$/, + loader: path.resolve(CONFIG_DIR, "webpack/loader/count-imports-loader.js"), + options: { + sharedModulesImportedCount: injectedSharedModulesImportedCount + }, + enforce: "post" + } + ] + }, entry: injectedAfterScriptEntries, plugins: [ new InjectScriptPlugin() @@ -174,17 +165,6 @@ const injectedAfterScriptConfiguration = merge( } ); -const injectedBeforeScriptConfiguration = merge( - commonOptions, - injectedModulesOptions, - { - entry: injectedBeforeScriptEntries, - plugins: [ - new InjectScriptPlugin(true) - ] - } -); - const sortedSharedModules = [] const sharedModulesConfiguration = merge( @@ -227,7 +207,6 @@ const sharedModulesConfiguration = merge( module.exports = [ uninjectedScriptConfiguration, - injectedAfterScriptConfiguration, - injectedBeforeScriptConfiguration, + injectedScriptConfiguration, sharedModulesConfiguration ]; diff --git a/config/webpack/plugins/create-injected-shared-modules-webpack-plugin.js b/config/webpack/plugins/create-injected-shared-modules-webpack-plugin.js index fd5a0a2..aa076b8 100644 --- a/config/webpack/plugins/create-injected-shared-modules-webpack-plugin.js +++ b/config/webpack/plugins/create-injected-shared-modules-webpack-plugin.js @@ -2,7 +2,7 @@ const path = require("path"); const fs = require("fs"); const { sources } = require("webpack"); -const { getFileNameHash } = webpackRequire("utils/filename-hash"); +const { getFileName } = webpackRequire("utils/build-file"); class CreateInjectedSharedModulesPlugin { constructor({ injectedSharedModulesImportedCount, sortedSharedModules }) { @@ -20,15 +20,15 @@ class CreateInjectedSharedModulesPlugin { assets => { const injectedSharedScripts = this.sortedSharedModules .filter(sharedModule => this.injectedSharedModulesImportedCount[sharedModule] > 0) - .map(sharedModule => `shared/${getFileNameHash(sharedModule, "shared")}.js`); + .map(sharedModule => `shared/${getFileName(sharedModule, "shared")}.js`); if (injectedSharedScripts.length > 0) { - const scriptInjectorModuleName = getFileNameHash("script-injector", "shared", true); + const scriptInjectorModuleName = getFileName("script-injector", "shared", true); const injectionCode = injectedSharedScripts .map(injectedScript => `$${scriptInjectorModuleName}.injectScriptHead("shared/${path.basename(injectedScript)}");`) .join(""); compilation.emitAsset( - `shared/${getFileNameHash("injected-shared-modules", "shared")}.js`, + `shared/${getFileName("injected-shared-modules", "shared")}.js`, new sources.RawSource(injectionCode) ); } diff --git a/config/webpack/plugins/create-manifest-webpack-plugin/index.js b/config/webpack/plugins/create-manifest-webpack-plugin/index.js index b14cd13..92c3096 100644 --- a/config/webpack/plugins/create-manifest-webpack-plugin/index.js +++ b/config/webpack/plugins/create-manifest-webpack-plugin/index.js @@ -2,7 +2,7 @@ const { sources } = require("webpack"); const path = require("path"); const { getScriptRuntimeFromType } = webpackRequire("utils/script-runtime"); -const { getFileNameHash } = webpackRequire("utils/filename-hash"); +const { getFileName } = webpackRequire("utils/build-file"); const scripts = webpackRequire("utils/scripts"); const manifest = webpackRequire("plugins/create-manifest-webpack-plugin/manifest-template.json"); @@ -37,9 +37,9 @@ class CreateManifestPlugin { arrangedScripts[scriptPath][scriptRuntime] = []; } - arrangedScripts[scriptPath][scriptRuntime].push(`scripts/${getFileNameHash(scriptType, scriptPath)}.js`); + arrangedScripts[scriptPath][scriptRuntime].push(`scripts/${getFileName(scriptType, scriptPath)}.js`); if (scriptType.startsWith("injected")) { - resources.push(`scripts/injected/${getFileNameHash(scriptType, scriptPath)}.js`); + resources.push(`scripts/injected/${getFileName(scriptType, scriptPath)}.js`); } } } @@ -48,8 +48,9 @@ class CreateManifestPlugin { matches: [`*://banglarbhumi.gov.in/BanglarBhumi/*`], js: this.sortedSharedModules .filter(sharedModule => this.sharedModulesImportedCount[sharedModule] > 0) - .map(sharedModule => `shared/${getFileNameHash(sharedModule, "shared")}.js`) - .concat(arrangedScripts["*"]["document_start"]), + .map(sharedModule => `shared/${getFileName(sharedModule, "shared")}.js`) + .concat(arrangedScripts["*"]["document_start"]) + .filter(x => x != null), run_at: "document_start" }); @@ -78,14 +79,14 @@ class CreateManifestPlugin { const injectedSharedModules = this.sortedSharedModules .filter(sharedModule => this.injectedSharedModulesImportedCount[sharedModule] > 0) - .map(sharedModule => `shared/${getFileNameHash(sharedModule, "shared")}.js`); + .map(sharedModule => `shared/${getFileName(sharedModule, "shared")}.js`); if (injectedSharedModules.length > 0) { resources = resources.concat(injectedSharedModules); - manifest.content_scripts[0].js.unshift(`shared/${getFileNameHash("injected-shared-modules", "shared")}.js`); + manifest.content_scripts[0].js.unshift(`shared/${getFileName("injected-shared-modules", "shared")}.js`); } - manifest.content_scripts[0].js.unshift(`shared/${getFileNameHash("script-injector", "shared")}.js`); + manifest.content_scripts[0].js.unshift(`shared/${getFileName("script-injector", "shared")}.js`); if (resources.length > 0) { manifest.web_accessible_resources = [ diff --git a/config/webpack/plugins/inject-script-webpack-plugin.js b/config/webpack/plugins/inject-script-webpack-plugin.js index 665d24e..25b1dc6 100644 --- a/config/webpack/plugins/inject-script-webpack-plugin.js +++ b/config/webpack/plugins/inject-script-webpack-plugin.js @@ -1,14 +1,10 @@ const { sources } = require("webpack"); const path = require("path"); -const { getFileNameHash } = webpackRequire("utils/filename-hash"); +const { getFileName } = webpackRequire("utils/build-file"); const { getInjectedCode } = webpackRequire("utils/injected-code"); class InjectScriptPlugin { - constructor(insertedBefore = false) { - this.insertedBefore = insertedBefore; - } - apply(compiler) { compiler.hooks.compilation.tap("InjectScriptPlugin", compilation => { compilation.hooks.processAssets.tapPromise( @@ -21,7 +17,7 @@ class InjectScriptPlugin { for (const assetName in assets) { if (/\.js$/.test(assetName)) { const injectedCodeResponse = getInjectedCode(compilation.getAsset(assetName).source.source()) - const scriptInjectorModuleName = getFileNameHash("script-injector", "shared", true); + const scriptInjectorModuleName = getFileName("script-injector", "shared", true); compilation.updateAsset( assetName, new sources.RawSource(injectedCodeResponse[0]) diff --git a/config/webpack/utils/filename-hash.js b/config/webpack/utils/build-file.js index e0d8a6d..9a0ae66 100644 --- a/config/webpack/utils/filename-hash.js +++ b/config/webpack/utils/build-file.js @@ -1,6 +1,6 @@ const crypto = require("crypto"); -module.exports.getFileNameHash = (fileName, prefix, justHash = false) => { +module.exports.getFileName = (fileName, prefix, justHash = false) => { let hash = crypto .createHash("md5") .update(`${prefix}-${fileName}`) |
