@ohos-ports/react-native-navigation 8.9.0-beta.11 → 8.9.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -11
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/statusbar/StatusBarPresenter.kt +212 -0
- package/lib/module/ARCHITECTURE.md +331 -0
- package/lib/module/Mock/Application.js +33 -0
- package/lib/module/Mock/Application.js.map +1 -0
- package/lib/module/Mock/ComponentProps.js +4 -0
- package/lib/module/Mock/ComponentProps.js.map +1 -0
- package/lib/module/Mock/Components/BottomTabs.js +16 -0
- package/lib/module/Mock/Components/BottomTabs.js.map +1 -0
- package/lib/module/Mock/Components/ComponentScreen.js +101 -0
- package/lib/module/Mock/Components/ComponentScreen.js.map +1 -0
- package/lib/module/Mock/Components/LayoutComponent.js +50 -0
- package/lib/module/Mock/Components/LayoutComponent.js.map +1 -0
- package/lib/module/Mock/Components/Modals.js +22 -0
- package/lib/module/Mock/Components/Modals.js.map +1 -0
- package/lib/module/Mock/Components/NavigationButton.js +72 -0
- package/lib/module/Mock/Components/NavigationButton.js.map +1 -0
- package/lib/module/Mock/Components/Overlays.js +23 -0
- package/lib/module/Mock/Components/Overlays.js.map +1 -0
- package/lib/module/Mock/Components/SideMenu.js +29 -0
- package/lib/module/Mock/Components/SideMenu.js.map +1 -0
- package/lib/module/Mock/Components/Stack.js +18 -0
- package/lib/module/Mock/Components/Stack.js.map +1 -0
- package/lib/module/Mock/Components/TopBar.js +81 -0
- package/lib/module/Mock/Components/TopBar.js.map +1 -0
- package/lib/module/Mock/Layouts/BottomTabsNode.js +30 -0
- package/lib/module/Mock/Layouts/BottomTabsNode.js.map +1 -0
- package/lib/module/Mock/Layouts/ComponentNode.js +102 -0
- package/lib/module/Mock/Layouts/ComponentNode.js.map +1 -0
- package/lib/module/Mock/Layouts/LayoutNodeFactory.js +28 -0
- package/lib/module/Mock/Layouts/LayoutNodeFactory.js.map +1 -0
- package/lib/module/Mock/Layouts/Node.js +14 -0
- package/lib/module/Mock/Layouts/Node.js.map +1 -0
- package/lib/module/Mock/Layouts/ParentNode.js +66 -0
- package/lib/module/Mock/Layouts/ParentNode.js.map +1 -0
- package/lib/module/Mock/Layouts/SideMenu.js +72 -0
- package/lib/module/Mock/Layouts/SideMenu.js.map +1 -0
- package/lib/module/Mock/Layouts/StackNode.js +12 -0
- package/lib/module/Mock/Layouts/StackNode.js.map +1 -0
- package/lib/module/Mock/Stores/EventsStore.js +53 -0
- package/lib/module/Mock/Stores/EventsStore.js.map +1 -0
- package/lib/{cjs → module}/Mock/Stores/LayoutStore.js +24 -56
- package/lib/module/Mock/Stores/LayoutStore.js.map +1 -0
- package/lib/module/Mock/actions/layoutActions.js +19 -0
- package/lib/module/Mock/actions/layoutActions.js.map +1 -0
- package/lib/module/Mock/connect.js +8 -0
- package/lib/module/Mock/connect.js.map +1 -0
- package/lib/module/Mock/constants.js +5 -0
- package/lib/module/Mock/constants.js.map +1 -0
- package/lib/module/Mock/index.js +20 -0
- package/lib/module/Mock/index.js.map +1 -0
- package/lib/module/Mock/mocks/AppRegistryService.js +6 -0
- package/lib/module/Mock/mocks/AppRegistryService.js.map +1 -0
- package/lib/module/Mock/mocks/NativeCommandsSender.js +146 -0
- package/lib/module/Mock/mocks/NativeCommandsSender.js.map +1 -0
- package/lib/module/Mock/mocks/NativeEventsReceiver.js +103 -0
- package/lib/module/Mock/mocks/NativeEventsReceiver.js.map +1 -0
- package/lib/module/Navigation.js +250 -0
- package/lib/module/Navigation.js.map +1 -0
- package/lib/{cjs → module}/NavigationDelegate.js +34 -33
- package/lib/module/NavigationDelegate.js.map +1 -0
- package/lib/module/adapters/AndroidCustomRowForwarder.js +75 -0
- package/lib/module/adapters/AndroidCustomRowForwarder.js.map +1 -0
- package/lib/module/adapters/AppRegistryService.js +9 -0
- package/lib/module/adapters/AppRegistryService.js.map +1 -0
- package/lib/module/adapters/AssetResolver.js +9 -0
- package/lib/module/adapters/AssetResolver.js.map +1 -0
- package/lib/module/adapters/ColorService.js +9 -0
- package/lib/module/adapters/ColorService.js.map +1 -0
- package/lib/module/adapters/Constants.js +19 -0
- package/lib/module/adapters/Constants.js.map +1 -0
- package/lib/{cjs → module}/adapters/NativeCommandsSender.js +5 -39
- package/lib/module/adapters/NativeCommandsSender.js.map +1 -0
- package/lib/module/adapters/NativeEventsReceiver.js +65 -0
- package/lib/module/adapters/NativeEventsReceiver.js.map +1 -0
- package/lib/module/adapters/NativeEventsReceiver.mock.js +6 -0
- package/lib/module/adapters/NativeEventsReceiver.mock.js.map +1 -0
- package/lib/module/adapters/NativeRNNTurboEventEmitter.js +7 -0
- package/lib/module/adapters/NativeRNNTurboEventEmitter.js.map +1 -0
- package/lib/module/adapters/NativeRNNTurboModule.js +6 -0
- package/lib/module/adapters/NativeRNNTurboModule.js.map +1 -0
- package/lib/module/adapters/TouchablePreview.js +115 -0
- package/lib/module/adapters/TouchablePreview.js.map +1 -0
- package/lib/module/adapters/UniqueIdProvider.js +9 -0
- package/lib/module/adapters/UniqueIdProvider.js.map +1 -0
- package/lib/module/commands/Commands.js +241 -0
- package/lib/module/commands/Commands.js.map +1 -0
- package/lib/module/commands/Commands.test.js +759 -0
- package/lib/module/commands/Commands.test.js.map +1 -0
- package/lib/module/commands/Deprecations.js +66 -0
- package/lib/module/commands/Deprecations.js.map +1 -0
- package/lib/module/commands/LayoutTreeCrawler.js +32 -0
- package/lib/module/commands/LayoutTreeCrawler.js.map +1 -0
- package/lib/module/commands/LayoutTreeCrawler.test.js +82 -0
- package/lib/module/commands/LayoutTreeCrawler.test.js.map +1 -0
- package/lib/module/commands/LayoutTreeParser.js +130 -0
- package/lib/module/commands/LayoutTreeParser.js.map +1 -0
- package/lib/module/commands/LayoutTreeParser.test.js +359 -0
- package/lib/module/commands/LayoutTreeParser.test.js.map +1 -0
- package/lib/module/commands/LayoutType.js +16 -0
- package/lib/module/commands/LayoutType.js.map +1 -0
- package/lib/module/commands/LayoutType.test.js +12 -0
- package/lib/module/commands/LayoutType.test.js.map +1 -0
- package/lib/module/commands/OptionsCrawler.js +72 -0
- package/lib/module/commands/OptionsCrawler.js.map +1 -0
- package/lib/module/commands/OptionsCrawler.test.js +351 -0
- package/lib/module/commands/OptionsCrawler.test.js.map +1 -0
- package/lib/{cjs → module}/commands/OptionsProcessor.js +67 -102
- package/lib/module/commands/OptionsProcessor.js.map +1 -0
- package/lib/module/commands/OptionsProcessor.test.js +1234 -0
- package/lib/module/commands/OptionsProcessor.test.js.map +1 -0
- package/lib/{cjs → module}/components/ComponentRegistry.js +3 -27
- package/lib/module/components/ComponentRegistry.js.map +1 -0
- package/lib/module/components/ComponentRegistry.test.js +57 -0
- package/lib/module/components/ComponentRegistry.test.js.map +1 -0
- package/lib/module/components/ComponentWrapper.js +80 -0
- package/lib/module/components/ComponentWrapper.js.map +1 -0
- package/lib/module/components/ComponentWrapper.test.js +333 -0
- package/lib/module/components/ComponentWrapper.test.js.map +1 -0
- package/lib/module/components/Modal.js +125 -0
- package/lib/module/components/Modal.js.map +1 -0
- package/lib/{cjs → module}/components/Store.js +3 -27
- package/lib/module/components/Store.js.map +1 -0
- package/lib/module/components/Store.test.js +148 -0
- package/lib/module/components/Store.test.js.map +1 -0
- package/lib/module/events/CommandsObserver.js +19 -0
- package/lib/module/events/CommandsObserver.js.map +1 -0
- package/lib/module/events/CommandsObserver.test.js +43 -0
- package/lib/module/events/CommandsObserver.test.js.map +1 -0
- package/lib/module/events/ComponentEventsObserver.js +94 -0
- package/lib/module/events/ComponentEventsObserver.js.map +1 -0
- package/lib/module/events/ComponentEventsObserver.test.js +391 -0
- package/lib/module/events/ComponentEventsObserver.test.js.map +1 -0
- package/lib/{cjs → module}/events/EventsRegistry.js +3 -27
- package/lib/module/events/EventsRegistry.js.map +1 -0
- package/lib/module/events/EventsRegistry.test.js +131 -0
- package/lib/module/events/EventsRegistry.test.js.map +1 -0
- package/lib/module/index.js +22 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/interfaces/CommandName.js +22 -0
- package/lib/module/interfaces/CommandName.js.map +1 -0
- package/lib/module/interfaces/ComponentEvents.js +2 -0
- package/lib/module/interfaces/ComponentEvents.js.map +1 -0
- package/lib/module/interfaces/EventSubscription.js +2 -0
- package/lib/module/interfaces/EventSubscription.js.map +1 -0
- package/lib/module/interfaces/Events.js +2 -0
- package/lib/module/interfaces/Events.js.map +1 -0
- package/lib/module/interfaces/Layout.js +4 -0
- package/lib/module/interfaces/Layout.js.map +1 -0
- package/lib/module/interfaces/NavigationComponent.js +21 -0
- package/lib/module/interfaces/NavigationComponent.js.map +1 -0
- package/lib/module/interfaces/NavigationComponentListener.js +4 -0
- package/lib/module/interfaces/NavigationComponentListener.js.map +1 -0
- package/lib/module/interfaces/NavigationComponentProps.js +2 -0
- package/lib/module/interfaces/NavigationComponentProps.js.map +1 -0
- package/lib/module/interfaces/NavigationFunctionComponent.js +4 -0
- package/lib/module/interfaces/NavigationFunctionComponent.js.map +1 -0
- package/lib/module/interfaces/Options.js +47 -0
- package/lib/module/interfaces/Options.js.map +1 -0
- package/lib/module/interfaces/ProcessorSubscription.js +2 -0
- package/lib/module/interfaces/ProcessorSubscription.js.map +1 -0
- package/lib/module/interfaces/Processors.js +4 -0
- package/lib/module/interfaces/Processors.js.map +1 -0
- package/lib/module/linking/DeferredLinkQueue.js +52 -0
- package/lib/module/linking/DeferredLinkQueue.js.map +1 -0
- package/lib/module/linking/DeferredLinkQueue.test.js +54 -0
- package/lib/module/linking/DeferredLinkQueue.test.js.map +1 -0
- package/lib/{cjs → module}/linking/LinkingHandler.js +43 -40
- package/lib/module/linking/LinkingHandler.js.map +1 -0
- package/lib/module/linking/LinkingHandler.test.js +384 -0
- package/lib/module/linking/LinkingHandler.test.js.map +1 -0
- package/lib/module/linking/ModalLayoutBuilder.js +56 -0
- package/lib/module/linking/ModalLayoutBuilder.js.map +1 -0
- package/lib/module/linking/ModalLayoutBuilder.test.js +154 -0
- package/lib/module/linking/ModalLayoutBuilder.test.js.map +1 -0
- package/lib/{cjs → module}/linking/RouteMatcher.js +15 -31
- package/lib/module/linking/RouteMatcher.js.map +1 -0
- package/lib/module/linking/RouteMatcher.test.js +164 -0
- package/lib/module/linking/RouteMatcher.test.js.map +1 -0
- package/lib/module/linking/URLParser.js +56 -0
- package/lib/module/linking/URLParser.js.map +1 -0
- package/lib/module/linking/URLParser.test.js +100 -0
- package/lib/module/linking/URLParser.test.js.map +1 -0
- package/lib/module/linking/types.js +4 -0
- package/lib/module/linking/types.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/processors/LayoutProcessor.js +15 -0
- package/lib/module/processors/LayoutProcessor.js.map +1 -0
- package/lib/module/processors/LayoutProcessor.test.js +53 -0
- package/lib/module/processors/LayoutProcessor.test.js.map +1 -0
- package/lib/module/processors/LayoutProcessorsStore.js +18 -0
- package/lib/module/processors/LayoutProcessorsStore.js.map +1 -0
- package/lib/module/processors/LayoutProcessorsStore.test.js +31 -0
- package/lib/module/processors/LayoutProcessorsStore.test.js.map +1 -0
- package/lib/module/processors/OptionProcessorsStore.js +19 -0
- package/lib/module/processors/OptionProcessorsStore.js.map +1 -0
- package/lib/module/processors/OptionProcessorsStore.test.js +31 -0
- package/lib/module/processors/OptionProcessorsStore.test.js.map +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/package.json +7 -12
- package/lib/cjs/Mock/Application.js +0 -67
- package/lib/cjs/Mock/ComponentProps.js +0 -16
- package/lib/cjs/Mock/Components/BottomTabs.js +0 -50
- package/lib/cjs/Mock/Components/ComponentScreen.js +0 -135
- package/lib/cjs/Mock/Components/LayoutComponent.js +0 -85
- package/lib/cjs/Mock/Components/Modals.js +0 -56
- package/lib/cjs/Mock/Components/NavigationButton.js +0 -104
- package/lib/cjs/Mock/Components/Overlays.js +0 -57
- package/lib/cjs/Mock/Components/SideMenu.js +0 -69
- package/lib/cjs/Mock/Components/Stack.js +0 -52
- package/lib/cjs/Mock/Components/TopBar.js +0 -115
- package/lib/cjs/Mock/Layouts/BottomTabsNode.js +0 -60
- package/lib/cjs/Mock/Layouts/ComponentNode.js +0 -132
- package/lib/cjs/Mock/Layouts/LayoutNodeFactory.js +0 -59
- package/lib/cjs/Mock/Layouts/Node.js +0 -32
- package/lib/cjs/Mock/Layouts/ParentNode.js +0 -99
- package/lib/cjs/Mock/Layouts/SideMenu.js +0 -112
- package/lib/cjs/Mock/Layouts/StackNode.js +0 -42
- package/lib/cjs/Mock/Stores/EventsStore.js +0 -85
- package/lib/cjs/Mock/actions/layoutActions.js +0 -47
- package/lib/cjs/Mock/connect.js +0 -31
- package/lib/cjs/Mock/constants.js +0 -31
- package/lib/cjs/Mock/index.js +0 -48
- package/lib/cjs/Mock/mocks/AppRegistryService.js +0 -31
- package/lib/cjs/Mock/mocks/NativeCommandsSender.js +0 -181
- package/lib/cjs/Mock/mocks/NativeEventsReceiver.js +0 -146
- package/lib/cjs/Navigation.js +0 -259
- package/lib/cjs/adapters/AndroidCustomRowForwarder.js +0 -84
- package/lib/cjs/adapters/AppRegistryService.js +0 -33
- package/lib/cjs/adapters/AssetResolver.js +0 -33
- package/lib/cjs/adapters/ColorService.js +0 -33
- package/lib/cjs/adapters/Constants.js +0 -43
- package/lib/cjs/adapters/NativeEventsReceiver.js +0 -99
- package/lib/cjs/adapters/NativeEventsReceiver.mock.js +0 -30
- package/lib/cjs/adapters/NativeRNNTurboEventEmitter.js +0 -27
- package/lib/cjs/adapters/NativeRNNTurboModule.js +0 -26
- package/lib/cjs/adapters/TouchablePreview.js +0 -137
- package/lib/cjs/adapters/UniqueIdProvider.js +0 -43
- package/lib/cjs/commands/Commands.js +0 -276
- package/lib/cjs/commands/Deprecations.js +0 -101
- package/lib/cjs/commands/LayoutTreeCrawler.js +0 -56
- package/lib/cjs/commands/LayoutTreeParser.js +0 -154
- package/lib/cjs/commands/LayoutType.js +0 -40
- package/lib/cjs/commands/OptionsCrawler.js +0 -106
- package/lib/cjs/components/ComponentWrapper.js +0 -114
- package/lib/cjs/components/Modal.js +0 -159
- package/lib/cjs/events/CommandsObserver.js +0 -43
- package/lib/cjs/events/ComponentEventsObserver.js +0 -128
- package/lib/cjs/index.js +0 -63
- package/lib/cjs/interfaces/CommandName.js +0 -46
- package/lib/cjs/interfaces/ComponentEvents.js +0 -1
- package/lib/cjs/interfaces/EventSubscription.js +0 -1
- package/lib/cjs/interfaces/Events.js +0 -1
- package/lib/cjs/interfaces/Layout.js +0 -16
- package/lib/cjs/interfaces/NavigationComponent.js +0 -62
- package/lib/cjs/interfaces/NavigationComponentListener.js +0 -16
- package/lib/cjs/interfaces/NavigationComponentProps.js +0 -1
- package/lib/cjs/interfaces/NavigationFunctionComponent.js +0 -16
- package/lib/cjs/interfaces/Options.js +0 -47
- package/lib/cjs/interfaces/ProcessorSubscription.js +0 -1
- package/lib/cjs/interfaces/Processors.js +0 -16
- package/lib/cjs/linking/DeferredLinkQueue.js +0 -66
- package/lib/cjs/linking/ModalLayoutBuilder.js +0 -59
- package/lib/cjs/linking/URLParser.js +0 -70
- package/lib/cjs/linking/types.js +0 -16
- package/lib/cjs/processors/LayoutProcessor.js +0 -39
- package/lib/cjs/processors/LayoutProcessorsStore.js +0 -42
- package/lib/cjs/processors/OptionProcessorsStore.js +0 -43
- package/lib/cjs/types.js +0 -1
- package/postinstall.js +0 -53
|
@@ -0,0 +1 @@
|
|
|
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,27 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var ComponentRegistry_exports = {};
|
|
20
|
-
__export(ComponentRegistry_exports, {
|
|
21
|
-
ComponentRegistry: () => ComponentRegistry
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(ComponentRegistry_exports);
|
|
24
|
-
class ComponentRegistry {
|
|
2
|
+
|
|
3
|
+
export class ComponentRegistry {
|
|
25
4
|
constructor(store, componentEventsObserver, componentWrapper, appRegistryService) {
|
|
26
5
|
this.store = store;
|
|
27
6
|
this.componentEventsObserver = componentEventsObserver;
|
|
@@ -43,7 +22,4 @@ class ComponentRegistry {
|
|
|
43
22
|
return NavigationComponent;
|
|
44
23
|
}
|
|
45
24
|
}
|
|
46
|
-
|
|
47
|
-
0 && (module.exports = {
|
|
48
|
-
ComponentRegistry
|
|
49
|
-
});
|
|
25
|
+
//# sourceMappingURL=ComponentRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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":[]}
|
|
@@ -0,0 +1,57 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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":[]}
|
|
@@ -0,0 +1,80 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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":"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","ignoreList":[]}
|
|
@@ -0,0 +1,333 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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":[]}
|