@ohos-ports/react-native-navigation 8.9.0-beta.1 → 8.9.0-beta.11

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.
Files changed (272) hide show
  1. package/README.md +27 -27
  2. package/lib/cjs/Mock/Application.js +67 -0
  3. package/lib/cjs/Mock/ComponentProps.js +16 -0
  4. package/lib/cjs/Mock/Components/BottomTabs.js +50 -0
  5. package/lib/cjs/Mock/Components/ComponentScreen.js +135 -0
  6. package/lib/cjs/Mock/Components/LayoutComponent.js +85 -0
  7. package/lib/cjs/Mock/Components/Modals.js +56 -0
  8. package/lib/cjs/Mock/Components/NavigationButton.js +104 -0
  9. package/lib/cjs/Mock/Components/Overlays.js +57 -0
  10. package/lib/cjs/Mock/Components/SideMenu.js +69 -0
  11. package/lib/cjs/Mock/Components/Stack.js +52 -0
  12. package/lib/cjs/Mock/Components/TopBar.js +115 -0
  13. package/lib/cjs/Mock/Layouts/BottomTabsNode.js +60 -0
  14. package/lib/cjs/Mock/Layouts/ComponentNode.js +132 -0
  15. package/lib/cjs/Mock/Layouts/LayoutNodeFactory.js +59 -0
  16. package/lib/cjs/Mock/Layouts/Node.js +32 -0
  17. package/lib/cjs/Mock/Layouts/ParentNode.js +99 -0
  18. package/lib/cjs/Mock/Layouts/SideMenu.js +112 -0
  19. package/lib/cjs/Mock/Layouts/StackNode.js +42 -0
  20. package/lib/cjs/Mock/Stores/EventsStore.js +85 -0
  21. package/lib/{module → cjs}/Mock/Stores/LayoutStore.js +56 -24
  22. package/lib/cjs/Mock/actions/layoutActions.js +47 -0
  23. package/lib/cjs/Mock/connect.js +31 -0
  24. package/lib/cjs/Mock/constants.js +31 -0
  25. package/lib/cjs/Mock/index.js +48 -0
  26. package/lib/cjs/Mock/mocks/AppRegistryService.js +31 -0
  27. package/lib/cjs/Mock/mocks/NativeCommandsSender.js +181 -0
  28. package/lib/cjs/Mock/mocks/NativeEventsReceiver.js +146 -0
  29. package/lib/cjs/Navigation.js +259 -0
  30. package/lib/{module → cjs}/NavigationDelegate.js +33 -34
  31. package/lib/cjs/adapters/AndroidCustomRowForwarder.js +84 -0
  32. package/lib/cjs/adapters/AppRegistryService.js +33 -0
  33. package/lib/cjs/adapters/AssetResolver.js +33 -0
  34. package/lib/cjs/adapters/ColorService.js +33 -0
  35. package/lib/cjs/adapters/Constants.js +43 -0
  36. package/lib/{module → cjs}/adapters/NativeCommandsSender.js +39 -5
  37. package/lib/cjs/adapters/NativeEventsReceiver.js +99 -0
  38. package/lib/cjs/adapters/NativeEventsReceiver.mock.js +30 -0
  39. package/lib/cjs/adapters/NativeRNNTurboEventEmitter.js +27 -0
  40. package/lib/cjs/adapters/NativeRNNTurboModule.js +26 -0
  41. package/lib/cjs/adapters/TouchablePreview.js +137 -0
  42. package/lib/cjs/adapters/UniqueIdProvider.js +43 -0
  43. package/lib/cjs/commands/Commands.js +276 -0
  44. package/lib/cjs/commands/Deprecations.js +101 -0
  45. package/lib/cjs/commands/LayoutTreeCrawler.js +56 -0
  46. package/lib/cjs/commands/LayoutTreeParser.js +154 -0
  47. package/lib/cjs/commands/LayoutType.js +40 -0
  48. package/lib/cjs/commands/OptionsCrawler.js +106 -0
  49. package/lib/{module → cjs}/commands/OptionsProcessor.js +102 -67
  50. package/lib/{module → cjs}/components/ComponentRegistry.js +27 -3
  51. package/lib/cjs/components/ComponentWrapper.js +114 -0
  52. package/lib/cjs/components/Modal.js +159 -0
  53. package/lib/{module → cjs}/components/Store.js +27 -3
  54. package/lib/cjs/events/CommandsObserver.js +43 -0
  55. package/lib/cjs/events/ComponentEventsObserver.js +128 -0
  56. package/lib/{module → cjs}/events/EventsRegistry.js +27 -3
  57. package/lib/cjs/index.js +63 -0
  58. package/lib/cjs/interfaces/CommandName.js +46 -0
  59. package/lib/cjs/interfaces/ComponentEvents.js +1 -0
  60. package/lib/cjs/interfaces/EventSubscription.js +1 -0
  61. package/lib/cjs/interfaces/Events.js +1 -0
  62. package/lib/cjs/interfaces/Layout.js +16 -0
  63. package/lib/cjs/interfaces/NavigationComponent.js +62 -0
  64. package/lib/cjs/interfaces/NavigationComponentListener.js +16 -0
  65. package/lib/cjs/interfaces/NavigationComponentProps.js +1 -0
  66. package/lib/cjs/interfaces/NavigationFunctionComponent.js +16 -0
  67. package/lib/cjs/interfaces/Options.js +47 -0
  68. package/lib/cjs/interfaces/ProcessorSubscription.js +1 -0
  69. package/lib/cjs/interfaces/Processors.js +16 -0
  70. package/lib/cjs/linking/DeferredLinkQueue.js +66 -0
  71. package/lib/{module → cjs}/linking/LinkingHandler.js +40 -43
  72. package/lib/cjs/linking/ModalLayoutBuilder.js +59 -0
  73. package/lib/{module → cjs}/linking/RouteMatcher.js +31 -15
  74. package/lib/cjs/linking/URLParser.js +70 -0
  75. package/lib/cjs/linking/types.js +16 -0
  76. package/lib/cjs/processors/LayoutProcessor.js +39 -0
  77. package/lib/cjs/processors/LayoutProcessorsStore.js +42 -0
  78. package/lib/cjs/processors/OptionProcessorsStore.js +43 -0
  79. package/lib/cjs/types.js +1 -0
  80. package/package.json +10 -9
  81. package/postinstall.js +53 -0
  82. package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/statusbar/StatusBarPresenter.kt +0 -212
  83. package/lib/module/ARCHITECTURE.md +0 -331
  84. package/lib/module/Mock/Application.js +0 -33
  85. package/lib/module/Mock/Application.js.map +0 -1
  86. package/lib/module/Mock/ComponentProps.js +0 -4
  87. package/lib/module/Mock/ComponentProps.js.map +0 -1
  88. package/lib/module/Mock/Components/BottomTabs.js +0 -16
  89. package/lib/module/Mock/Components/BottomTabs.js.map +0 -1
  90. package/lib/module/Mock/Components/ComponentScreen.js +0 -101
  91. package/lib/module/Mock/Components/ComponentScreen.js.map +0 -1
  92. package/lib/module/Mock/Components/LayoutComponent.js +0 -50
  93. package/lib/module/Mock/Components/LayoutComponent.js.map +0 -1
  94. package/lib/module/Mock/Components/Modals.js +0 -22
  95. package/lib/module/Mock/Components/Modals.js.map +0 -1
  96. package/lib/module/Mock/Components/NavigationButton.js +0 -72
  97. package/lib/module/Mock/Components/NavigationButton.js.map +0 -1
  98. package/lib/module/Mock/Components/Overlays.js +0 -23
  99. package/lib/module/Mock/Components/Overlays.js.map +0 -1
  100. package/lib/module/Mock/Components/SideMenu.js +0 -29
  101. package/lib/module/Mock/Components/SideMenu.js.map +0 -1
  102. package/lib/module/Mock/Components/Stack.js +0 -18
  103. package/lib/module/Mock/Components/Stack.js.map +0 -1
  104. package/lib/module/Mock/Components/TopBar.js +0 -81
  105. package/lib/module/Mock/Components/TopBar.js.map +0 -1
  106. package/lib/module/Mock/Layouts/BottomTabsNode.js +0 -30
  107. package/lib/module/Mock/Layouts/BottomTabsNode.js.map +0 -1
  108. package/lib/module/Mock/Layouts/ComponentNode.js +0 -102
  109. package/lib/module/Mock/Layouts/ComponentNode.js.map +0 -1
  110. package/lib/module/Mock/Layouts/LayoutNodeFactory.js +0 -28
  111. package/lib/module/Mock/Layouts/LayoutNodeFactory.js.map +0 -1
  112. package/lib/module/Mock/Layouts/Node.js +0 -14
  113. package/lib/module/Mock/Layouts/Node.js.map +0 -1
  114. package/lib/module/Mock/Layouts/ParentNode.js +0 -66
  115. package/lib/module/Mock/Layouts/ParentNode.js.map +0 -1
  116. package/lib/module/Mock/Layouts/SideMenu.js +0 -72
  117. package/lib/module/Mock/Layouts/SideMenu.js.map +0 -1
  118. package/lib/module/Mock/Layouts/StackNode.js +0 -12
  119. package/lib/module/Mock/Layouts/StackNode.js.map +0 -1
  120. package/lib/module/Mock/Stores/EventsStore.js +0 -53
  121. package/lib/module/Mock/Stores/EventsStore.js.map +0 -1
  122. package/lib/module/Mock/Stores/LayoutStore.js.map +0 -1
  123. package/lib/module/Mock/actions/layoutActions.js +0 -19
  124. package/lib/module/Mock/actions/layoutActions.js.map +0 -1
  125. package/lib/module/Mock/connect.js +0 -8
  126. package/lib/module/Mock/connect.js.map +0 -1
  127. package/lib/module/Mock/constants.js +0 -5
  128. package/lib/module/Mock/constants.js.map +0 -1
  129. package/lib/module/Mock/index.js +0 -20
  130. package/lib/module/Mock/index.js.map +0 -1
  131. package/lib/module/Mock/mocks/AppRegistryService.js +0 -6
  132. package/lib/module/Mock/mocks/AppRegistryService.js.map +0 -1
  133. package/lib/module/Mock/mocks/NativeCommandsSender.js +0 -146
  134. package/lib/module/Mock/mocks/NativeCommandsSender.js.map +0 -1
  135. package/lib/module/Mock/mocks/NativeEventsReceiver.js +0 -103
  136. package/lib/module/Mock/mocks/NativeEventsReceiver.js.map +0 -1
  137. package/lib/module/Navigation.js +0 -250
  138. package/lib/module/Navigation.js.map +0 -1
  139. package/lib/module/NavigationDelegate.js.map +0 -1
  140. package/lib/module/adapters/AndroidCustomRowForwarder.js +0 -75
  141. package/lib/module/adapters/AndroidCustomRowForwarder.js.map +0 -1
  142. package/lib/module/adapters/AppRegistryService.js +0 -9
  143. package/lib/module/adapters/AppRegistryService.js.map +0 -1
  144. package/lib/module/adapters/AssetResolver.js +0 -9
  145. package/lib/module/adapters/AssetResolver.js.map +0 -1
  146. package/lib/module/adapters/ColorService.js +0 -9
  147. package/lib/module/adapters/ColorService.js.map +0 -1
  148. package/lib/module/adapters/Constants.js +0 -19
  149. package/lib/module/adapters/Constants.js.map +0 -1
  150. package/lib/module/adapters/NativeCommandsSender.js.map +0 -1
  151. package/lib/module/adapters/NativeEventsReceiver.js +0 -65
  152. package/lib/module/adapters/NativeEventsReceiver.js.map +0 -1
  153. package/lib/module/adapters/NativeEventsReceiver.mock.js +0 -6
  154. package/lib/module/adapters/NativeEventsReceiver.mock.js.map +0 -1
  155. package/lib/module/adapters/NativeRNNTurboEventEmitter.js +0 -7
  156. package/lib/module/adapters/NativeRNNTurboEventEmitter.js.map +0 -1
  157. package/lib/module/adapters/NativeRNNTurboModule.js +0 -6
  158. package/lib/module/adapters/NativeRNNTurboModule.js.map +0 -1
  159. package/lib/module/adapters/TouchablePreview.js +0 -115
  160. package/lib/module/adapters/TouchablePreview.js.map +0 -1
  161. package/lib/module/adapters/UniqueIdProvider.js +0 -9
  162. package/lib/module/adapters/UniqueIdProvider.js.map +0 -1
  163. package/lib/module/commands/Commands.js +0 -241
  164. package/lib/module/commands/Commands.js.map +0 -1
  165. package/lib/module/commands/Commands.test.js +0 -759
  166. package/lib/module/commands/Commands.test.js.map +0 -1
  167. package/lib/module/commands/Deprecations.js +0 -66
  168. package/lib/module/commands/Deprecations.js.map +0 -1
  169. package/lib/module/commands/LayoutTreeCrawler.js +0 -32
  170. package/lib/module/commands/LayoutTreeCrawler.js.map +0 -1
  171. package/lib/module/commands/LayoutTreeCrawler.test.js +0 -82
  172. package/lib/module/commands/LayoutTreeCrawler.test.js.map +0 -1
  173. package/lib/module/commands/LayoutTreeParser.js +0 -130
  174. package/lib/module/commands/LayoutTreeParser.js.map +0 -1
  175. package/lib/module/commands/LayoutTreeParser.test.js +0 -359
  176. package/lib/module/commands/LayoutTreeParser.test.js.map +0 -1
  177. package/lib/module/commands/LayoutType.js +0 -16
  178. package/lib/module/commands/LayoutType.js.map +0 -1
  179. package/lib/module/commands/LayoutType.test.js +0 -12
  180. package/lib/module/commands/LayoutType.test.js.map +0 -1
  181. package/lib/module/commands/OptionsCrawler.js +0 -72
  182. package/lib/module/commands/OptionsCrawler.js.map +0 -1
  183. package/lib/module/commands/OptionsCrawler.test.js +0 -351
  184. package/lib/module/commands/OptionsCrawler.test.js.map +0 -1
  185. package/lib/module/commands/OptionsProcessor.js.map +0 -1
  186. package/lib/module/commands/OptionsProcessor.test.js +0 -1234
  187. package/lib/module/commands/OptionsProcessor.test.js.map +0 -1
  188. package/lib/module/components/ComponentRegistry.js.map +0 -1
  189. package/lib/module/components/ComponentRegistry.test.js +0 -57
  190. package/lib/module/components/ComponentRegistry.test.js.map +0 -1
  191. package/lib/module/components/ComponentWrapper.js +0 -80
  192. package/lib/module/components/ComponentWrapper.js.map +0 -1
  193. package/lib/module/components/ComponentWrapper.test.js +0 -333
  194. package/lib/module/components/ComponentWrapper.test.js.map +0 -1
  195. package/lib/module/components/Modal.js +0 -125
  196. package/lib/module/components/Modal.js.map +0 -1
  197. package/lib/module/components/Store.js.map +0 -1
  198. package/lib/module/components/Store.test.js +0 -148
  199. package/lib/module/components/Store.test.js.map +0 -1
  200. package/lib/module/events/CommandsObserver.js +0 -19
  201. package/lib/module/events/CommandsObserver.js.map +0 -1
  202. package/lib/module/events/CommandsObserver.test.js +0 -43
  203. package/lib/module/events/CommandsObserver.test.js.map +0 -1
  204. package/lib/module/events/ComponentEventsObserver.js +0 -94
  205. package/lib/module/events/ComponentEventsObserver.js.map +0 -1
  206. package/lib/module/events/ComponentEventsObserver.test.js +0 -391
  207. package/lib/module/events/ComponentEventsObserver.test.js.map +0 -1
  208. package/lib/module/events/EventsRegistry.js.map +0 -1
  209. package/lib/module/events/EventsRegistry.test.js +0 -131
  210. package/lib/module/events/EventsRegistry.test.js.map +0 -1
  211. package/lib/module/index.js +0 -22
  212. package/lib/module/index.js.map +0 -1
  213. package/lib/module/interfaces/CommandName.js +0 -22
  214. package/lib/module/interfaces/CommandName.js.map +0 -1
  215. package/lib/module/interfaces/ComponentEvents.js +0 -2
  216. package/lib/module/interfaces/ComponentEvents.js.map +0 -1
  217. package/lib/module/interfaces/EventSubscription.js +0 -2
  218. package/lib/module/interfaces/EventSubscription.js.map +0 -1
  219. package/lib/module/interfaces/Events.js +0 -2
  220. package/lib/module/interfaces/Events.js.map +0 -1
  221. package/lib/module/interfaces/Layout.js +0 -4
  222. package/lib/module/interfaces/Layout.js.map +0 -1
  223. package/lib/module/interfaces/NavigationComponent.js +0 -21
  224. package/lib/module/interfaces/NavigationComponent.js.map +0 -1
  225. package/lib/module/interfaces/NavigationComponentListener.js +0 -4
  226. package/lib/module/interfaces/NavigationComponentListener.js.map +0 -1
  227. package/lib/module/interfaces/NavigationComponentProps.js +0 -2
  228. package/lib/module/interfaces/NavigationComponentProps.js.map +0 -1
  229. package/lib/module/interfaces/NavigationFunctionComponent.js +0 -4
  230. package/lib/module/interfaces/NavigationFunctionComponent.js.map +0 -1
  231. package/lib/module/interfaces/Options.js +0 -47
  232. package/lib/module/interfaces/Options.js.map +0 -1
  233. package/lib/module/interfaces/ProcessorSubscription.js +0 -2
  234. package/lib/module/interfaces/ProcessorSubscription.js.map +0 -1
  235. package/lib/module/interfaces/Processors.js +0 -4
  236. package/lib/module/interfaces/Processors.js.map +0 -1
  237. package/lib/module/linking/DeferredLinkQueue.js +0 -52
  238. package/lib/module/linking/DeferredLinkQueue.js.map +0 -1
  239. package/lib/module/linking/DeferredLinkQueue.test.js +0 -54
  240. package/lib/module/linking/DeferredLinkQueue.test.js.map +0 -1
  241. package/lib/module/linking/LinkingHandler.js.map +0 -1
  242. package/lib/module/linking/LinkingHandler.test.js +0 -384
  243. package/lib/module/linking/LinkingHandler.test.js.map +0 -1
  244. package/lib/module/linking/ModalLayoutBuilder.js +0 -56
  245. package/lib/module/linking/ModalLayoutBuilder.js.map +0 -1
  246. package/lib/module/linking/ModalLayoutBuilder.test.js +0 -154
  247. package/lib/module/linking/ModalLayoutBuilder.test.js.map +0 -1
  248. package/lib/module/linking/RouteMatcher.js.map +0 -1
  249. package/lib/module/linking/RouteMatcher.test.js +0 -164
  250. package/lib/module/linking/RouteMatcher.test.js.map +0 -1
  251. package/lib/module/linking/URLParser.js +0 -56
  252. package/lib/module/linking/URLParser.js.map +0 -1
  253. package/lib/module/linking/URLParser.test.js +0 -100
  254. package/lib/module/linking/URLParser.test.js.map +0 -1
  255. package/lib/module/linking/types.js +0 -4
  256. package/lib/module/linking/types.js.map +0 -1
  257. package/lib/module/package.json +0 -1
  258. package/lib/module/processors/LayoutProcessor.js +0 -15
  259. package/lib/module/processors/LayoutProcessor.js.map +0 -1
  260. package/lib/module/processors/LayoutProcessor.test.js +0 -53
  261. package/lib/module/processors/LayoutProcessor.test.js.map +0 -1
  262. package/lib/module/processors/LayoutProcessorsStore.js +0 -18
  263. package/lib/module/processors/LayoutProcessorsStore.js.map +0 -1
  264. package/lib/module/processors/LayoutProcessorsStore.test.js +0 -31
  265. package/lib/module/processors/LayoutProcessorsStore.test.js.map +0 -1
  266. package/lib/module/processors/OptionProcessorsStore.js +0 -19
  267. package/lib/module/processors/OptionProcessorsStore.js.map +0 -1
  268. package/lib/module/processors/OptionProcessorsStore.test.js +0 -31
  269. package/lib/module/processors/OptionProcessorsStore.test.js.map +0 -1
  270. package/lib/module/types.js +0 -2
  271. package/lib/module/types.js.map +0 -1
  272. package/scripts/setup-esm-shim.js +0 -101
