@zohodesk/react-cli 1.1.27-exp.1 → 1.1.27-exp.3
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/configs/jest.config.js +1 -1
- package/lib/configs/libAlias.js +2 -2
- package/lib/configs/resolvers.js +2 -2
- package/lib/schemas/index.js +1 -0
- package/npm-shrinkwrap.json +4 -4
- package/package.json +1 -1
- package/packages/client_build_tool/lib/allCommandsConfigs.js +25 -0
- package/packages/client_build_tool/lib/commands/build/commandExecutor.js +17 -0
- package/packages/client_build_tool/lib/commands/build/config.js +12 -0
- package/packages/client_build_tool/lib/commands/build/optionsProcessor.js +35 -0
- package/packages/client_build_tool/lib/commands/build/preProcessor.js +12 -0
- package/packages/client_build_tool/lib/commands/buildEs/commandExecutor.js +33 -0
- package/packages/client_build_tool/lib/commands/buildEs/config.js +12 -0
- package/packages/client_build_tool/lib/commands/buildEs/preProcessor.js +17 -0
- package/packages/client_build_tool/lib/commands/buildLib/commandExecutor.js +33 -0
- package/packages/client_build_tool/lib/commands/buildLib/config.js +12 -0
- package/packages/client_build_tool/lib/commands/buildLib/preProcessor.js +17 -0
- package/packages/client_build_tool/lib/commands/mockserver/commandExecutor.js +43 -0
- package/packages/client_build_tool/lib/commands/mockserver/config.js +12 -0
- package/packages/client_build_tool/lib/commands/pre_process/commandExecutor.js +18 -0
- package/packages/client_build_tool/lib/commands/pre_process/config.js +12 -0
- package/packages/client_build_tool/lib/commands/start/commandExecutor.js +12 -0
- package/packages/client_build_tool/lib/commands/start/config.js +12 -0
- package/packages/client_build_tool/lib/commands/start/optionsProcessor.js +30 -0
- package/packages/client_build_tool/lib/commands/start/preProcessor.js +12 -0
- package/packages/client_build_tool/lib/commands/template/commandExecutor.js +28 -0
- package/packages/client_build_tool/lib/commands/template/config.js +12 -0
- package/packages/client_build_tool/lib/commands/version/commandExecutor.js +14 -0
- package/packages/client_build_tool/lib/commands/version/config.js +12 -0
- package/packages/client_build_tool/lib/commandsRouter.js +74 -0
- package/packages/client_build_tool/lib/index.js +12 -0
- package/packages/client_build_tool/lib/logger.js +34 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/otherTestCases.test.js +234 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/passingDifferentDataTypesToSchema.test.js +103 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/passingEmptyObjects.test.js +41 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertArray.test.js +68 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertNumber.test.js +68 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertObject.test.js +141 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertString.test.js +68 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByCustomOptions/convertUndefinedAndNull.test.js +132 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertArray.test.js +71 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertNumber.test.js +71 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertObject.test.js +73 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertString.test.js +71 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/__test__/replacingSchemaValueByProcessEnv/convertUndefinedAndNull.test.js +138 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/index.js +34 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/isObject.js +10 -0
- package/packages/client_build_tool/lib/schemas/applyValuesToSchema/isValid.js +14 -0
- package/packages/client_build_tool/lib/schemas/cliArgsToObject.js +39 -0
- package/packages/client_build_tool/lib/schemas/defaultConfigValues.js +349 -0
- package/packages/client_build_tool/lib/schemas/defaultConfigValuesOnly.js +187 -0
- package/packages/client_build_tool/lib/schemas/deprecatedOptionsHandler.js +67 -0
- package/packages/client_build_tool/lib/schemas/getNpmVersion.js +22 -0
- package/packages/client_build_tool/lib/schemas/giveDefaultValue.js +18 -0
- package/packages/client_build_tool/lib/schemas/npmConfigToObject.js +35 -0
- package/packages/client_build_tool/lib/schemas/readOptions.js +54 -0
- package/packages/client_build_tool/lib/schemas/readOptionsForConfigFile.js +42 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Map.test.js +15 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/MathAndNumberMethod.test.js +30 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/ObjectAndModules.test.js +47 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Sets.test.js +18 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/Symbol.test.js +25 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/arrowFunction.test.js +34 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/block-scoping.test.js +18 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/classes.test.js +55 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/defaultParameterValues.test.js +18 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/extraFeatures.test.js +82 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/forOf.test.js +20 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/promise.test.js +22 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/spreadOperator.test.js +20 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/spreadParams.test.js +24 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/stringAndArrayMethods.test.js +67 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2015/variables.test.js +21 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2016/array-includes.test.js +13 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2016/exponentationOperator.test.js +20 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2017/asyncAndawait.test.js +23 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-entries.test.js +24 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-getOwnproperties.test.js +24 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2017/object-values.test.js +24 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2017/stringMethods.test.js +20 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2018/asynchronous-iterator.test.js +19 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2018/object-rest-spread.test.js +24 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2018/promise-finally.test.js +26 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2018/regularExpressions.test.js +35 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2019/Json.stringify.test.js +21 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2019/arrayMethods.test.js +31 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2019/object-fromEntriesMethod.test.js +13 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2019/optionalCatchBinding.test.js +23 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2019/revisedFunctionToString.test.js +17 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2019/trim-startAndend-method.test.js +20 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2020/AssignmentOperator.test.js +27 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2020/Dynamic-Import.test.js +19 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2020/NullishOperator.test.js +15 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2020/bigInt.test.js +13 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2020/chainOperator.test.js +17 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2020/export-namespace-from.test.js +12 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2020/promiseAllSettledMathod.test.js +17 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2020/stringMatchMethod.test.js +13 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2021/NumericSeparator.test.js +23 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2021/logicalOperatorAssignments.test.js +25 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2021/promiseAny.test.js +16 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2021/stringReplaceMethod.test.js +16 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/Array-atMethod.test.js +13 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/ObjectKeyCheck.test.js +27 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/ObjecthasOwnMethod.test.js +19 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/RegexMatchIndices.test.js +20 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/String-atMethod.test.js +15 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/error.Cause.test.js +23 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/keysCheckinPrivateFields.test.js +27 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/privateMethodsAndFields.test.js +23 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/staticFieldsAndMethod.test.js +54 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/topLevelAwait.test.js +11 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/es2022/weakRef.test.js +17 -0
- package/packages/client_build_tool/lib/shared/babel/__test__/utilities.js +28 -0
- package/packages/client_build_tool/lib/shared/babel/addDefaultPlugins.js +15 -0
- package/packages/client_build_tool/lib/shared/babel/babelWebConfig.js +54 -0
- package/packages/client_build_tool/lib/shared/babel/babel_plugins/removeAttributesPlugin.js +23 -0
- package/packages/client_build_tool/lib/shared/babel/getBabelPlugin.js +37 -0
- package/packages/client_build_tool/lib/shared/babel/runBabelForJSFile.js +24 -0
- package/packages/client_build_tool/lib/shared/babel/runBabelForTsFile.js +30 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/common/decidePublicPath.js +57 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/common/libAlias.js +31 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/common/modeUtils.js +39 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/common/nameTemplates.js +105 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/common/resourceBasedPublicPath.js +21 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/configCustomLoaders.js +10 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/cssLoaders.js +16 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/BundleIntegrityReport/index.js +83 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/CdnChangePlugin/index.js +119 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/CdnChangePlugin/webpackCustomJsUrlLoader.js +46 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/CustomScriptLoadingPlugin.js +109 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/EFCTemplatePlugin.js +112 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/ContributionGuide.md +11 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nFilesEmitPlugin.js +174 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nKeysIdentifer.js +76 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nRuntimeDealerPlugin.js +223 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/I18nSplit.md +95 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/LocaleChunkAssetsStore.js +73 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/ModulesI18nKeysStore.js +88 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/README.md +25 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/constants.js +29 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/createHash.js +24 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/getI18nLoadingRuntimeModule.js +76 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/index.js +39 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/iterateModulesInChunk.js +50 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/optionsHandler.js +68 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/pathCreator.js +23 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/readI18nValues.js +29 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/templateFileName.js +43 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/templateHashHelpers.js +77 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/classesAndObject.test.js +56 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/conditionalOperation.test.js +154 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/function.test.js +89 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/function2.test.js +71 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/loop.test.js +112 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/minifyBooleanValues.test.js +43 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/minimizeVariableNames.test.js +45 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/promise.test.js +53 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/removeCommentsAndEmptySpace.test.js +13 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/removeUnusedStrings.test.js +14 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/terser/__test__/variableDeclaration.test.js +30 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/collectI18nKeys.js +66 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/getChunkModules.js +13 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/hashUtils.js +19 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/index.js +31 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/I18nSplitPlugin/utils/propertiesUtils.js +129 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/InitialHtmlPlugin.js +60 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/addFilesNamesToManifestJson.test.js +51 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/createInitialEntries.test.js +95 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/__test__/removeHashFromFileName.test.js +91 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/addFilesNamesToManifestJson.js +30 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/createInitialEntries.js +23 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/createManifestJson.js +35 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/findInitialFileNames.js +18 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/index.js +46 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ManifestJsonPlugin/removeHashFromFileName.js +18 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RTLSplitPlugin.js +1 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ResourceHintsPlugin.js +193 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/OverwriteCssPathForRTL.js +62 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/RtlCssPlugin.js +84 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/RtrSplit.md +34 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RtlSplitPlugin/replaceCssDirTemplate.js +27 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/RuntimeResourceCleanup/index.js +73 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/classHandling.js +20 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/index.js +78 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/selectorWeightPrefixAdder.js +51 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SelectorWeightPlugin/windowsModification.js +16 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ServiceWorkerPlugin.js +114 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/ServiceWorkerPluginUtils.js +13 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/SourceMapPlugin/index.js +68 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/TPHashMappingPlugin/addHashToFilePath.js +22 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/TPHashMappingPlugin/index.js +55 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/uglifyCss1.test.js +74 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/uglifycss.test.js +64 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/__test__/utilities.js +28 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/UglifyCSSPlugin/index.js.js +49 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/VariableConversionCollector/ErrorHandler.js +62 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/VariableConversionCollector/index.js +362 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/custom_attribute_plugin/index.js +80 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/emitAsset.js +14 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/getInitialAssetsFuncTemplate.js +57 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/getInitialI18nAssetsArrayStr.js +87 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/classesAndObject.test.js +56 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/conditionalOperation.test.js +154 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/function.test.js +89 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/function2.test.js +71 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/loop.test.js +112 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/minifyBooleanValues.test.js +43 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/minimizeVariableNames.test.js +45 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/promise.test.js +53 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/removeCommentsAndEmptySpace.test.js +13 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/removeUnusedStrings.test.js +14 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/custom_plugins/terser/__test__/variableDeclaration.test.js +30 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/defaultVendorPatternList.js +13 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/devtoolConfig.js +13 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/entryConfig.js +28 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/externals.js +17 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/getCSSLoaders.js +29 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/getFilenameFromModule.js +24 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/jsLoaders.js +17 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/assetLoaders.js +12 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/babelLoaderConfig.js +18 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/checkIsPatternsMatchFilename.js +56 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configHtmlTemplateLoader.js +18 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configPostCssLoader.js +37 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configWebWorkerLoader.js +21 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/configsAssetsLoaders.js +86 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/cssClassNameGenerate.js +65 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaderConfigs/getCssLoaderOptions.js +21 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaders/miniCssFallBackLoader.js +7 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/loaders/workerLoader.js +133 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/optimizationConfig.js +56 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/outputConfig.js +38 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configBundleAnalyzer.js +40 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configBundleIntegrityReport.js +36 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCSSMinifierPlugin.js +28 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCdnChangePlugin.js +27 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCopyPublicFolders.js +63 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCustomAttributesPlugin.js +20 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configCustomScriptLoadingStrategyPlugin.js +76 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configEFCTemplatePlugin.js +46 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configEnvVariables.js +51 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configHtmlWebpackPlugin.js +56 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configI18nSplitPlugin.js +41 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configIgnorePlugin.js +16 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configManifestJsonPlugin.js +44 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configMiniCSSExtractPlugin.js +24 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configProgressPlugin.js +24 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configResourceHintsPlugin.js +21 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configRtlCssPlugin.js +27 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configRuntimeResourceCleanup.js +31 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configSelectorWeightPlugin.js +28 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configServiceWorkerPlugin.js +40 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configSourceMapPlugin.js +20 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configTPHashMappingPlugin.js +32 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/pluginConfigs/configVariableConversionPlugin.js +25 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/plugins.js +58 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/resolvers.js +82 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/splitChunksConfig.js +116 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/statsConfig.js +30 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/tsLoaders.js +17 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/utils/__test__/getArrayWithDefaultWithCustomEqual.test.js +54 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/utils/__test__/updateArrayWithDefault.test.js +47 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/utils/index.js +31 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/utils/object-manipulation.js +87 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/utils/updateArrayWithDefault.js +34 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/webpackBuild.js +27 -0
- package/packages/client_build_tool/lib/shared/bundler/webpack/webpackConfig.js +58 -0
- package/packages/client_build_tool/lib/shared/commands-utils/doBasicRequirementCheck.js +17 -0
- package/packages/client_build_tool/lib/shared/commands-utils/getCliPath.js +39 -0
- package/packages/client_build_tool/lib/shared/commands-utils/index.js +29 -0
- package/packages/client_build_tool/lib/shared/commands-utils/log.js +13 -0
- package/packages/client_build_tool/lib/shared/commands-utils/readArgsFormCommandLine.js +11 -0
- package/packages/client_build_tool/lib/shared/commands-utils/readOptionFormCommandLine.js +11 -0
- package/packages/client_build_tool/lib/shared/commands-utils/spawnSyncIO.js +38 -0
- package/packages/client_build_tool/lib/shared/constants.js +48 -0
- package/packages/client_build_tool/lib/shared/fileUtils/copyFile.js +38 -0
- package/packages/client_build_tool/lib/shared/fileUtils/directoryIterator.js +21 -0
- package/packages/client_build_tool/lib/shared/fileUtils/watchRun.js +112 -0
- package/packages/client_build_tool/lib/shared/postcss/__test__/ignoreTestCases.test.js +80 -0
- package/packages/client_build_tool/lib/shared/postcss/__test__/postcss-rtl-all-cases.test.js +119 -0
- package/packages/client_build_tool/lib/shared/postcss/__test__/postcssRtl.spec.js +34 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/EmptyPlugin.js +21 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/constants.js +10 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/handleIgnores.js +66 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/index.js +136 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/insertBefore.js +32 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/isPreviouslyProcessed.js +20 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/replaceUtils.js +20 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/separateHoveredSelectorAndNormalSelector.js +24 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/specialCases.js +43 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/HoverActivePlugin/typeCheckUtils.js +52 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/RTLSplitPlugin.js +139 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/SelectorReplace.js +90 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/ValueReplacer.js +57 -0
- package/packages/client_build_tool/lib/shared/postcss/custom_postcss_plugins/VariableModificationPlugin/index.js +347 -0
- package/packages/client_build_tool/lib/shared/postcss/filterPluginsAllowedForSpecficFile.js +55 -0
- package/packages/client_build_tool/lib/shared/postcss/getAllowedPostCssPlugins.js +30 -0
- package/packages/client_build_tool/lib/shared/postcss/getSpecificPostCssPlugin.js +58 -0
- package/packages/client_build_tool/lib/shared/postcss/runPostCssForCssFile.js +37 -0
- package/packages/client_build_tool/lib/shared/pre_process/runPreProcess.js +58 -0
- package/packages/client_build_tool/lib/shared/server/configWebpackDevMiddleware.js +41 -0
- package/packages/client_build_tool/lib/shared/server/corsHandling.js +30 -0
- package/packages/client_build_tool/lib/shared/server/getIp.js +30 -0
- package/packages/client_build_tool/lib/shared/server/getServerURL.js +36 -0
- package/packages/client_build_tool/lib/shared/server/httpsOptions.js +46 -0
- package/packages/client_build_tool/lib/shared/server/initExpressApp.js +19 -0
- package/packages/client_build_tool/lib/shared/server/initialHTMLHandling.js +99 -0
- package/packages/client_build_tool/lib/shared/server/mockApiHandler.js +60 -0
- package/packages/client_build_tool/lib/shared/server/mockServer.js +41 -0
- package/packages/client_build_tool/lib/shared/server/serveContextFiles.js +27 -0
- package/packages/client_build_tool/lib/shared/server/serverBywebpackDevMiddleware.js +35 -0
- package/packages/client_build_tool/lib/shared/server/startHttpServer.js +26 -0
- package/packages/client_build_tool/lib/shared/server/startHttpsServer.js +38 -0
- package/packages/client_build_tool/lib/shared/server/unwanted/addHttp2Server.js +41 -0
- package/packages/client_build_tool/lib/shared/server/unwanted/configWebpackDevMiddleware.js +44 -0
- package/packages/client_build_tool/lib/shared/server/unwanted/mockApiSupport.js +19 -0
- package/packages/client_build_tool/lib/shared/server/unwanted/websocketMockSetup.js +48 -0
- package/packages/client_build_tool/lib/shared/server/urlConcat.js +32 -0
- package/packages/client_build_tool/lib/shared/utils/requireLocalOrGlobal.js +81 -0
- package/packages/client_build_tool/lib/shared/utils/utils.js +1 -0
- package/packages/client_build_tool/lib/shared/utils/versionPrint.js +20 -0
- package/packages/client_build_tool/node_modules/history/CHANGES.md +395 -0
- package/packages/client_build_tool/node_modules/history/DOMUtils.js +3 -0
- package/packages/client_build_tool/node_modules/history/ExecutionEnvironment.js +3 -0
- package/packages/client_build_tool/node_modules/history/LICENSE +21 -0
- package/packages/client_build_tool/node_modules/history/LocationUtils.js +3 -0
- package/packages/client_build_tool/node_modules/history/PathUtils.js +3 -0
- package/packages/client_build_tool/node_modules/history/README.md +282 -0
- package/packages/client_build_tool/node_modules/history/cjs/history.js +933 -0
- package/packages/client_build_tool/node_modules/history/cjs/history.min.js +1 -0
- package/packages/client_build_tool/node_modules/history/createBrowserHistory.js +3 -0
- package/packages/client_build_tool/node_modules/history/createHashHistory.js +3 -0
- package/packages/client_build_tool/node_modules/history/createMemoryHistory.js +3 -0
- package/packages/client_build_tool/node_modules/history/createTransitionManager.js +3 -0
- package/packages/client_build_tool/node_modules/history/es/DOMUtils.js +7 -0
- package/packages/client_build_tool/node_modules/history/es/ExecutionEnvironment.js +7 -0
- package/packages/client_build_tool/node_modules/history/es/LocationUtils.js +7 -0
- package/packages/client_build_tool/node_modules/history/es/PathUtils.js +7 -0
- package/packages/client_build_tool/node_modules/history/es/createBrowserHistory.js +7 -0
- package/packages/client_build_tool/node_modules/history/es/createHashHistory.js +7 -0
- package/packages/client_build_tool/node_modules/history/es/createMemoryHistory.js +7 -0
- package/packages/client_build_tool/node_modules/history/es/createTransitionManager.js +7 -0
- package/packages/client_build_tool/node_modules/history/es/warnAboutDeprecatedESMImport.js +35 -0
- package/packages/client_build_tool/node_modules/history/esm/history.js +904 -0
- package/packages/client_build_tool/node_modules/history/index.js +7 -0
- package/packages/client_build_tool/node_modules/history/package.json +120 -0
- package/packages/client_build_tool/node_modules/history/umd/history.js +1059 -0
- package/packages/client_build_tool/node_modules/history/umd/history.min.js +1 -0
- package/packages/client_build_tool/node_modules/history/warnAboutDeprecatedCJSRequire.js +35 -0
@@ -0,0 +1,89 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const terser = require('terser');
|
4
|
+
|
5
|
+
test('arrow function reducing the arguments name', () => {
|
6
|
+
const code = `
|
7
|
+
const sum = (param1, param2) => {
|
8
|
+
return param1 + param2;
|
9
|
+
};
|
10
|
+
console.log(sum(2, 5));
|
11
|
+
`;
|
12
|
+
return terser.minify(code).then(minify => {
|
13
|
+
expect(minify.code).toBe('const sum=(o,s)=>o+s;console.log(sum(2,5));');
|
14
|
+
});
|
15
|
+
});
|
16
|
+
test('arrow function with console', () => {
|
17
|
+
const code = `
|
18
|
+
const printHello = () => {
|
19
|
+
console.log('hi')
|
20
|
+
return ('hello');
|
21
|
+
};
|
22
|
+
printHello();
|
23
|
+
`;
|
24
|
+
return terser.minify(code).then(minify => {
|
25
|
+
expect(minify.code).toBe('const printHello=()=>(console.log("hi"),"hello");console.log("hi");');
|
26
|
+
});
|
27
|
+
});
|
28
|
+
test('remove unused or unwanted codes inside function', () => {
|
29
|
+
const code = `
|
30
|
+
function a(){
|
31
|
+
let x = 3;
|
32
|
+
let a = 1;
|
33
|
+
//this is a function
|
34
|
+
let result = (a == 1) ? true : false
|
35
|
+
result = (x == 1) ? true : false;
|
36
|
+
}
|
37
|
+
`;
|
38
|
+
return terser.minify(code).then(minify => {
|
39
|
+
expect(minify.code).toBe('function a(){let n=!0;n=!1}');
|
40
|
+
});
|
41
|
+
});
|
42
|
+
describe('function', () => {
|
43
|
+
it('Minify a simple function', () => {
|
44
|
+
const code = `
|
45
|
+
function sum(num1, num2) {
|
46
|
+
return num1 + num2;
|
47
|
+
}
|
48
|
+
`;
|
49
|
+
return terser.minify(code).then(minify => {
|
50
|
+
expect(minify.code).toBe('function sum(n,u){return n+u}');
|
51
|
+
});
|
52
|
+
});
|
53
|
+
it('Minify a function with a variable declaration', () => {
|
54
|
+
const code = `
|
55
|
+
function sum(num1, num2) {
|
56
|
+
var result = num1 + num2;
|
57
|
+
return result;
|
58
|
+
}
|
59
|
+
`;
|
60
|
+
return terser.minify(code).then(minify => {
|
61
|
+
expect(minify.code).toBe('function sum(n,u){return n+u}');
|
62
|
+
});
|
63
|
+
});
|
64
|
+
it('Minify a function with a if condition', () => {
|
65
|
+
const code = `
|
66
|
+
function sum(num1, num2) {
|
67
|
+
if (num1 > num2) {
|
68
|
+
return num1;
|
69
|
+
} else {
|
70
|
+
return num2;
|
71
|
+
}
|
72
|
+
}
|
73
|
+
`;
|
74
|
+
return terser.minify(code).then(minify => {
|
75
|
+
expect(minify.code).toBe('function sum(n,u){return n>u?n:u}');
|
76
|
+
});
|
77
|
+
});
|
78
|
+
it('Minify a function with return statement', () => {
|
79
|
+
const code = `
|
80
|
+
function sum(num1, num2) {
|
81
|
+
var result = num1 + num2;
|
82
|
+
return result;
|
83
|
+
}
|
84
|
+
`;
|
85
|
+
return terser.minify(code).then(minify => {
|
86
|
+
expect(minify.code).toBe('function sum(n,u){return n+u}');
|
87
|
+
});
|
88
|
+
});
|
89
|
+
});
|
@@ -0,0 +1,71 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const terser = require('terser');
|
4
|
+
|
5
|
+
describe('function', () => {
|
6
|
+
it('Minify a function with console.log', () => {
|
7
|
+
const code = `
|
8
|
+
function sum(num1, num2) {
|
9
|
+
var result = num1 + num2;
|
10
|
+
console.log(result)
|
11
|
+
}
|
12
|
+
`;
|
13
|
+
return terser.minify(code).then(minify => {
|
14
|
+
expect(minify.code).toBe('function sum(o,n){var c=o+n;console.log(c)}');
|
15
|
+
});
|
16
|
+
});
|
17
|
+
it('Minify a function with return and console.log', () => {
|
18
|
+
const code = `
|
19
|
+
function sum(num1, num2) {
|
20
|
+
var result = num1 + num2;
|
21
|
+
console.log(result);
|
22
|
+
return result;
|
23
|
+
}
|
24
|
+
`;
|
25
|
+
return terser.minify(code).then(minify => {
|
26
|
+
expect(minify.code).toBe('function sum(n,o){var r=n+o;return console.log(r),r}');
|
27
|
+
});
|
28
|
+
});
|
29
|
+
it('remove unused (dead codes) and unwanted variables inside the function', () => {
|
30
|
+
const code = `
|
31
|
+
function sum(num1, num2) {
|
32
|
+
var result = num1 + num2;
|
33
|
+
const functName = 'addition';
|
34
|
+
var i = 0;
|
35
|
+
return result;
|
36
|
+
}
|
37
|
+
`;
|
38
|
+
return terser.minify(code).then(minify => {
|
39
|
+
expect(minify.code).toBe('function sum(n,u){return n+u}');
|
40
|
+
});
|
41
|
+
});
|
42
|
+
it('Minify a function with a for loop', () => {
|
43
|
+
const code = `
|
44
|
+
function sum(num1, num2) {
|
45
|
+
for (var i = 0; i < num1; i++) {
|
46
|
+
console.log(i)
|
47
|
+
}
|
48
|
+
}
|
49
|
+
`;
|
50
|
+
return terser.minify(code).then(minify => {
|
51
|
+
expect(minify.code).toBe('function sum(o,n){for(var c=0;c<o;c++)console.log(c)}');
|
52
|
+
});
|
53
|
+
});
|
54
|
+
it('Minify a function with a if condition inside a for loop', () => {
|
55
|
+
const code = `
|
56
|
+
function sum(num1, num2) {
|
57
|
+
for (var i = 0; i < num1; i++) {
|
58
|
+
if(i > 0){
|
59
|
+
console.log(i)
|
60
|
+
}
|
61
|
+
else{
|
62
|
+
console.log(0);
|
63
|
+
}
|
64
|
+
}
|
65
|
+
}
|
66
|
+
`;
|
67
|
+
return terser.minify(code).then(minify => {
|
68
|
+
expect(minify.code).toBe('function sum(o,l){for(var n=0;n<o;n++)n>0?console.log(n):console.log(0)}');
|
69
|
+
});
|
70
|
+
});
|
71
|
+
});
|
@@ -0,0 +1,112 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
/* eslint-disable max-lines */
|
4
|
+
const terser = require('terser');
|
5
|
+
|
6
|
+
describe('normal for loop', () => {
|
7
|
+
it('minimize variable names inside the loop when using let type', () => {
|
8
|
+
const code = `
|
9
|
+
for (let book = 0; book < 4; book += 1) {
|
10
|
+
console.log(book);
|
11
|
+
};
|
12
|
+
`;
|
13
|
+
return terser.minify(code).then(minify => {
|
14
|
+
expect(minify.code).toBe('for(let o=0;o<4;o+=1)console.log(o);');
|
15
|
+
});
|
16
|
+
});
|
17
|
+
it('for loop with variable keyword var', () => {
|
18
|
+
const code = `
|
19
|
+
for (var book = 0; book < 4; book += 1) {
|
20
|
+
console.log(book);
|
21
|
+
};
|
22
|
+
`;
|
23
|
+
return terser.minify(code).then(minify => {
|
24
|
+
expect(minify.code).toBe('for(var book=0;book<4;book+=1)console.log(book);');
|
25
|
+
});
|
26
|
+
});
|
27
|
+
it('remove unused variable with keyword let and const', () => {
|
28
|
+
const code = `
|
29
|
+
for (let number = 0;number>28;number++){
|
30
|
+
console.log(number);
|
31
|
+
let number2 = 28;
|
32
|
+
const number3 = 32;
|
33
|
+
};
|
34
|
+
`;
|
35
|
+
return terser.minify(code).then(minify => {
|
36
|
+
expect(minify.code).toBe('for(let o=0;o>28;o++){console.log(o)}');
|
37
|
+
});
|
38
|
+
});
|
39
|
+
it('take unused variable with keyword var', () => {
|
40
|
+
const code = `
|
41
|
+
for (let number = 0;number>28;number++){
|
42
|
+
console.log(number);
|
43
|
+
var number2 = 28;
|
44
|
+
var number3 = 32;
|
45
|
+
};
|
46
|
+
`;
|
47
|
+
return terser.minify(code).then(minify => {
|
48
|
+
expect(minify.code).toBe('for(let e=0;e>28;e++){console.log(e);var number2=28,number3=32}');
|
49
|
+
});
|
50
|
+
});
|
51
|
+
it('remove unused and unwanted codes like if statement', () => {
|
52
|
+
const code = `
|
53
|
+
for (let number = 0;number>28;number++){
|
54
|
+
console.log(number);
|
55
|
+
if(true){
|
56
|
+
let i = 0;
|
57
|
+
}
|
58
|
+
};
|
59
|
+
`;
|
60
|
+
return terser.minify(code).then(minify => {
|
61
|
+
expect(minify.code).toBe('for(let o=0;o>28;o++){console.log(o)}');
|
62
|
+
});
|
63
|
+
});
|
64
|
+
it('using break in loops', () => {
|
65
|
+
const code = `
|
66
|
+
for (let number = 0;number>28;number++){
|
67
|
+
console.log(number);
|
68
|
+
break;
|
69
|
+
};
|
70
|
+
`;
|
71
|
+
return terser.minify(code).then(minify => {
|
72
|
+
expect(minify.code).toBe('for(let o=0;o>28;o++){console.log(o);break}');
|
73
|
+
});
|
74
|
+
});
|
75
|
+
it('using breaks in loops with an condition', () => {
|
76
|
+
const code = `
|
77
|
+
for (let number = 0;number>28;number++){
|
78
|
+
console.log(number);
|
79
|
+
if(number != 0)
|
80
|
+
break;
|
81
|
+
};
|
82
|
+
`;
|
83
|
+
return terser.minify(code).then(minify => {
|
84
|
+
expect(minify.code).toBe('for(let o=0;o>28&&(console.log(o),0==o);o++);');
|
85
|
+
});
|
86
|
+
});
|
87
|
+
it('using continue in loops with an condition', () => {
|
88
|
+
const code = `
|
89
|
+
for (let number = 0;number>28;number++){
|
90
|
+
if(number > 0)
|
91
|
+
continue;
|
92
|
+
console.log(2);
|
93
|
+
};
|
94
|
+
`;
|
95
|
+
return terser.minify(code).then(minify => {
|
96
|
+
expect(minify.code).toBe('for(let o=0;o>28;o++)o>0||console.log(2);');
|
97
|
+
});
|
98
|
+
});
|
99
|
+
it('remove the code which are write below the continue', () => {
|
100
|
+
const code = `
|
101
|
+
for (let number = 0;number>28;number++){
|
102
|
+
console.log(2)
|
103
|
+
continue;
|
104
|
+
console.log(3)
|
105
|
+
|
106
|
+
};
|
107
|
+
`;
|
108
|
+
return terser.minify(code).then(minify => {
|
109
|
+
expect(minify.code).toBe('for(let o=0;o>28;o++)console.log(2);');
|
110
|
+
});
|
111
|
+
});
|
112
|
+
});
|
@@ -0,0 +1,43 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const terser = require('terser');
|
4
|
+
|
5
|
+
test('minimize boolean values', () => {
|
6
|
+
const code = `
|
7
|
+
let a = true;
|
8
|
+
let b = false`;
|
9
|
+
return terser.minify(code).then(minify => {
|
10
|
+
expect(minify.code).toBe('let a=!0,b=!1;');
|
11
|
+
});
|
12
|
+
});
|
13
|
+
test('terinary operator with var and let', () => {
|
14
|
+
const code = `
|
15
|
+
var x = 3;
|
16
|
+
let a = 1;
|
17
|
+
let result = (a == 1) ? true : false
|
18
|
+
result = (x == 1) ? true : false;
|
19
|
+
`;
|
20
|
+
return terser.minify(code).then(minify => {
|
21
|
+
expect(minify.code).toBe('var x=3;let a=1,result=1==a;result=1==x;');
|
22
|
+
});
|
23
|
+
});
|
24
|
+
test('terinary operator with const', () => {
|
25
|
+
const code = `
|
26
|
+
const x = 3;
|
27
|
+
const a = 1;
|
28
|
+
let result = (a == 1) ? true : false
|
29
|
+
result = (x == 1) ? true : false;
|
30
|
+
`;
|
31
|
+
return terser.minify(code).then(minify => {
|
32
|
+
expect(minify.code).toBe('const x=3,a=1;let result=!0;result=!1;');
|
33
|
+
});
|
34
|
+
});
|
35
|
+
test('minimize values when using logical and comparision operators', () => {
|
36
|
+
const code = `
|
37
|
+
let result = (true && true ) ? true : false
|
38
|
+
result = (1>2) ? true : false;
|
39
|
+
`;
|
40
|
+
return terser.minify(code).then(minify => {
|
41
|
+
expect(minify.code).toBe('let result=!0;result=!1;');
|
42
|
+
});
|
43
|
+
});
|
@@ -0,0 +1,45 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const terser = require('terser');
|
4
|
+
|
5
|
+
test('reduce repeated variable names', () => {
|
6
|
+
const code = `
|
7
|
+
let number = 10;
|
8
|
+
number = number+10;
|
9
|
+
`;
|
10
|
+
return terser.minify(code).then(minify => {
|
11
|
+
expect(minify.code).toBe('let number=10;number+=10;');
|
12
|
+
});
|
13
|
+
});
|
14
|
+
test('variable names less than values with const', () => {
|
15
|
+
const code = `
|
16
|
+
const val = false;
|
17
|
+
|
18
|
+
console.log(val);
|
19
|
+
`;
|
20
|
+
return terser.minify(code).then(minify => {
|
21
|
+
expect(minify.code).toBe('const val=!1;console.log(val);');
|
22
|
+
});
|
23
|
+
});
|
24
|
+
test('variable names greather than values with const', () => {
|
25
|
+
const code = `
|
26
|
+
const found = true;
|
27
|
+
|
28
|
+
console.log(found);
|
29
|
+
`;
|
30
|
+
return terser.minify(code).then(minify => {
|
31
|
+
expect(minify.code).toBe('const found=!0;console.log(true);');
|
32
|
+
});
|
33
|
+
});
|
34
|
+
test('checking varible names with let and var', () => {
|
35
|
+
const code = `
|
36
|
+
let val = false;
|
37
|
+
|
38
|
+
var done = 3
|
39
|
+
|
40
|
+
console.log(val,done);
|
41
|
+
`;
|
42
|
+
return terser.minify(code).then(minify => {
|
43
|
+
expect(minify.code).toBe('let val=!1;var done=3;console.log(val,done);');
|
44
|
+
});
|
45
|
+
});
|
@@ -0,0 +1,53 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const terser = require('terser');
|
4
|
+
|
5
|
+
test('remove dead codes and minimize the parameter names', () => {
|
6
|
+
const code = `
|
7
|
+
const promise = new Promise((resolve, reject) => {
|
8
|
+
const res = true;
|
9
|
+
if (res) {
|
10
|
+
resolve('Resolved!');
|
11
|
+
}
|
12
|
+
else {
|
13
|
+
reject(Error('Error'));
|
14
|
+
}
|
15
|
+
});
|
16
|
+
promise.then((res) => console.log(res), (err) => console.error(err));
|
17
|
+
`;
|
18
|
+
return terser.minify(code).then(minify => {
|
19
|
+
expect(minify.code).toBe('const promise=new Promise(((o,e)=>{o("Resolved!")}));promise.then((o=>console.log(o)),(o=>console.error(o)));');
|
20
|
+
});
|
21
|
+
});
|
22
|
+
test('remove dead codes and minimize the variables', () => {
|
23
|
+
const code = `
|
24
|
+
|
25
|
+
const msg = async function () {
|
26
|
+
const msg = await helloWorld();
|
27
|
+
console.log('message',msg);
|
28
|
+
}
|
29
|
+
const msg1 = async () => {
|
30
|
+
const msg = await helloWorld();
|
31
|
+
console.log('message',msg);
|
32
|
+
}
|
33
|
+
msg();
|
34
|
+
msg1();
|
35
|
+
`;
|
36
|
+
return terser.minify(code).then(minify => {
|
37
|
+
expect(minify.code).toBe('const msg=async function(){const s=await helloWorld();console.log("message",s)},msg1=async()=>{const s=await helloWorld();console.log("message",s)};msg(),msg1();');
|
38
|
+
});
|
39
|
+
});
|
40
|
+
test('minimize the set timeout timer', () => {
|
41
|
+
const code = `
|
42
|
+
function helloWorld() {
|
43
|
+
return new Promise(resolve => {
|
44
|
+
setTimeout(() => {
|
45
|
+
resolve('Hello World!');
|
46
|
+
}, 2000);
|
47
|
+
});
|
48
|
+
}
|
49
|
+
`;
|
50
|
+
return terser.minify(code).then(minify => {
|
51
|
+
expect(minify.code).toBe('function helloWorld(){return new Promise((e=>{setTimeout((()=>{e("Hello World!")}),2e3)}))}');
|
52
|
+
});
|
53
|
+
});
|
@@ -0,0 +1,13 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const terser = require('terser');
|
4
|
+
|
5
|
+
test('removeComments', () => {
|
6
|
+
const code = `
|
7
|
+
function add(a, b) {
|
8
|
+
return a + b;
|
9
|
+
}`;
|
10
|
+
return terser.minify(code).then(minify => {
|
11
|
+
expect(minify.code).toBe('function add(n,d){return n+d}');
|
12
|
+
});
|
13
|
+
});
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const terser = require('terser');
|
4
|
+
|
5
|
+
test('removeUnusedStrings', () => {
|
6
|
+
const code = `
|
7
|
+
let age = 7;
|
8
|
+
|
9
|
+
'Tommy is ' + age + ' years old.';;
|
10
|
+
`;
|
11
|
+
return terser.minify(code).then(minify => {
|
12
|
+
expect(minify.code).toBe('let age=7;');
|
13
|
+
});
|
14
|
+
});
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
const terser = require('terser');
|
4
|
+
|
5
|
+
describe('variable declaration', () => {
|
6
|
+
it('check let statement', () => {
|
7
|
+
const code = `
|
8
|
+
let juiceCount = 5;
|
9
|
+
let juiceName = 'apple'`;
|
10
|
+
return terser.minify(code).then(minify => {
|
11
|
+
expect(minify.code).toBe('let juiceCount=5,juiceName="apple";');
|
12
|
+
});
|
13
|
+
});
|
14
|
+
it('check var statement', () => {
|
15
|
+
const code = `
|
16
|
+
var juiceCount = 5;
|
17
|
+
var juiceName = 'apple'`;
|
18
|
+
return terser.minify(code).then(minify => {
|
19
|
+
expect(minify.code).toBe('var juiceCount=5,juiceName="apple";');
|
20
|
+
});
|
21
|
+
});
|
22
|
+
it('check const statement', () => {
|
23
|
+
const code = `
|
24
|
+
const juiceCount = 5;
|
25
|
+
const juiceName = 'apple'`;
|
26
|
+
return terser.minify(code).then(minify => {
|
27
|
+
expect(minify.code).toBe('const juiceCount=5,juiceName="apple";');
|
28
|
+
});
|
29
|
+
});
|
30
|
+
});
|
@@ -0,0 +1,66 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.collectI18nKeysfromAST = collectI18nKeysfromAST;
|
7
|
+
exports.collectI18nKeysfromComments = collectI18nKeysfromComments;
|
8
|
+
|
9
|
+
var _estreeWalker = require("estree-walker");
|
10
|
+
|
11
|
+
function collectI18nKeysfromAST(ast, allI18n) {
|
12
|
+
const i18nKeys = {};
|
13
|
+
(0, _estreeWalker.walk)(ast, {
|
14
|
+
enter(node) {
|
15
|
+
if (node.type === 'Literal') {
|
16
|
+
if ((node.raw[0] === '\'' || node.raw[0] === '"') && Object.hasOwnProperty.call(allI18n, node.value)) {
|
17
|
+
i18nKeys[node.value] = allI18n[node.value];
|
18
|
+
}
|
19
|
+
}
|
20
|
+
}
|
21
|
+
|
22
|
+
});
|
23
|
+
return Object.keys(i18nKeys);
|
24
|
+
}
|
25
|
+
|
26
|
+
const prefixI18nComment = 'I18N';
|
27
|
+
const prefixI18nComment1 = 'dynamic-i18n-key';
|
28
|
+
|
29
|
+
function getI18nKeysFromComment(comment) {
|
30
|
+
const commentString = comment.value.trim();
|
31
|
+
let i18nKeyStr;
|
32
|
+
|
33
|
+
if (commentString.startsWith(prefixI18nComment)) {
|
34
|
+
i18nKeyStr = commentString.slice(prefixI18nComment.length).trim();
|
35
|
+
} else if (commentString.startsWith(prefixI18nComment1)) {
|
36
|
+
i18nKeyStr = commentString.slice(prefixI18nComment1.length).trim();
|
37
|
+
}
|
38
|
+
|
39
|
+
if (!i18nKeyStr) {
|
40
|
+
return [];
|
41
|
+
}
|
42
|
+
|
43
|
+
const i18nKeys = i18nKeyStr.split(',');
|
44
|
+
return i18nKeys;
|
45
|
+
} // export function fromComments(comments, allI18n) {
|
46
|
+
|
47
|
+
|
48
|
+
function collectI18nKeysfromComments(comments, allI18n) {
|
49
|
+
// TODO: need to implement
|
50
|
+
const i18nKeys = {};
|
51
|
+
/* eslint-disable no-restricted-syntax */
|
52
|
+
|
53
|
+
for (const comment of comments) {
|
54
|
+
const keys = getI18nKeysFromComment(comment);
|
55
|
+
|
56
|
+
for (const key of keys) {
|
57
|
+
if (key && allI18n[key]) {
|
58
|
+
i18nKeys[key] = allI18n[key];
|
59
|
+
}
|
60
|
+
}
|
61
|
+
}
|
62
|
+
/* eslint-enable no-restricted-syntax */
|
63
|
+
|
64
|
+
|
65
|
+
return Object.keys(i18nKeys);
|
66
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.getChunkModules = getChunkModules;
|
7
|
+
|
8
|
+
function getChunkModules(chunk, compilation) {
|
9
|
+
const {
|
10
|
+
chunkGraph
|
11
|
+
} = compilation || {};
|
12
|
+
return typeof chunkGraph !== 'undefined' ? chunkGraph.getChunkModules(chunk) : chunk.modulesIterable;
|
13
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.REGEXP_CONTENTHASH = void 0;
|
7
|
+
exports.hasContentHash = hasContentHash;
|
8
|
+
// export const REGEXP_CHUNKHASH = /\[chunkhash(?::(\d+))?\]/gi;
|
9
|
+
// export const REGEXP_HASH = /\[hash(?::(\d+))?\]/gi;
|
10
|
+
// export const REGEXP_NAME = /\[name\]/gi;
|
11
|
+
// export const REGEXP_PLACEHOLDERS = /\[(name|id|chunkhash)\]/gi;
|
12
|
+
// TODO: want to choose file type for i18n load
|
13
|
+
const REGEXP_CONTENTHASH = /\[contenthash(?::(\d+))?\]/gi;
|
14
|
+
exports.REGEXP_CONTENTHASH = REGEXP_CONTENTHASH;
|
15
|
+
|
16
|
+
function hasContentHash(filenameTemplate) {
|
17
|
+
REGEXP_CONTENTHASH.lastIndex = 0;
|
18
|
+
return REGEXP_CONTENTHASH.test(filenameTemplate);
|
19
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
|
7
|
+
var _collectI18nKeys = require("./collectI18nKeys");
|
8
|
+
|
9
|
+
Object.keys(_collectI18nKeys).forEach(function (key) {
|
10
|
+
if (key === "default" || key === "__esModule") return;
|
11
|
+
if (key in exports && exports[key] === _collectI18nKeys[key]) return;
|
12
|
+
Object.defineProperty(exports, key, {
|
13
|
+
enumerable: true,
|
14
|
+
get: function () {
|
15
|
+
return _collectI18nKeys[key];
|
16
|
+
}
|
17
|
+
});
|
18
|
+
});
|
19
|
+
|
20
|
+
var _propertiesUtils = require("./propertiesUtils");
|
21
|
+
|
22
|
+
Object.keys(_propertiesUtils).forEach(function (key) {
|
23
|
+
if (key === "default" || key === "__esModule") return;
|
24
|
+
if (key in exports && exports[key] === _propertiesUtils[key]) return;
|
25
|
+
Object.defineProperty(exports, key, {
|
26
|
+
enumerable: true,
|
27
|
+
get: function () {
|
28
|
+
return _propertiesUtils[key];
|
29
|
+
}
|
30
|
+
});
|
31
|
+
});
|