@zohodesk/react-cli 0.0.1-exp.169.2 → 0.0.1-exp.175.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (245) hide show
  1. package/.eslintignore +7 -7
  2. package/.eslintrc.js +180 -179
  3. package/.prettierrc +6 -6
  4. package/README.md +1028 -951
  5. package/bin/cli.js +483 -483
  6. package/cert/Tsicsezwild-22-23.crt +37 -37
  7. package/cert/Tsicsezwild-22-23.key +27 -27
  8. package/docs/CustomChunks.md +26 -26
  9. package/docs/DevStart.md +18 -18
  10. package/docs/HoverActive.md +12 -12
  11. package/docs/InstallNode.md +28 -28
  12. package/docs/TODOS.md +10 -10
  13. package/docs/ValueReplacer.md +60 -60
  14. package/docs/VariableConversion.md +678 -0
  15. package/docs/warnings_while_install.txt +35 -35
  16. package/files/eslintrc.js +62 -62
  17. package/files/prettierrc.js +3 -3
  18. package/lib/babel/cmjs-plugins-presets.js +0 -4
  19. package/lib/babel/es-plugins-presets.js +0 -4
  20. package/lib/common/getEntries.js +0 -10
  21. package/lib/common/getPublicPathConfig.js +0 -6
  22. package/lib/common/index.js +0 -5
  23. package/lib/common/splitChunks.js +2 -13
  24. package/lib/common/sslcertUpdater.js +6 -17
  25. package/lib/common/templateParameters.js +0 -2
  26. package/lib/common/testPattern.js +10 -21
  27. package/lib/common/valueReplacer.js +0 -15
  28. package/lib/configs/jest.config.js +8 -21
  29. package/lib/configs/libAlias.js +11 -2
  30. package/lib/configs/webpack.component.umd.config.js +0 -5
  31. package/lib/configs/webpack.css.umd.config.js +5 -13
  32. package/lib/configs/webpack.dev.config.js +13 -24
  33. package/lib/configs/webpack.docs.config.js +6 -12
  34. package/lib/configs/webpack.impact.config.js +6 -10
  35. package/lib/configs/webpack.prod.config.js +15 -26
  36. package/lib/hooks/docsProptypeHook.js +3 -7
  37. package/lib/jest/commitedFilesResult.js +3 -45
  38. package/lib/jest/coverageCollector.js +0 -11
  39. package/lib/jest/jsonMaker.js +0 -6
  40. package/lib/jest/preProcessors/cssPreprocessor.js +14 -13
  41. package/lib/jest/preProcessors/jsPreprocessor.js +0 -2
  42. package/lib/jest/preProcessors/otherFilesPreprocessor.js +0 -3
  43. package/lib/jest/result.js +0 -22
  44. package/lib/jest/run.js +6 -17
  45. package/lib/jest/setup.js +5 -57
  46. package/lib/loaderUtils/configsAssetsLoaders.js +34 -44
  47. package/lib/loaderUtils/getCSSLoaders.js +41 -28
  48. package/lib/loaderUtils/getDevJsLoaders.js +0 -8
  49. package/lib/loaderUtils/index.js +0 -3
  50. package/lib/loaders/docsLoader.js +0 -7
  51. package/lib/loaders/docsPropsLoader.js +3 -7
  52. package/lib/loaders/fileBountryLoader.js +0 -2
  53. package/lib/loaders/fileLoader.js +11 -22
  54. package/lib/loaders/scriptInstrumentLoader.js +5 -13
  55. package/lib/loaders/selectorMappingLoader.js +7 -25
  56. package/lib/loaders/workerLoader.js +13 -29
  57. package/lib/middlewares/HMRMiddleware.js +13 -26
  58. package/lib/middlewares/SSTMiddleware.js +0 -3
  59. package/lib/pluginUtils/configHtmlWebpackPlugins.js +53 -0
  60. package/lib/pluginUtils/getDevPlugins.js +20 -64
  61. package/lib/pluginUtils/getDocsPlugins.js +1 -10
  62. package/lib/pluginUtils/getLibraryImactPlugins.js +4 -5
  63. package/lib/pluginUtils/getLibraryPlugins.js +0 -5
  64. package/lib/pluginUtils/getProdPlugins.js +32 -78
  65. package/lib/pluginUtils/getServerPlugins.js +0 -5
  66. package/lib/pluginUtils/getUMDCSSPlugins.js +0 -7
  67. package/lib/pluginUtils/getUMDComponentPlugins.js +0 -7
  68. package/lib/pluginUtils/index.js +0 -8
  69. package/lib/plugins/CdnChangePlugin.js +0 -14
  70. package/lib/plugins/CleanupStatsPlugin.js +0 -5
  71. package/lib/plugins/EFCPlugin.js +23 -34
  72. package/lib/plugins/EFCPlugin.md +6 -6
  73. package/lib/plugins/EFCTemplatePlugin.js +23 -32
  74. package/lib/plugins/I18NInjectIntoIndexPlugin.js +12 -38
  75. package/lib/plugins/I18nSplitPlugin/I18nDebugPlugin.js +12 -17
  76. package/lib/plugins/I18nSplitPlugin/I18nDependency.js +4 -10
  77. package/lib/plugins/I18nSplitPlugin/I18nDownlodLogic.js +46 -77
  78. package/lib/plugins/I18nSplitPlugin/I18nFilesEmitter.js +44 -59
  79. package/lib/plugins/I18nSplitPlugin/I18nKeysIdentifer.js +21 -30
  80. package/lib/plugins/I18nSplitPlugin/I18nSplit.md +95 -95
  81. package/lib/plugins/I18nSplitPlugin/README.md +25 -25
  82. package/lib/plugins/I18nSplitPlugin/index.js +70 -80
  83. package/lib/plugins/I18nSplitPlugin/utils/collectI18nKeys.js +2 -12
  84. package/lib/plugins/I18nSplitPlugin/utils/getI18nFileUrlPathTemplate.js +0 -1
  85. package/lib/plugins/I18nSplitPlugin/utils/getI18nKeysFormModules.js +0 -5
  86. package/lib/plugins/I18nSplitPlugin/utils/hashUtils.js +0 -6
  87. package/lib/plugins/I18nSplitPlugin/utils/index.js +0 -4
  88. package/lib/plugins/I18nSplitPlugin/utils/propertiesUtils.js +2 -20
  89. package/lib/plugins/ManifestPlugin.js +0 -17
  90. package/lib/plugins/ModuleStatsPlugin.js +0 -23
  91. package/lib/plugins/OptimizeJSPlugin.js +0 -7
  92. package/lib/plugins/PublicPathCallbackPlugin.js +0 -10
  93. package/lib/plugins/PublicPathChangePlugin.js +4 -36
  94. package/lib/plugins/ReportGeneratePlugin.js +4 -30
  95. package/lib/plugins/RequireVariablePublicPlugin.js +0 -6
  96. package/lib/plugins/ResourceHintsPlugin.js +20 -27
  97. package/lib/plugins/RtlSplitPlugin/OverwriteCssPathForRTL.js +12 -17
  98. package/lib/plugins/RtlSplitPlugin/RtlCssPlugin.js +23 -38
  99. package/lib/plugins/RtlSplitPlugin/RtrSplit.md +30 -30
  100. package/lib/plugins/RtlSplitPlugin/replaceCssDirTemplate.js +2 -5
  101. package/lib/plugins/ScriptInstrumentPlugin.js +0 -7
  102. package/lib/plugins/ServiceWorkerPlugin.js +13 -29
  103. package/lib/plugins/ShadowDOMSupportPlugin.js +3 -40
  104. package/lib/plugins/SourceMapHookPlugin.js +0 -9
  105. package/lib/plugins/TPHashMappingPlugin.js +5 -19
  106. package/lib/plugins/UglifyCSSPlugin.js +0 -9
  107. package/lib/plugins/UnusedFilesFindPlugin.js +2 -35
  108. package/lib/plugins/index.js +0 -19
  109. package/lib/plugins/libraryImpactPlugin.js +0 -32
  110. package/lib/plugins/webpackwatchrunplugin.js +0 -5
  111. package/lib/postcss-plugins/ExcludePlugin.js +0 -4
  112. package/lib/postcss-plugins/RTLSplitPlugin.js +24 -37
  113. package/lib/postcss-plugins/ValueReplacer.js +9 -6
  114. package/lib/postcss-plugins/__test__/hoverActivePlugin.spec.js +0 -3
  115. package/lib/postcss-plugins/__test__/test1Input.css +38 -38
  116. package/lib/postcss-plugins/__test__/test1Output.css +38 -38
  117. package/lib/postcss-plugins/hoverActivePlugin.js +80 -92
  118. package/lib/postcss-plugins/variableModificationPlugin/ErrorHandler.js +31 -0
  119. package/lib/postcss-plugins/variableModificationPlugin/index.js +232 -0
  120. package/lib/postcss-plugins/variableModifier.js +14 -20
  121. package/lib/schemas/index.js +28 -13
  122. package/lib/servers/clusterHubServer.js +0 -10
  123. package/lib/servers/devBuild.js +13 -24
  124. package/lib/servers/docsServer.js +0 -2
  125. package/lib/servers/docsServerCore.js +0 -21
  126. package/lib/servers/getCliPath.js +1 -10
  127. package/lib/servers/helpServer.js +0 -5
  128. package/lib/servers/httpsOptions.js +0 -4
  129. package/lib/servers/impactServer.js +2 -34
  130. package/lib/servers/mockserver.js +0 -9
  131. package/lib/servers/nowatchserver.js +12 -34
  132. package/lib/servers/scrServer.js +13 -20
  133. package/lib/servers/server.js +7 -35
  134. package/lib/servers/ssServer.js +0 -16
  135. package/lib/sh/pre-commit.sh +34 -34
  136. package/lib/sh/reportPublish.sh +45 -45
  137. package/lib/templates/CoverageScriptTemplate.js +0 -14
  138. package/lib/templates/WMSTemplate.js +6 -12
  139. package/lib/utils/babelPresets.js +0 -2
  140. package/lib/utils/buildstats.html +148 -148
  141. package/lib/utils/clean.js +2 -8
  142. package/lib/utils/copy.js +0 -6
  143. package/lib/utils/copyTimezones.js +0 -8
  144. package/lib/utils/createEventStream.js +0 -4
  145. package/lib/utils/cssClassNameGenerate.js +3 -19
  146. package/lib/utils/cssURLReplacer.js +0 -25
  147. package/lib/utils/dependencyPostPublish.js +0 -9
  148. package/lib/utils/fileUtils.js +0 -26
  149. package/lib/utils/folderIterator.js +0 -10
  150. package/lib/utils/getComponents.js +0 -21
  151. package/lib/utils/getCurrentBranch.js +0 -5
  152. package/lib/utils/getDependenciesImpactList.js +0 -21
  153. package/lib/utils/getHash.js +0 -7
  154. package/lib/utils/getIp.js +0 -2
  155. package/lib/utils/getOptions.js +38 -35
  156. package/lib/utils/getServerURL.js +0 -7
  157. package/lib/utils/index.js +2 -47
  158. package/lib/utils/init.js +0 -1
  159. package/lib/utils/initPreCommitHook.js +6 -29
  160. package/lib/utils/jsonHelper.js +2 -19
  161. package/lib/utils/libraryImpactConfig.js +0 -2
  162. package/lib/utils/lint/addScripts.js +2 -5
  163. package/lib/utils/lint/checkExistingConfig.js +3 -12
  164. package/lib/utils/lint/copyConfigs.js +0 -3
  165. package/lib/utils/lint/index.js +0 -9
  166. package/lib/utils/lint/lintScripts.js +0 -1
  167. package/lib/utils/lint/lintSetup.js +3 -4
  168. package/lib/utils/lint/lintStagedPreCommitHook.js +0 -1
  169. package/lib/utils/lint/question.js +0 -7
  170. package/lib/utils/lintReporter.js +0 -20
  171. package/lib/utils/mailSender.js +0 -7
  172. package/lib/utils/pullOrigin.js +0 -4
  173. package/lib/utils/reinstallDependencies.js +0 -28
  174. package/lib/utils/removeAttributes.js +0 -7
  175. package/lib/utils/repoClone.js +2 -27
  176. package/lib/utils/request.js +0 -12
  177. package/lib/utils/resultSchema.json +73 -73
  178. package/lib/utils/rtl.js +4 -16
  179. package/lib/utils/setEnvVariables.js +0 -2
  180. package/lib/utils/ssTestHack.js +0 -10
  181. package/lib/utils/switchBranch.js +0 -4
  182. package/lib/utils/urlConcat.js +0 -4
  183. package/lib/utils/useExitCleanup.js +9 -10
  184. package/npm8.md +9 -9
  185. package/package.json +146 -148
  186. package/postpublish.js +6 -6
  187. package/templates/app/.eslintrc.js +140 -140
  188. package/templates/app/README.md +12 -12
  189. package/templates/app/app/index.html +24 -24
  190. package/templates/app/app/properties/ApplicationResources_en_US.properties +1 -1
  191. package/templates/app/app/properties/i18nkeys.json +3 -3
  192. package/templates/app/docs/all.html +69 -69
  193. package/templates/app/mockapi/index.js +18 -18
  194. package/templates/app/package.json +37 -37
  195. package/templates/app/src/actions/SampleActions/index.js +37 -37
  196. package/templates/app/src/actions/index.js +65 -65
  197. package/templates/app/src/appUrls.js +19 -19
  198. package/templates/app/src/components/Alert/Alert.js +134 -134
  199. package/templates/app/src/components/Alert/Alert.module.css +79 -79
  200. package/templates/app/src/components/FreezeLayer/FreezeLayer.css +37 -37
  201. package/templates/app/src/components/FreezeLayer/FreezeLayer.js +84 -84
  202. package/templates/app/src/components/Sample/Sample.module.css +11 -11
  203. package/templates/app/src/components/Sample/SampleList.js +61 -61
  204. package/templates/app/src/components/Slider/Slider.css +41 -41
  205. package/templates/app/src/components/Slider/Slider.js +55 -55
  206. package/templates/app/src/containers/AlertContainer/index.js +15 -15
  207. package/templates/app/src/containers/AppContainer/index.js +96 -96
  208. package/templates/app/src/containers/AppContainer/index.module.css +27 -27
  209. package/templates/app/src/containers/CustomMatch/index.js +65 -65
  210. package/templates/app/src/containers/DevTools/index.js +10 -10
  211. package/templates/app/src/containers/Header/index.js +67 -67
  212. package/templates/app/src/containers/Header/index.module.css +43 -43
  213. package/templates/app/src/containers/Redirect/index.js +63 -63
  214. package/templates/app/src/containers/Redirector/index.js +47 -47
  215. package/templates/app/src/containers/SampleListContainer/ListContainer.js +42 -42
  216. package/templates/app/src/containers/SampleListContainer/ListContainer.module.css +3 -3
  217. package/templates/app/src/historyChange.js +5 -5
  218. package/templates/app/src/index.html +10 -10
  219. package/templates/app/src/index.js +24 -24
  220. package/templates/app/src/middleware/PromiseMiddleware.js +59 -59
  221. package/templates/app/src/reducers/alertData.js +11 -11
  222. package/templates/app/src/reducers/index.js +6 -6
  223. package/templates/app/src/reducers/samples.js +19 -19
  224. package/templates/app/src/store/configureStore.dev.js +51 -51
  225. package/templates/app/src/store/configureStore.js +5 -5
  226. package/templates/app/src/store/configureStore.prod.js +26 -26
  227. package/templates/app/src/util/Common.js +5 -5
  228. package/templates/app/src/util/RequestAPI.js +132 -132
  229. package/templates/docs/all.html +249 -249
  230. package/templates/docs/component.html +178 -178
  231. package/templates/docs/components.html +221 -221
  232. package/templates/docs/css/b.min.css +6 -6
  233. package/templates/docs/css/component.css +42 -42
  234. package/templates/docs/css/componentTest.css +6 -6
  235. package/templates/docs/css/hopscotch.css +585 -585
  236. package/templates/docs/css/style.css +1022 -1022
  237. package/templates/docs/impactReportTemplate.html +154 -154
  238. package/templates/docs/index.html +1501 -1493
  239. package/templates/docs/js/active-line.js +72 -72
  240. package/templates/docs/js/b.min.js +7 -7
  241. package/templates/docs/js/codemirror.js +9680 -9680
  242. package/templates/docs/js/designTokens.js +334 -334
  243. package/templates/docs/js/j.min.js +4 -4
  244. package/templates/docs/js/javascript.js +874 -874
  245. package/templates/docs/js/matchbrackets.js +145 -145
