@zohodesk/react-cli 1.1.14-exp.1 → 1.1.14-exp.2

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.
package/README.md CHANGED
@@ -44,19 +44,6 @@ Now to run app
44
44
 
45
45
  # Change Logs
46
46
 
47
- # 1.1.14-exp.1 (20-9-2023)
48
-
49
- **Feature:-**
50
-
51
- - externals was added to Prevent bundling of certain imported packages and instead retrieve these external dependencies at runtime.
52
- - to use externals, we use the following pattern in `app > externals` :
53
-
54
- For example
55
- ```
56
- externals: {
57
- <key> : <value>
58
- }
59
- ```
60
47
  # 1.1.14 (11-9-2023)
61
48
 
62
49
  **Feature:-**
@@ -184,15 +184,15 @@ class I18nDownlodLogic {
184
184
 
185
185
  const buf = [];
186
186
  /*
187
- if (REGEXP_HASH.test(filenameTemplate)) {
188
- buf.push(
189
- `var hash = ${mainTemplate.renderCurrentHashCode(hash)};`
190
- );
191
- }
192
- if (REGEXP_CHUNKHASH.test(filenameTemplate)) {
193
- buf.push(`var chunkHashes = ${JSON.stringify(chunkMaps.hash)};`);
194
- }
195
- */
187
+ if (REGEXP_HASH.test(filenameTemplate)) {
188
+ buf.push(
189
+ `var hash = ${mainTemplate.renderCurrentHashCode(hash)};`
190
+ );
191
+ }
192
+ if (REGEXP_CHUNKHASH.test(filenameTemplate)) {
193
+ buf.push(`var chunkHashes = ${JSON.stringify(chunkMaps.hash)};`);
194
+ }
195
+ */
196
196
 
197
197
  if ((0, _hashUtils.hasContentHash)(filenameTemplate)) {
198
198
  const hashLength = getContentHashMaxLength(filenameTemplate);
@@ -205,12 +205,18 @@ class I18nDownlodLogic {
205
205
 
206
206
  const publicPath = this.publicPath ? JSON.stringify(this.publicPath) : `${mainTemplate.requireFn}.p`;
207
207
  return _webpack.Template.asString([source, `
208
- (function() {
208
+ function downloadScriptTagForI18nDynamicChunks(chunkName = '', language = '') {
209
209
  // ${pluginName} I18N loading
210
210
  var i18nChunks = ${JSON.stringify(chunkMap)};
211
211
  var locale = ${localeVarName};
212
212
  // ${pluginName} I18N hasehes
213
213
  ${hashUtils}
214
+ if(chunkName) {
215
+ chunkId = chunkName;
216
+ }
217
+ if (language) {
218
+ locale = language;
219
+ }
214
220
  if(installedI18nChunks[chunkId]) {
215
221
  promises.push(installedI18nChunks[chunkId]);
216
222
  } else if(installedI18nChunks[chunkId] !== 0 && i18nChunks[chunkId]) {
@@ -245,10 +251,19 @@ class I18nDownlodLogic {
245
251
  }` : ''}
246
252
  document.body.appendChild(scriptTag);
247
253
  }).then(function() {
248
- installedI18nChunks[chunkId] = 0;
254
+ installedI18nChunks[chunkId] = 0;
249
255
  }));
250
256
  }
251
- })()`]);
257
+ };
258
+ downloadScriptTagForI18nDynamicChunks();
259
+ ${mainTemplate.requireFn}.changeLanguage = function changeLanguage(language) {
260
+ window.userLangCode=language;
261
+ Object.keys(installedI18nChunks).map(chunks => {
262
+ if (chunks !== './runtime~main' && installedI18nChunks[chunks] == 0) {
263
+ installedI18nChunks[chunks] = null;
264
+ downloadScriptTagForI18nDynamicChunks(chunks, language);
265
+ }
266
+ });}`]);
252
267
  });
253
268
  }
254
269
 
@@ -256,7 +271,8 @@ class I18nDownlodLogic {
256
271
  compiler.hooks.thisCompilation.tap(pluginName, compilation => {
257
272
  const {
258
273
  mainTemplate
259
- } = compilation;
274
+ } = compilation; // this.createChangeLanguageFunction(mainTemplate);
275
+
260
276
  this.addDownloadLogicOfI18nInMainTemplate(mainTemplate);
261
277
  });
262
278
  }
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@zohodesk/react-cli",
3
- "version": "1.1.14-exp.1",
3
+ "version": "1.1.10",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@zohodesk/react-cli",
9
- "version": "1.1.14-exp.1",
9
+ "version": "1.1.10",
10
10
  "license": "ISC",
11
11
  "dependencies": {
12
12
  "@babel/cli": "7.10.5",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zohodesk/react-cli",
3
- "version": "1.1.14-exp.1",
3
+ "version": "1.1.14-exp.2",
4
4
  "description": "A CLI tool for build modern web application and libraries",
5
5
  "scripts": {
6
6
  "init": "node ./lib/utils/init.js",