From 1c863a2a7c7029ab24563a58b3e57dc0e62a63fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Vonheiden?= Date: Wed, 21 Jan 2026 12:19:49 +0100 Subject: [PATCH 1/4] Move `Mock` directory into `src` and update imports accordingly --- package.json | 8 ++++++-- {Mock => src/Mock}/Application.tsx | 0 {Mock => src/Mock}/ComponentProps.tsx | 0 {Mock => src/Mock}/Components/BottomTabs.tsx | 0 {Mock => src/Mock}/Components/ComponentScreen.tsx | 2 +- {Mock => src/Mock}/Components/LayoutComponent.tsx | 0 {Mock => src/Mock}/Components/Modals.tsx | 0 {Mock => src/Mock}/Components/NavigationButton.tsx | 2 +- {Mock => src/Mock}/Components/Overlays.tsx | 0 {Mock => src/Mock}/Components/SideMenu.tsx | 0 {Mock => src/Mock}/Components/Stack.tsx | 0 {Mock => src/Mock}/Components/TopBar.tsx | 2 +- {Mock => src/Mock}/Layouts/BottomTabsNode.ts | 2 +- {Mock => src/Mock}/Layouts/ComponentNode.ts | 2 +- {Mock => src/Mock}/Layouts/LayoutNodeFactory.ts | 0 {Mock => src/Mock}/Layouts/Node.ts | 2 +- {Mock => src/Mock}/Layouts/ParentNode.ts | 4 ++-- {Mock => src/Mock}/Layouts/SideMenu.ts | 2 +- {Mock => src/Mock}/Layouts/StackNode.ts | 0 {Mock => src/Mock}/Stores/EventsStore.ts | 6 +++--- {Mock => src/Mock}/Stores/LayoutStore.ts | 2 +- {Mock => src/Mock}/actions/layoutActions.ts | 0 {Mock => src/Mock}/connect.ts | 0 {Mock => src/Mock}/constants.ts | 0 {Mock => src/Mock}/index.ts | 2 +- {Mock => src/Mock}/mocks/AppRegistryService.ts | 0 {Mock => src/Mock}/mocks/NativeCommandsSender.tsx | 6 +++--- {Mock => src/Mock}/mocks/NativeEventsReceiver.ts | 4 ++-- tsconfig.json | 3 +-- tsconfig.mocks.json | 7 ------- 30 files changed, 26 insertions(+), 30 deletions(-) rename {Mock => src/Mock}/Application.tsx (100%) rename {Mock => src/Mock}/ComponentProps.tsx (100%) rename {Mock => src/Mock}/Components/BottomTabs.tsx (100%) rename {Mock => src/Mock}/Components/ComponentScreen.tsx (98%) rename {Mock => src/Mock}/Components/LayoutComponent.tsx (100%) rename {Mock => src/Mock}/Components/Modals.tsx (100%) rename {Mock => src/Mock}/Components/NavigationButton.tsx (96%) rename {Mock => src/Mock}/Components/Overlays.tsx (100%) rename {Mock => src/Mock}/Components/SideMenu.tsx (100%) rename {Mock => src/Mock}/Components/Stack.tsx (100%) rename {Mock => src/Mock}/Components/TopBar.tsx (98%) rename {Mock => src/Mock}/Layouts/BottomTabsNode.ts (96%) rename {Mock => src/Mock}/Layouts/ComponentNode.ts (98%) rename {Mock => src/Mock}/Layouts/LayoutNodeFactory.ts (100%) rename {Mock => src/Mock}/Layouts/Node.ts (94%) rename {Mock => src/Mock}/Layouts/ParentNode.ts (95%) rename {Mock => src/Mock}/Layouts/SideMenu.ts (98%) rename {Mock => src/Mock}/Layouts/StackNode.ts (100%) rename {Mock => src/Mock}/Stores/EventsStore.ts (96%) rename {Mock => src/Mock}/Stores/LayoutStore.ts (99%) rename {Mock => src/Mock}/actions/layoutActions.ts (100%) rename {Mock => src/Mock}/connect.ts (100%) rename {Mock => src/Mock}/constants.ts (100%) rename {Mock => src/Mock}/index.ts (89%) rename {Mock => src/Mock}/mocks/AppRegistryService.ts (100%) rename {Mock => src/Mock}/mocks/NativeCommandsSender.tsx (96%) rename {Mock => src/Mock}/mocks/NativeEventsReceiver.ts (98%) delete mode 100644 tsconfig.mocks.json diff --git a/package.json b/package.json index 4b465c6fdb5..efa65ae825b 100644 --- a/package.json +++ b/package.json @@ -20,15 +20,19 @@ "rnn-link": "./autolink/postlink/run.js" }, "main": "./lib/module/index.js", - "types": "./lib/typescript/src/index.d.ts", + "types": "./lib/typescript/index.d.ts", "react-native": "./src/index.ts", "exports": { ".": { "react-native": "./src/index.ts", "source": "./src/index.ts", - "types": "./lib/typescript/src/index.d.ts", + "types": "./lib/typescript/index.d.ts", "default": "./lib/module/index.js" }, + "./Mock": { + "default": "./lib/module/Mock/index.js", + "types": "./lib/typescript/Mock/index.d.ts" + }, "./package.json": "./package.json" }, "files": [ diff --git a/Mock/Application.tsx b/src/Mock/Application.tsx similarity index 100% rename from Mock/Application.tsx rename to src/Mock/Application.tsx diff --git a/Mock/ComponentProps.tsx b/src/Mock/ComponentProps.tsx similarity index 100% rename from Mock/ComponentProps.tsx rename to src/Mock/ComponentProps.tsx diff --git a/Mock/Components/BottomTabs.tsx b/src/Mock/Components/BottomTabs.tsx similarity index 100% rename from Mock/Components/BottomTabs.tsx rename to src/Mock/Components/BottomTabs.tsx diff --git a/Mock/Components/ComponentScreen.tsx b/src/Mock/Components/ComponentScreen.tsx similarity index 98% rename from Mock/Components/ComponentScreen.tsx rename to src/Mock/Components/ComponentScreen.tsx index 4c3d1568ffa..38f97d9090b 100644 --- a/Mock/Components/ComponentScreen.tsx +++ b/src/Mock/Components/ComponentScreen.tsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import { View, Text, TouchableOpacity, Image, ImageURISource } from 'react-native'; -import { Navigation, ImageResource } from 'src'; +import { Navigation, ImageResource } from 'react-native-navigation'; import { ComponentProps } from '../ComponentProps'; import { VISIBLE_SCREEN_TEST_ID } from '../constants'; import { LayoutStore } from '../Stores/LayoutStore'; diff --git a/Mock/Components/LayoutComponent.tsx b/src/Mock/Components/LayoutComponent.tsx similarity index 100% rename from Mock/Components/LayoutComponent.tsx rename to src/Mock/Components/LayoutComponent.tsx diff --git a/Mock/Components/Modals.tsx b/src/Mock/Components/Modals.tsx similarity index 100% rename from Mock/Components/Modals.tsx rename to src/Mock/Components/Modals.tsx diff --git a/Mock/Components/NavigationButton.tsx b/src/Mock/Components/NavigationButton.tsx similarity index 96% rename from Mock/Components/NavigationButton.tsx rename to src/Mock/Components/NavigationButton.tsx index d28e3876bb1..3446f255eef 100644 --- a/Mock/Components/NavigationButton.tsx +++ b/src/Mock/Components/NavigationButton.tsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import { Button, TouchableOpacity } from 'react-native'; -import { Navigation, OptionsTopBarButton } from 'src'; +import { Navigation, OptionsTopBarButton } from 'react-native-navigation'; import { events } from '../Stores/EventsStore'; interface ButtonProps { diff --git a/Mock/Components/Overlays.tsx b/src/Mock/Components/Overlays.tsx similarity index 100% rename from Mock/Components/Overlays.tsx rename to src/Mock/Components/Overlays.tsx diff --git a/Mock/Components/SideMenu.tsx b/src/Mock/Components/SideMenu.tsx similarity index 100% rename from Mock/Components/SideMenu.tsx rename to src/Mock/Components/SideMenu.tsx diff --git a/Mock/Components/Stack.tsx b/src/Mock/Components/Stack.tsx similarity index 100% rename from Mock/Components/Stack.tsx rename to src/Mock/Components/Stack.tsx diff --git a/Mock/Components/TopBar.tsx b/src/Mock/Components/TopBar.tsx similarity index 98% rename from Mock/Components/TopBar.tsx rename to src/Mock/Components/TopBar.tsx index 1159ee9506c..9e6a2ccdc4a 100644 --- a/Mock/Components/TopBar.tsx +++ b/src/Mock/Components/TopBar.tsx @@ -5,7 +5,7 @@ import { OptionsTopBar, OptionsTopBarBackButton, OptionsTopBarButton, -} from 'src'; +} from 'react-native-navigation'; import ParentNode from '../Layouts/ParentNode'; import { LayoutStore } from '../Stores/LayoutStore'; import { NavigationButton } from './NavigationButton'; diff --git a/Mock/Layouts/BottomTabsNode.ts b/src/Mock/Layouts/BottomTabsNode.ts similarity index 96% rename from Mock/Layouts/BottomTabsNode.ts rename to src/Mock/Layouts/BottomTabsNode.ts index d048820dd7b..90a3691d71a 100644 --- a/Mock/Layouts/BottomTabsNode.ts +++ b/src/Mock/Layouts/BottomTabsNode.ts @@ -1,5 +1,5 @@ import _ from 'lodash'; -import { Options } from '../../src'; +import { Options } from '../../index'; import { switchTabByIndex } from '../actions/layoutActions'; import ParentNode from './ParentNode'; diff --git a/Mock/Layouts/ComponentNode.ts b/src/Mock/Layouts/ComponentNode.ts similarity index 98% rename from Mock/Layouts/ComponentNode.ts rename to src/Mock/Layouts/ComponentNode.ts index c5083816baa..f81106b2dfc 100644 --- a/Mock/Layouts/ComponentNode.ts +++ b/src/Mock/Layouts/ComponentNode.ts @@ -1,5 +1,5 @@ import _ from 'lodash'; -import { OptionsTopBarButton } from '../../src'; +import { OptionsTopBarButton } from '../../index'; import { events } from '../Stores/EventsStore'; import ParentNode from './ParentNode'; diff --git a/Mock/Layouts/LayoutNodeFactory.ts b/src/Mock/Layouts/LayoutNodeFactory.ts similarity index 100% rename from Mock/Layouts/LayoutNodeFactory.ts rename to src/Mock/Layouts/LayoutNodeFactory.ts diff --git a/Mock/Layouts/Node.ts b/src/Mock/Layouts/Node.ts similarity index 94% rename from Mock/Layouts/Node.ts rename to src/Mock/Layouts/Node.ts index e41576e7212..a651138e636 100644 --- a/Mock/Layouts/Node.ts +++ b/src/Mock/Layouts/Node.ts @@ -1,4 +1,4 @@ -import { Options } from '../../src'; +import { Options } from '../../index'; import ParentNode from './ParentNode'; interface Data { diff --git a/Mock/Layouts/ParentNode.ts b/src/Mock/Layouts/ParentNode.ts similarity index 95% rename from Mock/Layouts/ParentNode.ts rename to src/Mock/Layouts/ParentNode.ts index 7ba1015b70f..a166f481c29 100644 --- a/Mock/Layouts/ParentNode.ts +++ b/src/Mock/Layouts/ParentNode.ts @@ -1,6 +1,6 @@ import _ from 'lodash'; -import { OptionsTopBarButton } from '../../src/interfaces/Options'; -import { Options } from '../../src'; +import { OptionsTopBarButton } from '../../interfaces/Options'; +import { Options } from '../../index'; import { LayoutStore } from '../Stores/LayoutStore'; import ComponentNode from './ComponentNode'; import LayoutNodeFactory from './LayoutNodeFactory'; diff --git a/Mock/Layouts/SideMenu.ts b/src/Mock/Layouts/SideMenu.ts similarity index 98% rename from Mock/Layouts/SideMenu.ts rename to src/Mock/Layouts/SideMenu.ts index c8dfc55403e..c10c3bc7d18 100644 --- a/Mock/Layouts/SideMenu.ts +++ b/src/Mock/Layouts/SideMenu.ts @@ -1,6 +1,6 @@ import ParentNode from './ParentNode'; import ComponentNode from './ComponentNode'; -import { Options } from '../../src'; +import { Options } from '../../index'; import * as layoutActions from '../actions/layoutActions'; import { NodeType } from './Node'; diff --git a/Mock/Layouts/StackNode.ts b/src/Mock/Layouts/StackNode.ts similarity index 100% rename from Mock/Layouts/StackNode.ts rename to src/Mock/Layouts/StackNode.ts diff --git a/Mock/Stores/EventsStore.ts b/src/Mock/Stores/EventsStore.ts similarity index 96% rename from Mock/Stores/EventsStore.ts rename to src/Mock/Stores/EventsStore.ts index 1fb3f965778..c063ce3f485 100644 --- a/Mock/Stores/EventsStore.ts +++ b/src/Mock/Stores/EventsStore.ts @@ -3,9 +3,9 @@ import { ComponentWillAppearEvent, ModalDismissedEvent, ScreenPoppedEvent, -} from '../../src/interfaces/ComponentEvents'; -import { ComponentDidAppearEvent, NavigationButtonPressedEvent } from '../../src'; -import { BottomTabPressedEvent, CommandCompletedEvent } from '../../src/interfaces/Events'; +} from '../../interfaces/ComponentEvents'; +import { ComponentDidAppearEvent, NavigationButtonPressedEvent } from '../../index'; +import { BottomTabPressedEvent, CommandCompletedEvent } from '../../interfaces/Events'; export const events = { navigationButtonPressed: [(_event: NavigationButtonPressedEvent) => {}], diff --git a/Mock/Stores/LayoutStore.ts b/src/Mock/Stores/LayoutStore.ts similarity index 99% rename from Mock/Stores/LayoutStore.ts rename to src/Mock/Stores/LayoutStore.ts index 4a25e66cb16..5b645671a2e 100644 --- a/Mock/Stores/LayoutStore.ts +++ b/src/Mock/Stores/LayoutStore.ts @@ -4,7 +4,7 @@ import ParentNode from '../Layouts/ParentNode'; import LayoutNodeFactory from '../Layouts/LayoutNodeFactory'; import { SideMenuNode } from '../Layouts/SideMenu'; import StackNode from '../Layouts/StackNode'; -import { Options } from '../../src/interfaces/Options'; +import { Options } from '../../interfaces/Options'; const remx = require('remx'); diff --git a/Mock/actions/layoutActions.ts b/src/Mock/actions/layoutActions.ts similarity index 100% rename from Mock/actions/layoutActions.ts rename to src/Mock/actions/layoutActions.ts diff --git a/Mock/connect.ts b/src/Mock/connect.ts similarity index 100% rename from Mock/connect.ts rename to src/Mock/connect.ts diff --git a/Mock/constants.ts b/src/Mock/constants.ts similarity index 100% rename from Mock/constants.ts rename to src/Mock/constants.ts diff --git a/Mock/index.ts b/src/Mock/index.ts similarity index 89% rename from Mock/index.ts rename to src/Mock/index.ts index 840c57797a7..30e553ea08d 100644 --- a/Mock/index.ts +++ b/src/Mock/index.ts @@ -6,7 +6,7 @@ export function mockNativeComponents() { const { NativeCommandsSender } = require('./mocks/NativeCommandsSender'); const { NativeEventsReceiver } = require('./mocks/NativeEventsReceiver'); const { AppRegistryService } = require('./mocks/AppRegistryService'); - const { Navigation } = require('src'); + const { Navigation } = require('react-native-navigation'); Navigation.mockNativeComponents( new NativeCommandsSender(), diff --git a/Mock/mocks/AppRegistryService.ts b/src/Mock/mocks/AppRegistryService.ts similarity index 100% rename from Mock/mocks/AppRegistryService.ts rename to src/Mock/mocks/AppRegistryService.ts diff --git a/Mock/mocks/NativeCommandsSender.tsx b/src/Mock/mocks/NativeCommandsSender.tsx similarity index 96% rename from Mock/mocks/NativeCommandsSender.tsx rename to src/Mock/mocks/NativeCommandsSender.tsx index c3dd5745e40..5cbfc152e4c 100644 --- a/Mock/mocks/NativeCommandsSender.tsx +++ b/src/Mock/mocks/NativeCommandsSender.tsx @@ -1,11 +1,11 @@ import { LayoutStore } from '../Stores/LayoutStore'; import LayoutNodeFactory from '../Layouts/LayoutNodeFactory'; -import { LayoutNode } from '../../src/commands/LayoutTreeCrawler'; +import { LayoutNode } from '../../commands/LayoutTreeCrawler'; import { events } from '../Stores/EventsStore'; import _ from 'lodash'; import ComponentNode from '../Layouts/ComponentNode'; -import { Constants } from '../../src/adapters/Constants'; -import { CommandName } from '../../src/interfaces/CommandName'; +import { Constants } from '../../adapters/Constants'; +import { CommandName } from '../../interfaces/CommandName'; export class NativeCommandsSender { constructor() {} diff --git a/Mock/mocks/NativeEventsReceiver.ts b/src/Mock/mocks/NativeEventsReceiver.ts similarity index 98% rename from Mock/mocks/NativeEventsReceiver.ts rename to src/Mock/mocks/NativeEventsReceiver.ts index 1323893f56e..411e3a89bf5 100644 --- a/Mock/mocks/NativeEventsReceiver.ts +++ b/src/Mock/mocks/NativeEventsReceiver.ts @@ -11,13 +11,13 @@ import { ModalDismissedEvent, ScreenPoppedEvent, ModalAttemptedToDismissEvent, -} from '../../src/interfaces/ComponentEvents'; +} from '../../interfaces/ComponentEvents'; import { CommandCompletedEvent, BottomTabSelectedEvent, BottomTabLongPressedEvent, BottomTabPressedEvent, -} from '../../src/interfaces/Events'; +} from '../../interfaces/Events'; import { events } from '../Stores/EventsStore'; export class NativeEventsReceiver { diff --git a/tsconfig.json b/tsconfig.json index bf66fefab3f..a0960167542 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -17,7 +17,6 @@ } }, "include": [ - "./src/**/*", "./playground/**/*", - "Mock" + "./src/**/*", "./playground/**/*" ] } diff --git a/tsconfig.mocks.json b/tsconfig.mocks.json deleted file mode 100644 index bde9c18d472..00000000000 --- a/tsconfig.mocks.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "extends": "./tsconfig.build.json", - "compilerOptions": { - "outDir": "./" - }, - "include": ["Mock.ts"] -} From 43956ebe978503643d953b733813908d4e3695e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Vonheiden?= Date: Wed, 21 Jan 2026 13:42:09 +0100 Subject: [PATCH 2/4] Remove unused `Mock` file and update related dependencies in `jest.config.js` --- Mock.ts | 1 - jest.config.js | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) delete mode 100644 Mock.ts diff --git a/Mock.ts b/Mock.ts deleted file mode 100644 index 6ef042d0b13..00000000000 --- a/Mock.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './Mock'; diff --git a/jest.config.js b/jest.config.js index e41a3e24f97..a75e2534fa6 100644 --- a/jest.config.js +++ b/jest.config.js @@ -8,7 +8,6 @@ module.exports = { }, roots: [ '/src/', - '/Mock/', '/playground/src/', '/integration/', '/scripts/', @@ -21,7 +20,7 @@ module.exports = { '^react-native$': '/node_modules/react-native', '^react-native-gesture-handler$': '/node_modules/react-native-gesture-handler', '^react-native-webview$': '/__mocks__/react-native-webview.js', - 'react-native-navigation/Mock': '/Mock/index', + 'react-native-navigation/Mock': '/src/Mock/index', 'react-native-navigation': '/src', '^src$': '/src', '\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$': From befc4541c4aa6706a3760ba4ac40232cccc1f877 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Vonheiden?= Date: Mon, 26 Jan 2026 08:21:25 +0100 Subject: [PATCH 3/4] Update package.json to add `react-native` and `source` mappings for `./Mock` --- package.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/package.json b/package.json index efa65ae825b..270d52e7137 100644 --- a/package.json +++ b/package.json @@ -30,6 +30,8 @@ "default": "./lib/module/index.js" }, "./Mock": { + "react-native": "./src/Mock/index.ts", + "source": "./src/Mock/index.ts", "default": "./lib/module/Mock/index.js", "types": "./lib/typescript/Mock/index.d.ts" }, From a54594fcb25c0c239e0ea411a035fac0f6ba5f50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Vonheiden?= Date: Mon, 26 Jan 2026 09:26:29 +0100 Subject: [PATCH 4/4] Reorder and update export mappings in package.json for consistency --- package.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 270d52e7137..cfa907935cb 100644 --- a/package.json +++ b/package.json @@ -24,16 +24,16 @@ "react-native": "./src/index.ts", "exports": { ".": { - "react-native": "./src/index.ts", - "source": "./src/index.ts", "types": "./lib/typescript/index.d.ts", - "default": "./lib/module/index.js" + "default": "./lib/module/index.js", + "source": "./src/index.ts", + "react-native": "./src/index.ts" }, "./Mock": { - "react-native": "./src/Mock/index.ts", - "source": "./src/Mock/index.ts", + "types": "./lib/typescript/Mock/index.d.ts", "default": "./lib/module/Mock/index.js", - "types": "./lib/typescript/Mock/index.d.ts" + "source": "./src/Mock/index.ts", + "react-native": "./src/Mock/index.ts" }, "./package.json": "./package.json" },