@zohodesk/client_build_tool 0.0.15-exp.3 → 0.0.15-exp.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -300,7 +300,8 @@ var _default = {
300
300
  },
301
301
  customLoaders: [],
302
302
  resourceHints: {
303
- allowPrefetchingMultipleChunks: false
303
+ enable: false,
304
+ PreloadChunkNames: []
304
305
  },
305
306
  devModeContentHashAllowedTypes: null,
306
307
  nameTemplateCustomization: null,
@@ -29,13 +29,14 @@ class InjectChunkGraphPlugin {
29
29
 
30
30
  chunkGraph[chunkName] = chunkGroup.chunks;
31
31
  }); // Find runtime chunk file
32
-
33
- const runtimeChunk = stats.chunks.find(chunk => chunk.names?.some(n => n.includes('runtime~main')));
34
- const runtimeChunkName = runtimeChunk.files[0];
35
- const originalSource = compilation.assets[runtimeChunkName].source();
36
- const newSource = originalSource.replace('{{--preload-chunk-graph-object}}', `${JSON.stringify(chunkGraph)}`); // Update the runtime asset with injected code
37
-
38
- compilation.updateAsset(runtimeChunkName, new RawSource(newSource));
32
+ // const runtimeChunk = stats.chunks.find(
33
+ // (chunk) => chunk.names?.some((n) => n.includes('runtime~main'))
34
+ // );
35
+ // const runtimeChunkName =runtimeChunk.files[0]
36
+ // const originalSource = compilation.assets[runtimeChunkName].source();
37
+ // const newSource = originalSource.replace('{{--preload-chunk-graph-object}}', `${JSON.stringify(chunkGraph)}`);
38
+ // Update the runtime asset with injected code
39
+ // compilation.updateAsset(runtimeChunkName, new RawSource(newSource));
39
40
  });
40
41
  });
41
42
  }
@@ -22,11 +22,8 @@ const pluginName = 'prefetch-preload-chunk-plugin';
22
22
 
