├── .editorconfig ├── .eslintrc.js ├── .gitattributes ├── .github ├── FUNDING.yml ├── actions │ └── setup │ │ └── action.yml └── workflows │ └── ci.yml ├── .gitignore ├── .prettierrc.js ├── .watchmanconfig ├── .yarn └── releases │ └── yarn-4.5.2.cjs ├── .yarnrc ├── .yarnrc.yml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── INSTALL.md ├── LICENSE ├── README.md ├── babel.config.js ├── example ├── .gitignore ├── .yarn │ ├── install-state.gz │ └── releases │ │ └── yarn-4.5.2.cjs ├── .yarnrc.yml ├── App.js ├── app.json ├── assets │ ├── adaptive-icon.png │ ├── favicon.png │ ├── icon.png │ └── splash.png ├── babel.config.js ├── index.js ├── metro.config.js ├── package.json ├── src │ ├── App.tsx │ ├── NavTypes.ts │ ├── ThemeProvider.tsx │ ├── components │ │ ├── MaterialHeaderButton.tsx │ │ ├── PaddedButton.tsx │ │ └── ScreenBody.tsx │ └── screens │ │ ├── HomeScreen.tsx │ │ ├── TabScreenWithButtons.tsx │ │ ├── UsageCustom.tsx │ │ ├── UsageCustomOverflow.tsx │ │ ├── UsageDifferentFontFamilies.tsx │ │ ├── UsageDisabled.tsx │ │ ├── UsageLeft.tsx │ │ ├── UsageNativeMenu.tsx │ │ ├── UsageWithIcons.tsx │ │ ├── UsageWithOverflow.tsx │ │ ├── UsageWithOverflowComplex.tsx │ │ └── index.ts ├── tsconfig.json ├── webpack.config.js └── yarn.lock ├── img ├── header_buttons.gif └── nativeMenu.png ├── jest.config.js ├── jest.setup.js ├── lefthook.yml ├── package.json ├── scripts └── bootstrap.js ├── src ├── ButtonsWrapper.tsx ├── HeaderButton.tsx ├── HeaderButtonComponentContext.tsx ├── HeaderButtons.tsx ├── HeaderItems.tsx ├── __tests__ │ ├── HeaderButtons.test.tsx │ └── _wrappedRender.tsx ├── e2e.ts ├── index.ts ├── overflowMenu │ ├── HeaderButtonsProvider.ios.tsx │ ├── HeaderButtonsProvider.tsx │ ├── HeaderButtonsProviderDropdownMenu.tsx │ ├── HeaderButtonsProviderPlain.tsx │ ├── HeaderButtonsProviderTypes.ts │ ├── OverflowMenu.tsx │ ├── OverflowMenuContext.tsx │ ├── __tests__ │ │ ├── OverflowMenu.test.tsx │ │ ├── OverflowMenuProvider.test.tsx │ │ └── __snapshots__ │ │ │ └── OverflowMenuProvider.test.tsx.snap │ ├── overflowMenuPressHandlers.ts │ └── vendor │ │ ├── Divider.tsx │ │ ├── Menu.tsx │ │ └── MenuItem.tsx └── providers │ ├── HeaderButtonsProvider.tsx │ ├── HeaderButtonsProviderDropdownMenu.tsx │ └── HeaderButtonsProviderPlain.tsx ├── tsconfig.build.json ├── tsconfig.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.editorconfig -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [vonovak] 2 | -------------------------------------------------------------------------------- /.github/actions/setup/action.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.github/actions/setup/action.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.prettierrc.js -------------------------------------------------------------------------------- /.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /.yarn/releases/yarn-4.5.2.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.yarn/releases/yarn-4.5.2.cjs -------------------------------------------------------------------------------- /.yarnrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.yarnrc -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/.yarnrc.yml -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /INSTALL.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/INSTALL.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/README.md -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/babel.config.js -------------------------------------------------------------------------------- /example/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/.gitignore -------------------------------------------------------------------------------- /example/.yarn/install-state.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/.yarn/install-state.gz -------------------------------------------------------------------------------- /example/.yarn/releases/yarn-4.5.2.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/.yarn/releases/yarn-4.5.2.cjs -------------------------------------------------------------------------------- /example/.yarnrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/.yarnrc.yml -------------------------------------------------------------------------------- /example/App.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/App.js -------------------------------------------------------------------------------- /example/app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/app.json -------------------------------------------------------------------------------- /example/assets/adaptive-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/assets/adaptive-icon.png -------------------------------------------------------------------------------- /example/assets/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/assets/favicon.png -------------------------------------------------------------------------------- /example/assets/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/assets/icon.png -------------------------------------------------------------------------------- /example/assets/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/assets/splash.png -------------------------------------------------------------------------------- /example/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/babel.config.js -------------------------------------------------------------------------------- /example/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/index.js -------------------------------------------------------------------------------- /example/metro.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/metro.config.js -------------------------------------------------------------------------------- /example/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/package.json -------------------------------------------------------------------------------- /example/src/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/App.tsx -------------------------------------------------------------------------------- /example/src/NavTypes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/NavTypes.ts -------------------------------------------------------------------------------- /example/src/ThemeProvider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/ThemeProvider.tsx -------------------------------------------------------------------------------- /example/src/components/MaterialHeaderButton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/components/MaterialHeaderButton.tsx -------------------------------------------------------------------------------- /example/src/components/PaddedButton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/components/PaddedButton.tsx -------------------------------------------------------------------------------- /example/src/components/ScreenBody.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/components/ScreenBody.tsx -------------------------------------------------------------------------------- /example/src/screens/HomeScreen.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/HomeScreen.tsx -------------------------------------------------------------------------------- /example/src/screens/TabScreenWithButtons.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/TabScreenWithButtons.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageCustom.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageCustom.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageCustomOverflow.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageCustomOverflow.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageDifferentFontFamilies.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageDifferentFontFamilies.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageDisabled.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageDisabled.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageLeft.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageLeft.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageNativeMenu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageNativeMenu.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageWithIcons.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageWithIcons.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageWithOverflow.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageWithOverflow.tsx -------------------------------------------------------------------------------- /example/src/screens/UsageWithOverflowComplex.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/UsageWithOverflowComplex.tsx -------------------------------------------------------------------------------- /example/src/screens/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/src/screens/index.ts -------------------------------------------------------------------------------- /example/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/tsconfig.json -------------------------------------------------------------------------------- /example/webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/webpack.config.js -------------------------------------------------------------------------------- /example/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/example/yarn.lock -------------------------------------------------------------------------------- /img/header_buttons.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/img/header_buttons.gif -------------------------------------------------------------------------------- /img/nativeMenu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/img/nativeMenu.png -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/jest.config.js -------------------------------------------------------------------------------- /jest.setup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/jest.setup.js -------------------------------------------------------------------------------- /lefthook.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/lefthook.yml -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/package.json -------------------------------------------------------------------------------- /scripts/bootstrap.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/scripts/bootstrap.js -------------------------------------------------------------------------------- /src/ButtonsWrapper.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/ButtonsWrapper.tsx -------------------------------------------------------------------------------- /src/HeaderButton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/HeaderButton.tsx -------------------------------------------------------------------------------- /src/HeaderButtonComponentContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/HeaderButtonComponentContext.tsx -------------------------------------------------------------------------------- /src/HeaderButtons.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/HeaderButtons.tsx -------------------------------------------------------------------------------- /src/HeaderItems.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/HeaderItems.tsx -------------------------------------------------------------------------------- /src/__tests__/HeaderButtons.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/__tests__/HeaderButtons.test.tsx -------------------------------------------------------------------------------- /src/__tests__/_wrappedRender.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/__tests__/_wrappedRender.tsx -------------------------------------------------------------------------------- /src/e2e.ts: -------------------------------------------------------------------------------- 1 | export const OVERFLOW_BUTTON_TEST_ID = 'headerOverflowButton'; 2 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/overflowMenu/HeaderButtonsProvider.ios.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/HeaderButtonsProvider.ios.tsx -------------------------------------------------------------------------------- /src/overflowMenu/HeaderButtonsProvider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/HeaderButtonsProvider.tsx -------------------------------------------------------------------------------- /src/overflowMenu/HeaderButtonsProviderDropdownMenu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/HeaderButtonsProviderDropdownMenu.tsx -------------------------------------------------------------------------------- /src/overflowMenu/HeaderButtonsProviderPlain.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/HeaderButtonsProviderPlain.tsx -------------------------------------------------------------------------------- /src/overflowMenu/HeaderButtonsProviderTypes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/HeaderButtonsProviderTypes.ts -------------------------------------------------------------------------------- /src/overflowMenu/OverflowMenu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/OverflowMenu.tsx -------------------------------------------------------------------------------- /src/overflowMenu/OverflowMenuContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/OverflowMenuContext.tsx -------------------------------------------------------------------------------- /src/overflowMenu/__tests__/OverflowMenu.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/__tests__/OverflowMenu.test.tsx -------------------------------------------------------------------------------- /src/overflowMenu/__tests__/OverflowMenuProvider.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/__tests__/OverflowMenuProvider.test.tsx -------------------------------------------------------------------------------- /src/overflowMenu/__tests__/__snapshots__/OverflowMenuProvider.test.tsx.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/__tests__/__snapshots__/OverflowMenuProvider.test.tsx.snap -------------------------------------------------------------------------------- /src/overflowMenu/overflowMenuPressHandlers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/overflowMenuPressHandlers.ts -------------------------------------------------------------------------------- /src/overflowMenu/vendor/Divider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/vendor/Divider.tsx -------------------------------------------------------------------------------- /src/overflowMenu/vendor/Menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/vendor/Menu.tsx -------------------------------------------------------------------------------- /src/overflowMenu/vendor/MenuItem.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/overflowMenu/vendor/MenuItem.tsx -------------------------------------------------------------------------------- /src/providers/HeaderButtonsProvider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/providers/HeaderButtonsProvider.tsx -------------------------------------------------------------------------------- /src/providers/HeaderButtonsProviderDropdownMenu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/providers/HeaderButtonsProviderDropdownMenu.tsx -------------------------------------------------------------------------------- /src/providers/HeaderButtonsProviderPlain.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/src/providers/HeaderButtonsProviderPlain.tsx -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/tsconfig.build.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vonovak/react-navigation-header-buttons/HEAD/yarn.lock --------------------------------------------------------------------------------