react-native-xenon 1.0.2 → 2.0.0
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/LICENSE +1 -1
- package/README.md +9 -9
- package/lib/module/assets/icons/close.png +0 -0
- package/lib/module/assets/icons/search.png +0 -0
- package/lib/module/contexts/MainContext.js +3 -7
- package/lib/module/contexts/MainContext.js.map +1 -1
- package/lib/module/contexts/index.js +1 -11
- package/lib/module/contexts/index.js.map +1 -1
- package/lib/module/core/constants.js +1 -5
- package/lib/module/core/constants.js.map +1 -1
- package/lib/module/core/refs.js +10 -12
- package/lib/module/core/refs.js.map +1 -1
- package/lib/module/core/utils.js +49 -50
- package/lib/module/core/utils.js.map +1 -1
- package/lib/module/hooks/index.js +2 -18
- package/lib/module/hooks/index.js.map +1 -1
- package/lib/module/hooks/useConsoleInterceptor.js +10 -14
- package/lib/module/hooks/useConsoleInterceptor.js.map +1 -1
- package/lib/module/hooks/useNetworkInterceptor.js +30 -29
- package/lib/module/hooks/useNetworkInterceptor.js.map +1 -1
- package/lib/module/index.js +1 -11
- package/lib/module/index.js.map +1 -1
- package/lib/module/interceptors/ConsoleInterceptor.js +7 -10
- package/lib/module/interceptors/ConsoleInterceptor.js.map +1 -1
- package/lib/module/interceptors/FetchInterceptor.js +12 -16
- package/lib/module/interceptors/FetchInterceptor.js.map +1 -1
- package/lib/module/interceptors/HttpInterceptor.js +2 -7
- package/lib/module/interceptors/HttpInterceptor.js.map +1 -1
- package/lib/module/interceptors/Interceptor.js +4 -7
- package/lib/module/interceptors/Interceptor.js.map +1 -1
- package/lib/module/interceptors/NetworkInterceptor.js +2 -8
- package/lib/module/interceptors/NetworkInterceptor.js.map +1 -1
- package/lib/module/interceptors/WebSocketInterceptor.js +20 -24
- package/lib/module/interceptors/WebSocketInterceptor.js.map +1 -1
- package/lib/module/interceptors/XHRInterceptor.js +8 -12
- package/lib/module/interceptors/XHRInterceptor.js.map +1 -1
- package/lib/module/interceptors/index.js +4 -32
- package/lib/module/interceptors/index.js.map +1 -1
- package/lib/module/theme/colors.js +1 -5
- package/lib/module/theme/colors.js.map +1 -1
- package/lib/module/theme/icons.js +4 -6
- package/lib/module/theme/icons.js.map +1 -1
- package/lib/module/types/common.js +2 -6
- package/lib/module/types/common.js.map +1 -1
- package/lib/module/types/http.js +1 -3
- package/lib/module/types/index.js +4 -47
- package/lib/module/types/index.js.map +1 -1
- package/lib/module/types/websocket.js +1 -3
- package/lib/module/ui/Xenon.js +63 -63
- package/lib/module/ui/Xenon.js.map +1 -1
- package/lib/module/ui/components/bubble/Bubble.js +30 -37
- package/lib/module/ui/components/bubble/Bubble.js.map +1 -1
- package/lib/module/ui/components/common/Divider.js +7 -12
- package/lib/module/ui/components/common/Divider.js.map +1 -1
- package/lib/module/ui/components/common/Icon.js +6 -11
- package/lib/module/ui/components/common/Icon.js.map +1 -1
- package/lib/module/ui/components/common/IndexedStack.js +8 -12
- package/lib/module/ui/components/common/IndexedStack.js.map +1 -1
- package/lib/module/ui/components/common/SafeArea.js +15 -0
- package/lib/module/ui/components/common/SafeArea.js.map +1 -0
- package/lib/module/ui/components/common/ShareableText.js +20 -0
- package/lib/module/ui/components/common/ShareableText.js.map +1 -0
- package/lib/module/ui/components/common/Touchable.js +6 -12
- package/lib/module/ui/components/common/Touchable.js.map +1 -1
- package/lib/module/ui/components/details/LogMessageDetails.js +19 -21
- package/lib/module/ui/components/details/LogMessageDetails.js.map +1 -1
- package/lib/module/ui/components/details/NetworkRequestDetails.js +71 -58
- package/lib/module/ui/components/details/NetworkRequestDetails.js.map +1 -1
- package/lib/module/ui/components/headers/ConsoleHeader.js +10 -15
- package/lib/module/ui/components/headers/ConsoleHeader.js.map +1 -1
- package/lib/module/ui/components/headers/DebuggerHeader.js +36 -36
- package/lib/module/ui/components/headers/DebuggerHeader.js.map +1 -1
- package/lib/module/ui/components/headers/Header.js +15 -22
- package/lib/module/ui/components/headers/Header.js.map +1 -1
- package/lib/module/ui/components/headers/HeaderComponents.js +32 -39
- package/lib/module/ui/components/headers/HeaderComponents.js.map +1 -1
- package/lib/module/ui/components/headers/NetworkHeader.js +32 -52
- package/lib/module/ui/components/headers/NetworkHeader.js.map +1 -1
- package/lib/module/ui/components/index.js +5 -32
- package/lib/module/ui/components/index.js.map +1 -1
- package/lib/module/ui/components/items/ConsolePanelItem.js +12 -17
- package/lib/module/ui/components/items/ConsolePanelItem.js.map +1 -1
- package/lib/module/ui/components/items/DebuggerHeaderItem.js +14 -19
- package/lib/module/ui/components/items/DebuggerHeaderItem.js.map +1 -1
- package/lib/module/ui/components/items/NetworkPanelItem.js +33 -38
- package/lib/module/ui/components/items/NetworkPanelItem.js.map +1 -1
- package/lib/module/ui/components/items/NetworkRequestDetailsItem.js +44 -23
- package/lib/module/ui/components/items/NetworkRequestDetailsItem.js.map +1 -1
- package/lib/module/ui/components/panels/ConsolePanel.js +30 -26
- package/lib/module/ui/components/panels/ConsolePanel.js.map +1 -1
- package/lib/module/ui/components/panels/NetworkPanel.js +30 -28
- package/lib/module/ui/components/panels/NetworkPanel.js.map +1 -1
- package/lib/module/ui/components/panels/Panel.js +12 -19
- package/lib/module/ui/components/panels/Panel.js.map +1 -1
- package/lib/module/ui/components/search-bar/SearchBar.js +132 -0
- package/lib/module/ui/components/search-bar/SearchBar.js.map +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/contexts/MainContext.d.ts.map +1 -0
- package/lib/typescript/src/contexts/index.d.ts.map +1 -0
- package/lib/typescript/src/core/constants.d.ts.map +1 -0
- package/lib/typescript/{commonjs/src → src}/core/refs.d.ts +7 -4
- package/lib/typescript/src/core/refs.d.ts.map +1 -0
- package/lib/typescript/{module/src → src}/core/utils.d.ts +5 -3
- package/lib/typescript/src/core/utils.d.ts.map +1 -0
- package/lib/typescript/src/hooks/index.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useConsoleInterceptor.d.ts.map +1 -0
- package/lib/typescript/{module/src → src}/hooks/useNetworkInterceptor.d.ts +2 -1
- package/lib/typescript/src/hooks/useNetworkInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/ConsoleInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/FetchInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/HttpInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/Interceptor.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/NetworkInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/WebSocketInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/XHRInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/interceptors/index.d.ts.map +1 -0
- package/lib/typescript/src/theme/colors.d.ts.map +1 -0
- package/lib/typescript/{commonjs/src → src}/theme/icons.d.ts +2 -0
- package/lib/typescript/src/theme/icons.d.ts.map +1 -0
- package/lib/typescript/{commonjs/src → src}/types/common.d.ts +1 -0
- package/lib/typescript/src/types/common.d.ts.map +1 -0
- package/lib/typescript/src/types/console.d.ts.map +1 -0
- package/lib/typescript/src/types/http.d.ts.map +1 -0
- package/lib/typescript/src/types/index.d.ts.map +1 -0
- package/lib/typescript/src/types/websocket.d.ts.map +1 -0
- package/lib/typescript/src/ui/Xenon.d.ts +61 -0
- package/lib/typescript/src/ui/Xenon.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/bubble/Bubble.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/common/Divider.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/common/Icon.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/common/IndexedStack.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/common/SafeArea.d.ts +5 -0
- package/lib/typescript/src/ui/components/common/SafeArea.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/common/ShareableText.d.ts +7 -0
- package/lib/typescript/src/ui/components/common/ShareableText.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/common/Touchable.d.ts +6 -0
- package/lib/typescript/src/ui/components/common/Touchable.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/details/LogMessageDetails.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/details/NetworkRequestDetails.d.ts +6 -0
- package/lib/typescript/src/ui/components/details/NetworkRequestDetails.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/headers/ConsoleHeader.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/headers/DebuggerHeader.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/headers/Header.d.ts.map +1 -0
- package/lib/typescript/{commonjs/src → src}/ui/components/headers/HeaderComponents.d.ts +1 -1
- package/lib/typescript/src/ui/components/headers/HeaderComponents.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/headers/NetworkHeader.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/index.d.ts +6 -0
- package/lib/typescript/src/ui/components/index.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/items/ConsolePanelItem.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/items/DebuggerHeaderItem.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/items/NetworkPanelItem.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/items/NetworkRequestDetailsItem.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/panels/ConsolePanel.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/panels/NetworkPanel.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/panels/Panel.d.ts.map +1 -0
- package/lib/typescript/src/ui/components/search-bar/SearchBar.d.ts +6 -0
- package/lib/typescript/src/ui/components/search-bar/SearchBar.d.ts.map +1 -0
- package/package.json +42 -86
- package/src/assets/icons/close.png +0 -0
- package/src/assets/icons/search.png +0 -0
- package/src/core/refs.ts +3 -0
- package/src/core/utils.ts +32 -8
- package/src/hooks/useNetworkInterceptor.ts +13 -2
- package/src/interceptors/FetchInterceptor.ts +1 -1
- package/src/theme/icons.ts +2 -0
- package/src/types/common.ts +1 -0
- package/src/ui/Xenon.tsx +62 -16
- package/src/ui/components/bubble/Bubble.tsx +2 -2
- package/src/ui/components/common/SafeArea.tsx +10 -0
- package/src/ui/components/common/ShareableText.tsx +21 -0
- package/src/ui/components/common/Touchable.tsx +4 -14
- package/src/ui/components/details/LogMessageDetails.tsx +3 -0
- package/src/ui/components/details/NetworkRequestDetails.tsx +42 -34
- package/src/ui/components/headers/ConsoleHeader.tsx +1 -1
- package/src/ui/components/headers/DebuggerHeader.tsx +8 -1
- package/src/ui/components/headers/HeaderComponents.tsx +2 -2
- package/src/ui/components/headers/NetworkHeader.tsx +14 -26
- package/src/ui/components/index.ts +4 -3
- package/src/ui/components/items/NetworkRequestDetailsItem.tsx +45 -18
- package/src/ui/components/panels/ConsolePanel.tsx +18 -2
- package/src/ui/components/panels/NetworkPanel.tsx +15 -1
- package/src/ui/components/search-bar/SearchBar.tsx +129 -0
- package/lib/commonjs/assets/icons/arrow-left.png +0 -0
- package/lib/commonjs/assets/icons/beautify.png +0 -0
- package/lib/commonjs/assets/icons/bug.png +0 -0
- package/lib/commonjs/assets/icons/delete.png +0 -0
- package/lib/commonjs/assets/icons/hide.png +0 -0
- package/lib/commonjs/assets/icons/move.png +0 -0
- package/lib/commonjs/assets/icons/record.png +0 -0
- package/lib/commonjs/assets/icons/share.png +0 -0
- package/lib/commonjs/contexts/MainContext.js +0 -10
- package/lib/commonjs/contexts/MainContext.js.map +0 -1
- package/lib/commonjs/contexts/index.js +0 -14
- package/lib/commonjs/contexts/index.js.map +0 -1
- package/lib/commonjs/core/constants.js +0 -8
- package/lib/commonjs/core/constants.js.map +0 -1
- package/lib/commonjs/core/global.d.js +0 -2
- package/lib/commonjs/core/global.d.js.map +0 -1
- package/lib/commonjs/core/refs.js +0 -33
- package/lib/commonjs/core/refs.js.map +0 -1
- package/lib/commonjs/core/utils.js +0 -138
- package/lib/commonjs/core/utils.js.map +0 -1
- package/lib/commonjs/hooks/index.js +0 -21
- package/lib/commonjs/hooks/index.js.map +0 -1
- package/lib/commonjs/hooks/useConsoleInterceptor.js +0 -51
- package/lib/commonjs/hooks/useConsoleInterceptor.js.map +0 -1
- package/lib/commonjs/hooks/useNetworkInterceptor.js +0 -171
- package/lib/commonjs/hooks/useNetworkInterceptor.js.map +0 -1
- package/lib/commonjs/index.js +0 -14
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/interceptors/ConsoleInterceptor.js +0 -88
- package/lib/commonjs/interceptors/ConsoleInterceptor.js.map +0 -1
- package/lib/commonjs/interceptors/FetchInterceptor.js +0 -109
- package/lib/commonjs/interceptors/FetchInterceptor.js.map +0 -1
- package/lib/commonjs/interceptors/HttpInterceptor.js +0 -18
- package/lib/commonjs/interceptors/HttpInterceptor.js.map +0 -1
- package/lib/commonjs/interceptors/Interceptor.js +0 -23
- package/lib/commonjs/interceptors/Interceptor.js.map +0 -1
- package/lib/commonjs/interceptors/NetworkInterceptor.js +0 -24
- package/lib/commonjs/interceptors/NetworkInterceptor.js.map +0 -1
- package/lib/commonjs/interceptors/WebSocketInterceptor.js +0 -101
- package/lib/commonjs/interceptors/WebSocketInterceptor.js.map +0 -1
- package/lib/commonjs/interceptors/XHRInterceptor.js +0 -70
- package/lib/commonjs/interceptors/XHRInterceptor.js.map +0 -1
- package/lib/commonjs/interceptors/index.js +0 -35
- package/lib/commonjs/interceptors/index.js.map +0 -1
- package/lib/commonjs/theme/colors.js +0 -20
- package/lib/commonjs/theme/colors.js.map +0 -1
- package/lib/commonjs/theme/icons.js +0 -18
- package/lib/commonjs/theme/icons.js.map +0 -1
- package/lib/commonjs/types/common.js +0 -18
- package/lib/commonjs/types/common.js.map +0 -1
- package/lib/commonjs/types/console.js +0 -2
- package/lib/commonjs/types/console.js.map +0 -1
- package/lib/commonjs/types/http.js +0 -6
- package/lib/commonjs/types/http.js.map +0 -1
- package/lib/commonjs/types/index.js +0 -50
- package/lib/commonjs/types/index.js.map +0 -1
- package/lib/commonjs/types/websocket.js +0 -6
- package/lib/commonjs/types/websocket.js.map +0 -1
- package/lib/commonjs/ui/Xenon.js +0 -141
- package/lib/commonjs/ui/Xenon.js.map +0 -1
- package/lib/commonjs/ui/components/bubble/Bubble.js +0 -126
- package/lib/commonjs/ui/components/bubble/Bubble.js.map +0 -1
- package/lib/commonjs/ui/components/common/Divider.js +0 -21
- package/lib/commonjs/ui/components/common/Divider.js.map +0 -1
- package/lib/commonjs/ui/components/common/Icon.js +0 -25
- package/lib/commonjs/ui/components/common/Icon.js.map +0 -1
- package/lib/commonjs/ui/components/common/IndexedStack.js +0 -46
- package/lib/commonjs/ui/components/common/IndexedStack.js.map +0 -1
- package/lib/commonjs/ui/components/common/Touchable.js +0 -22
- package/lib/commonjs/ui/components/common/Touchable.js.map +0 -1
- package/lib/commonjs/ui/components/details/LogMessageDetails.js +0 -45
- package/lib/commonjs/ui/components/details/LogMessageDetails.js.map +0 -1
- package/lib/commonjs/ui/components/details/NetworkRequestDetails.js +0 -163
- package/lib/commonjs/ui/components/details/NetworkRequestDetails.js.map +0 -1
- package/lib/commonjs/ui/components/headers/ConsoleHeader.js +0 -30
- package/lib/commonjs/ui/components/headers/ConsoleHeader.js.map +0 -1
- package/lib/commonjs/ui/components/headers/DebuggerHeader.js +0 -76
- package/lib/commonjs/ui/components/headers/DebuggerHeader.js.map +0 -1
- package/lib/commonjs/ui/components/headers/Header.js +0 -34
- package/lib/commonjs/ui/components/headers/Header.js.map +0 -1
- package/lib/commonjs/ui/components/headers/HeaderComponents.js +0 -111
- package/lib/commonjs/ui/components/headers/HeaderComponents.js.map +0 -1
- package/lib/commonjs/ui/components/headers/NetworkHeader.js +0 -97
- package/lib/commonjs/ui/components/headers/NetworkHeader.js.map +0 -1
- package/lib/commonjs/ui/components/index.js +0 -35
- package/lib/commonjs/ui/components/index.js.map +0 -1
- package/lib/commonjs/ui/components/items/ConsolePanelItem.js +0 -41
- package/lib/commonjs/ui/components/items/ConsolePanelItem.js.map +0 -1
- package/lib/commonjs/ui/components/items/DebuggerHeaderItem.js +0 -60
- package/lib/commonjs/ui/components/items/DebuggerHeaderItem.js.map +0 -1
- package/lib/commonjs/ui/components/items/NetworkPanelItem.js +0 -129
- package/lib/commonjs/ui/components/items/NetworkPanelItem.js.map +0 -1
- package/lib/commonjs/ui/components/items/NetworkRequestDetailsItem.js +0 -45
- package/lib/commonjs/ui/components/items/NetworkRequestDetailsItem.js.map +0 -1
- package/lib/commonjs/ui/components/panels/ConsolePanel.js +0 -69
- package/lib/commonjs/ui/components/panels/ConsolePanel.js.map +0 -1
- package/lib/commonjs/ui/components/panels/NetworkPanel.js +0 -69
- package/lib/commonjs/ui/components/panels/NetworkPanel.js.map +0 -1
- package/lib/commonjs/ui/components/panels/Panel.js +0 -25
- package/lib/commonjs/ui/components/panels/Panel.js.map +0 -1
- package/lib/typescript/commonjs/package.json +0 -1
- package/lib/typescript/commonjs/src/contexts/MainContext.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/contexts/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/core/constants.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/core/refs.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/core/utils.d.ts +0 -38
- package/lib/typescript/commonjs/src/core/utils.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/hooks/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/hooks/useConsoleInterceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/hooks/useNetworkInterceptor.d.ts +0 -12
- package/lib/typescript/commonjs/src/hooks/useNetworkInterceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/interceptors/ConsoleInterceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/interceptors/FetchInterceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/interceptors/HttpInterceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/interceptors/Interceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/interceptors/NetworkInterceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/interceptors/WebSocketInterceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/interceptors/XHRInterceptor.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/interceptors/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/theme/colors.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/theme/icons.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types/common.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types/console.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types/http.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types/websocket.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/Xenon.d.ts +0 -21
- package/lib/typescript/commonjs/src/ui/Xenon.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/bubble/Bubble.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/common/Divider.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/common/Icon.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/common/IndexedStack.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/common/Touchable.d.ts +0 -10
- package/lib/typescript/commonjs/src/ui/components/common/Touchable.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/details/LogMessageDetails.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/details/NetworkRequestDetails.d.ts +0 -6
- package/lib/typescript/commonjs/src/ui/components/details/NetworkRequestDetails.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/headers/ConsoleHeader.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/headers/DebuggerHeader.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/headers/Header.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/headers/HeaderComponents.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/headers/NetworkHeader.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/index.d.ts +0 -5
- package/lib/typescript/commonjs/src/ui/components/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/items/ConsolePanelItem.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/items/DebuggerHeaderItem.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/items/NetworkPanelItem.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/items/NetworkRequestDetailsItem.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/panels/ConsolePanel.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/panels/NetworkPanel.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/ui/components/panels/Panel.d.ts.map +0 -1
- package/lib/typescript/module/src/contexts/MainContext.d.ts +0 -12
- package/lib/typescript/module/src/contexts/MainContext.d.ts.map +0 -1
- package/lib/typescript/module/src/contexts/index.d.ts +0 -2
- package/lib/typescript/module/src/contexts/index.d.ts.map +0 -1
- package/lib/typescript/module/src/core/constants.d.ts +0 -2
- package/lib/typescript/module/src/core/constants.d.ts.map +0 -1
- package/lib/typescript/module/src/core/refs.d.ts +0 -24
- package/lib/typescript/module/src/core/refs.d.ts.map +0 -1
- package/lib/typescript/module/src/core/utils.d.ts.map +0 -1
- package/lib/typescript/module/src/hooks/index.d.ts +0 -3
- package/lib/typescript/module/src/hooks/index.d.ts.map +0 -1
- package/lib/typescript/module/src/hooks/useConsoleInterceptor.d.ts +0 -13
- package/lib/typescript/module/src/hooks/useConsoleInterceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/hooks/useNetworkInterceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/index.d.ts +0 -2
- package/lib/typescript/module/src/index.d.ts.map +0 -1
- package/lib/typescript/module/src/interceptors/ConsoleInterceptor.d.ts +0 -8
- package/lib/typescript/module/src/interceptors/ConsoleInterceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/interceptors/FetchInterceptor.d.ts +0 -6
- package/lib/typescript/module/src/interceptors/FetchInterceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/interceptors/HttpInterceptor.d.ts +0 -6
- package/lib/typescript/module/src/interceptors/HttpInterceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/interceptors/Interceptor.d.ts +0 -10
- package/lib/typescript/module/src/interceptors/Interceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/interceptors/NetworkInterceptor.d.ts +0 -10
- package/lib/typescript/module/src/interceptors/NetworkInterceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/interceptors/WebSocketInterceptor.d.ts +0 -13
- package/lib/typescript/module/src/interceptors/WebSocketInterceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/interceptors/XHRInterceptor.d.ts +0 -6
- package/lib/typescript/module/src/interceptors/XHRInterceptor.d.ts.map +0 -1
- package/lib/typescript/module/src/interceptors/index.d.ts +0 -5
- package/lib/typescript/module/src/interceptors/index.d.ts.map +0 -1
- package/lib/typescript/module/src/theme/colors.d.ts +0 -14
- package/lib/typescript/module/src/theme/colors.d.ts.map +0 -1
- package/lib/typescript/module/src/theme/icons.d.ts +0 -12
- package/lib/typescript/module/src/theme/icons.d.ts.map +0 -1
- package/lib/typescript/module/src/types/common.d.ts +0 -33
- package/lib/typescript/module/src/types/common.d.ts.map +0 -1
- package/lib/typescript/module/src/types/console.d.ts +0 -8
- package/lib/typescript/module/src/types/console.d.ts.map +0 -1
- package/lib/typescript/module/src/types/http.d.ts +0 -21
- package/lib/typescript/module/src/types/http.d.ts.map +0 -1
- package/lib/typescript/module/src/types/index.d.ts +0 -5
- package/lib/typescript/module/src/types/index.d.ts.map +0 -1
- package/lib/typescript/module/src/types/websocket.d.ts +0 -30
- package/lib/typescript/module/src/types/websocket.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/Xenon.d.ts +0 -21
- package/lib/typescript/module/src/ui/Xenon.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/bubble/Bubble.d.ts +0 -11
- package/lib/typescript/module/src/ui/components/bubble/Bubble.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/common/Divider.d.ts +0 -4
- package/lib/typescript/module/src/ui/components/common/Divider.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/common/Icon.d.ts +0 -8
- package/lib/typescript/module/src/ui/components/common/Icon.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/common/IndexedStack.d.ts +0 -13
- package/lib/typescript/module/src/ui/components/common/IndexedStack.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/common/Touchable.d.ts +0 -10
- package/lib/typescript/module/src/ui/components/common/Touchable.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/details/LogMessageDetails.d.ts +0 -6
- package/lib/typescript/module/src/ui/components/details/LogMessageDetails.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/details/NetworkRequestDetails.d.ts +0 -6
- package/lib/typescript/module/src/ui/components/details/NetworkRequestDetails.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/headers/ConsoleHeader.d.ts +0 -9
- package/lib/typescript/module/src/ui/components/headers/ConsoleHeader.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/headers/DebuggerHeader.d.ts +0 -10
- package/lib/typescript/module/src/ui/components/headers/DebuggerHeader.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/headers/Header.d.ts +0 -3
- package/lib/typescript/module/src/ui/components/headers/Header.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/headers/HeaderComponents.d.ts +0 -20
- package/lib/typescript/module/src/ui/components/headers/HeaderComponents.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/headers/NetworkHeader.d.ts +0 -9
- package/lib/typescript/module/src/ui/components/headers/NetworkHeader.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/index.d.ts +0 -5
- package/lib/typescript/module/src/ui/components/index.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/items/ConsolePanelItem.d.ts +0 -7
- package/lib/typescript/module/src/ui/components/items/ConsolePanelItem.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/items/DebuggerHeaderItem.d.ts +0 -11
- package/lib/typescript/module/src/ui/components/items/DebuggerHeaderItem.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/items/NetworkPanelItem.d.ts +0 -12
- package/lib/typescript/module/src/ui/components/items/NetworkPanelItem.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/items/NetworkRequestDetailsItem.d.ts +0 -7
- package/lib/typescript/module/src/ui/components/items/NetworkRequestDetailsItem.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/panels/ConsolePanel.d.ts +0 -6
- package/lib/typescript/module/src/ui/components/panels/ConsolePanel.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/panels/NetworkPanel.d.ts +0 -6
- package/lib/typescript/module/src/ui/components/panels/NetworkPanel.d.ts.map +0 -1
- package/lib/typescript/module/src/ui/components/panels/Panel.d.ts +0 -2
- package/lib/typescript/module/src/ui/components/panels/Panel.d.ts.map +0 -1
- /package/lib/{typescript/module → module}/package.json +0 -0
- /package/lib/typescript/{commonjs/src → src}/contexts/MainContext.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/contexts/index.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/core/constants.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/hooks/index.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/hooks/useConsoleInterceptor.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/index.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/interceptors/ConsoleInterceptor.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/interceptors/FetchInterceptor.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/interceptors/HttpInterceptor.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/interceptors/Interceptor.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/interceptors/NetworkInterceptor.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/interceptors/WebSocketInterceptor.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/interceptors/XHRInterceptor.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/interceptors/index.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/theme/colors.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/types/console.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/types/http.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/types/index.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/types/websocket.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/bubble/Bubble.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/common/Divider.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/common/Icon.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/common/IndexedStack.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/details/LogMessageDetails.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/headers/ConsoleHeader.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/headers/DebuggerHeader.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/headers/Header.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/headers/NetworkHeader.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/items/ConsolePanelItem.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/items/DebuggerHeaderItem.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/items/NetworkPanelItem.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/items/NetworkRequestDetailsItem.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/panels/ConsolePanel.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/panels/NetworkPanel.d.ts +0 -0
- /package/lib/typescript/{commonjs/src → src}/ui/components/panels/Panel.d.ts +0 -0
package/src/ui/Xenon.tsx
CHANGED
@@ -1,18 +1,16 @@
|
|
1
1
|
import { enableMapSet } from 'immer';
|
2
|
-
import { createRef, memo, useImperativeHandle, useMemo, type ReactNode } from 'react';
|
2
|
+
import { createRef, memo, useImperativeHandle, useMemo, type JSX, type ReactNode } from 'react';
|
3
3
|
import { Platform, StyleSheet, useWindowDimensions, View } from 'react-native';
|
4
|
-
import { SafeAreaProvider
|
4
|
+
import { SafeAreaProvider } from 'react-native-safe-area-context';
|
5
5
|
import { FullWindowOverlay } from 'react-native-screens';
|
6
6
|
import { useImmer } from 'use-immer';
|
7
|
-
import MainContext from '../contexts
|
7
|
+
import { MainContext } from '../contexts';
|
8
8
|
import refs, { DebuggerVisibility } from '../core/refs';
|
9
9
|
import { useConsoleInterceptor, useNetworkInterceptor } from '../hooks';
|
10
10
|
import colors from '../theme/colors';
|
11
11
|
import { type DebuggerState } from '../types';
|
12
|
-
import { Bubble } from './components';
|
13
|
-
import
|
14
|
-
import Header from './components/headers/Header';
|
15
|
-
import Panel from './components/panels/Panel';
|
12
|
+
import { Bubble, Header, IndexedStack, Panel, SearchBar } from './components';
|
13
|
+
import SafeArea from './components/common/SafeArea';
|
16
14
|
|
17
15
|
namespace Xenon {
|
18
16
|
interface Methods {
|
@@ -22,12 +20,41 @@ namespace Xenon {
|
|
22
20
|
}
|
23
21
|
|
24
22
|
interface Props {
|
25
|
-
|
23
|
+
/**
|
24
|
+
* Determines whether the network inspector is automatically enabled upon initialization.
|
25
|
+
* @default true
|
26
|
+
*/
|
26
27
|
autoInspectNetworkEnabled?: boolean;
|
28
|
+
/**
|
29
|
+
* Determines whether the console inspector is automatically enabled upon initialization.
|
30
|
+
* @default true
|
31
|
+
*/
|
27
32
|
autoInspectConsoleEnabled?: boolean;
|
33
|
+
/**
|
34
|
+
* Defines the size of the interactive bubble used in the UI.
|
35
|
+
* @default 40
|
36
|
+
*/
|
28
37
|
bubbleSize?: number;
|
38
|
+
/**
|
39
|
+
* Defines the opacity level of the bubble when it is idle.
|
40
|
+
* @default 0.5
|
41
|
+
*/
|
29
42
|
idleBubbleOpacity?: number;
|
30
|
-
|
43
|
+
/**
|
44
|
+
* Domains to include in network interception. Defaults to all domains.
|
45
|
+
* @default undefined
|
46
|
+
* @example ['example1.com', 'api.example2.com']
|
47
|
+
*/
|
48
|
+
includeDomains?: string[];
|
49
|
+
}
|
50
|
+
|
51
|
+
interface WrapperProps extends Props {
|
52
|
+
/**
|
53
|
+
* If true, completely disables the debugger by rendering only the children components without any debugging functionality.
|
54
|
+
* @default false
|
55
|
+
*/
|
56
|
+
disabled?: boolean;
|
57
|
+
children: ReactNode;
|
31
58
|
}
|
32
59
|
|
33
60
|
enableMapSet();
|
@@ -38,9 +65,9 @@ namespace Xenon {
|
|
38
65
|
flex: 1,
|
39
66
|
...StyleSheet.absoluteFillObject,
|
40
67
|
pointerEvents: 'box-none',
|
68
|
+
...(Platform.OS === 'android' ? { zIndex: 9999 } : {}),
|
41
69
|
top: undefined,
|
42
70
|
bottom: undefined,
|
43
|
-
...(Platform.OS === 'android' ? { zIndex: 9999 } : {}),
|
44
71
|
backgroundColor: colors.lightGray,
|
45
72
|
borderBottomColor: colors.gray,
|
46
73
|
borderBottomWidth: StyleSheet.hairlineWidth,
|
@@ -50,8 +77,22 @@ namespace Xenon {
|
|
50
77
|
},
|
51
78
|
});
|
52
79
|
|
80
|
+
/**
|
81
|
+
* Checks whether the debugger is currently visible.
|
82
|
+
* @returns `true` if the debugger is currently visible, otherwise `false`.
|
83
|
+
*/
|
53
84
|
export const isVisible = () => ref.current?.isVisible() ?? false;
|
85
|
+
|
86
|
+
/**
|
87
|
+
* Makes the debugger visible. If it is already visible, this method has no additional effect.
|
88
|
+
* @returns `void`
|
89
|
+
*/
|
54
90
|
export const show = (): void => ref.current?.show();
|
91
|
+
|
92
|
+
/**
|
93
|
+
* Hides the debugger. If it is already hidden, this method has no additional effect.
|
94
|
+
* @returns `void`
|
95
|
+
*/
|
55
96
|
export const hide = (): void => ref.current?.hide();
|
56
97
|
|
57
98
|
const Debugger = memo(
|
@@ -60,12 +101,14 @@ namespace Xenon {
|
|
60
101
|
autoInspectConsoleEnabled = true,
|
61
102
|
bubbleSize = 40,
|
62
103
|
idleBubbleOpacity = 0.5,
|
104
|
+
includeDomains,
|
63
105
|
}: Props) => {
|
64
106
|
const { width, height } = useWindowDimensions();
|
65
107
|
|
66
108
|
const [debuggerState, setDebuggerState] = useImmer<DebuggerState>({
|
67
109
|
position: 'bottom',
|
68
110
|
detailsData: null,
|
111
|
+
searchQuery: '',
|
69
112
|
});
|
70
113
|
|
71
114
|
const containerStyle = useMemo(
|
@@ -78,6 +121,7 @@ namespace Xenon {
|
|
78
121
|
|
79
122
|
const networkInterceptor = useNetworkInterceptor({
|
80
123
|
autoEnabled: autoInspectNetworkEnabled,
|
124
|
+
includeDomains,
|
81
125
|
});
|
82
126
|
|
83
127
|
const consoleInterceptor = useConsoleInterceptor({
|
@@ -120,20 +164,22 @@ namespace Xenon {
|
|
120
164
|
|
121
165
|
<View style={containerStyle}>
|
122
166
|
<SafeAreaProvider>
|
123
|
-
<
|
124
|
-
|
125
|
-
|
126
|
-
|
167
|
+
{debuggerState.position === 'top' && <SafeArea inset="top" />}
|
168
|
+
<Header />
|
169
|
+
<Panel />
|
170
|
+
{debuggerState.position === 'bottom' && <SafeArea inset="bottom" />}
|
127
171
|
</SafeAreaProvider>
|
128
172
|
</View>
|
173
|
+
|
174
|
+
<SearchBar />
|
129
175
|
</IndexedStack>
|
130
176
|
</MainContext.Provider>
|
131
177
|
);
|
132
178
|
},
|
133
179
|
);
|
134
180
|
|
135
|
-
export function Wrapper({ disabled = false, children, ...props }:
|
136
|
-
if (disabled) return children;
|
181
|
+
export function Wrapper({ disabled = false, children, ...props }: WrapperProps): JSX.Element {
|
182
|
+
if (disabled) return children as JSX.Element;
|
137
183
|
|
138
184
|
return (
|
139
185
|
<>
|
@@ -36,7 +36,7 @@ const Bubble = forwardRef<View, BubbleProps>(
|
|
36
36
|
|
37
37
|
const blur = () => {
|
38
38
|
opacityTimer.current = setTimeout(() => {
|
39
|
-
setIdleOpacity(
|
39
|
+
setIdleOpacity(idleBubbleOpacity);
|
40
40
|
clearTimer();
|
41
41
|
}, 1000);
|
42
42
|
};
|
@@ -94,7 +94,7 @@ const Bubble = forwardRef<View, BubbleProps>(
|
|
94
94
|
});
|
95
95
|
},
|
96
96
|
});
|
97
|
-
}, [bubbleSize,
|
97
|
+
}, [bubbleSize, idleBubbleOpacity, screenHeight, screenWidth]);
|
98
98
|
|
99
99
|
return (
|
100
100
|
<View ref={ref} style={[styles.bubbleBackdrop, style]}>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { View } from 'react-native';
|
2
|
+
import { useSafeAreaInsets, type EdgeInsets } from 'react-native-safe-area-context';
|
3
|
+
|
4
|
+
export default function SafeArea({
|
5
|
+
inset,
|
6
|
+
}: {
|
7
|
+
inset: Extract<keyof EdgeInsets, 'top' | 'bottom'>;
|
8
|
+
}) {
|
9
|
+
return <View style={{ height: useSafeAreaInsets()[inset] }} />;
|
10
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { Text, type TextProps } from 'react-native';
|
2
|
+
import { shareText } from '../../../core/utils';
|
3
|
+
|
4
|
+
interface ShareableTextProps extends TextProps {
|
5
|
+
children: string | string[];
|
6
|
+
}
|
7
|
+
|
8
|
+
export default function ShareableText({ children, ...props }: ShareableTextProps) {
|
9
|
+
return (
|
10
|
+
<Text
|
11
|
+
selectionColor={'transparent'}
|
12
|
+
suppressHighlighting={true}
|
13
|
+
onLongPress={async () => {
|
14
|
+
shareText(Array.isArray(children) ? children.join('') : children);
|
15
|
+
}}
|
16
|
+
{...props}
|
17
|
+
>
|
18
|
+
{children}
|
19
|
+
</Text>
|
20
|
+
);
|
21
|
+
}
|
@@ -1,20 +1,10 @@
|
|
1
|
-
import { TouchableOpacity, type
|
1
|
+
import { TouchableOpacity, type TouchableOpacityProps } from 'react-native';
|
2
2
|
|
3
|
-
interface TouchableProps {
|
4
|
-
onPress: () => void;
|
5
|
-
children: React.ReactNode;
|
6
|
-
activeOpacity?: number;
|
7
|
-
style?: StyleProp<ViewStyle>;
|
8
|
-
}
|
3
|
+
interface TouchableProps extends TouchableOpacityProps {}
|
9
4
|
|
10
|
-
export default function Touchable({
|
11
|
-
onPress,
|
12
|
-
children,
|
13
|
-
activeOpacity = 0.8,
|
14
|
-
style,
|
15
|
-
}: TouchableProps) {
|
5
|
+
export default function Touchable({ children, activeOpacity = 0.8, ...props }: TouchableProps) {
|
16
6
|
return (
|
17
|
-
<TouchableOpacity
|
7
|
+
<TouchableOpacity activeOpacity={activeOpacity} {...props}>
|
18
8
|
{children}
|
19
9
|
</TouchableOpacity>
|
20
10
|
);
|
@@ -21,6 +21,7 @@ const LogMessageDetails = forwardRef<ScrollView, { style?: StyleProp<ViewStyle>
|
|
21
21
|
{ backgroundColor: getConsoleTypeColor(item?.type ?? '') },
|
22
22
|
style,
|
23
23
|
]}
|
24
|
+
contentContainerStyle={styles.contentContainer}
|
24
25
|
>
|
25
26
|
<Text style={styles.text}>{formatLogMessage(item?.values ?? [])}</Text>
|
26
27
|
</ScrollView>
|
@@ -31,6 +32,8 @@ const LogMessageDetails = forwardRef<ScrollView, { style?: StyleProp<ViewStyle>
|
|
31
32
|
const styles = StyleSheet.create({
|
32
33
|
container: {
|
33
34
|
flex: 1,
|
35
|
+
},
|
36
|
+
contentContainer: {
|
34
37
|
padding: 8,
|
35
38
|
},
|
36
39
|
text: {
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { forwardRef, useContext, useRef, type JSX } from 'react';
|
2
|
-
import { ScrollView, StyleSheet, type StyleProp, type ViewStyle } from 'react-native';
|
1
|
+
import { forwardRef, useContext, useRef, type JSX, type ReactNode } from 'react';
|
2
|
+
import { ScrollView, StyleSheet, View, type StyleProp, type ViewStyle } from 'react-native';
|
3
3
|
import { MainContext } from '../../../contexts';
|
4
4
|
import {
|
5
5
|
beautify,
|
@@ -12,7 +12,13 @@ import colors from '../../../theme/colors';
|
|
12
12
|
import { type DetailTab, type HttpRequest, type WebSocketRequest } from '../../../types';
|
13
13
|
import NetworkRequestDetailsItem from '../items/NetworkRequestDetailsItem';
|
14
14
|
|
15
|
-
const
|
15
|
+
const TabScrollView = ({ id, children }: { id: string; children: ReactNode }) => (
|
16
|
+
<ScrollView key={id} contentContainerStyle={styles.contentContainer}>
|
17
|
+
{children}
|
18
|
+
</ScrollView>
|
19
|
+
);
|
20
|
+
|
21
|
+
const NetworkRequestDetails = forwardRef<View, { style?: StyleProp<ViewStyle> }>(
|
16
22
|
({ style }, ref) => {
|
17
23
|
const {
|
18
24
|
debuggerState: { detailsData },
|
@@ -26,7 +32,7 @@ const NetworkRequestDetails = forwardRef<ScrollView, { style?: StyleProp<ViewSty
|
|
26
32
|
typeof detailsData?.beautified === 'boolean';
|
27
33
|
|
28
34
|
const {
|
29
|
-
|
35
|
+
isWS,
|
30
36
|
requestUrl,
|
31
37
|
overviewShown,
|
32
38
|
headersShown,
|
@@ -54,14 +60,14 @@ const NetworkRequestDetails = forwardRef<ScrollView, { style?: StyleProp<ViewSty
|
|
54
60
|
|
55
61
|
if (overviewShown && !content.current.overview && item) {
|
56
62
|
content.current.overview = (
|
57
|
-
|
63
|
+
<TabScrollView id="overview">
|
58
64
|
<NetworkRequestDetailsItem label="Request Type" content={item.type} />
|
59
65
|
|
60
66
|
<NetworkRequestDetailsItem label="Request URL" content={item.url} />
|
61
67
|
|
62
68
|
<NetworkRequestDetailsItem
|
63
69
|
label="Request Method"
|
64
|
-
content={formatRequestMethod(
|
70
|
+
content={formatRequestMethod(isWS ? undefined : (item as HttpRequest).method)}
|
65
71
|
/>
|
66
72
|
|
67
73
|
<NetworkRequestDetailsItem
|
@@ -71,32 +77,30 @@ const NetworkRequestDetails = forwardRef<ScrollView, { style?: StyleProp<ViewSty
|
|
71
77
|
|
72
78
|
<NetworkRequestDetailsItem
|
73
79
|
label="Start Time"
|
74
|
-
content={new Date(item.startTime ?? 0).
|
80
|
+
content={new Date(item.startTime ?? 0).toISOString()}
|
75
81
|
/>
|
76
82
|
|
77
83
|
<NetworkRequestDetailsItem
|
78
84
|
label="End Time"
|
79
|
-
content={new Date(item.endTime ?? 0).
|
85
|
+
content={new Date(item.endTime ?? 0).toISOString()}
|
80
86
|
/>
|
81
87
|
|
82
88
|
<NetworkRequestDetailsItem
|
83
89
|
label="Duration"
|
84
90
|
content={formatRequestDuration(item.startTime, item.endTime)}
|
85
91
|
/>
|
86
|
-
|
92
|
+
</TabScrollView>
|
87
93
|
);
|
88
94
|
}
|
89
95
|
|
90
96
|
if (headersShown && !content.current.headers && item) {
|
91
97
|
let headers: [string, string][] = [];
|
92
|
-
|
93
|
-
|
98
|
+
const requestHeaders: [string, string][] = [];
|
99
|
+
const responseHeaders: [string, string][] = [];
|
94
100
|
|
95
|
-
if (
|
101
|
+
if (isWS) {
|
96
102
|
headers = Object.entries((item as WebSocketRequest).options?.headers ?? {});
|
97
|
-
}
|
98
|
-
|
99
|
-
if (isHttp) {
|
103
|
+
} else {
|
100
104
|
for (const [key, value] of ((item as HttpRequest).requestHeaders ?? new Map()).entries()) {
|
101
105
|
requestHeaders.push([key, value]);
|
102
106
|
}
|
@@ -106,24 +110,24 @@ const NetworkRequestDetails = forwardRef<ScrollView, { style?: StyleProp<ViewSty
|
|
106
110
|
}
|
107
111
|
|
108
112
|
content.current.headers = (
|
109
|
-
|
110
|
-
{
|
113
|
+
<TabScrollView id="headers">
|
114
|
+
{isWS && !!headers.length && (
|
111
115
|
<NetworkRequestDetailsItem label="Headers" content={headers} />
|
112
116
|
)}
|
113
117
|
|
114
|
-
{
|
118
|
+
{!isWS && !!requestHeaders.length && (
|
115
119
|
<NetworkRequestDetailsItem label="Request Headers" content={requestHeaders} />
|
116
120
|
)}
|
117
121
|
|
118
|
-
{
|
122
|
+
{!isWS && !!responseHeaders.length && (
|
119
123
|
<NetworkRequestDetailsItem label="Response Headers" content={responseHeaders} />
|
120
124
|
)}
|
121
|
-
|
125
|
+
</TabScrollView>
|
122
126
|
);
|
123
127
|
}
|
124
128
|
|
125
|
-
if (requestShown && shouldBeautifiedRefUpdate && item
|
126
|
-
|
129
|
+
if (requestShown && shouldBeautifiedRefUpdate && item) {
|
130
|
+
const queryStringParameters: [string, string][] = [];
|
127
131
|
|
128
132
|
requestUrl.searchParams.forEach((value, name) => {
|
129
133
|
queryStringParameters.push([name, value]);
|
@@ -132,31 +136,33 @@ const NetworkRequestDetails = forwardRef<ScrollView, { style?: StyleProp<ViewSty
|
|
132
136
|
const body = beautify((item as HttpRequest).body, detailsData?.beautified ?? false);
|
133
137
|
|
134
138
|
content.current.request = (
|
135
|
-
|
139
|
+
<TabScrollView id="request">
|
136
140
|
{!!queryStringParameters.length && (
|
137
141
|
<NetworkRequestDetailsItem label="Query String" content={queryStringParameters} />
|
138
142
|
)}
|
139
143
|
|
140
144
|
{!!body && <NetworkRequestDetailsItem label="Body" content={body} />}
|
141
|
-
|
145
|
+
</TabScrollView>
|
142
146
|
);
|
143
147
|
}
|
144
148
|
|
145
149
|
if (responseShown && shouldBeautifiedRefUpdate && item) {
|
150
|
+
const response = beautify((item as HttpRequest).response, detailsData?.beautified ?? false);
|
146
151
|
content.current.response = (
|
147
|
-
<
|
148
|
-
label="Response"
|
149
|
-
|
150
|
-
/>
|
152
|
+
<TabScrollView id="response">
|
153
|
+
<NetworkRequestDetailsItem label="Response" content={response} />
|
154
|
+
</TabScrollView>
|
151
155
|
);
|
152
156
|
}
|
153
157
|
|
154
158
|
if (messagesShown && !content.current.messages && item) {
|
155
159
|
content.current.messages = (
|
156
|
-
<
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
+
<TabScrollView id="messages">
|
161
|
+
<NetworkRequestDetailsItem
|
162
|
+
label="Messages"
|
163
|
+
content={(item as WebSocketRequest).messages!}
|
164
|
+
/>
|
165
|
+
</TabScrollView>
|
160
166
|
);
|
161
167
|
}
|
162
168
|
|
@@ -165,9 +171,9 @@ const NetworkRequestDetails = forwardRef<ScrollView, { style?: StyleProp<ViewSty
|
|
165
171
|
}
|
166
172
|
|
167
173
|
return (
|
168
|
-
<
|
174
|
+
<View ref={ref} style={[styles.container, style]}>
|
169
175
|
{content.current[detailsData?.selectedTab as keyof typeof content.current]}
|
170
|
-
</
|
176
|
+
</View>
|
171
177
|
);
|
172
178
|
},
|
173
179
|
);
|
@@ -175,6 +181,8 @@ const NetworkRequestDetails = forwardRef<ScrollView, { style?: StyleProp<ViewSty
|
|
175
181
|
const styles = StyleSheet.create({
|
176
182
|
container: {
|
177
183
|
flex: 1,
|
184
|
+
},
|
185
|
+
contentContainer: {
|
178
186
|
padding: 8,
|
179
187
|
},
|
180
188
|
text: {
|
@@ -16,7 +16,7 @@ const ConsoleHeader = forwardRef<ScrollView, ConsoleHeaderProps>(
|
|
16
16
|
<HeaderComponents.Back selectedPanel={selectedPanel} />
|
17
17
|
<HeaderComponents.MainButtons />
|
18
18
|
<Divider type="vertical" />
|
19
|
-
<HeaderComponents.
|
19
|
+
<HeaderComponents.DetailTabItem tab="logMessage" label="Console" />
|
20
20
|
</HeaderComponents.Wrapper>
|
21
21
|
);
|
22
22
|
},
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { forwardRef, useContext } from 'react';
|
2
2
|
import type { ScrollView, StyleProp, ViewStyle } from 'react-native';
|
3
3
|
import { MainContext } from '../../../contexts';
|
4
|
-
import refs, { PanelState } from '../../../core/refs';
|
4
|
+
import refs, { DebuggerVisibility, PanelState } from '../../../core/refs';
|
5
5
|
import icons from '../../../theme/icons';
|
6
6
|
import Divider from '../common/Divider';
|
7
7
|
import DebuggerHeaderItem from '../items/DebuggerHeaderItem';
|
@@ -38,8 +38,15 @@ const DebuggerHeader = forwardRef<ScrollView, DebuggerHeaderProps>(
|
|
38
38
|
: consoleInterceptor.enableInterception();
|
39
39
|
};
|
40
40
|
|
41
|
+
const onShowSearchInput = () => {
|
42
|
+
refs.debugger.current?.setCurrentIndex(DebuggerVisibility.Search);
|
43
|
+
refs.searchInput.current?.focus();
|
44
|
+
};
|
45
|
+
|
41
46
|
return (
|
42
47
|
<HeaderComponents.Wrapper ref={ref} style={style}>
|
48
|
+
<DebuggerHeaderItem onPress={onShowSearchInput} content={icons.search} />
|
49
|
+
|
43
50
|
<HeaderComponents.MainButtons />
|
44
51
|
|
45
52
|
<Divider type="vertical" />
|
@@ -24,7 +24,7 @@ const Back = ({ selectedPanel }: { selectedPanel: PanelState }) => {
|
|
24
24
|
);
|
25
25
|
};
|
26
26
|
|
27
|
-
const
|
27
|
+
const DetailTabItem = ({ tab, label }: { tab: DetailTab; label: string }) => {
|
28
28
|
const {
|
29
29
|
debuggerState: { detailsData },
|
30
30
|
setDebuggerState,
|
@@ -95,6 +95,6 @@ const styles = StyleSheet.create({
|
|
95
95
|
},
|
96
96
|
});
|
97
97
|
|
98
|
-
const HeaderComponents = { Back,
|
98
|
+
const HeaderComponents = { Back, DetailTabItem, MainButtons, Wrapper };
|
99
99
|
|
100
100
|
export default HeaderComponents;
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import { forwardRef, useContext } from 'react';
|
2
|
-
import {
|
2
|
+
import { type ScrollView, type StyleProp, type ViewStyle } from 'react-native';
|
3
3
|
import { MainContext } from '../../../contexts';
|
4
|
-
import
|
5
|
-
import { convertToCurl, getNetworkUtils } from '../../../core/utils';
|
4
|
+
import { type PanelState } from '../../../core/refs';
|
5
|
+
import { convertToCurl, getNetworkUtils, shareText } from '../../../core/utils';
|
6
6
|
import colors from '../../../theme/colors';
|
7
7
|
import icons from '../../../theme/icons';
|
8
8
|
import { NetworkType, type HttpRequest, type WebSocketRequest } from '../../../types';
|
@@ -15,8 +15,6 @@ interface NetworkHeaderProps {
|
|
15
15
|
style?: StyleProp<ViewStyle>;
|
16
16
|
}
|
17
17
|
|
18
|
-
let isSharing = false;
|
19
|
-
|
20
18
|
const NetworkHeader = forwardRef<ScrollView, NetworkHeaderProps>(
|
21
19
|
({ selectedPanel, style }, ref) => {
|
22
20
|
const {
|
@@ -26,7 +24,7 @@ const NetworkHeader = forwardRef<ScrollView, NetworkHeaderProps>(
|
|
26
24
|
|
27
25
|
const data = detailsData?.data as HttpRequest | WebSocketRequest | undefined;
|
28
26
|
|
29
|
-
const {
|
27
|
+
const { isWS, overviewShown, headersShown, requestShown, responseShown, messagesShown } =
|
30
28
|
getNetworkUtils(data);
|
31
29
|
|
32
30
|
return (
|
@@ -36,13 +34,13 @@ const NetworkHeader = forwardRef<ScrollView, NetworkHeaderProps>(
|
|
36
34
|
|
37
35
|
<Divider type="vertical" />
|
38
36
|
|
39
|
-
{overviewShown && <HeaderComponents.
|
40
|
-
{headersShown && <HeaderComponents.
|
41
|
-
{requestShown && <HeaderComponents.
|
42
|
-
{responseShown && <HeaderComponents.
|
43
|
-
{messagesShown && <HeaderComponents.
|
37
|
+
{!!overviewShown && <HeaderComponents.DetailTabItem tab="overview" label="Overview" />}
|
38
|
+
{!!headersShown && <HeaderComponents.DetailTabItem tab="headers" label="Headers" />}
|
39
|
+
{!!requestShown && <HeaderComponents.DetailTabItem tab="request" label="Request" />}
|
40
|
+
{!!responseShown && <HeaderComponents.DetailTabItem tab="response" label="Response" />}
|
41
|
+
{!!messagesShown && <HeaderComponents.DetailTabItem tab="messages" label="Messages" />}
|
44
42
|
|
45
|
-
{
|
43
|
+
{!isWS && (
|
46
44
|
<>
|
47
45
|
<Divider type="vertical" />
|
48
46
|
|
@@ -59,20 +57,10 @@ const NetworkHeader = forwardRef<ScrollView, NetworkHeaderProps>(
|
|
59
57
|
<DebuggerHeaderItem
|
60
58
|
content={icons.share}
|
61
59
|
onPress={async () => {
|
62
|
-
if (
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
refs.debugger.current?.setCurrentIndex(DebuggerVisibility.Bubble);
|
67
|
-
|
68
|
-
await Share.share({
|
69
|
-
message: convertToCurl(data.method, data.url, data.requestHeaders, data.body),
|
70
|
-
});
|
71
|
-
} catch (error) {
|
72
|
-
// Handle error
|
73
|
-
} finally {
|
74
|
-
isSharing = false;
|
75
|
-
}
|
60
|
+
if (data?.type === NetworkType.WS) return;
|
61
|
+
await shareText(
|
62
|
+
convertToCurl(data!.method, data!.url, data!.requestHeaders, data!.body),
|
63
|
+
);
|
76
64
|
}}
|
77
65
|
/>
|
78
66
|
</>
|
@@ -1,4 +1,5 @@
|
|
1
1
|
export { default as Bubble } from './bubble/Bubble';
|
2
|
-
export { default as
|
3
|
-
export { default as
|
4
|
-
export { default as
|
2
|
+
export { default as IndexedStack } from './common/IndexedStack';
|
3
|
+
export { default as Header } from './headers/Header';
|
4
|
+
export { default as Panel } from './panels/Panel';
|
5
|
+
export { default as SearchBar } from './search-bar/SearchBar';
|
@@ -1,5 +1,7 @@
|
|
1
|
-
import { StyleSheet, Text } from 'react-native';
|
1
|
+
import { StyleSheet, Text, View } from 'react-native';
|
2
2
|
import colors from '../../../theme/colors';
|
3
|
+
import { showNewLine } from '../../../core/utils';
|
4
|
+
import ShareableText from '../common/ShareableText';
|
3
5
|
|
4
6
|
interface NetworkRequestDetailsItemProps {
|
5
7
|
label: string;
|
@@ -10,32 +12,57 @@ export default function NetworkRequestDetailsItem({
|
|
10
12
|
label,
|
11
13
|
content,
|
12
14
|
}: NetworkRequestDetailsItemProps) {
|
15
|
+
const renderContent = () => {
|
16
|
+
switch (true) {
|
17
|
+
case typeof content === 'string':
|
18
|
+
return (
|
19
|
+
<ShareableText style={styles.text}>
|
20
|
+
{content}
|
21
|
+
{showNewLine(!content.endsWith('\n'))}
|
22
|
+
</ShareableText>
|
23
|
+
);
|
24
|
+
case Array.isArray(content):
|
25
|
+
return (
|
26
|
+
<View>
|
27
|
+
{content.map(([key, value], index) => (
|
28
|
+
<View style={styles.pairContainer} key={`${key}-${index}`}>
|
29
|
+
<Text style={[styles.label, styles.subLabel]}>
|
30
|
+
{key}
|
31
|
+
{':'}
|
32
|
+
</Text>
|
33
|
+
|
34
|
+
<ShareableText style={styles.text}>
|
35
|
+
{value}
|
36
|
+
{showNewLine(index === content.length - 1)}
|
37
|
+
</ShareableText>
|
38
|
+
</View>
|
39
|
+
))}
|
40
|
+
</View>
|
41
|
+
);
|
42
|
+
}
|
43
|
+
};
|
44
|
+
|
13
45
|
return (
|
14
|
-
<
|
15
|
-
<Text style={styles.label}>
|
16
|
-
|
17
|
-
|
18
|
-
</Text>
|
19
|
-
{typeof content === 'string'
|
20
|
-
? content
|
21
|
-
: content.map(([key, value]) => (
|
22
|
-
<Text key={key} style={[styles.label, styles.subLabel]}>
|
23
|
-
{key}
|
24
|
-
{': '}
|
25
|
-
<Text style={styles.text}>{value}</Text>
|
26
|
-
{'\n'}
|
27
|
-
</Text>
|
28
|
-
))}
|
29
|
-
{Array.isArray(content) || content?.endsWith('\n') ? '' : '\n'}
|
30
|
-
</Text>
|
46
|
+
<View style={styles.container}>
|
47
|
+
<Text style={styles.label}>{label}</Text>
|
48
|
+
{renderContent()}
|
49
|
+
</View>
|
31
50
|
);
|
32
51
|
}
|
33
52
|
|
34
53
|
const styles = StyleSheet.create({
|
54
|
+
container: {
|
55
|
+
rowGap: 2,
|
56
|
+
},
|
57
|
+
pairContainer: {
|
58
|
+
flexDirection: 'row',
|
59
|
+
columnGap: 4,
|
60
|
+
},
|
35
61
|
text: {
|
36
62
|
fontSize: 14,
|
37
63
|
fontWeight: 'normal',
|
38
64
|
color: colors.black,
|
65
|
+
flexShrink: 1,
|
39
66
|
},
|
40
67
|
label: {
|
41
68
|
fontSize: 16,
|