@ohos-ports/react-native-navigation 8.9.0-beta.3 → 8.9.0-beta.5
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 +7 -20
- package/lib/cjs/Mock/Application.js +67 -0
- package/lib/cjs/Mock/ComponentProps.js +16 -0
- package/lib/cjs/Mock/Components/BottomTabs.js +50 -0
- package/lib/cjs/Mock/Components/ComponentScreen.js +135 -0
- package/lib/cjs/Mock/Components/LayoutComponent.js +85 -0
- package/lib/cjs/Mock/Components/Modals.js +56 -0
- package/lib/cjs/Mock/Components/NavigationButton.js +104 -0
- package/lib/cjs/Mock/Components/Overlays.js +57 -0
- package/lib/cjs/Mock/Components/SideMenu.js +69 -0
- package/lib/cjs/Mock/Components/Stack.js +52 -0
- package/lib/cjs/Mock/Components/TopBar.js +115 -0
- package/lib/cjs/Mock/Layouts/BottomTabsNode.js +60 -0
- package/lib/cjs/Mock/Layouts/ComponentNode.js +132 -0
- package/lib/cjs/Mock/Layouts/LayoutNodeFactory.js +59 -0
- package/lib/cjs/Mock/Layouts/Node.js +32 -0
- package/lib/cjs/Mock/Layouts/ParentNode.js +99 -0
- package/lib/cjs/Mock/Layouts/SideMenu.js +112 -0
- package/lib/cjs/Mock/Layouts/StackNode.js +42 -0
- package/lib/cjs/Mock/Stores/EventsStore.js +85 -0
- package/lib/{module → cjs}/Mock/Stores/LayoutStore.js +56 -24
- package/lib/cjs/Mock/actions/layoutActions.js +47 -0
- package/lib/cjs/Mock/connect.js +31 -0
- package/lib/cjs/Mock/constants.js +31 -0
- package/lib/cjs/Mock/index.js +48 -0
- package/lib/cjs/Mock/mocks/AppRegistryService.js +31 -0
- package/lib/cjs/Mock/mocks/NativeCommandsSender.js +181 -0
- package/lib/cjs/Mock/mocks/NativeEventsReceiver.js +146 -0
- package/lib/cjs/Navigation.js +259 -0
- package/lib/{module → cjs}/NavigationDelegate.js +33 -34
- package/lib/cjs/adapters/AndroidCustomRowForwarder.js +84 -0
- package/lib/cjs/adapters/AppRegistryService.js +33 -0
- package/lib/cjs/adapters/AssetResolver.js +33 -0
- package/lib/cjs/adapters/ColorService.js +33 -0
- package/lib/cjs/adapters/Constants.js +43 -0
- package/lib/{module → cjs}/adapters/NativeCommandsSender.js +39 -5
- package/lib/cjs/adapters/NativeEventsReceiver.js +99 -0
- package/lib/cjs/adapters/NativeEventsReceiver.mock.js +30 -0
- package/lib/cjs/adapters/NativeRNNTurboEventEmitter.js +27 -0
- package/lib/cjs/adapters/NativeRNNTurboModule.js +26 -0
- package/lib/cjs/adapters/TouchablePreview.js +137 -0
- package/lib/cjs/adapters/UniqueIdProvider.js +43 -0
- package/lib/cjs/commands/Commands.js +276 -0
- package/lib/cjs/commands/Deprecations.js +101 -0
- package/lib/cjs/commands/LayoutTreeCrawler.js +56 -0
- package/lib/cjs/commands/LayoutTreeParser.js +154 -0
- package/lib/cjs/commands/LayoutType.js +40 -0
- package/lib/cjs/commands/OptionsCrawler.js +106 -0
- package/lib/{module → cjs}/commands/OptionsProcessor.js +102 -67
- package/lib/{module → cjs}/components/ComponentRegistry.js +27 -3
- package/lib/cjs/components/ComponentWrapper.js +114 -0
- package/lib/cjs/components/Modal.js +159 -0
- package/lib/{module → cjs}/components/Store.js +27 -3
- package/lib/cjs/events/CommandsObserver.js +43 -0
- package/lib/cjs/events/ComponentEventsObserver.js +128 -0
- package/lib/{module → cjs}/events/EventsRegistry.js +27 -3
- package/lib/cjs/index.js +63 -0
- package/lib/cjs/interfaces/CommandName.js +46 -0
- package/lib/cjs/interfaces/ComponentEvents.js +1 -0
- package/lib/cjs/interfaces/EventSubscription.js +1 -0
- package/lib/cjs/interfaces/Events.js +1 -0
- package/lib/cjs/interfaces/Layout.js +16 -0
- package/lib/cjs/interfaces/NavigationComponent.js +62 -0
- package/lib/cjs/interfaces/NavigationComponentListener.js +16 -0
- package/lib/cjs/interfaces/NavigationComponentProps.js +1 -0
- package/lib/cjs/interfaces/NavigationFunctionComponent.js +16 -0
- package/lib/cjs/interfaces/Options.js +47 -0
- package/lib/cjs/interfaces/ProcessorSubscription.js +1 -0
- package/lib/cjs/interfaces/Processors.js +16 -0
- package/lib/cjs/linking/DeferredLinkQueue.js +66 -0
- package/lib/{module → cjs}/linking/LinkingHandler.js +40 -43
- package/lib/cjs/linking/ModalLayoutBuilder.js +59 -0
- package/lib/{module → cjs}/linking/RouteMatcher.js +31 -15
- package/lib/cjs/linking/URLParser.js +70 -0
- package/lib/cjs/linking/types.js +16 -0
- package/lib/cjs/processors/LayoutProcessor.js +39 -0
- package/lib/cjs/processors/LayoutProcessorsStore.js +42 -0
- package/lib/cjs/processors/OptionProcessorsStore.js +43 -0
- package/lib/cjs/types.js +1 -0
- package/package.json +4 -8
- package/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/statusbar/StatusBarPresenter.kt +0 -212
- package/lib/module/ARCHITECTURE.md +0 -331
- package/lib/module/Mock/Application.js +0 -33
- package/lib/module/Mock/Application.js.map +0 -1
- package/lib/module/Mock/ComponentProps.js +0 -4
- package/lib/module/Mock/ComponentProps.js.map +0 -1
- package/lib/module/Mock/Components/BottomTabs.js +0 -16
- package/lib/module/Mock/Components/BottomTabs.js.map +0 -1
- package/lib/module/Mock/Components/ComponentScreen.js +0 -101
- package/lib/module/Mock/Components/ComponentScreen.js.map +0 -1
- package/lib/module/Mock/Components/LayoutComponent.js +0 -50
- package/lib/module/Mock/Components/LayoutComponent.js.map +0 -1
- package/lib/module/Mock/Components/Modals.js +0 -22
- package/lib/module/Mock/Components/Modals.js.map +0 -1
- package/lib/module/Mock/Components/NavigationButton.js +0 -72
- package/lib/module/Mock/Components/NavigationButton.js.map +0 -1
- package/lib/module/Mock/Components/Overlays.js +0 -23
- package/lib/module/Mock/Components/Overlays.js.map +0 -1
- package/lib/module/Mock/Components/SideMenu.js +0 -29
- package/lib/module/Mock/Components/SideMenu.js.map +0 -1
- package/lib/module/Mock/Components/Stack.js +0 -18
- package/lib/module/Mock/Components/Stack.js.map +0 -1
- package/lib/module/Mock/Components/TopBar.js +0 -81
- package/lib/module/Mock/Components/TopBar.js.map +0 -1
- package/lib/module/Mock/Layouts/BottomTabsNode.js +0 -30
- package/lib/module/Mock/Layouts/BottomTabsNode.js.map +0 -1
- package/lib/module/Mock/Layouts/ComponentNode.js +0 -102
- package/lib/module/Mock/Layouts/ComponentNode.js.map +0 -1
- package/lib/module/Mock/Layouts/LayoutNodeFactory.js +0 -28
- package/lib/module/Mock/Layouts/LayoutNodeFactory.js.map +0 -1
- package/lib/module/Mock/Layouts/Node.js +0 -14
- package/lib/module/Mock/Layouts/Node.js.map +0 -1
- package/lib/module/Mock/Layouts/ParentNode.js +0 -66
- package/lib/module/Mock/Layouts/ParentNode.js.map +0 -1
- package/lib/module/Mock/Layouts/SideMenu.js +0 -72
- package/lib/module/Mock/Layouts/SideMenu.js.map +0 -1
- package/lib/module/Mock/Layouts/StackNode.js +0 -12
- package/lib/module/Mock/Layouts/StackNode.js.map +0 -1
- package/lib/module/Mock/Stores/EventsStore.js +0 -53
- package/lib/module/Mock/Stores/EventsStore.js.map +0 -1
- package/lib/module/Mock/Stores/LayoutStore.js.map +0 -1
- package/lib/module/Mock/actions/layoutActions.js +0 -19
- package/lib/module/Mock/actions/layoutActions.js.map +0 -1
- package/lib/module/Mock/connect.js +0 -8
- package/lib/module/Mock/connect.js.map +0 -1
- package/lib/module/Mock/constants.js +0 -5
- package/lib/module/Mock/constants.js.map +0 -1
- package/lib/module/Mock/index.js +0 -20
- package/lib/module/Mock/index.js.map +0 -1
- package/lib/module/Mock/mocks/AppRegistryService.js +0 -6
- package/lib/module/Mock/mocks/AppRegistryService.js.map +0 -1
- package/lib/module/Mock/mocks/NativeCommandsSender.js +0 -146
- package/lib/module/Mock/mocks/NativeCommandsSender.js.map +0 -1
- package/lib/module/Mock/mocks/NativeEventsReceiver.js +0 -103
- package/lib/module/Mock/mocks/NativeEventsReceiver.js.map +0 -1
- package/lib/module/Navigation.js +0 -250
- package/lib/module/Navigation.js.map +0 -1
- package/lib/module/NavigationDelegate.js.map +0 -1
- package/lib/module/adapters/AndroidCustomRowForwarder.js +0 -75
- package/lib/module/adapters/AndroidCustomRowForwarder.js.map +0 -1
- package/lib/module/adapters/AppRegistryService.js +0 -9
- package/lib/module/adapters/AppRegistryService.js.map +0 -1
- package/lib/module/adapters/AssetResolver.js +0 -9
- package/lib/module/adapters/AssetResolver.js.map +0 -1
- package/lib/module/adapters/ColorService.js +0 -9
- package/lib/module/adapters/ColorService.js.map +0 -1
- package/lib/module/adapters/Constants.js +0 -19
- package/lib/module/adapters/Constants.js.map +0 -1
- package/lib/module/adapters/NativeCommandsSender.js.map +0 -1
- package/lib/module/adapters/NativeEventsReceiver.js +0 -65
- package/lib/module/adapters/NativeEventsReceiver.js.map +0 -1
- package/lib/module/adapters/NativeEventsReceiver.mock.js +0 -6
- package/lib/module/adapters/NativeEventsReceiver.mock.js.map +0 -1
- package/lib/module/adapters/NativeRNNTurboEventEmitter.js +0 -7
- package/lib/module/adapters/NativeRNNTurboEventEmitter.js.map +0 -1
- package/lib/module/adapters/NativeRNNTurboModule.js +0 -6
- package/lib/module/adapters/NativeRNNTurboModule.js.map +0 -1
- package/lib/module/adapters/TouchablePreview.js +0 -115
- package/lib/module/adapters/TouchablePreview.js.map +0 -1
- package/lib/module/adapters/UniqueIdProvider.js +0 -9
- package/lib/module/adapters/UniqueIdProvider.js.map +0 -1
- package/lib/module/commands/Commands.js +0 -241
- package/lib/module/commands/Commands.js.map +0 -1
- package/lib/module/commands/Commands.test.js +0 -759
- package/lib/module/commands/Commands.test.js.map +0 -1
- package/lib/module/commands/Deprecations.js +0 -66
- package/lib/module/commands/Deprecations.js.map +0 -1
- package/lib/module/commands/LayoutTreeCrawler.js +0 -32
- package/lib/module/commands/LayoutTreeCrawler.js.map +0 -1
- package/lib/module/commands/LayoutTreeCrawler.test.js +0 -82
- package/lib/module/commands/LayoutTreeCrawler.test.js.map +0 -1
- package/lib/module/commands/LayoutTreeParser.js +0 -130
- package/lib/module/commands/LayoutTreeParser.js.map +0 -1
- package/lib/module/commands/LayoutTreeParser.test.js +0 -359
- package/lib/module/commands/LayoutTreeParser.test.js.map +0 -1
- package/lib/module/commands/LayoutType.js +0 -16
- package/lib/module/commands/LayoutType.js.map +0 -1
- package/lib/module/commands/LayoutType.test.js +0 -12
- package/lib/module/commands/LayoutType.test.js.map +0 -1
- package/lib/module/commands/OptionsCrawler.js +0 -72
- package/lib/module/commands/OptionsCrawler.js.map +0 -1
- package/lib/module/commands/OptionsCrawler.test.js +0 -351
- package/lib/module/commands/OptionsCrawler.test.js.map +0 -1
- package/lib/module/commands/OptionsProcessor.js.map +0 -1
- package/lib/module/commands/OptionsProcessor.test.js +0 -1234
- package/lib/module/commands/OptionsProcessor.test.js.map +0 -1
- package/lib/module/components/ComponentRegistry.js.map +0 -1
- package/lib/module/components/ComponentRegistry.test.js +0 -57
- package/lib/module/components/ComponentRegistry.test.js.map +0 -1
- package/lib/module/components/ComponentWrapper.js +0 -80
- package/lib/module/components/ComponentWrapper.js.map +0 -1
- package/lib/module/components/ComponentWrapper.test.js +0 -333
- package/lib/module/components/ComponentWrapper.test.js.map +0 -1
- package/lib/module/components/Modal.js +0 -125
- package/lib/module/components/Modal.js.map +0 -1
- package/lib/module/components/Store.js.map +0 -1
- package/lib/module/components/Store.test.js +0 -148
- package/lib/module/components/Store.test.js.map +0 -1
- package/lib/module/events/CommandsObserver.js +0 -19
- package/lib/module/events/CommandsObserver.js.map +0 -1
- package/lib/module/events/CommandsObserver.test.js +0 -43
- package/lib/module/events/CommandsObserver.test.js.map +0 -1
- package/lib/module/events/ComponentEventsObserver.js +0 -94
- package/lib/module/events/ComponentEventsObserver.js.map +0 -1
- package/lib/module/events/ComponentEventsObserver.test.js +0 -391
- package/lib/module/events/ComponentEventsObserver.test.js.map +0 -1
- package/lib/module/events/EventsRegistry.js.map +0 -1
- package/lib/module/events/EventsRegistry.test.js +0 -131
- package/lib/module/events/EventsRegistry.test.js.map +0 -1
- package/lib/module/index.js +0 -22
- package/lib/module/index.js.map +0 -1
- package/lib/module/interfaces/CommandName.js +0 -22
- package/lib/module/interfaces/CommandName.js.map +0 -1
- package/lib/module/interfaces/ComponentEvents.js +0 -2
- package/lib/module/interfaces/ComponentEvents.js.map +0 -1
- package/lib/module/interfaces/EventSubscription.js +0 -2
- package/lib/module/interfaces/EventSubscription.js.map +0 -1
- package/lib/module/interfaces/Events.js +0 -2
- package/lib/module/interfaces/Events.js.map +0 -1
- package/lib/module/interfaces/Layout.js +0 -4
- package/lib/module/interfaces/Layout.js.map +0 -1
- package/lib/module/interfaces/NavigationComponent.js +0 -21
- package/lib/module/interfaces/NavigationComponent.js.map +0 -1
- package/lib/module/interfaces/NavigationComponentListener.js +0 -4
- package/lib/module/interfaces/NavigationComponentListener.js.map +0 -1
- package/lib/module/interfaces/NavigationComponentProps.js +0 -2
- package/lib/module/interfaces/NavigationComponentProps.js.map +0 -1
- package/lib/module/interfaces/NavigationFunctionComponent.js +0 -4
- package/lib/module/interfaces/NavigationFunctionComponent.js.map +0 -1
- package/lib/module/interfaces/Options.js +0 -47
- package/lib/module/interfaces/Options.js.map +0 -1
- package/lib/module/interfaces/ProcessorSubscription.js +0 -2
- package/lib/module/interfaces/ProcessorSubscription.js.map +0 -1
- package/lib/module/interfaces/Processors.js +0 -4
- package/lib/module/interfaces/Processors.js.map +0 -1
- package/lib/module/linking/DeferredLinkQueue.js +0 -52
- package/lib/module/linking/DeferredLinkQueue.js.map +0 -1
- package/lib/module/linking/DeferredLinkQueue.test.js +0 -54
- package/lib/module/linking/DeferredLinkQueue.test.js.map +0 -1
- package/lib/module/linking/LinkingHandler.js.map +0 -1
- package/lib/module/linking/LinkingHandler.test.js +0 -384
- package/lib/module/linking/LinkingHandler.test.js.map +0 -1
- package/lib/module/linking/ModalLayoutBuilder.js +0 -56
- package/lib/module/linking/ModalLayoutBuilder.js.map +0 -1
- package/lib/module/linking/ModalLayoutBuilder.test.js +0 -154
- package/lib/module/linking/ModalLayoutBuilder.test.js.map +0 -1
- package/lib/module/linking/RouteMatcher.js.map +0 -1
- package/lib/module/linking/RouteMatcher.test.js +0 -164
- package/lib/module/linking/RouteMatcher.test.js.map +0 -1
- package/lib/module/linking/URLParser.js +0 -56
- package/lib/module/linking/URLParser.js.map +0 -1
- package/lib/module/linking/URLParser.test.js +0 -100
- package/lib/module/linking/URLParser.test.js.map +0 -1
- package/lib/module/linking/types.js +0 -4
- package/lib/module/linking/types.js.map +0 -1
- package/lib/module/package.json +0 -1
- package/lib/module/processors/LayoutProcessor.js +0 -15
- package/lib/module/processors/LayoutProcessor.js.map +0 -1
- package/lib/module/processors/LayoutProcessor.test.js +0 -53
- package/lib/module/processors/LayoutProcessor.test.js.map +0 -1
- package/lib/module/processors/LayoutProcessorsStore.js +0 -18
- package/lib/module/processors/LayoutProcessorsStore.js.map +0 -1
- package/lib/module/processors/LayoutProcessorsStore.test.js +0 -31
- package/lib/module/processors/LayoutProcessorsStore.test.js.map +0 -1
- package/lib/module/processors/OptionProcessorsStore.js +0 -19
- package/lib/module/processors/OptionProcessorsStore.js.map +0 -1
- package/lib/module/processors/OptionProcessorsStore.test.js +0 -31
- package/lib/module/processors/OptionProcessorsStore.test.js.map +0 -1
- package/lib/module/types.js +0 -2
- package/lib/module/types.js.map +0 -1
- package/scripts/setup-esm-shim.js +0 -53
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var SideMenu_exports = {};
|
|
30
|
+
__export(SideMenu_exports, {
|
|
31
|
+
SideMenuCenter: () => SideMenuCenter,
|
|
32
|
+
SideMenuLeft: () => SideMenuLeft,
|
|
33
|
+
SideMenuRight: () => SideMenuRight,
|
|
34
|
+
SideMenuRoot: () => SideMenuRoot
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(SideMenu_exports);
|
|
37
|
+
var import_react = __toESM(require("react"), 1);
|
|
38
|
+
var import_connect = require("../connect.js");
|
|
39
|
+
var import_LayoutComponent = require("./LayoutComponent.js");
|
|
40
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
41
|
+
const SideMenuRoot = (0, import_connect.connect)(class extends import_react.Component {
|
|
42
|
+
render() {
|
|
43
|
+
const children = this.props.layoutNode.children;
|
|
44
|
+
return children.map((child) => {
|
|
45
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_LayoutComponent.LayoutComponent, {
|
|
46
|
+
layoutNode: child
|
|
47
|
+
}, child.nodeId);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
const SideMenuComponent = (0, import_connect.connect)(class extends import_react.Component {
|
|
52
|
+
render() {
|
|
53
|
+
const children = this.props.layoutNode.children;
|
|
54
|
+
const component = children[0];
|
|
55
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_LayoutComponent.LayoutComponent, {
|
|
56
|
+
layoutNode: component
|
|
57
|
+
}, component.nodeId);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
const SideMenuLeft = SideMenuComponent;
|
|
61
|
+
const SideMenuCenter = SideMenuComponent;
|
|
62
|
+
const SideMenuRight = SideMenuComponent;
|
|
63
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
64
|
+
0 && (module.exports = {
|
|
65
|
+
SideMenuCenter,
|
|
66
|
+
SideMenuLeft,
|
|
67
|
+
SideMenuRight,
|
|
68
|
+
SideMenuRoot
|
|
69
|
+
});
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var Stack_exports = {};
|
|
30
|
+
__export(Stack_exports, {
|
|
31
|
+
Stack: () => Stack
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(Stack_exports);
|
|
34
|
+
var import_react = __toESM(require("react"), 1);
|
|
35
|
+
var import_LayoutComponent = require("./LayoutComponent.js");
|
|
36
|
+
var import_connect = require("../connect.js");
|
|
37
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
38
|
+
const Stack = (0, import_connect.connect)(class extends import_react.Component {
|
|
39
|
+
render() {
|
|
40
|
+
const children = this.props.layoutNode.children;
|
|
41
|
+
return children.map((child, i) => {
|
|
42
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_LayoutComponent.LayoutComponent, {
|
|
43
|
+
layoutNode: child,
|
|
44
|
+
backButton: i > 0
|
|
45
|
+
}, child.nodeId);
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
50
|
+
0 && (module.exports = {
|
|
51
|
+
Stack
|
|
52
|
+
});
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var TopBar_exports = {};
|
|
30
|
+
__export(TopBar_exports, {
|
|
31
|
+
TopBar: () => TopBar
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(TopBar_exports);
|
|
34
|
+
var import_react = __toESM(require("react"), 1);
|
|
35
|
+
var import_react_native = require("@ohos-ports/react-native");
|
|
36
|
+
var import_react_native_navigation = require("react-native-navigation");
|
|
37
|
+
var import_LayoutStore = require("../Stores/LayoutStore.js");
|
|
38
|
+
var import_NavigationButton = require("./NavigationButton.js");
|
|
39
|
+
var import_EventsStore = require("../Stores/EventsStore.js");
|
|
40
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
41
|
+
const DEFAULT_BACK_BUTTON_ID = "RNN.back";
|
|
42
|
+
const TopBar = class extends import_react.Component {
|
|
43
|
+
constructor(props) {
|
|
44
|
+
super(props);
|
|
45
|
+
}
|
|
46
|
+
render() {
|
|
47
|
+
const topBarOptions = this.props.topBarOptions;
|
|
48
|
+
const topbarTestId = topBarOptions?.testID;
|
|
49
|
+
const titleTestId = topbarTestId ? {
|
|
50
|
+
testID: `${topbarTestId}.title`
|
|
51
|
+
} : {};
|
|
52
|
+
const subtitleTestId = topbarTestId ? {
|
|
53
|
+
testID: `${topbarTestId}.subtitle`
|
|
54
|
+
} : {};
|
|
55
|
+
if (topBarOptions?.visible === false) return null;
|
|
56
|
+
else {
|
|
57
|
+
const component = topBarOptions?.title?.component;
|
|
58
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_react_native.View, {
|
|
59
|
+
testID: topbarTestId,
|
|
60
|
+
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.Text, {
|
|
61
|
+
...titleTestId,
|
|
62
|
+
children: topBarOptions?.title?.text
|
|
63
|
+
}), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.Text, {
|
|
64
|
+
...subtitleTestId,
|
|
65
|
+
children: topBarOptions?.subtitle?.text
|
|
66
|
+
}), this.renderButtons(topBarOptions?.leftButtons), this.renderButtons(topBarOptions?.rightButtons), component && //@ts-ignore
|
|
67
|
+
this.renderComponent(component.componentId, component.name), this.shouldRenderBackButton(this.props.layoutNode) && this.renderBackButton()]
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
shouldRenderBackButton(layoutNode) {
|
|
72
|
+
const backButtonVisible = layoutNode.resolveOptions().topBar?.backButton?.visible;
|
|
73
|
+
return layoutNode.getStack().children.length > 1 && backButtonVisible !== false;
|
|
74
|
+
}
|
|
75
|
+
renderButtons(buttons = []) {
|
|
76
|
+
return buttons.map((button, i) => {
|
|
77
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_NavigationButton.NavigationButton, {
|
|
78
|
+
button,
|
|
79
|
+
componentId: this.props.layoutNode.nodeId
|
|
80
|
+
}, button.id || i);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
renderBackButton() {
|
|
84
|
+
const backButtonOptions = this.props.backButtonOptions;
|
|
85
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.Button, {
|
|
86
|
+
testID: backButtonOptions?.testID,
|
|
87
|
+
title: backButtonOptions && backButtonOptions.title ? backButtonOptions.title : "",
|
|
88
|
+
onPress: () => {
|
|
89
|
+
if (backButtonOptions?.popStackOnPress === false) {
|
|
90
|
+
import_EventsStore.events.invokeNavigationButtonPressed({
|
|
91
|
+
buttonId: backButtonOptions?.id || DEFAULT_BACK_BUTTON_ID,
|
|
92
|
+
componentId: this.props.layoutNode.nodeId
|
|
93
|
+
});
|
|
94
|
+
} else {
|
|
95
|
+
import_LayoutStore.LayoutStore.pop(this.props.layoutNode.nodeId);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
renderComponent(id, name, testID) {
|
|
101
|
+
const Component2 = import_react_native_navigation.Navigation.mock.store.getComponentClassForName(name)();
|
|
102
|
+
const props = import_react_native_navigation.Navigation.mock.store.getPropsForId(id);
|
|
103
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_native.View, {
|
|
104
|
+
testID,
|
|
105
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component2, {
|
|
106
|
+
...props,
|
|
107
|
+
componentId: id
|
|
108
|
+
})
|
|
109
|
+
}, id);
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
113
|
+
0 && (module.exports = {
|
|
114
|
+
TopBar
|
|
115
|
+
});
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var BottomTabsNode_exports = {};
|
|
30
|
+
__export(BottomTabsNode_exports, {
|
|
31
|
+
default: () => BottomTabsNode
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(BottomTabsNode_exports);
|
|
34
|
+
var import_lodash = __toESM(require("lodash"), 1);
|
|
35
|
+
var import_layoutActions = require("../actions/layoutActions.js");
|
|
36
|
+
var import_ParentNode = __toESM(require("./ParentNode.js"), 1);
|
|
37
|
+
class BottomTabsNode extends import_ParentNode.default {
|
|
38
|
+
constructor(layout, parentNode) {
|
|
39
|
+
super(layout, "BottomTabs", parentNode);
|
|
40
|
+
this.selectedIndex = layout.data?.options?.bottomTabs?.currentTabIndex || 0;
|
|
41
|
+
}
|
|
42
|
+
mergeOptions(_options) {
|
|
43
|
+
super.mergeOptions(_options);
|
|
44
|
+
const {
|
|
45
|
+
options
|
|
46
|
+
} = this.data;
|
|
47
|
+
if (options.bottomTabs?.currentTabIndex) {
|
|
48
|
+
this.selectedIndex = options.bottomTabs?.currentTabIndex;
|
|
49
|
+
(0, import_layoutActions.switchTabByIndex)(this, this.selectedIndex);
|
|
50
|
+
}
|
|
51
|
+
if (options.bottomTabs?.currentTabId) {
|
|
52
|
+
const index = import_lodash.default.findIndex(this.children, (child) => child.nodeId === options?.bottomTabs?.currentTabId);
|
|
53
|
+
if (index !== -1) this.selectedIndex = index;
|
|
54
|
+
(0, import_layoutActions.switchTabByIndex)(this, this.selectedIndex);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
getVisibleLayout() {
|
|
58
|
+
return this.children[this.selectedIndex].getVisibleLayout();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var ComponentNode_exports = {};
|
|
30
|
+
__export(ComponentNode_exports, {
|
|
31
|
+
default: () => ComponentNode
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(ComponentNode_exports);
|
|
34
|
+
var import_lodash = __toESM(require("lodash"), 1);
|
|
35
|
+
var import_EventsStore = require("../Stores/EventsStore.js");
|
|
36
|
+
var import_ParentNode = __toESM(require("./ParentNode.js"), 1);
|
|
37
|
+
class ComponentNode extends import_ParentNode.default {
|
|
38
|
+
componentDidMountOnce = false;
|
|
39
|
+
componentDidAppearPending = false;
|
|
40
|
+
constructor(layout, parentNode) {
|
|
41
|
+
super(layout, "Component", parentNode);
|
|
42
|
+
}
|
|
43
|
+
componentDidMount() {
|
|
44
|
+
this.componentDidMountOnce = true;
|
|
45
|
+
this.componentDidAppearPending && setImmediate(() => this.componentDidAppear());
|
|
46
|
+
}
|
|
47
|
+
componentDidAppear() {
|
|
48
|
+
if (this.componentDidMountOnce) {
|
|
49
|
+
import_EventsStore.events.invokeComponentWillAppear({
|
|
50
|
+
componentName: this.data.name,
|
|
51
|
+
componentId: this.nodeId,
|
|
52
|
+
componentType: "Component"
|
|
53
|
+
});
|
|
54
|
+
import_EventsStore.events.invokeComponentDidAppear({
|
|
55
|
+
componentName: this.data.name,
|
|
56
|
+
componentId: this.nodeId,
|
|
57
|
+
componentType: "Component"
|
|
58
|
+
});
|
|
59
|
+
this.buttonsDidAppear(import_lodash.default.concat(this.data.options.topBar?.rightButtons || [], this.data.options.topBar?.leftButtons || []));
|
|
60
|
+
this.titleChanged(void 0, this.data.options.topBar?.title);
|
|
61
|
+
} else {
|
|
62
|
+
this.componentDidAppearPending = true;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
componentDidDisappear() {
|
|
66
|
+
import_EventsStore.events.invokeComponentDidDisappear({
|
|
67
|
+
componentName: this.data.name,
|
|
68
|
+
componentId: this.nodeId,
|
|
69
|
+
componentType: "Component"
|
|
70
|
+
});
|
|
71
|
+
this.buttonsDidDisappear(import_lodash.default.concat(this.data.options.topBar?.rightButtons || [], this.data.options.topBar?.leftButtons || []));
|
|
72
|
+
this.titleChanged(this.data.options.topBar?.title);
|
|
73
|
+
}
|
|
74
|
+
titleChanged(oldTitle, newTitle) {
|
|
75
|
+
if (oldTitle && oldTitle.component) {
|
|
76
|
+
import_EventsStore.events.invokeComponentDidDisappear({
|
|
77
|
+
componentName: oldTitle.component.name,
|
|
78
|
+
componentId: oldTitle.component.componentId,
|
|
79
|
+
componentType: "TopBarTitle"
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
if (newTitle && newTitle.component) {
|
|
83
|
+
import_EventsStore.events.invokeComponentWillAppear({
|
|
84
|
+
componentName: newTitle.component.name,
|
|
85
|
+
componentId: newTitle.component.componentId,
|
|
86
|
+
componentType: "TopBarTitle"
|
|
87
|
+
});
|
|
88
|
+
import_EventsStore.events.invokeComponentDidAppear({
|
|
89
|
+
componentName: newTitle.component.name,
|
|
90
|
+
componentId: newTitle.component.componentId,
|
|
91
|
+
componentType: "TopBarTitle"
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
buttonsChanged(oldButtons, newButtons) {
|
|
96
|
+
this.buttonsDidDisappear(oldButtons);
|
|
97
|
+
this.buttonsDidAppear(newButtons);
|
|
98
|
+
}
|
|
99
|
+
buttonsDidAppear(buttons = []) {
|
|
100
|
+
buttons.forEach((button) => {
|
|
101
|
+
if (button.component) {
|
|
102
|
+
import_EventsStore.events.invokeComponentWillAppear({
|
|
103
|
+
componentName: button.component.name,
|
|
104
|
+
// @ts-ignore
|
|
105
|
+
componentId: button.component.componentId,
|
|
106
|
+
componentType: "TopBarButton"
|
|
107
|
+
});
|
|
108
|
+
import_EventsStore.events.invokeComponentDidAppear({
|
|
109
|
+
componentName: button.component.name,
|
|
110
|
+
// @ts-ignore
|
|
111
|
+
componentId: button.component.componentId,
|
|
112
|
+
componentType: "TopBarButton"
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
buttonsDidDisappear(buttons = []) {
|
|
118
|
+
buttons.forEach((button) => {
|
|
119
|
+
if (button.component) {
|
|
120
|
+
import_EventsStore.events.invokeComponentDidDisappear({
|
|
121
|
+
componentName: button.component.name,
|
|
122
|
+
// @ts-ignore
|
|
123
|
+
componentId: button.component.componentId,
|
|
124
|
+
componentType: "TopBarButton"
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
getVisibleLayout() {
|
|
130
|
+
return this;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var LayoutNodeFactory_exports = {};
|
|
30
|
+
__export(LayoutNodeFactory_exports, {
|
|
31
|
+
default: () => LayoutNodeFactory
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(LayoutNodeFactory_exports);
|
|
34
|
+
var import_BottomTabsNode = __toESM(require("./BottomTabsNode.js"), 1);
|
|
35
|
+
var import_ComponentNode = __toESM(require("./ComponentNode.js"), 1);
|
|
36
|
+
var import_StackNode = __toESM(require("./StackNode.js"), 1);
|
|
37
|
+
var import_SideMenu = __toESM(require("./SideMenu.js"), 1);
|
|
38
|
+
class LayoutNodeFactory {
|
|
39
|
+
static create(layout, parentNode) {
|
|
40
|
+
switch (layout.type) {
|
|
41
|
+
case "Component":
|
|
42
|
+
return new import_ComponentNode.default(layout, parentNode);
|
|
43
|
+
case "Stack":
|
|
44
|
+
return new import_StackNode.default(layout, parentNode);
|
|
45
|
+
case "SideMenuRoot":
|
|
46
|
+
return new import_SideMenu.default(layout, parentNode);
|
|
47
|
+
case "SideMenuLeft":
|
|
48
|
+
return new import_SideMenu.SideMenuLeftNode(layout, parentNode);
|
|
49
|
+
case "SideMenuCenter":
|
|
50
|
+
return new import_SideMenu.SideMenuCenterNode(layout, parentNode);
|
|
51
|
+
case "SideMenuRight":
|
|
52
|
+
return new import_SideMenu.SideMenuRightNode(layout, parentNode);
|
|
53
|
+
default:
|
|
54
|
+
// TODO Undo
|
|
55
|
+
case "BottomTabs":
|
|
56
|
+
return new import_BottomTabsNode.default(layout, parentNode);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
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 Node_exports = {};
|
|
20
|
+
__export(Node_exports, {
|
|
21
|
+
default: () => Node
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(Node_exports);
|
|
24
|
+
class Node {
|
|
25
|
+
// options: Options;
|
|
26
|
+
constructor(layout, type, parentNode) {
|
|
27
|
+
this.nodeId = layout.id;
|
|
28
|
+
this.data = layout.data;
|
|
29
|
+
this.parentNode = parentNode;
|
|
30
|
+
this.type = type;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var ParentNode_exports = {};
|
|
30
|
+
__export(ParentNode_exports, {
|
|
31
|
+
default: () => ParentNode
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(ParentNode_exports);
|
|
34
|
+
var import_lodash = __toESM(require("lodash"), 1);
|
|
35
|
+
var import_LayoutStore = require("../Stores/LayoutStore.js");
|
|
36
|
+
var import_LayoutNodeFactory = __toESM(require("./LayoutNodeFactory.js"), 1);
|
|
37
|
+
var import_Node = __toESM(require("./Node.js"), 1);
|
|
38
|
+
class ParentNode extends import_Node.default {
|
|
39
|
+
constructor(layout, type, parentNode) {
|
|
40
|
+
super(layout, type, parentNode);
|
|
41
|
+
this.children = layout.children.map((childLayout) => import_LayoutNodeFactory.default.create(childLayout, this));
|
|
42
|
+
}
|
|
43
|
+
componentDidMount() {
|
|
44
|
+
}
|
|
45
|
+
componentDidAppear() {
|
|
46
|
+
this.getVisibleLayout().componentDidAppear();
|
|
47
|
+
}
|
|
48
|
+
componentDidDisappear() {
|
|
49
|
+
this.getVisibleLayout().componentDidDisappear();
|
|
50
|
+
}
|
|
51
|
+
getVisibleLayout() {
|
|
52
|
+
return this.children[this.children.length - 1].getVisibleLayout();
|
|
53
|
+
}
|
|
54
|
+
getTopParent() {
|
|
55
|
+
if (this.parentNode) return this.parentNode.getTopParent();
|
|
56
|
+
return this;
|
|
57
|
+
}
|
|
58
|
+
applyOptions(_options) {
|
|
59
|
+
this.parentNode?.applyOptions(_options);
|
|
60
|
+
}
|
|
61
|
+
mergeOptions(options) {
|
|
62
|
+
this.data.options = import_lodash.default.mergeWith(this.data.options, options, (objValue, srcValue, key) => {
|
|
63
|
+
if (import_lodash.default.isArray(objValue)) {
|
|
64
|
+
if (key === "rightButtons" || key === "leftButtons") {
|
|
65
|
+
this.buttonsChanged(objValue, srcValue);
|
|
66
|
+
}
|
|
67
|
+
return srcValue;
|
|
68
|
+
}
|
|
69
|
+
if (key === "title" && srcValue.component) {
|
|
70
|
+
this.titleChanged(objValue, srcValue);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
this.parentNode?.mergeOptions(options);
|
|
74
|
+
}
|
|
75
|
+
buttonsChanged(_oldButtons, _newButtons) {
|
|
76
|
+
}
|
|
77
|
+
titleChanged(_oldComponent, _newComponent) {
|
|
78
|
+
}
|
|
79
|
+
resolveOptions() {
|
|
80
|
+
const options = import_lodash.default.merge(import_lodash.default.cloneDeep(this.data.options), this.getVisibleLayout().data.options);
|
|
81
|
+
return import_lodash.default.merge(import_lodash.default.cloneDeep(import_LayoutStore.LayoutStore.getDefaultOptions()), options);
|
|
82
|
+
}
|
|
83
|
+
getStack() {
|
|
84
|
+
if (this.type === "Stack") {
|
|
85
|
+
return this;
|
|
86
|
+
} else if (this.parentNode) {
|
|
87
|
+
return this.parentNode.getStack();
|
|
88
|
+
}
|
|
89
|
+
return void 0;
|
|
90
|
+
}
|
|
91
|
+
getBottomTabs() {
|
|
92
|
+
if (this.type === "BottomTabs") {
|
|
93
|
+
return this;
|
|
94
|
+
} else if (this.parentNode) {
|
|
95
|
+
return this.parentNode.getBottomTabs();
|
|
96
|
+
}
|
|
97
|
+
return void 0;
|
|
98
|
+
}
|
|
99
|
+
}
|