├── .gitignore ├── .prettierrc ├── LICENSE ├── README.md ├── package.json ├── packages ├── example │ ├── .vscode │ │ └── settings.json │ ├── app │ │ ├── grid │ │ │ ├── Grid.tsx │ │ │ └── page.tsx │ │ ├── head.tsx │ │ ├── layout.css │ │ ├── layout.tsx │ │ └── page.tsx │ ├── next-env.d.ts │ ├── next.config.mjs │ ├── package.json │ ├── pages │ │ ├── simple.tsx │ │ └── timeline.tsx │ └── tsconfig.json └── reforest │ ├── README.md │ ├── jest.config.js │ ├── package.json │ ├── src │ ├── contexts.ts │ ├── index.ts │ ├── use-indexed-children.tsx │ ├── use-roving-index.ts │ ├── use-tree.tsx │ └── utils.ts │ ├── tests │ ├── App.tsx │ ├── __snapshots__ │ │ ├── client.test.tsx.snap │ │ └── server.test.tsx.snap │ ├── client.test.tsx │ └── server.test.tsx │ └── tsconfig.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml └── turbo.json /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/.prettierrc -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | packages/reforest/README.md -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/package.json -------------------------------------------------------------------------------- /packages/example/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/.vscode/settings.json -------------------------------------------------------------------------------- /packages/example/app/grid/Grid.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/app/grid/Grid.tsx -------------------------------------------------------------------------------- /packages/example/app/grid/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/app/grid/page.tsx -------------------------------------------------------------------------------- /packages/example/app/head.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/app/head.tsx -------------------------------------------------------------------------------- /packages/example/app/layout.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/app/layout.css -------------------------------------------------------------------------------- /packages/example/app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/app/layout.tsx -------------------------------------------------------------------------------- /packages/example/app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/app/page.tsx -------------------------------------------------------------------------------- /packages/example/next-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/next-env.d.ts -------------------------------------------------------------------------------- /packages/example/next.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/next.config.mjs -------------------------------------------------------------------------------- /packages/example/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/package.json -------------------------------------------------------------------------------- /packages/example/pages/simple.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/pages/simple.tsx -------------------------------------------------------------------------------- /packages/example/pages/timeline.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/pages/timeline.tsx -------------------------------------------------------------------------------- /packages/example/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/example/tsconfig.json -------------------------------------------------------------------------------- /packages/reforest/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/README.md -------------------------------------------------------------------------------- /packages/reforest/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/jest.config.js -------------------------------------------------------------------------------- /packages/reforest/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/package.json -------------------------------------------------------------------------------- /packages/reforest/src/contexts.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/src/contexts.ts -------------------------------------------------------------------------------- /packages/reforest/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/src/index.ts -------------------------------------------------------------------------------- /packages/reforest/src/use-indexed-children.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/src/use-indexed-children.tsx -------------------------------------------------------------------------------- /packages/reforest/src/use-roving-index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/src/use-roving-index.ts -------------------------------------------------------------------------------- /packages/reforest/src/use-tree.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/src/use-tree.tsx -------------------------------------------------------------------------------- /packages/reforest/src/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/src/utils.ts -------------------------------------------------------------------------------- /packages/reforest/tests/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/tests/App.tsx -------------------------------------------------------------------------------- /packages/reforest/tests/__snapshots__/client.test.tsx.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/tests/__snapshots__/client.test.tsx.snap -------------------------------------------------------------------------------- /packages/reforest/tests/__snapshots__/server.test.tsx.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/tests/__snapshots__/server.test.tsx.snap -------------------------------------------------------------------------------- /packages/reforest/tests/client.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/tests/client.test.tsx -------------------------------------------------------------------------------- /packages/reforest/tests/server.test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/tests/server.test.tsx -------------------------------------------------------------------------------- /packages/reforest/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/packages/reforest/tsconfig.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/pnpm-workspace.yaml -------------------------------------------------------------------------------- /turbo.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/souporserious/reforest/HEAD/turbo.json --------------------------------------------------------------------------------