@@ -1 +0,0 @@
1
- {"version":3,"names":["OptionsProcessor","UniqueIdProvider","Store","OptionProcessorsStore","OptionsModalPresentationStyle","mock","when","instance","anyNumber","verify","anything","ColorService","AssetService","Deprecations","CommandName","DynamicColorIOS","Platform","describe","uut","optionProcessorsRegistry","mockedStore","store","beforeEach","mockedAssetService","resolveFromRequire","thenReturn","height","scale","uri","width","assetService","mockedColorService","toNativeColor","colorService","uuid","mockedUniqueIdProvider","generate","thenCall","prefix","it","OS","options","animations","setRoot","enabled","translationY","from","to","duration","expectedOptions","enter","processOptions","SetRoot","expect","toEqual","showModal","dismissModal","expected","exit","ShowModal","DismissModal","blurOnUnmount","popGesture","modalPresentationStyle","fullScreen","topBar","visible","addProcessor","value","background","translucent","_value","commandName","props","prop","processor","_commandName","passProps","bottomTabs","color","undefined","resource_paths","statusBar","backgroundColor","light","dark","title","dynamic","backgroundImage","rootBackgroundImage","bottomTab","icon","selectedIcon","some","component","name","setPendingProps","called","componentId","id","rightButtons","leftButtons","toBeUndefined","ensureClassForName","jest","spyOn","console","MergeOptions","warn","toBeCalledWith","searchBar","toStrictEqual","hideOnScroll","hideTopBarOnFocus","obscuresBackgroundDuringPresentation","tintColor","placeholder","searchBarHiddenWhenScrolling","hideNavBarOnFocusSearchBar","searchBarBackgroundColor","searchBarTintColor","searchBarPlaceholder","performOnViewsInvolvedInStackAnimation","action","forEach","view","push","alpha","waitForRender","sharedElementTransitions","elementTransitions","pop","setStackRoot","content"],"sourceRoot":"../../../src","sources":["commands/OptionsProcessor.test.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["ComponentRegistry","constructor","store","componentEventsObserver","componentWrapper","appRegistryService","registerComponent","componentName","componentProvider","concreteComponentProvider","ReduxProvider","reduxStore","NavigationComponent","hasRegisteredWrappedComponent","getWrappedComponent","wrappedComponent","wrap","toString","setWrappedComponent","setComponentClassForName"],"sourceRoot":"../../../src","sources":["components/ComponentRegistry.ts"],"mappings":";;AAMA,OAAO,MAAMA,iBAAiB,CAAC;EAC7BC,WAAWA,CACDC,KAAY,EACZC,uBAAgD,EAChDC,gBAAkC,EAClCC,kBAAsC,EAC9C;IAAA,KAJQH,KAAY,GAAZA,KAAY;IAAA,KACZC,uBAAgD,GAAhDA,uBAAgD;IAAA,KAChDC,gBAAkC,GAAlCA,gBAAkC;IAAA,KAClCC,kBAAsC,GAAtCA,kBAAsC;EAC7C;EAEHC,iBAAiBA,CACfC,aAA8B,EAC9BC,iBAAoC,EACpCC,yBAA6C,EAC7CC,aAAmB,EACnBC,UAAgB,EACG;IACnB,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;MAChC,IAAI,IAAI,CAACV,KAAK,CAACW,6BAA6B,CAACN,aAAa,CAAC,EAAE;QAC3D,OAAO,IAAI,CAACL,KAAK,CAACY,mBAAmB,CAACP,aAAa,CAAC;MACtD,CAAC,MAAM;QACL,MAAMQ,gBAAgB,GAAG,IAAI,CAACX,gBAAgB,CAACY,IAAI,CACjDT,aAAa,CAACU,QAAQ,CAAC,CAAC,EACxBT,iBAAiB,EACjB,IAAI,CAACN,KAAK,EACV,IAAI,CAACC,uBAAuB,EAC5BM,yBAAyB,EACzBC,aAAa,EACbC,UACF,CAAC;QACD,IAAI,CAACT,KAAK,CAACgB,mBAAmB,CAACX,aAAa,EAAEQ,gBAAgB,CAAC;QAC/D,OAAOA,gBAAgB;MACzB;IACF,CAAC;IACD,IAAI,CAACb,KAAK,CAACiB,wBAAwB,CAACZ,aAAa,CAACU,QAAQ,CAAC,CAAC,EAAEL,mBAAmB,CAAC;IAClF,IAAI,CAACP,kBAAkB,CAACC,iBAAiB,CAACC,aAAa,CAACU,QAAQ,CAAC,CAAC,EAAEL,mBAAmB,CAAC;IACxF,OAAOA,mBAAmB;EAC5B;AACF","ignoreList":[]}
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- import { ComponentRegistry } from "./ComponentRegistry.js";
4
- import { Store } from "./Store.js";
5
- import { mock, instance, verify, anyFunction } from 'ts-mockito';
6
- import { ComponentWrapper } from "./ComponentWrapper.js";
7
- import { ComponentEventsObserver } from "../events/ComponentEventsObserver.js";
8
- import { AppRegistryService } from "../adapters/AppRegistryService.js";
9
- const DummyComponent = () => null;
10
- describe('ComponentRegistry', () => {
11
- let mockedStore;
12
- let mockedComponentEventsObserver;
13
- let mockedComponentWrapper;
14
- let mockedAppRegistryService;
15
- let componentWrapper;
16
- let store;
17
- let uut;
18
- beforeEach(() => {
19
- mockedStore = mock(Store);
20
- mockedComponentEventsObserver = mock(ComponentEventsObserver);
21
- mockedComponentWrapper = mock(ComponentWrapper);
22
- mockedAppRegistryService = mock(AppRegistryService);
23
- store = instance(mockedStore);
24
- componentWrapper = instance(mockedComponentWrapper);
25
- uut = new ComponentRegistry(store, instance(mockedComponentEventsObserver), componentWrapper, instance(mockedAppRegistryService));
26
- });
27
- it('registers component by componentName into AppRegistry', () => {
28
- uut.registerComponent('example.MyComponent.name', () => DummyComponent);
29
- verify(mockedAppRegistryService.registerComponent('example.MyComponent.name', anyFunction())).called();
30
- });
31
- it('saves the wrapper component generator to the store', () => {
32
- uut.registerComponent('example.MyComponent.name', () => DummyComponent);
33
- verify(mockedStore.setComponentClassForName('example.MyComponent.name', anyFunction())).called();
34
- });
35
- it('should not invoke generator', () => {
36
- const generator = jest.fn(() => DummyComponent);
37
- uut.registerComponent('example.MyComponent.name', generator);
38
- expect(generator).toHaveBeenCalledTimes(0);
39
- });
40
- it('should wrap component only once', () => {
41
- uut = new ComponentRegistry(new Store(), instance(mockedComponentEventsObserver), componentWrapper, instance(mockedAppRegistryService));
42
- componentWrapper.wrap = jest.fn();
43
- const generator = jest.fn(() => DummyComponent);
44
- const componentProvider = uut.registerComponent('example.MyComponent.name', generator);
45
- componentProvider();
46
- componentProvider();
47
- expect(componentWrapper.wrap).toHaveBeenCalledTimes(1);
48
- });
49
- it('should recreate wrapped component on re-register component', () => {
50
- uut = new ComponentRegistry(new Store(), instance(mockedComponentEventsObserver), new ComponentWrapper(), instance(mockedAppRegistryService));
51
- const generator = () => DummyComponent;
52
- const w1 = uut.registerComponent('example.MyComponent.name', generator)();
53
- const w2 = uut.registerComponent('example.MyComponent.name', generator)();
54
- expect(w1).not.toBe(w2);
55
- });
56
- });
57
- //# sourceMappingURL=ComponentRegistry.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["ComponentRegistry","Store","mock","instance","verify","anyFunction","ComponentWrapper","ComponentEventsObserver","AppRegistryService","DummyComponent","describe","mockedStore","mockedComponentEventsObserver","mockedComponentWrapper","mockedAppRegistryService","componentWrapper","store","uut","beforeEach","it","registerComponent","called","setComponentClassForName","generator","jest","fn","expect","toHaveBeenCalledTimes","wrap","componentProvider","w1","w2","not","toBe"],"sourceRoot":"../../../src","sources":["components/ComponentRegistry.test.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,80 +0,0 @@
1
- "use strict";
2
-
3
- import * as React from 'react';
4
- import { polyfill } from 'react-lifecycles-compat';
5
- import hoistNonReactStatics from 'hoist-non-react-statics';
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
- export class ComponentWrapper {
8
- wrap(componentName, OriginalComponentGenerator, store, componentEventsObserver, concreteComponentProvider = OriginalComponentGenerator, ReduxProvider, reduxStore) {
9
- const GeneratedComponentClass = OriginalComponentGenerator();
10
- class WrappedComponent extends React.Component {
11
- static getDerivedStateFromProps(nextProps, prevState) {
12
- return {
13
- allProps: {
14
- ...nextProps,
15
- ...store.getPropsForId(prevState.componentId)
16
- }
17
- };
18
- }
19
- _isMounted = false;
20
- get isMounted() {
21
- return this._isMounted;
22
- }
23
- constructor(props) {
24
- super(props);
25
- this._assertComponentId();
26
- this.state = {
27
- componentId: props.componentId,
28
- allProps: {}
29
- };
30
- store.setComponentInstance(props.componentId, this);
31
- }
32
- setProps(newProps, callback) {
33
- this.setState(prevState => ({
34
- allProps: {
35
- ...prevState.allProps,
36
- ...newProps
37
- }
38
- }), callback);
39
- }
40
- componentDidMount() {
41
- this._isMounted = true;
42
- store.consumePendingProps(this.state.componentId);
43
- }
44
- componentWillUnmount() {
45
- store.clearComponent(this.state.componentId);
46
- componentEventsObserver.unmounted(this.state.componentId);
47
- }
48
- render() {
49
- return /*#__PURE__*/_jsx(GeneratedComponentClass, {
50
- ...this.state.allProps,
51
- componentId: this.state.componentId,
52
- componentName: componentName
53
- });
54
- }
55
- _assertComponentId() {
56
- if (!this.props.componentId) {
57
- throw new Error(`Component ${componentName} does not have a componentId!`);
58
- }
59
- }
60
- }
61
- polyfill(WrappedComponent);
62
- hoistNonReactStatics(WrappedComponent, concreteComponentProvider === OriginalComponentGenerator ? GeneratedComponentClass : concreteComponentProvider());
63
- return ReduxProvider ? this.wrapWithRedux(WrappedComponent, ReduxProvider, reduxStore) : WrappedComponent;
64
- }
65
- wrapWithRedux(WrappedComponent, ReduxProvider, reduxStore) {
66
- class ReduxWrapper extends React.Component {
67
- render() {
68
- return /*#__PURE__*/_jsx(ReduxProvider, {
69
- store: reduxStore,
70
- children: /*#__PURE__*/_jsx(WrappedComponent, {
71
- ...this.props
72
- })
73
- });
74
- }
75
- }
76
- hoistNonReactStatics(ReduxWrapper, WrappedComponent);
77
- return ReduxWrapper;
78
- }
79
- }
80
- //# sourceMappingURL=ComponentWrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","polyfill","hoistNonReactStatics","jsx","_jsx","ComponentWrapper","wrap","componentName","OriginalComponentGenerator","store","componentEventsObserver","concreteComponentProvider","ReduxProvider","reduxStore","GeneratedComponentClass","WrappedComponent","Component","getDerivedStateFromProps","nextProps","prevState","allProps","getPropsForId","componentId","_isMounted","isMounted","constructor","props","_assertComponentId","state","setComponentInstance","setProps","newProps","callback","setState","componentDidMount","consumePendingProps","componentWillUnmount","clearComponent","unmounted","render","Error","wrapWithRedux","ReduxWrapper","children"],"sourceRoot":"../../../src","sources":["components/ComponentWrapper.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,QAAQ,QAAQ,yBAAyB;AAClD,OAAOC,oBAAoB,MAAM,yBAAyB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAkB3D,OAAO,MAAMC,gBAAgB,CAAC;EAC5BC,IAAIA,CACFC,aAA8B,EAC9BC,0BAA6C,EAC7CC,KAAY,EACZC,uBAAgD,EAChDC,yBAA4C,GAAGH,0BAA0B,EACzEI,aAAmB,EACnBC,UAAgB,EACW;IAC3B,MAAMC,uBAAuB,GAAGN,0BAA0B,CAAC,CAAC;IAC5D,MAAMO,gBAAgB,SAASf,KAAK,CAACgB,SAAS,CAAqB;MACjE,OAAOC,wBAAwBA,CAACC,SAAc,EAAEC,SAAmB,EAAE;QACnE,OAAO;UACLC,QAAQ,EAAE;YACR,GAAGF,SAAS;YACZ,GAAGT,KAAK,CAACY,aAAa,CAACF,SAAS,CAACG,WAAW;UAC9C;QACF,CAAC;MACH;MAEQC,UAAU,GAAG,KAAK;MAE1B,IAAIC,SAASA,CAAA,EAAG;QACd,OAAO,IAAI,CAACD,UAAU;MACxB;MAEAE,WAAWA,CAACC,KAAe,EAAE;QAC3B,KAAK,CAACA,KAAK,CAAC;QACZ,IAAI,CAACC,kBAAkB,CAAC,CAAC;QACzB,IAAI,CAACC,KAAK,GAAG;UACXN,WAAW,EAAEI,KAAK,CAACJ,WAAW;UAC9BF,QAAQ,EAAE,CAAC;QACb,CAAC;QACDX,KAAK,CAACoB,oBAAoB,CAACH,KAAK,CAACJ,WAAW,EAAE,IAAI,CAAC;MACrD;MAEOQ,QAAQA,CAACC,QAAa,EAAEC,QAAqB,EAAE;QACpD,IAAI,CAACC,QAAQ,CACVd,SAAS,KAAM;UACdC,QAAQ,EAAE;YACR,GAAGD,SAAS,CAACC,QAAQ;YACrB,GAAGW;UACL;QACF,CAAC,CAAC,EACFC,QACF,CAAC;MACH;MAEAE,iBAAiBA,CAAA,EAAG;QAClB,IAAI,CAACX,UAAU,GAAG,IAAI;QACtBd,KAAK,CAAC0B,mBAAmB,CAAC,IAAI,CAACP,KAAK,CAACN,WAAW,CAAC;MACnD;MAEAc,oBAAoBA,CAAA,EAAG;QACrB3B,KAAK,CAAC4B,cAAc,CAAC,IAAI,CAACT,KAAK,CAACN,WAAW,CAAC;QAC5CZ,uBAAuB,CAAC4B,SAAS,CAAC,IAAI,CAACV,KAAK,CAACN,WAAW,CAAC;MAC3D;MAEAiB,MAAMA,CAAA,EAAG;QACP,oBACEnC,IAAA,CAACU,uBAAuB;UAAA,GAClB,IAAI,CAACc,KAAK,CAACR,QAAQ;UACvBE,WAAW,EAAE,IAAI,CAACM,KAAK,CAACN,WAAY;UACpCf,aAAa,EAAEA;QAAc,CAC9B,CAAC;MAEN;MAEQoB,kBAAkBA,CAAA,EAAG;QAC3B,IAAI,CAAC,IAAI,CAACD,KAAK,CAACJ,WAAW,EAAE;UAC3B,MAAM,IAAIkB,KAAK,CAAC,aAAajC,aAAa,+BAA+B,CAAC;QAC5E;MACF;IACF;IAEAN,QAAQ,CAACc,gBAAgB,CAAC;IAC1Bb,oBAAoB,CAClBa,gBAAgB,EAChBJ,yBAAyB,KAAKH,0BAA0B,GACpDM,uBAAuB,GACvBH,yBAAyB,CAAC,CAChC,CAAC;IACD,OAAOC,aAAa,GAChB,IAAI,CAAC6B,aAAa,CAAC1B,gBAAgB,EAAEH,aAAa,EAAEC,UAAU,CAAC,GAC/DE,gBAAgB;EACtB;EAEA0B,aAAaA,CACX1B,gBAA2C,EAC3CH,aAAkB,EAClBC,UAAe,EACY;IAC3B,MAAM6B,YAAY,SAAS1C,KAAK,CAACgB,SAAS,CAAW;MACnDuB,MAAMA,CAAA,EAAG;QACP,oBACEnC,IAAA,CAACQ,aAAa;UAACH,KAAK,EAAEI,UAAW;UAAA8B,QAAA,eAC/BvC,IAAA,CAACW,gBAAgB;YAAA,GAAK,IAAI,CAACW;UAAK,CAAG;QAAC,CACvB,CAAC;MAEpB;IACF;IACAxB,oBAAoB,CAACwC,YAAY,EAAE3B,gBAAgB,CAAC;IACpD,OAAO2B,YAAY;EACrB;AACF","ignoreList":[]}
@@ -1,333 +0,0 @@
1
- "use strict";
2
-
3
- import * as React from 'react';
4
- import { View, Text } from 'react-native';
5
- import { render, act } from '@testing-library/react-native';
6
- import { ComponentWrapper } from "./ComponentWrapper.js";
7
- import { Store } from "./Store.js";
8
- import { mock, verify, instance } from 'ts-mockito';
9
- import { ComponentEventsObserver } from "../events/ComponentEventsObserver.js";
10
- import { jsx as _jsx } from "react/jsx-runtime";
11
- describe('ComponentWrapper', () => {
12
- const componentName = 'example.MyComponent';
13
- let store;
14
- let myComponentProps;
15
- let mockedComponentEventsObserver;
16
- let componentEventsObserver;
17
- let uut;
18
- class MyComponent extends React.Component {
19
- static options = {
20
- title: 'MyComponentTitle'
21
- };
22
- render() {
23
- myComponentProps = this.props;
24
- if (this.props.renderCount) {
25
- this.props.renderCount();
26
- }
27
- return /*#__PURE__*/_jsx(Text, {
28
- children: this.props.text || 'Hello, World!'
29
- });
30
- }
31
- }
32
- class TestParent extends React.Component {
33
- constructor(props) {
34
- super(props);
35
- this.ChildClass = props.ChildClass;
36
- this.state = {
37
- propsFromState: {}
38
- };
39
- }
40
- setStateFromTest = newState => {
41
- this.setState({
42
- propsFromState: newState
43
- });
44
- };
45
- render() {
46
- const {
47
- ChildClass
48
- } = this;
49
- return /*#__PURE__*/_jsx(ChildClass, {
50
- componentId: "component1",
51
- ...this.state.propsFromState
52
- });
53
- }
54
- }
55
- beforeEach(() => {
56
- store = new Store();
57
- mockedComponentEventsObserver = mock(ComponentEventsObserver);
58
- componentEventsObserver = instance(mockedComponentEventsObserver);
59
- uut = new ComponentWrapper();
60
- });
61
- it('must have componentId as prop', () => {
62
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
63
- const orig = console.error;
64
- console.error = a => a;
65
- expect(() => {
66
- render(/*#__PURE__*/_jsx(NavigationComponent, {}));
67
- }).toThrowError('Component example.MyComponent does not have a componentId!');
68
- console.error = orig;
69
- });
70
- it('wraps the component', () => {
71
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
72
- expect(NavigationComponent).not.toBeInstanceOf(MyComponent);
73
- const {
74
- getByText
75
- } = render(/*#__PURE__*/_jsx(NavigationComponent, {
76
- componentId: 'component1'
77
- }));
78
- expect(getByText('Hello, World!')).toBeTruthy();
79
- });
80
- it('injects props from wrapper into original component', () => {
81
- const renderCount = jest.fn();
82
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
83
- const {
84
- getByText
85
- } = render(/*#__PURE__*/_jsx(NavigationComponent, {
86
- componentId: 'component1',
87
- text: 'yo',
88
- renderCount: renderCount
89
- }));
90
- expect(getByText('yo')).toBeTruthy();
91
- expect(renderCount).toHaveBeenCalledTimes(1);
92
- });
93
- it('updates props from wrapper into original component on state change', () => {
94
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
95
- let parentRef = null;
96
- render(/*#__PURE__*/_jsx(TestParent, {
97
- ref: ref => {
98
- parentRef = ref;
99
- },
100
- ChildClass: NavigationComponent
101
- }));
102
- expect(myComponentProps.foo).toEqual(undefined);
103
-
104
- // Use the ref to call setState wrapped in act
105
- act(() => {
106
- if (parentRef) {
107
- parentRef.setStateFromTest({
108
- foo: 'yo'
109
- });
110
- }
111
- });
112
- expect(myComponentProps.foo).toEqual('yo');
113
- });
114
- it('pulls props from the store and injects them into the inner component', () => {
115
- store.updateProps('component123', {
116
- numberProp: 1,
117
- stringProp: 'hello',
118
- objectProp: {
119
- a: 2
120
- }
121
- });
122
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
123
- render(/*#__PURE__*/_jsx(NavigationComponent, {
124
- componentId: 'component123'
125
- }));
126
- expect(myComponentProps).toEqual({
127
- componentId: 'component123',
128
- componentName,
129
- numberProp: 1,
130
- stringProp: 'hello',
131
- objectProp: {
132
- a: 2
133
- }
134
- });
135
- });
136
- it('update props with callback', done => {
137
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
138
- render(/*#__PURE__*/_jsx(NavigationComponent, {
139
- componentId: 'component123'
140
- }));
141
- function callback() {
142
- try {
143
- expect(true).toBe(true);
144
- done();
145
- } catch (error) {
146
- done(error);
147
- }
148
- }
149
- store.updateProps('component123', {
150
- someProp: 'someValue'
151
- }, callback);
152
- });
153
- it('updates props from store into inner component', () => {
154
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
155
- render(/*#__PURE__*/_jsx(TestParent, {
156
- ChildClass: NavigationComponent
157
- }));
158
- expect(myComponentProps.myProp).toEqual(undefined);
159
- act(() => {
160
- store.updateProps('component1', {
161
- myProp: 'hello'
162
- });
163
- });
164
- expect(myComponentProps.myProp).toEqual('hello');
165
- });
166
- it('updates props from state into inner component', () => {
167
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
168
- let parentRef = null;
169
- render(/*#__PURE__*/_jsx(TestParent, {
170
- ref: ref => {
171
- parentRef = ref;
172
- },
173
- ChildClass: NavigationComponent
174
- }));
175
- expect(myComponentProps.foo).toEqual(undefined);
176
- act(() => {
177
- if (parentRef) {
178
- parentRef.setStateFromTest({
179
- foo: 'yo'
180
- });
181
- }
182
- });
183
- expect(myComponentProps.foo).toEqual('yo');
184
- });
185
- it('protects id from change', () => {
186
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
187
- let parentRef = null;
188
- render(/*#__PURE__*/_jsx(TestParent, {
189
- ref: ref => {
190
- parentRef = ref;
191
- },
192
- ChildClass: NavigationComponent
193
- }));
194
- expect(myComponentProps.componentId).toEqual('component1');
195
- if (parentRef) {
196
- parentRef.setStateFromTest({
197
- id: 'ERROR'
198
- });
199
- }
200
- expect(myComponentProps.componentId).toEqual('component1');
201
- });
202
- it('cleans props from store on unMount', () => {
203
- store.updateProps('component123', {
204
- foo: 'bar'
205
- });
206
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
207
- const {
208
- unmount
209
- } = render(/*#__PURE__*/_jsx(NavigationComponent, {
210
- componentId: 'component123'
211
- }));
212
- expect(store.getPropsForId('component123')).toEqual({
213
- foo: 'bar'
214
- });
215
- unmount();
216
- expect(store.getPropsForId('component123')).toEqual({});
217
- });
218
- it('merges static members from wrapped component when generated', () => {
219
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
220
- expect(NavigationComponent.options).toEqual({
221
- title: 'MyComponentTitle'
222
- });
223
- });
224
- it('calls unmounted on componentEventsObserver', () => {
225
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
226
- const {
227
- unmount
228
- } = render(/*#__PURE__*/_jsx(NavigationComponent, {
229
- componentId: 'component123'
230
- }));
231
- verify(mockedComponentEventsObserver.unmounted('component123')).never();
232
- unmount();
233
- verify(mockedComponentEventsObserver.unmounted('component123')).once();
234
- });
235
- it('renders HOC components correctly', () => {
236
- const generator = () => props => /*#__PURE__*/_jsx(View, {
237
- children: /*#__PURE__*/_jsx(MyComponent, {
238
- ...props
239
- })
240
- });
241
- uut = new ComponentWrapper();
242
- const NavigationComponent = uut.wrap(componentName, generator, store, componentEventsObserver);
243
- const {
244
- getByText
245
- } = render(/*#__PURE__*/_jsx(NavigationComponent, {
246
- componentId: 'component123'
247
- }));
248
- expect(getByText('Hello, World!')).toBeTruthy();
249
- });
250
- it('sets component instance in store when constructed', () => {
251
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
252
- render(/*#__PURE__*/_jsx(NavigationComponent, {
253
- componentId: 'component1'
254
- }));
255
- expect(store.getComponentInstance('component1')).toBeTruthy();
256
- });
257
- it('Component generator is invoked only once', () => {
258
- const componentGenerator = jest.fn(() => MyComponent);
259
- uut.wrap(componentName, componentGenerator, store, componentEventsObserver);
260
- expect(componentGenerator.mock.calls.length).toBe(1);
261
- });
262
- describe(`register with redux store`, () => {
263
- class MyReduxComp extends React.Component {
264
- static options() {
265
- return {
266
- foo: 123
267
- };
268
- }
269
- render() {
270
- return /*#__PURE__*/_jsx(Text, {
271
- children: this.props.txt
272
- });
273
- }
274
- }
275
- function mapStateToProps(state) {
276
- return {
277
- txt: state.txt
278
- };
279
- }
280
- const ConnectedComp = require('react-redux').connect(mapStateToProps)(MyReduxComp);
281
- const ReduxProvider = require('react-redux').Provider;
282
- const initialState = {
283
- txt: 'it just works'
284
- };
285
- const reduxStore = {
286
- getState: () => initialState,
287
- dispatch: jest.fn(),
288
- subscribe: jest.fn(),
289
- replaceReducer: jest.fn()
290
- };
291
- it(`wraps the component with a react-redux provider with passed store`, () => {
292
- const NavigationComponent = uut.wrap(componentName, () => ConnectedComp, store, componentEventsObserver, undefined, ReduxProvider, reduxStore);
293
- const {
294
- getByText
295
- } = render(/*#__PURE__*/_jsx(ReduxProvider, {
296
- store: reduxStore,
297
- children: /*#__PURE__*/_jsx(NavigationComponent, {
298
- componentId: 'theCompId'
299
- })
300
- }));
301
- expect(getByText('it just works')).toBeTruthy();
302
- expect(NavigationComponent.options()).toEqual({
303
- foo: 123
304
- });
305
- });
306
- });
307
- it('initialize isMounted with false value', () => {
308
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
309
- new NavigationComponent({
310
- componentId: 'component123'
311
- });
312
- expect(store.getComponentInstance('component123')?.isMounted).toEqual(false);
313
- });
314
- it('updates isMounted on componentDidMount', () => {
315
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
316
- render(/*#__PURE__*/_jsx(NavigationComponent, {
317
- componentId: 'component123'
318
- }));
319
- expect(store.getComponentInstance('component123')?.isMounted).toEqual(true);
320
- });
321
- it('clears isMounted on componentDidUnmount', () => {
322
- const NavigationComponent = uut.wrap(componentName, () => MyComponent, store, componentEventsObserver);
323
- const {
324
- unmount
325
- } = render(/*#__PURE__*/_jsx(NavigationComponent, {
326
- componentId: 'component123'
327
- }));
328
- expect(store.getComponentInstance('component123')?.isMounted).toEqual(true);
329
- unmount();
330
- expect(store.getComponentInstance('component123')?.isMounted).toBeUndefined();
331
- });
332
- });
333
- //# sourceMappingURL=ComponentWrapper.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","View","Text","render","act","ComponentWrapper","Store","mock","verify","instance","ComponentEventsObserver","jsx","_jsx","describe","componentName","store","myComponentProps","mockedComponentEventsObserver","componentEventsObserver","uut","MyComponent","Component","options","title","props","renderCount","children","text","TestParent","constructor","ChildClass","state","propsFromState","setStateFromTest","newState","setState","componentId","beforeEach","it","NavigationComponent","wrap","orig","console","error","a","expect","toThrowError","not","toBeInstanceOf","getByText","toBeTruthy","jest","fn","toHaveBeenCalledTimes","parentRef","ref","foo","toEqual","undefined","updateProps","numberProp","stringProp","objectProp","done","callback","toBe","someProp","myProp","id","unmount","getPropsForId","unmounted","never","once","generator","getComponentInstance","componentGenerator","calls","length","MyReduxComp","txt","mapStateToProps","ConnectedComp","require","connect","ReduxProvider","Provider","initialState","reduxStore","getState","dispatch","subscribe","replaceReducer","isMounted","toBeUndefined"],"sourceRoot":"../../../src","sources":["components/ComponentWrapper.test.tsx"],"mappings":"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","ignoreList":[]}