23
23
  class ResourceHintsPlugin {
24
24
  constructor({
25
- publicPath,
26
- resourceHints
25
+ publicPath
27
26
  }) {
28
- this.resourceHints = resourceHints;
29
- this.allowPrefetchingMultipleChunks = resourceHints.allowPrefetchingMultipleChunks;
30
27
  this.publicPathsTemplateObj = {
31
28
  js: publicPath,
32
29
  css: publicPath,
@@ -53,7 +50,6 @@ class ResourceHintsPlugin {
53
50
  compilation.addRuntimeModule(entryRuntimeChunk, // eslint-disable-next-line no-use-before-define
54
51
  new ResourceHintsRuntimePlugin(compiler, {
55
52
  chunk: entryRuntimeChunk,
56
- allowPrefetchingMultipleChunks: this.allowPrefetchingMultipleChunks,
57
53
  publicPathsTemplateObj
58
54
  }));
59
55
  };
@@ -69,13 +65,11 @@ exports.default = ResourceHintsPlugin;
69
65
  class ResourceHintsRuntimePlugin extends _webpack.RuntimeModule {
70
66
  constructor(compiler, {
71
67
  chunk,
72
- publicPathsTemplateObj,
73
- allowPrefetchingMultipleChunks
68
+ publicPathsTemplateObj
74
69
  }) {
75
70
  super('ResourceHintsRuntimePlugin loading', 10);
76
71
  this.compiler = compiler;
77
72
  this.publicPathsTemplateObj = publicPathsTemplateObj;
78
- this.allowPrefetchingMultipleChunks = allowPrefetchingMultipleChunks;
79
73
  this.chunk = chunk;
80
74
  }
81
75
 
@@ -85,7 +79,7 @@ class ResourceHintsRuntimePlugin extends _webpack.RuntimeModule {
85
79
  } = this;
86
80
  const idNameMap = chunk.getChunkMaps().name;
87
81
  const nameIdMap = {};
88
- let needsMap = this.allowPrefetchingMultipleChunks;
82
+ let needsMap = false;
89
83
  Object.keys(idNameMap).forEach(key => {
90
84
  const value = idNameMap[key];
91
85
  nameIdMap[value] = key;
@@ -111,7 +105,7 @@ class ResourceHintsRuntimePlugin extends _webpack.RuntimeModule {
111
105
  */
112
106
 
113
107
  return _webpack.Template.asString([`const ntc = ${JSON.stringify(needsMap ? nameIdMap : {})};
114
- const cns = Object.keys(ntc);
108
+ // const cns = Object.keys(ntc);
115
109
 
116
110
  function clt(href, rel) {
117
111
  let link = document.createElement("link");
@@ -129,8 +123,8 @@ class ResourceHintsRuntimePlugin extends _webpack.RuntimeModule {
129
123
  //return !url.includes(".undefined.");
130
124
  return url.indexOf(".undefined") === -1;
131
125
  }
132
- function lpp(_chunkId, rel) {
133
- let chunkId = ${_webpack.RuntimeGlobals.require}.getChunkId(_chunkId);
126
+ function lpp(chunkId, rel) {
127
+ // let chunkId = ${_webpack.RuntimeGlobals.require}.getChunkId(_chunkId);
134
128
  // ${_webpack.RuntimeGlobals.require}.e(chunkId);
135
129
  if(__webpack_require__.O.j(chunkId)) {
136
130
  return;
@@ -145,33 +139,29 @@ class ResourceHintsRuntimePlugin extends _webpack.RuntimeModule {
145
139
  }
146
140
  }
147
141
 
148
- ${_webpack.RuntimeGlobals.require}.getChunkId = function getChunkId(chunkId) {
149
- ${needsMap ? 'chunkId = ntc[chunkId]||chunkId;' : ''}
150
- return chunkId;
142
+ ${_webpack.RuntimeGlobals.require}.getChunkId = function getChunkId(chunkName) {
143
+ return ntc[chunkName]||chunkName;
151
144
  }
152
- ${_webpack.RuntimeGlobals.require}.getChunkIds = function getChunkIds(chunkId) {
153
- ${// eslint-disable-next-line no-nested-ternary
154
- this.allowPrefetchingMultipleChunks ? `
155
- const isRegExAsChunkId = chunkId instanceof RegExp;
156
- if(isRegExAsChunkId) {
157
- return cns.filter(chunkName => chunkId.test(chunkName)).map(chunkName => ntc[chunkName]);
158
- }
159
- return [${_webpack.RuntimeGlobals.require}.getChunkId(chunkId)];
160
- ` : `return [${_webpack.RuntimeGlobals.require}.getChunkId(chunkId)];`}
161
- }
162
- // Prefetch a chunk (${pluginName})
163
- ${_webpack.RuntimeGlobals.require}.pfc = function prefetchChunk(chunkId) {
145
+
146
+ // Preload a chunk (${pluginName})
147
+ ${_webpack.RuntimeGlobals.require}.plc = function preloadChunk(chunkId) {
148
+ const preloadChunkGraph = {{--preload-chunk-graph-object}}
164
149
  ${`
165
- let chunkIds = ${_webpack.RuntimeGlobals.require}.getChunkIds(chunkId);
166
- chunkIds.forEach(idOfAChunk => {
167
- ${_webpack.RuntimeGlobals.require}.e(idOfAChunk);
168
- })`}
150
+ if (typeof preloadChunkGraph !== 'object' || !preloadChunkGraph) return;
151
+ preloadChunkGraph[chunkId].forEach(idOfAChunk => {
152
+ ${_webpack.RuntimeGlobals.require}.e(idOfAChunk);
153
+ })
154
+ // let idOfAChunk = ${_webpack.RuntimeGlobals.require}.getChunkId(chunkId);
155
+ // chunkIds.forEach(idOfAChunk => {
156
+ // ${_webpack.RuntimeGlobals.require}.e(idOfAChunk);
157
+ // })
158
+ `}
169
159
  };
170
160
 
171
- // Preload a chunk (${pluginName})
172
- ${_webpack.RuntimeGlobals.require}.plc = function preloadChunk(chunkId) {
173
- let idOfAChunk = ${_webpack.RuntimeGlobals.require}.getChunkIds(chunkId)[0];
174
- lpp(idOfAChunk, "preload");
161
+ // Prefetch a chunk (${pluginName})
162
+ ${_webpack.RuntimeGlobals.require}.pfc = function prefetchChunk(chunkId) {
163
+ let idOfAChunk = ${_webpack.RuntimeGlobals.require}.getChunkId(chunkId);
164
+ lpp(idOfAChunk, "prefetch");
175
165
  }
176
166
  ` // `// Prefetch a chunk (${pluginName})`,
177
167
  // `${RuntimeGlobals.require}.pfc = function prefetchChunk(chunkId) {`,
@@ -190,4 +180,17 @@ class ResourceHintsRuntimePlugin extends _webpack.RuntimeModule {
190
180
  ]);
191
181
  }
192
182
 
193
- }
183
+ } // ${RuntimeGlobals.require}.getChunkIds = function getChunkIds(chunkId) {
184
+ // ${
185
+ // // eslint-disable-next-line no-nested-ternary
186
+ // this.allowPrefetchingMultipleChunks
187
+ // ? `
188
+ // const isRegExAsChunkId = chunkId instanceof RegExp;
189
+ // if(isRegExAsChunkId) {
190
+ // return cns.filter(chunkName => chunkId.test(chunkName)).map(chunkName => ntc[chunkName]);
191
+ // }
192
+ // return [${RuntimeGlobals.require}.getChunkId(chunkId)];
193
+ // `
194
+ // : `return [${RuntimeGlobals.require}.getChunkId(chunkId)];`
195
+ // }
196
+ // }
@@ -14,7 +14,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
14
14
  /* eslint-disable no-use-before-define */
15
15
  function configChunkHierarchyPlugin(options) {
16
16
  if (options.chunkGraph.enable || (0, _modeUtils.isProductionMode)(mode)) {
17
- console.log('running');
18
17
  return new _ChunkHierarchyPlugin.default(options.chunkGraph.fileName);
19
18
  }
20
19
 
@@ -14,8 +14,12 @@ function configResourceHintsPlugin(options) {
14
14
  publicPath,
15
15
  resourceHints
16
16
  } = options;
17
- return new _ResourceHintsPlugin.default({
18
- resourceHints,
19
- publicPath: JSON.stringify(publicPath)
20
- });
17
+
18
+ if (resourceHints.enable) {
19
+ return new _ResourceHintsPlugin.default({
20
+ publicPath: JSON.stringify(publicPath)
21
+ });
22
+ }
23
+
24
+ return null;
21
25
  }
@@ -53,10 +53,12 @@ var _configCustomScriptLoadingStrategyPlugin = require("./pluginConfigs/configCu
53
53
 
54
54
  var _configChunkHierarchyPlugin = require("./pluginConfigs/configChunkHierarchyPlugin");
55
55
 
56
+ var _configInjectChunkGraphPlugin = require("./pluginConfigs/configInjectChunkGraphPlugin");
57
+
56
58
  // import { IgnorePlugin } from 'webpack';
57
59
  function plugins(options) {
58
60
  const {
59
61
  webpackPlugins
60
62
  } = options;
61
- return [(0, _configEnvVariables.configEnvVariables)(options), (0, _configCustomAttributesPlugin.configCustomAttributesPlugin)(options), (0, _configTPHashMappingPlugin.configTPHashMappingPlugin)(options), (0, _configCopyPublicFolders.configCopyPublicFolders)(options), (0, _configIgnorePlugin.configIgnorePlugin)(options), (0, _configMiniCSSExtractPlugin.configMiniCSSExtractPlugin)(options), (0, _configSelectorWeightPlugin.configSelectorWeightPlugin)(options), (0, _configVariableConversionPlugin.configVariableConversionPlugin)(options), (0, _configI18nSplitPlugin.configI18nSplitPlugin)(options), (0, _configRtlCssPlugin.configRtlCssPlugin)(options), (0, _configHtmlWebpackPlugin.configHtmlWebpackPlugin)(options), (0, _configCustomScriptLoadingStrategyPlugin.configCustomScriptLoadingStrategyPlugin)(options), (0, _configCdnChangePlugin.configCdnChangePlugin)(options), (0, _configServiceWorkerPlugin.configServiceWorkerPlugin)(options), (0, _configEFCTemplatePlugin.configEFCTemplatePlugin)(options), (0, _configResourceHintsPlugin.configResourceHintsPlugin)(options), (0, _configBundleAnalyzer.configBundleAnalyzer)(options), (0, _configManifestJsonPlugin.configManifestJsonPlugin)(options), (0, _configSourceMapPlugin.configSourceMapPlugin)(options), (0, _configProgressPlugin.configProgressPlugin)(options), (0, _configBundleIntegrityReport.configBundleIntegrityReport)(options), (0, _configRuntimeResourceCleanup.configRuntimeResourceCleanup)(options), (0, _configMurphyInjectorPlugin.configMurphyInjectorPlugin)(options), (0, _configChunkHierarchyPlugin.configChunkHierarchyPlugin)(options), ...webpackPlugins].filter(Boolean);
63
+ return [(0, _configEnvVariables.configEnvVariables)(options), (0, _configCustomAttributesPlugin.configCustomAttributesPlugin)(options), (0, _configTPHashMappingPlugin.configTPHashMappingPlugin)(options), (0, _configCopyPublicFolders.configCopyPublicFolders)(options), (0, _configIgnorePlugin.configIgnorePlugin)(options), (0, _configMiniCSSExtractPlugin.configMiniCSSExtractPlugin)(options), (0, _configSelectorWeightPlugin.configSelectorWeightPlugin)(options), (0, _configVariableConversionPlugin.configVariableConversionPlugin)(options), (0, _configI18nSplitPlugin.configI18nSplitPlugin)(options), (0, _configRtlCssPlugin.configRtlCssPlugin)(options), (0, _configHtmlWebpackPlugin.configHtmlWebpackPlugin)(options), (0, _configCustomScriptLoadingStrategyPlugin.configCustomScriptLoadingStrategyPlugin)(options), (0, _configCdnChangePlugin.configCdnChangePlugin)(options), (0, _configServiceWorkerPlugin.configServiceWorkerPlugin)(options), (0, _configEFCTemplatePlugin.configEFCTemplatePlugin)(options), (0, _configResourceHintsPlugin.configResourceHintsPlugin)(options), (0, _configBundleAnalyzer.configBundleAnalyzer)(options), (0, _configManifestJsonPlugin.configManifestJsonPlugin)(options), (0, _configSourceMapPlugin.configSourceMapPlugin)(options), (0, _configProgressPlugin.configProgressPlugin)(options), (0, _configBundleIntegrityReport.configBundleIntegrityReport)(options), (0, _configRuntimeResourceCleanup.configRuntimeResourceCleanup)(options), (0, _configMurphyInjectorPlugin.configMurphyInjectorPlugin)(options), (0, _configChunkHierarchyPlugin.configChunkHierarchyPlugin)(options), (0, _configInjectChunkGraphPlugin.configInjectChunkGraphPlugin)(options), ...webpackPlugins].filter(Boolean);
62
64
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zohodesk/client_build_tool",
3
- "version": "0.0.15-exp.3",
3
+ "version": "0.0.15-exp.5",
4
4
  "description": "A CLI tool to build web applications and client libraries",
5
5
  "main": "lib/index.js",
6
6
  "bin": {
@@ -32,6 +32,7 @@
32
32
  "@babel/preset-env": "7.18.2",
33
33
  "@babel/preset-react": "7.17.12",
34
34
  "@babel/preset-typescript": "7.23.2",
35
+ "@zohodesk-private/client_dev_cert": "^1.0.6",
35
36
  "@zohodesk/client_packages_group": "1.0.2",
36
37
  "babel-loader": "9.1.2",
37
38
  "babel-plugin-module-resolver": "5.0.2",