├── .editorconfig ├── .eslintignore ├── .eslintrc.js ├── .github └── workflows │ ├── node.js.yml │ └── publish.yml ├── .gitignore ├── .husky ├── commit-msg └── pre-commit ├── .prettierignore ├── .prettierrc.json ├── .vscode └── settings.json ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── babel.config.esm.js ├── babel.config.js ├── commitlint.config.js ├── configs ├── babel.js ├── tsconfig.base.json ├── tsconfig.main.json └── tsconfig.test.json ├── jest.config.js ├── package.json ├── react.d.ts ├── react.js ├── src ├── Rocon.ts ├── __mocks__ │ └── _history.ts ├── builder │ ├── PathRouteBuilder │ │ ├── PathRouteBuilder.test.ts │ │ ├── PathSingleRouteInterface.ts │ │ ├── index.ts │ │ └── isRootPath.ts │ ├── RootRouteBuilder │ │ ├── RootRouteBuilder.test.ts │ │ ├── fillOptions.ts │ │ └── index.ts │ ├── RouteBuilderLink.ts │ ├── RoutePathResolver │ │ └── index.ts │ ├── RouteRecord │ │ ├── ConstRouteRecord.ts │ │ ├── MatchingRouteRecord.ts │ │ ├── PathRouteRecord.ts │ │ ├── RouteRecordBase.ts │ │ ├── RouteRecordType.ts │ │ ├── getRouteRecordLocation.ts │ │ └── index.ts │ ├── RoutesDefinitionObject.ts │ ├── SearchRouteBuilder │ │ ├── SearchRouteBuilder.test.ts │ │ └── index.ts │ ├── SingleHashRouteBuilder │ │ ├── SingleHashRouteBuilder.test.ts │ │ └── index.ts │ ├── SingleRouteAbstractBuilder │ │ └── index.ts │ ├── StateRouteBuilder │ │ ├── StateRouteBuilder.test.ts │ │ └── index.ts │ ├── WildcardFlagType.ts │ ├── composers │ │ ├── ConstLocationComposer │ │ │ └── index.ts │ │ ├── PathLocationComposer │ │ │ ├── PathLocationComposer.test.ts │ │ │ └── index.ts │ │ ├── SearchLocationComposer │ │ │ ├── SearchLocationComposer.test.ts │ │ │ └── index.ts │ │ ├── SingleHashLocationComposer │ │ │ ├── SingleHashLocationComposer.test.ts │ │ │ └── index.ts │ │ └── StateLocationComposer │ │ │ ├── StateLocationComposer.test.ts │ │ │ └── index.ts │ └── symbols.ts ├── core │ ├── BuilderLink │ │ ├── BuilderLink.test.ts │ │ ├── BuilderLinkOptions.ts │ │ ├── BuilderLinkState.ts │ │ ├── HasBuilderLink.ts │ │ ├── SegmentResolver.ts │ │ ├── fillOptions.ts │ │ └── index.ts │ ├── Location.ts │ ├── LocationComposer.ts │ └── RouteResolver │ │ ├── ResolvedRoute.ts │ │ ├── RouteResolver.test.ts │ │ ├── index.ts │ │ └── resolveChain.ts ├── index.ts ├── integrationTests │ ├── LocationResolving.test.ts │ ├── issue-24.test.tsx │ ├── issue-36.test.tsx │ └── issue-39.test.tsx ├── jest.setup.ts ├── react │ ├── Rocon.ts │ ├── components │ │ ├── Link.test.tsx │ │ ├── Link.tsx │ │ ├── Redirect.test.tsx │ │ ├── Redirect.tsx │ │ └── RoconRoot.tsx │ ├── contexts │ │ ├── HistoryContext.ts │ │ ├── LocationContext.ts │ │ └── RouteContext.ts │ ├── errors │ │ └── LocationNotFoundError.ts │ ├── hooks │ │ ├── useHistory.ts │ │ ├── useLocation.ts │ │ ├── useNavigate.test.tsx │ │ ├── useNavigate.ts │ │ ├── useRoutes.test.tsx │ │ └── useRoutes.tsx │ ├── index.ts │ ├── logic │ │ └── getNavigationBaseLocation.ts │ ├── shorthand.ts │ ├── test-utils │ │ └── index.tsx │ └── types │ │ ├── NavigateFunction.ts │ │ ├── ReactElement.ts │ │ ├── ReactRouteBuilder.ts │ │ └── ReactRouteRecord.ts ├── shorthand.ts ├── util │ ├── TODO.ts │ ├── assert.ts │ ├── locationToURL.test.ts │ ├── locationToURL.ts │ ├── noop.ts │ ├── path │ │ ├── composePath.test.ts │ │ ├── composePath.ts │ │ ├── decomposePath.test.ts │ │ ├── decomposePath.ts │ │ ├── locationDiff.test.ts │ │ └── locationDiff.ts │ ├── types │ │ ├── Clean.ts │ │ ├── OptionalIf.ts │ │ ├── PartialIf.ts │ │ └── PartiallyPartial.ts │ └── useIsFirstRendering.ts └── validator │ └── index.ts └── tsconfig.json /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/.editorconfig -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | /lib 2 | /*.js -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.github/workflows/node.js.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/.github/workflows/node.js.yml -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/.github/workflows/publish.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/.gitignore -------------------------------------------------------------------------------- /.husky/commit-msg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/.husky/commit-msg -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/.husky/pre-commit -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | # Waiting for TS 4.0 support 2 | src/react/types/NavigateFunction.ts -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/README.md -------------------------------------------------------------------------------- /babel.config.esm.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/babel.config.esm.js -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/babel.config.js -------------------------------------------------------------------------------- /commitlint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { extends: ["@commitlint/config-conventional"] }; 2 | -------------------------------------------------------------------------------- /configs/babel.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/configs/babel.js -------------------------------------------------------------------------------- /configs/tsconfig.base.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/configs/tsconfig.base.json -------------------------------------------------------------------------------- /configs/tsconfig.main.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/configs/tsconfig.main.json -------------------------------------------------------------------------------- /configs/tsconfig.test.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/configs/tsconfig.test.json -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/jest.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/package.json -------------------------------------------------------------------------------- /react.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/react.d.ts -------------------------------------------------------------------------------- /react.js: -------------------------------------------------------------------------------- 1 | module.exports = require("./lib/react"); 2 | -------------------------------------------------------------------------------- /src/Rocon.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/Rocon.ts -------------------------------------------------------------------------------- /src/__mocks__/_history.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/__mocks__/_history.ts -------------------------------------------------------------------------------- /src/builder/PathRouteBuilder/PathRouteBuilder.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/PathRouteBuilder/PathRouteBuilder.test.ts -------------------------------------------------------------------------------- /src/builder/PathRouteBuilder/PathSingleRouteInterface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/PathRouteBuilder/PathSingleRouteInterface.ts -------------------------------------------------------------------------------- /src/builder/PathRouteBuilder/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/PathRouteBuilder/index.ts -------------------------------------------------------------------------------- /src/builder/PathRouteBuilder/isRootPath.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/PathRouteBuilder/isRootPath.ts -------------------------------------------------------------------------------- /src/builder/RootRouteBuilder/RootRouteBuilder.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RootRouteBuilder/RootRouteBuilder.test.ts -------------------------------------------------------------------------------- /src/builder/RootRouteBuilder/fillOptions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RootRouteBuilder/fillOptions.ts -------------------------------------------------------------------------------- /src/builder/RootRouteBuilder/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RootRouteBuilder/index.ts -------------------------------------------------------------------------------- /src/builder/RouteBuilderLink.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RouteBuilderLink.ts -------------------------------------------------------------------------------- /src/builder/RoutePathResolver/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RoutePathResolver/index.ts -------------------------------------------------------------------------------- /src/builder/RouteRecord/ConstRouteRecord.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RouteRecord/ConstRouteRecord.ts -------------------------------------------------------------------------------- /src/builder/RouteRecord/MatchingRouteRecord.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RouteRecord/MatchingRouteRecord.ts -------------------------------------------------------------------------------- /src/builder/RouteRecord/PathRouteRecord.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RouteRecord/PathRouteRecord.ts -------------------------------------------------------------------------------- /src/builder/RouteRecord/RouteRecordBase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RouteRecord/RouteRecordBase.ts -------------------------------------------------------------------------------- /src/builder/RouteRecord/RouteRecordType.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RouteRecord/RouteRecordType.ts -------------------------------------------------------------------------------- /src/builder/RouteRecord/getRouteRecordLocation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RouteRecord/getRouteRecordLocation.ts -------------------------------------------------------------------------------- /src/builder/RouteRecord/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RouteRecord/index.ts -------------------------------------------------------------------------------- /src/builder/RoutesDefinitionObject.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/RoutesDefinitionObject.ts -------------------------------------------------------------------------------- /src/builder/SearchRouteBuilder/SearchRouteBuilder.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/SearchRouteBuilder/SearchRouteBuilder.test.ts -------------------------------------------------------------------------------- /src/builder/SearchRouteBuilder/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/SearchRouteBuilder/index.ts -------------------------------------------------------------------------------- /src/builder/SingleHashRouteBuilder/SingleHashRouteBuilder.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/SingleHashRouteBuilder/SingleHashRouteBuilder.test.ts -------------------------------------------------------------------------------- /src/builder/SingleHashRouteBuilder/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/SingleHashRouteBuilder/index.ts -------------------------------------------------------------------------------- /src/builder/SingleRouteAbstractBuilder/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/SingleRouteAbstractBuilder/index.ts -------------------------------------------------------------------------------- /src/builder/StateRouteBuilder/StateRouteBuilder.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/StateRouteBuilder/StateRouteBuilder.test.ts -------------------------------------------------------------------------------- /src/builder/StateRouteBuilder/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/StateRouteBuilder/index.ts -------------------------------------------------------------------------------- /src/builder/WildcardFlagType.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/WildcardFlagType.ts -------------------------------------------------------------------------------- /src/builder/composers/ConstLocationComposer/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/ConstLocationComposer/index.ts -------------------------------------------------------------------------------- /src/builder/composers/PathLocationComposer/PathLocationComposer.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/PathLocationComposer/PathLocationComposer.test.ts -------------------------------------------------------------------------------- /src/builder/composers/PathLocationComposer/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/PathLocationComposer/index.ts -------------------------------------------------------------------------------- /src/builder/composers/SearchLocationComposer/SearchLocationComposer.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/SearchLocationComposer/SearchLocationComposer.test.ts -------------------------------------------------------------------------------- /src/builder/composers/SearchLocationComposer/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/SearchLocationComposer/index.ts -------------------------------------------------------------------------------- /src/builder/composers/SingleHashLocationComposer/SingleHashLocationComposer.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/SingleHashLocationComposer/SingleHashLocationComposer.test.ts -------------------------------------------------------------------------------- /src/builder/composers/SingleHashLocationComposer/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/SingleHashLocationComposer/index.ts -------------------------------------------------------------------------------- /src/builder/composers/StateLocationComposer/StateLocationComposer.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/StateLocationComposer/StateLocationComposer.test.ts -------------------------------------------------------------------------------- /src/builder/composers/StateLocationComposer/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/composers/StateLocationComposer/index.ts -------------------------------------------------------------------------------- /src/builder/symbols.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/builder/symbols.ts -------------------------------------------------------------------------------- /src/core/BuilderLink/BuilderLink.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/BuilderLink/BuilderLink.test.ts -------------------------------------------------------------------------------- /src/core/BuilderLink/BuilderLinkOptions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/BuilderLink/BuilderLinkOptions.ts -------------------------------------------------------------------------------- /src/core/BuilderLink/BuilderLinkState.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/BuilderLink/BuilderLinkState.ts -------------------------------------------------------------------------------- /src/core/BuilderLink/HasBuilderLink.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/BuilderLink/HasBuilderLink.ts -------------------------------------------------------------------------------- /src/core/BuilderLink/SegmentResolver.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/BuilderLink/SegmentResolver.ts -------------------------------------------------------------------------------- /src/core/BuilderLink/fillOptions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/BuilderLink/fillOptions.ts -------------------------------------------------------------------------------- /src/core/BuilderLink/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/BuilderLink/index.ts -------------------------------------------------------------------------------- /src/core/Location.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/Location.ts -------------------------------------------------------------------------------- /src/core/LocationComposer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/LocationComposer.ts -------------------------------------------------------------------------------- /src/core/RouteResolver/ResolvedRoute.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/RouteResolver/ResolvedRoute.ts -------------------------------------------------------------------------------- /src/core/RouteResolver/RouteResolver.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/RouteResolver/RouteResolver.test.ts -------------------------------------------------------------------------------- /src/core/RouteResolver/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/RouteResolver/index.ts -------------------------------------------------------------------------------- /src/core/RouteResolver/resolveChain.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/core/RouteResolver/resolveChain.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/integrationTests/LocationResolving.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/integrationTests/LocationResolving.test.ts -------------------------------------------------------------------------------- /src/integrationTests/issue-24.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/integrationTests/issue-24.test.tsx -------------------------------------------------------------------------------- /src/integrationTests/issue-36.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/integrationTests/issue-36.test.tsx -------------------------------------------------------------------------------- /src/integrationTests/issue-39.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/integrationTests/issue-39.test.tsx -------------------------------------------------------------------------------- /src/jest.setup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/jest.setup.ts -------------------------------------------------------------------------------- /src/react/Rocon.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/Rocon.ts -------------------------------------------------------------------------------- /src/react/components/Link.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/components/Link.test.tsx -------------------------------------------------------------------------------- /src/react/components/Link.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/components/Link.tsx -------------------------------------------------------------------------------- /src/react/components/Redirect.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/components/Redirect.test.tsx -------------------------------------------------------------------------------- /src/react/components/Redirect.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/components/Redirect.tsx -------------------------------------------------------------------------------- /src/react/components/RoconRoot.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/components/RoconRoot.tsx -------------------------------------------------------------------------------- /src/react/contexts/HistoryContext.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/contexts/HistoryContext.ts -------------------------------------------------------------------------------- /src/react/contexts/LocationContext.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/contexts/LocationContext.ts -------------------------------------------------------------------------------- /src/react/contexts/RouteContext.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/contexts/RouteContext.ts -------------------------------------------------------------------------------- /src/react/errors/LocationNotFoundError.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/errors/LocationNotFoundError.ts -------------------------------------------------------------------------------- /src/react/hooks/useHistory.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/hooks/useHistory.ts -------------------------------------------------------------------------------- /src/react/hooks/useLocation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/hooks/useLocation.ts -------------------------------------------------------------------------------- /src/react/hooks/useNavigate.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/hooks/useNavigate.test.tsx -------------------------------------------------------------------------------- /src/react/hooks/useNavigate.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/hooks/useNavigate.ts -------------------------------------------------------------------------------- /src/react/hooks/useRoutes.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/hooks/useRoutes.test.tsx -------------------------------------------------------------------------------- /src/react/hooks/useRoutes.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/hooks/useRoutes.tsx -------------------------------------------------------------------------------- /src/react/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/index.ts -------------------------------------------------------------------------------- /src/react/logic/getNavigationBaseLocation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/logic/getNavigationBaseLocation.ts -------------------------------------------------------------------------------- /src/react/shorthand.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/shorthand.ts -------------------------------------------------------------------------------- /src/react/test-utils/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/test-utils/index.tsx -------------------------------------------------------------------------------- /src/react/types/NavigateFunction.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/types/NavigateFunction.ts -------------------------------------------------------------------------------- /src/react/types/ReactElement.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/types/ReactElement.ts -------------------------------------------------------------------------------- /src/react/types/ReactRouteBuilder.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/types/ReactRouteBuilder.ts -------------------------------------------------------------------------------- /src/react/types/ReactRouteRecord.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/react/types/ReactRouteRecord.ts -------------------------------------------------------------------------------- /src/shorthand.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/shorthand.ts -------------------------------------------------------------------------------- /src/util/TODO.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/TODO.ts -------------------------------------------------------------------------------- /src/util/assert.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/assert.ts -------------------------------------------------------------------------------- /src/util/locationToURL.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/locationToURL.test.ts -------------------------------------------------------------------------------- /src/util/locationToURL.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/locationToURL.ts -------------------------------------------------------------------------------- /src/util/noop.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/noop.ts -------------------------------------------------------------------------------- /src/util/path/composePath.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/path/composePath.test.ts -------------------------------------------------------------------------------- /src/util/path/composePath.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/path/composePath.ts -------------------------------------------------------------------------------- /src/util/path/decomposePath.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/path/decomposePath.test.ts -------------------------------------------------------------------------------- /src/util/path/decomposePath.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/path/decomposePath.ts -------------------------------------------------------------------------------- /src/util/path/locationDiff.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/path/locationDiff.test.ts -------------------------------------------------------------------------------- /src/util/path/locationDiff.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/path/locationDiff.ts -------------------------------------------------------------------------------- /src/util/types/Clean.ts: -------------------------------------------------------------------------------- 1 | export type Clean = { [K in keyof T]: T[K] }; 2 | -------------------------------------------------------------------------------- /src/util/types/OptionalIf.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/types/OptionalIf.ts -------------------------------------------------------------------------------- /src/util/types/PartialIf.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/types/PartialIf.ts -------------------------------------------------------------------------------- /src/util/types/PartiallyPartial.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/types/PartiallyPartial.ts -------------------------------------------------------------------------------- /src/util/useIsFirstRendering.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/util/useIsFirstRendering.ts -------------------------------------------------------------------------------- /src/validator/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/src/validator/index.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/uhyo/rocon/HEAD/tsconfig.json --------------------------------------------------------------------------------