├── .nvmrc
├── .github
├── FUNDING.yml
├── pull_request_template.md
├── ISSUE_TEMPLATE
│ ├── feature_request.md
│ └── bug_report.md
└── workflows
│ └── test.yml
├── public
├── highlight.js
│ └── styles
│ │ └── atom-one-dark.css
├── icon.png
├── devtools
│ ├── devtools.html
│ └── devtools.js
├── background.js
├── manifest.json
├── css
│ ├── atom-one-dark.css
│ └── atom-one-light.css
├── contentScript_export.js
└── index.html
├── jest.setup.ts
├── src
├── helpers
│ ├── debounce.ts
│ ├── decodeQueryParam.ts
│ ├── byteSize.ts
│ ├── nsToMs.ts
│ ├── getStatusColor.ts
│ ├── byteSize.test.ts
│ ├── safeJson.ts
│ ├── compareHeaders.ts
│ ├── jwt.ts
│ ├── jwt.test.ts
│ ├── getSearchContent.ts
│ ├── searchString.ts
│ ├── gzip.ts
│ ├── searchString.test.ts
│ ├── curlHelpers.ts
│ └── graphqlHelpers.test.ts
├── react-app-env.d.ts
├── components
│ ├── CodeView
│ │ ├── index.ts
│ │ ├── CodeView.module.css
│ │ ├── JsonView.tsx
│ │ └── CodeView.tsx
│ ├── Layout
│ │ ├── index.tsx
│ │ ├── HeadBodyLayout.tsx
│ │ └── SplitPaneLayout.tsx
│ ├── TracingVisualization
│ │ ├── index.tsx
│ │ ├── useTracingVirtualization.ts
│ │ ├── TracingVisualization.tsx
│ │ └── TracingVisualizationRow.tsx
│ ├── VersionNumber
│ │ └── index.tsx
│ ├── ShareButton
│ │ └── index.tsx
│ ├── Badge
│ │ └── index.tsx
│ ├── Spinner
│ │ └── index.tsx
│ ├── Bar
│ │ └── index.tsx
│ ├── Icons
│ │ ├── CaretIcon.tsx
│ │ ├── CloseIcon.tsx
│ │ ├── ChevronIcon.tsx
│ │ ├── SearchIcon.tsx
│ │ ├── BinIcon.tsx
│ │ ├── CodeIcon.tsx
│ │ ├── DocsIcon.tsx
│ │ ├── MockIcon.tsx
│ │ └── LearnIcon.tsx
│ ├── Dot
│ │ └── index.tsx
│ ├── Header
│ │ └── index.tsx
│ ├── CloseButton
│ │ └── index.tsx
│ ├── HighlightedText
│ │ └── index.tsx
│ ├── Textfield
│ │ └── index.tsx
│ ├── CopyButton
│ │ ├── index.test.tsx
│ │ └── index.tsx
│ ├── CopyAsCurlButton
│ │ ├── index.tsx
│ │ └── index.test.tsx
│ ├── AutoFormatToggleButton
│ │ └── index.tsx
│ ├── DelayedLoader
│ │ └── index.tsx
│ ├── Button
│ │ ├── index.test.tsx
│ │ └── index.tsx
│ ├── Popover
│ │ └── index.tsx
│ ├── SearchInput
│ │ └── index.tsx
│ ├── Checkbox
│ │ └── index.tsx
│ ├── Tabs
│ │ ├── Tabs.test.tsx
│ │ └── index.tsx
│ ├── Table
│ │ ├── Table.test.tsx
│ │ └── index.tsx
│ ├── ErrorBoundary
│ │ └── index.tsx
│ ├── OverflowPopover
│ │ └── index.tsx
│ └── LocalSearchInput
│ │ └── index.tsx
├── hooks
│ ├── useToggle.ts
│ ├── useVirtualization.ts
│ ├── usePrevious.ts
│ ├── useHighlight
│ │ ├── worker.ts
│ │ └── index.ts
│ ├── useBytes.ts
│ ├── useOperatingSystem.ts
│ ├── useDebouncedEffect.ts
│ ├── useDebounce.ts
│ ├── useKeyDown.ts
│ ├── useCopy.ts
│ ├── useApolloTracing.ts
│ ├── useFormattedCode.ts
│ ├── useCopyCurl
│ │ ├── useCopyCurl.ts
│ │ └── useCopyCurl.test.ts
│ ├── useTheme.ts
│ ├── useDelay.ts
│ ├── useNetworkTabs.tsx
│ ├── useBoundingRect.ts
│ ├── useUserSettings.ts
│ ├── useInterval.ts
│ ├── useLatestState.ts
│ ├── useOperationFilters.tsx
│ ├── useRequestViewSections.tsx
│ ├── useSearchStart.ts
│ ├── useSearch.tsx
│ ├── useFormattedCode.test.tsx
│ ├── useMark.test.tsx
│ ├── useUserSettings.test.ts
│ ├── useMaintainScrollBottom.ts
│ ├── useShareMessage.tsx
│ └── useMark.ts
├── services
│ ├── chromeProvider.ts
│ ├── userSettingsService.ts
│ ├── searchService.ts
│ └── networkMonitor.ts
├── index.tsx
├── config.ts
├── theme.ts
├── containers
│ ├── NetworkPanel
│ │ ├── PanelSection.tsx
│ │ ├── HeaderView
│ │ │ ├── parseAuthHeader.ts
│ │ │ ├── index.tsx
│ │ │ ├── parseAuthHeader.test.ts
│ │ │ └── HeaderList.tsx
│ │ ├── NetworkDetails
│ │ │ ├── TracingView.tsx
│ │ │ ├── index.test.tsx
│ │ │ ├── index.tsx
│ │ │ ├── ResponseRawView.tsx
│ │ │ └── ResponseView.tsx
│ │ ├── WebSocketNetworkDetails
│ │ │ ├── index.tsx
│ │ │ └── MessageView.tsx
│ │ ├── index.test.tsx
│ │ ├── QuickFiltersContainer
│ │ │ └── index.tsx
│ │ └── NetworkTable
│ │ │ └── index.test.tsx
│ ├── App
│ │ ├── index.tsx
│ │ └── Search.test.tsx
│ ├── SearchPanel
│ │ ├── index.tsx
│ │ └── SearchResults.tsx
│ └── Main
│ │ └── index.tsx
├── setupTests.ts
├── test-utils.tsx
├── types.ts
├── index.css
└── mocks
│ └── mock-chrome.ts
├── jest.config.js
├── docs
├── main.jpg
└── compare.jpg
├── tsconfig.base.json
├── prettier.config.js
├── TODO
├── .vscode
└── settings.json
├── scripts
├── set-manifest-version.js
├── set-chrome-settings.js
├── set-firefox-settings.js
└── set-manifest-content-script.js
├── .gitignore
├── .eslintrc.json
├── PRIVACY.md
├── tsconfig.json
├── tailwind.config.js
├── LICENCE
├── craco.config.js
├── package.json
└── README.md
/.nvmrc:
--------------------------------------------------------------------------------
1 | lts/*
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | github: warrenday
2 |
--------------------------------------------------------------------------------
/public/highlight.js/styles/atom-one-dark.css:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/jest.setup.ts:
--------------------------------------------------------------------------------
1 | import "@testing-library/jest-dom"
2 |
--------------------------------------------------------------------------------
/src/helpers/debounce.ts:
--------------------------------------------------------------------------------
1 | export { debounce } from "ts-debounce"
2 |
--------------------------------------------------------------------------------
/src/react-app-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
No tracing found.
30 | )} 31 |{error.stack}}
23 |
80 |
85 |
86 |
87 | )
88 | }
89 |
90 | export const CodeView = (props: ICodeViewProps) => {
91 | const {
92 | text,
93 | language,
94 | autoFormat,
95 | className,
96 | searchQuery,
97 | onSearchResults,
98 | } = props
99 | const size = useByteSize(text.length, { unit: 'mb' })
100 |
101 | return (
102 |