Skip to content

Commit

Permalink
Module-first setup
Browse files Browse the repository at this point in the history
  • Loading branch information
dai-shi committed May 23, 2024
1 parent 76b12d2 commit 86cc297
Show file tree
Hide file tree
Showing 40 changed files with 2,589 additions and 7,800 deletions.
2 changes: 1 addition & 1 deletion .codesandbox/ci.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"buildCommand": "compile",
"sandboxes": ["new", "react-typescript-react-ts"],
"node": "14"
"node": "18"
}
2 changes: 0 additions & 2 deletions .eslintignore

This file was deleted.

39 changes: 39 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/* eslint-env node */
module.exports = {
root: true,
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint'],
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'plugin:import/recommended',
'plugin:import/typescript',
'plugin:react/recommended',
'plugin:react/jsx-runtime',
'plugin:react-hooks/recommended',
'plugin:jsx-a11y/recommended',
'prettier',
],
ignorePatterns: ['dist/'],
settings: {
'import/resolver': {
typescript: true,
},
react: { version: 'detect' },
},
rules: {
'import/no-unresolved': ['error', { ignore: ['jotai-suspense'] }],
'@typescript-eslint/no-unused-vars': [
'error',
{
args: 'all',
argsIgnorePattern: '^_',
caughtErrors: 'all',
caughtErrorsIgnorePattern: '^_',
destructuredArrayIgnorePattern: '^_',
varsIgnorePattern: '^_',
ignoreRestSiblings: true,
},
],
},
};
61 changes: 0 additions & 61 deletions .eslintrc.json

This file was deleted.

2 changes: 2 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/pnpm-lock.yaml
/dist
4 changes: 0 additions & 4 deletions .prettierrc

This file was deleted.

2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,7 @@
## [Unreleased]

## [0.2.0] - 2023-01-31

### Added

- Migrate to Jotai v2 API #2
9 changes: 9 additions & 0 deletions examples/01_minimal/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<html>
<head>
<title>example</title>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>
27 changes: 12 additions & 15 deletions examples/01_minimal/package.json
Original file line number Diff line number Diff line change
@@ -1,24 +1,21 @@
{
"name": "jotai-suspense-example",
"version": "0.1.0",
"name": "example",
"version": "0.0.0",
"private": true,
"type": "module",
"dependencies": {
"jotai": "latest",
"jotai-suspense": "latest",
"react": "latest",
"react-dom": "latest",
"react-scripts": "latest"
"react-dom": "latest"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
"devDependencies": {
"@types/react": "latest",
"@types/react-dom": "latest",
"typescript": "latest",
"vite": "latest"
},
"browserslist": [
">0.2%",
"not dead",
"not ie <= 11",
"not op_mini all"
]
"scripts": {
"dev": "vite"
}
}
8 changes: 0 additions & 8 deletions examples/01_minimal/public/index.html

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import React, { Suspense } from 'react';
import { createRoot } from 'react-dom/client';
import { Suspense } from 'react';
import { useAtom } from 'jotai/react';
import { atom } from 'jotai/vanilla';
import { usePrepareAtoms } from 'jotai-suspense';

const sleep = (ms) =>
const sleep = (ms: number) =>
new Promise((resolve) => {
setTimeout(resolve, ms);
});
Expand Down Expand Up @@ -47,4 +46,4 @@ const App = () => {
);
};

createRoot(document.getElementById('app')).render(<App />);
export default App;
10 changes: 10 additions & 0 deletions examples/01_minimal/src/main.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';

import App from './app';

createRoot(document.getElementById('root')!).render(
<StrictMode>
<App />
</StrictMode>,
);
14 changes: 14 additions & 0 deletions examples/01_minimal/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"compilerOptions": {
"strict": true,
"target": "es2018",
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "bundler",
"skipLibCheck": true,
"allowJs": true,
"noUncheckedIndexedAccess": true,
"exactOptionalPropertyTypes": true,
"jsx": "react-jsx"
}
}
9 changes: 9 additions & 0 deletions examples/02_comparison/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<html>
<head>
<title>example</title>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>
21 changes: 21 additions & 0 deletions examples/02_comparison/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"name": "example",
"version": "0.0.0",
"private": true,
"type": "module",
"dependencies": {
"jotai": "latest",
"jotai-suspense": "latest",
"react": "latest",
"react-dom": "latest"
},
"devDependencies": {
"@types/react": "latest",
"@types/react-dom": "latest",
"typescript": "latest",
"vite": "latest"
},
"scripts": {
"dev": "vite"
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import React, { Suspense, useState } from 'react';
import { Suspense, useState } from 'react';
import { Provider, useAtom } from 'jotai/react';
import { atom } from 'jotai/vanilla';
import { usePrepareAtoms } from 'jotai-suspense';
Expand Down
10 changes: 10 additions & 0 deletions examples/02_comparison/src/main.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';

import App from './app';

createRoot(document.getElementById('root')!).render(
<StrictMode>
<App />
</StrictMode>,
);
14 changes: 14 additions & 0 deletions examples/02_comparison/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"compilerOptions": {
"strict": true,
"target": "es2018",
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "bundler",
"skipLibCheck": true,
"allowJs": true,
"noUncheckedIndexedAccess": true,
"exactOptionalPropertyTypes": true,
"jsx": "react-jsx"
}
}
27 changes: 0 additions & 27 deletions examples/02_typescript/package.json

This file was deleted.

8 changes: 0 additions & 8 deletions examples/02_typescript/public/index.html

This file was deleted.

9 changes: 0 additions & 9 deletions examples/02_typescript/src/index.tsx

This file was deleted.

9 changes: 9 additions & 0 deletions examples/03_pending/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<html>
<head>
<title>example</title>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>
27 changes: 12 additions & 15 deletions examples/03_pending/package.json
Original file line number Diff line number Diff line change
@@ -1,24 +1,21 @@
{
"name": "jotai-suspense-example",
"version": "0.1.0",
"name": "example",
"version": "0.0.0",
"private": true,
"type": "module",
"dependencies": {
"jotai": "latest",
"jotai-suspense": "latest",
"react": "latest",
"react-dom": "latest",
"react-scripts": "latest"
"react-dom": "latest"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
"devDependencies": {
"@types/react": "latest",
"@types/react-dom": "latest",
"typescript": "latest",
"vite": "latest"
},
"browserslist": [
">0.2%",
"not dead",
"not ie <= 11",
"not op_mini all"
]
"scripts": {
"dev": "vite"
}
}
8 changes: 0 additions & 8 deletions examples/03_pending/public/index.html

This file was deleted.

Loading

0 comments on commit 86cc297

Please sign in to comment.