@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,241 +0,0 @@
1
- "use strict";
2
-
3
- import cloneDeepWith from 'lodash/cloneDeepWith.js';
4
- import cloneDeep from 'lodash/cloneDeep.js';
5
- import map from 'lodash/map.js';
6
- import { CommandName } from "../interfaces/CommandName.js";
7
- import { AndroidCustomRowForwarder } from "../adapters/AndroidCustomRowForwarder.js";
8
- export class Commands {
9
- androidCustomRowForwarder = new AndroidCustomRowForwarder();
10
- constructor(store, nativeCommandsSender, layoutTreeParser, layoutTreeCrawler, commandsObserver, uniqueIdProvider, optionsProcessor, layoutProcessor, optionsCrawler) {
11
- this.store = store;
12
- this.nativeCommandsSender = nativeCommandsSender;
13
- this.layoutTreeParser = layoutTreeParser;
14
- this.layoutTreeCrawler = layoutTreeCrawler;
15
- this.commandsObserver = commandsObserver;
16
- this.uniqueIdProvider = uniqueIdProvider;
17
- this.optionsProcessor = optionsProcessor;
18
- this.layoutProcessor = layoutProcessor;
19
- this.optionsCrawler = optionsCrawler;
20
- }
21
- setRoot(simpleApi) {
22
- const input = cloneLayout(simpleApi);
23
- this.optionsCrawler.crawl(input.root);
24
- const processedRoot = this.layoutProcessor.process(input.root, CommandName.SetRoot);
25
- const root = this.layoutTreeParser.parse(processedRoot);
26
- const modals = map(input.modals, modal => {
27
- this.optionsCrawler.crawl(modal);
28
- const processedModal = this.layoutProcessor.process(modal, CommandName.SetRoot);
29
- return this.layoutTreeParser.parse(processedModal);
30
- });
31
- const overlays = map(input.overlays, overlay => {
32
- this.optionsCrawler.crawl(overlay);
33
- const processedOverlay = this.layoutProcessor.process(overlay, CommandName.SetRoot);
34
- return this.layoutTreeParser.parse(processedOverlay);
35
- });
36
- const commandId = this.uniqueIdProvider.generate(CommandName.SetRoot);
37
- this.commandsObserver.notify(CommandName.SetRoot, {
38
- commandId,
39
- layout: {
40
- root,
41
- modals,
42
- overlays
43
- }
44
- });
45
- this.layoutTreeCrawler.crawl(root, CommandName.SetRoot);
46
- modals.forEach(modalLayout => {
47
- this.layoutTreeCrawler.crawl(modalLayout, CommandName.SetRoot);
48
- });
49
- overlays.forEach(overlayLayout => {
50
- this.layoutTreeCrawler.crawl(overlayLayout, CommandName.SetRoot);
51
- });
52
- this.androidCustomRowForwarder.forwardFromLayouts([root, ...modals, ...overlays]);
53
- const result = this.nativeCommandsSender.setRoot(commandId, {
54
- root,
55
- modals,
56
- overlays
57
- });
58
- return result;
59
- }
60
- setDefaultOptions(options) {
61
- const input = cloneDeep(options);
62
- this.optionsProcessor.processDefaultOptions(input, CommandName.SetDefaultOptions);
63
- this.androidCustomRowForwarder.forwardFromOptions(input);
64
- this.nativeCommandsSender.setDefaultOptions(input);
65
- this.commandsObserver.notify(CommandName.SetDefaultOptions, {
66
- options
67
- });
68
- }
69
- mergeOptions(componentId, options) {
70
- const input = cloneDeep(options);
71
- const component = this.store.getComponentInstance(componentId);
72
- const componentProps = this.store.getPropsForId(componentId) || undefined;
73
- this.optionsProcessor.processOptions(CommandName.MergeOptions, input, componentProps);
74
- if (component && !component.isMounted) console.warn(`Navigation.mergeOptions was invoked on component with id: ${componentId} before it is mounted, this can cause UI issues and should be avoided.\n Use static options instead.`);
75
- this.androidCustomRowForwarder.forwardFromOptions(input);
76
- this.nativeCommandsSender.mergeOptions(componentId, input);
77
- this.commandsObserver.notify(CommandName.MergeOptions, {
78
- componentId,
79
- options
80
- });
81
- }
82
- updateProps(componentId, props, callback) {
83
- this.store.updateProps(componentId, props, callback);
84
- this.commandsObserver.notify(CommandName.UpdateProps, {
85
- componentId,
86
- props
87
- });
88
- }
89
- showModal(layout) {
90
- const layoutCloned = cloneLayout(layout);
91
- this.optionsCrawler.crawl(layoutCloned);
92
- const layoutProcessed = this.layoutProcessor.process(layoutCloned, CommandName.ShowModal);
93
- const layoutNode = this.layoutTreeParser.parse(layoutProcessed);
94
- const commandId = this.uniqueIdProvider.generate(CommandName.ShowModal);
95
- this.commandsObserver.notify(CommandName.ShowModal, {
96
- commandId,
97
- layout: layoutNode
98
- });
99
- this.layoutTreeCrawler.crawl(layoutNode, CommandName.ShowModal);
100
- this.androidCustomRowForwarder.forwardFromLayout(layoutNode);
101
- const result = this.nativeCommandsSender.showModal(commandId, layoutNode);
102
- return result;
103
- }
104
- dismissModal(componentId, mergeOptions) {
105
- const commandId = this.uniqueIdProvider.generate(CommandName.DismissModal);
106
- this.optionsProcessor.processOptions(CommandName.DismissModal, mergeOptions);
107
- const result = this.nativeCommandsSender.dismissModal(commandId, componentId, mergeOptions);
108
- this.commandsObserver.notify(CommandName.DismissModal, {
109
- commandId,
110
- componentId,
111
- mergeOptions
112
- });
113
- return result;
114
- }
115
- dismissAllModals(mergeOptions) {
116
- const commandId = this.uniqueIdProvider.generate(CommandName.DismissAllModals);
117
- this.optionsProcessor.processOptions(CommandName.DismissAllModals, mergeOptions);
118
- const result = this.nativeCommandsSender.dismissAllModals(commandId, mergeOptions);
119
- this.commandsObserver.notify(CommandName.DismissAllModals, {
120
- commandId,
121
- mergeOptions
122
- });
123
- return result;
124
- }
125
- push(componentId, simpleApi) {
126
- const input = cloneLayout(simpleApi);
127
- this.optionsCrawler.crawl(input);
128
- const layoutProcessed = this.layoutProcessor.process(input, CommandName.Push);
129
- const layout = this.layoutTreeParser.parse(layoutProcessed);
130
- const commandId = this.uniqueIdProvider.generate(CommandName.Push);
131
- this.commandsObserver.notify(CommandName.Push, {
132
- commandId,
133
- componentId,
134
- layout
135
- });
136
- this.layoutTreeCrawler.crawl(layout, CommandName.Push);
137
- this.androidCustomRowForwarder.forwardFromLayout(layout);
138
- const result = this.nativeCommandsSender.push(commandId, componentId, layout);
139
- return result;
140
- }
141
- pop(componentId, mergeOptions) {
142
- const commandId = this.uniqueIdProvider.generate(CommandName.Pop);
143
- this.optionsProcessor.processOptions(CommandName.Pop, mergeOptions);
144
- const result = this.nativeCommandsSender.pop(commandId, componentId, mergeOptions);
145
- this.commandsObserver.notify(CommandName.Pop, {
146
- commandId,
147
- componentId,
148
- mergeOptions
149
- });
150
- return result;
151
- }
152
- popTo(componentId, mergeOptions) {
153
- const commandId = this.uniqueIdProvider.generate(CommandName.PopTo);
154
- this.optionsProcessor.processOptions(CommandName.PopTo, mergeOptions);
155
- const result = this.nativeCommandsSender.popTo(commandId, componentId, mergeOptions);
156
- this.commandsObserver.notify(CommandName.PopTo, {
157
- commandId,
158
- componentId,
159
- mergeOptions
160
- });
161
- return result;
162
- }
163
- popToRoot(componentId, mergeOptions) {
164
- const commandId = this.uniqueIdProvider.generate(CommandName.PopToRoot);
165
- this.optionsProcessor.processOptions(CommandName.PopToRoot, mergeOptions);
166
- const result = this.nativeCommandsSender.popToRoot(commandId, componentId, mergeOptions);
167
- this.commandsObserver.notify(CommandName.PopToRoot, {
168
- commandId,
169
- componentId,
170
- mergeOptions
171
- });
172
- return result;
173
- }
174
- setStackRoot(componentId, children) {
175
- const input = map(cloneLayout(children), simpleApi => {
176
- this.optionsCrawler.crawl(simpleApi);
177
- const layoutProcessed = this.layoutProcessor.process(simpleApi, CommandName.SetStackRoot);
178
- const layout = this.layoutTreeParser.parse(layoutProcessed);
179
- return layout;
180
- });
181
- const commandId = this.uniqueIdProvider.generate(CommandName.SetStackRoot);
182
- this.commandsObserver.notify(CommandName.SetStackRoot, {
183
- commandId,
184
- componentId,
185
- layout: input
186
- });
187
- input.forEach(layoutNode => {
188
- this.layoutTreeCrawler.crawl(layoutNode, CommandName.SetStackRoot);
189
- });
190
- this.androidCustomRowForwarder.forwardFromLayouts(input);
191
- const result = this.nativeCommandsSender.setStackRoot(commandId, componentId, input);
192
- return result;
193
- }
194
- showOverlay(simpleApi) {
195
- const input = cloneLayout(simpleApi);
196
- this.optionsCrawler.crawl(input);
197
- const layoutProcessed = this.layoutProcessor.process(input, CommandName.ShowOverlay);
198
- const layout = this.layoutTreeParser.parse(layoutProcessed);
199
- const commandId = this.uniqueIdProvider.generate(CommandName.ShowOverlay);
200
- this.commandsObserver.notify(CommandName.ShowOverlay, {
201
- commandId,
202
- layout
203
- });
204
- this.layoutTreeCrawler.crawl(layout, CommandName.ShowOverlay);
205
- const result = this.nativeCommandsSender.showOverlay(commandId, layout);
206
- return result;
207
- }
208
- dismissOverlay(componentId) {
209
- const commandId = this.uniqueIdProvider.generate(CommandName.DismissOverlay);
210
- const result = this.nativeCommandsSender.dismissOverlay(commandId, componentId);
211
- this.commandsObserver.notify(CommandName.DismissOverlay, {
212
- commandId,
213
- componentId
214
- });
215
- return result;
216
- }
217
- dismissAllOverlays() {
218
- const commandId = this.uniqueIdProvider.generate(CommandName.DismissAllOverlays);
219
- const result = this.nativeCommandsSender.dismissAllOverlays(commandId);
220
- this.commandsObserver.notify(CommandName.DismissAllOverlays, {
221
- commandId
222
- });
223
- return result;
224
- }
225
- getLaunchArgs() {
226
- const commandId = this.uniqueIdProvider.generate(CommandName.GetLaunchArgs);
227
- const result = this.nativeCommandsSender.getLaunchArgs(commandId);
228
- this.commandsObserver.notify(CommandName.GetLaunchArgs, {
229
- commandId
230
- });
231
- return result;
232
- }
233
- }
234
- function cloneLayout(layout) {
235
- return cloneDeepWith(layout, (value, key) => {
236
- if (key === 'passProps' && typeof value === 'object' && value !== null) return {
237
- ...value
238
- };
239
- });
240
- }
241
- //# sourceMappingURL=Commands.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["cloneDeepWith","cloneDeep","map","CommandName","AndroidCustomRowForwarder","Commands","androidCustomRowForwarder","constructor","store","nativeCommandsSender","layoutTreeParser","layoutTreeCrawler","commandsObserver","uniqueIdProvider","optionsProcessor","layoutProcessor","optionsCrawler","setRoot","simpleApi","input","cloneLayout","crawl","root","processedRoot","process","SetRoot","parse","modals","modal","processedModal","overlays","overlay","processedOverlay","commandId","generate","notify","layout","forEach","modalLayout","overlayLayout","forwardFromLayouts","result","setDefaultOptions","options","processDefaultOptions","SetDefaultOptions","forwardFromOptions","mergeOptions","componentId","component","getComponentInstance","componentProps","getPropsForId","undefined","processOptions","MergeOptions","isMounted","console","warn","updateProps","props","callback","UpdateProps","showModal","layoutCloned","layoutProcessed","ShowModal","layoutNode","forwardFromLayout","dismissModal","DismissModal","dismissAllModals","DismissAllModals","push","Push","pop","Pop","popTo","PopTo","popToRoot","PopToRoot","setStackRoot","children","SetStackRoot","showOverlay","ShowOverlay","dismissOverlay","DismissOverlay","dismissAllOverlays","DismissAllOverlays","getLaunchArgs","GetLaunchArgs","value","key"],"sourceRoot":"../../../src","sources":["commands/Commands.ts"],"mappings":"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","ignoreList":[]}