@@ -1,178 +1,178 @@
1
- <!DOCTYPE html>
2
- <html class="isRem" dir="ltr">
3
- <head>
4
- <meta http-equiv="X-UA-Compatible" content="IE=edge" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
- <link rel="stylesheet" href="./css/component.css" />
7
- <link rel="stylesheet" href="/docs/css/main.css" />
8
- </head>
9
- <body>
10
- <div id="react" class="appContainer"></div>
11
- <div id="reactUserEdit"></div>
12
- <script src="/docs/js/vendor.js" defer="true"></script>
13
- <script src="/docs/js/main.js" defer="true"></script>
14
- <script src="/docs/js/babel.min.js"></script>
15
- <script type="text/babel">
16
- var test = 'test';
17
- var ReactDOM = Component.ReactDOM;
18
- var React = Component.React;
19
- var ReactDOMServer = Component.ReactDOMServer;
20
-
21
- class RenderComponent extends React.Component {
22
- constructor(props) {
23
- super(props);
24
- this.state = {
25
- Components: Component,
26
- isError:false,
27
- selectedComponent:location.hash != '' ? location.hash.substring(1) : null,
28
- componentList:window.componentList?window.componentList:Component
29
- };
30
- this.hashChange = this.hashChange.bind(this);
31
- }
32
- hashChange() {
33
- let parentFrameNode = parent.document.getElementById('loadingText');
34
- this.setState({
35
- selectedComponent:
36
- location.hash != '' ? location.hash.substring(1) : null
37
- },()=>{
38
- if(this.error) {
39
- location.reload();
40
- parentFrameNode? parentFrameNode.style.display = 'block':parentFrameNode.style.display='none';
41
- this.error = false;
42
- }
43
- });
44
- }
45
-
46
- componentDidMount() {
47
- window.addEventListener('hashchange', this.hashChange);
48
- let parentFrameNode = parent.document.getElementById('loadingText');
49
- if (parentFrameNode) parentFrameNode.style.display = 'none';
50
- }
51
-
52
- componentWillUnmount() {
53
- window.removeEventListener('hashchange', this.hashChange);
54
- }
55
-
56
- componentDidCatch(){
57
- this.error = true;
58
- this.setState({isError:this.error})
59
- }
60
- render() {
61
- const { Components, selectedComponent,componentList} = this.state;
62
- // var CLG=[]
63
- // var complistGroup=Object.keys(componentList).map((item,i)=>{
64
- // if(Array.isArray(componentList[item].docs.testProps)){
65
- // CLG.push(item)
66
- // }
67
- // })
68
-
69
- let msg=componentList[selectedComponent]?'Sorry! for the inconvenience.':'Sorry! Request URL not found.'
70
- var ComponentClass =
71
- selectedComponent && componentList[selectedComponent];
72
- var keysSingleAr =
73
- (ComponentClass &&
74
- ComponentClass.docs &&
75
- ComponentClass.docs.testProps &&
76
- Object.keys(ComponentClass.docs.testProps)) || [];
77
- var ErrorMessage=(
78
- <div className={'emptyState'}>
79
- <svg
80
- x='0px'
81
- y='0px'
82
- viewBox='0 0 512 512'
83
- style={{ enableBackground: 'new 0 0 512 512' }}
84
- xmlSpace='preserve'
85
- className={'smileIcon'}
86
- >
87
- <path
88
- style={{ fill: '#f00' }}
89
- d='M344.354,381.58c-1.33-1.651-33.207-40.458-88.354-40.458
90
- c-55.832,0-87.972,39.974-88.29,40.378l-31.42-24.756c1.79-2.271,44.687-55.622,119.71-55.622s117.92,53.352,119.71,55.622
91
- L344.29,381.5L344.354,381.58z M437.02,437.02C485.371,388.668,512,324.38,512,256s-26.629-132.667-74.98-181.02
92
- C388.667,26.629,324.38,0,256,0S123.333,26.629,74.98,74.98C26.629,123.333,0,187.62,0,256s26.629,132.668,74.98,181.02
93
- C123.333,485.371,187.62,512,256,512S388.667,485.371,437.02,437.02z M472,256c0,119.103-96.897,216-216,216S40,375.103,40,256
94
- S136.897,40,256,40S472,136.897,472,256z M168,212.122c17.673,0,32-14.327,32-32s-14.327-32-32-32s-32,14.327-32,32
95
- S150.327,212.122,168,212.122z M344,212.122c17.673,0,32-14.327,32-32s-14.327-32-32-32s-32,14.327-32,32
96
- S326.327,212.122,344,212.122z'
97
- />
98
- </svg>
99
- <div>{msg}</div>
100
- </div>
101
- )
102
- let renderElement = (
103
- <React.Fragment>
104
- {
105
- this.state.isError || componentList[selectedComponent] ? (
106
- <ComponentClass {...ComponentClass.docs.testProps} />
107
- ) : ( ErrorMessage )
108
- }
109
- </React.Fragment>
110
- );
111
-
112
- return <div className='root'>{componentList._provider ? (
113
- <componentList._provider>
114
- {this.state.isError?ErrorMessage:renderElement}
115
- </componentList._provider>
116
- ) : (
117
- this.state.isError?ErrorMessage:renderElement
118
- )}</div>;
119
- }
120
- }
121
- var compList;
122
- var componentList= {};
123
- var compGroupObj=function(comp,key,compGroup){
124
- if (comp == 'React' || comp == 'ReactDOM' || comp =='renderToStaticMarkup') {
125
- return;
126
- }
127
- if(comp=='default'){
128
- componentList[key]=compGroup[comp]
129
- return componentList
130
- }
131
- else{
132
- componentList[comp]=compGroup[comp]
133
- return componentList
134
- }
135
- }
136
- Promise.all(Object.keys(Component).map((key) => {
137
-
138
- let componentKey=Component[key];
139
- if (key == 'React' || key == 'ReactDOM' || key=='renderToStaticMarkup') {
140
- return;
141
- }
142
- if(key == '_provider'){
143
- return compGroupObj(key,null,Component)
144
- }
145
- try{
146
- return(
147
- componentKey && componentKey.then((res)=>{
148
- Object.keys(res).forEach((comp)=>{
149
- let compGroup=res[comp];
150
- Object.keys(compGroup).forEach((comps)=>{
151
- compList=compGroupObj(comps,key,compGroup)
152
- return compList
153
- })
154
- })
155
- })
156
- )
157
- }
158
- catch(error){
159
- return Component
160
- }
161
- })).then(()=>{
162
- Object.keys(componentList).length>1?window.componentList=componentList:window.componentList=Component
163
- ReactDOM.render(<RenderComponent />, react);
164
- })
165
- </script>
166
- <script type="text/javascript">
167
- var err = null;
168
- var comName = '';
169
- var findErr = (window.onerror = function(e, line) {
170
- err = e;
171
- comName = window.location.hash.substr(1);
172
- });
173
- var funct = function() {
174
- return { error: err, name: comName };
175
- };
176
- </script>
177
- </body>
178
- </html>
1
+ <!DOCTYPE html>
2
+ <html class="isRem" dir="ltr">
3
+ <head>
4
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <link rel="stylesheet" href="./css/component.css" />
7
+ <link rel="stylesheet" href="/docs/css/main.css" />
8
+ </head>
9
+ <body>
10
+ <div id="react" class="appContainer"></div>
11
+ <div id="reactUserEdit"></div>
12
+ <script src="/docs/js/vendor.js" defer="true"></script>
13
+ <script src="/docs/js/main.js" defer="true"></script>
14
+ <script src="/docs/js/babel.min.js"></script>
15
+ <script type="text/babel">
16
+ var test = 'test';
17
+ var ReactDOM = Component.ReactDOM;
18
+ var React = Component.React;
19
+ var ReactDOMServer = Component.ReactDOMServer;
20
+
21
+ class RenderComponent extends React.Component {
22
+ constructor(props) {
23
+ super(props);
24
+ this.state = {
25
+ Components: Component,
26
+ isError:false,
27
+ selectedComponent:location.hash != '' ? location.hash.substring(1) : null,
28
+ componentList:window.componentList?window.componentList:Component
29
+ };
30
+ this.hashChange = this.hashChange.bind(this);
31
+ }
32
+ hashChange() {
33
+ let parentFrameNode = parent.document.getElementById('loadingText');
34
+ this.setState({
35
+ selectedComponent:
36
+ location.hash != '' ? location.hash.substring(1) : null
37
+ },()=>{
38
+ if(this.error) {
39
+ location.reload();
40
+ parentFrameNode? parentFrameNode.style.display = 'block':parentFrameNode.style.display='none';
41
+ this.error = false;
42
+ }
43
+ });
44
+ }
45
+
46
+ componentDidMount() {
47
+ window.addEventListener('hashchange', this.hashChange);
48
+ let parentFrameNode = parent.document.getElementById('loadingText');
49
+ if (parentFrameNode) parentFrameNode.style.display = 'none';
50
+ }
51
+
52
+ componentWillUnmount() {
53
+ window.removeEventListener('hashchange', this.hashChange);
54
+ }
55
+
56
+ componentDidCatch(){
57
+ this.error = true;
58
+ this.setState({isError:this.error})
59
+ }
60
+ render() {
61
+ const { Components, selectedComponent,componentList} = this.state;
62
+ // var CLG=[]
63
+ // var complistGroup=Object.keys(componentList).map((item,i)=>{
64
+ // if(Array.isArray(componentList[item].docs.testProps)){
65
+ // CLG.push(item)
66
+ // }
67
+ // })
68
+
69
+ let msg=componentList[selectedComponent]?'Sorry! for the inconvenience.':'Sorry! Request URL not found.'
70
+ var ComponentClass =
71
+ selectedComponent && componentList[selectedComponent];
72
+ var keysSingleAr =
73
+ (ComponentClass &&
74
+ ComponentClass.docs &&
75
+ ComponentClass.docs.testProps &&
76
+ Object.keys(ComponentClass.docs.testProps)) || [];
77
+ var ErrorMessage=(
78
+ <div className={'emptyState'}>
79
+ <svg
80
+ x='0px'
81
+ y='0px'
82
+ viewBox='0 0 512 512'
83
+ style={{ enableBackground: 'new 0 0 512 512' }}
84
+ xmlSpace='preserve'
85
+ className={'smileIcon'}
86
+ >
87
+ <path
88
+ style={{ fill: '#f00' }}
89
+ d='M344.354,381.58c-1.33-1.651-33.207-40.458-88.354-40.458
90
+ c-55.832,0-87.972,39.974-88.29,40.378l-31.42-24.756c1.79-2.271,44.687-55.622,119.71-55.622s117.92,53.352,119.71,55.622
91
+ L344.29,381.5L344.354,381.58z M437.02,437.02C485.371,388.668,512,324.38,512,256s-26.629-132.667-74.98-181.02
92
+ C388.667,26.629,324.38,0,256,0S123.333,26.629,74.98,74.98C26.629,123.333,0,187.62,0,256s26.629,132.668,74.98,181.02
93
+ C123.333,485.371,187.62,512,256,512S388.667,485.371,437.02,437.02z M472,256c0,119.103-96.897,216-216,216S40,375.103,40,256
94
+ S136.897,40,256,40S472,136.897,472,256z M168,212.122c17.673,0,32-14.327,32-32s-14.327-32-32-32s-32,14.327-32,32
95
+ S150.327,212.122,168,212.122z M344,212.122c17.673,0,32-14.327,32-32s-14.327-32-32-32s-32,14.327-32,32
96
+ S326.327,212.122,344,212.122z'
97
+ />
98
+ </svg>
99
+ <div>{msg}</div>
100
+ </div>
101
+ )
102
+ let renderElement = (
103
+ <React.Fragment>
104
+ {
105
+ this.state.isError || componentList[selectedComponent] ? (
106
+ <ComponentClass {...ComponentClass.docs.testProps} />
107
+ ) : ( ErrorMessage )
108
+ }
109
+ </React.Fragment>
110
+ );
111
+
112
+ return <div className='root'>{componentList._provider ? (
113
+ <componentList._provider>
114
+ {this.state.isError?ErrorMessage:renderElement}
115
+ </componentList._provider>
116
+ ) : (
117
+ this.state.isError?ErrorMessage:renderElement
118
+ )}</div>;
119
+ }
120
+ }
121
+ var compList;
122
+ var componentList= {};
123
+ var compGroupObj=function(comp,key,compGroup){
124
+ if (comp == 'React' || comp == 'ReactDOM' || comp =='renderToStaticMarkup') {
125
+ return;
126
+ }
127
+ if(comp=='default'){
128
+ componentList[key]=compGroup[comp]
129
+ return componentList
130
+ }
131
+ else{
132
+ componentList[comp]=compGroup[comp]
133
+ return componentList
134
+ }
135
+ }
136
+ Promise.all(Object.keys(Component).map((key) => {
137
+
138
+ let componentKey=Component[key];
139
+ if (key == 'React' || key == 'ReactDOM' || key=='renderToStaticMarkup') {
140
+ return;
141
+ }
142
+ if(key == '_provider'){
143
+ return compGroupObj(key,null,Component)
144
+ }
145
+ try{
146
+ return(
147
+ componentKey && componentKey.then((res)=>{
148
+ Object.keys(res).forEach((comp)=>{
149
+ let compGroup=res[comp];
150
+ Object.keys(compGroup).forEach((comps)=>{
151
+ compList=compGroupObj(comps,key,compGroup)
152
+ return compList
153
+ })
154
+ })
155
+ })
156
+ )
157
+ }
158
+ catch(error){
159
+ return Component
160
+ }
161
+ })).then(()=>{
162
+ Object.keys(componentList).length>1?window.componentList=componentList:window.componentList=Component
163
+ ReactDOM.render(<RenderComponent />, react);
164
+ })
165
+ </script>
166
+ <script type="text/javascript">
167
+ var err = null;
168
+ var comName = '';
169
+ var findErr = (window.onerror = function(e, line) {
170
+ err = e;
171
+ comName = window.location.hash.substr(1);
172
+ });
173
+ var funct = function() {
174
+ return { error: err, name: comName };
175
+ };
176
+ </script>
177
+ </body>
178
+ </html>