remix 3.0.0-beta.0 → 3.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fetch-router.d.ts +7 -0
- package/dist/fetch-router.d.ts.map +1 -1
- package/dist/node-tsx/load-module.d.ts +2 -0
- package/dist/node-tsx/load-module.d.ts.map +1 -0
- package/dist/node-tsx/load-module.js +2 -0
- package/dist/node-tsx.d.ts +3 -0
- package/dist/node-tsx.d.ts.map +1 -0
- package/{src/node-serve.ts → dist/node-tsx.js} +2 -1
- package/dist/render-middleware.d.ts +2 -0
- package/dist/render-middleware.d.ts.map +1 -0
- package/dist/render-middleware.js +2 -0
- package/dist/route-pattern/href.d.ts +2 -0
- package/dist/route-pattern/href.d.ts.map +1 -0
- package/dist/route-pattern/href.js +2 -0
- package/dist/route-pattern/join.d.ts +2 -0
- package/dist/route-pattern/join.d.ts.map +1 -0
- package/dist/route-pattern/join.js +2 -0
- package/dist/route-pattern/match.d.ts +2 -0
- package/dist/route-pattern/match.d.ts.map +1 -0
- package/dist/route-pattern/match.js +2 -0
- package/package.json +158 -44
- package/src/assert/README.md +109 -0
- package/src/assets/README.md +539 -0
- package/src/async-context-middleware/README.md +100 -0
- package/src/auth/README.md +445 -0
- package/src/auth-middleware/README.md +246 -0
- package/src/cli/README.md +78 -0
- package/src/compression-middleware/README.md +176 -0
- package/src/cookie/README.md +106 -0
- package/src/cop-middleware/README.md +117 -0
- package/src/cors-middleware/README.md +174 -0
- package/src/csrf-middleware/README.md +99 -0
- package/src/data-schema/README.md +422 -0
- package/src/data-table/README.md +552 -0
- package/src/data-table-mysql/README.md +97 -0
- package/src/data-table-postgres/README.md +74 -0
- package/src/data-table-sqlite/README.md +84 -0
- package/src/fetch-proxy/README.md +46 -0
- package/src/fetch-router/README.md +902 -0
- package/src/fetch-router.ts +7 -0
- package/src/file-storage/README.md +57 -0
- package/src/file-storage-s3/README.md +47 -0
- package/src/form-data-middleware/README.md +109 -0
- package/src/form-data-parser/README.md +160 -0
- package/src/fs/README.md +60 -0
- package/src/headers/README.md +629 -0
- package/src/html-template/README.md +101 -0
- package/src/lazy-file/README.md +109 -0
- package/src/logger-middleware/README.md +132 -0
- package/src/method-override-middleware/README.md +71 -0
- package/src/mime/README.md +110 -0
- package/src/multipart-parser/README.md +241 -0
- package/src/node-fetch-server/README.md +352 -0
- package/src/node-tsx/README.md +79 -0
- package/src/node-tsx/load-module.ts +2 -0
- package/{dist/node-serve.js → src/node-tsx.ts} +2 -1
- package/src/render-middleware/README.md +99 -0
- package/src/render-middleware.ts +2 -0
- package/src/route-pattern/README.md +291 -0
- package/src/route-pattern/href.ts +2 -0
- package/src/route-pattern/join.ts +2 -0
- package/src/route-pattern/match.ts +2 -0
- package/src/session/README.md +171 -0
- package/src/session-middleware/README.md +109 -0
- package/src/session-storage-memcache/README.md +37 -0
- package/src/session-storage-redis/README.md +37 -0
- package/src/static-middleware/README.md +89 -0
- package/src/tar-parser/README.md +74 -0
- package/src/terminal/README.md +92 -0
- package/src/test/README.md +430 -0
- package/src/ui/README.md +219 -0
- package/src/ui/accordion/README.md +166 -0
- package/src/ui/anchor/README.md +153 -0
- package/src/ui/animation/README.md +316 -0
- package/src/ui/breadcrumbs/README.md +55 -0
- package/src/ui/button/README.md +44 -0
- package/src/ui/combobox/README.md +145 -0
- package/src/ui/glyph/README.md +72 -0
- package/src/ui/listbox/README.md +115 -0
- package/src/ui/menu/README.md +96 -0
- package/src/ui/popover/README.md +122 -0
- package/src/ui/scroll-lock/README.md +33 -0
- package/src/ui/select/README.md +107 -0
- package/src/ui/server/README.md +90 -0
- package/src/ui/test/README.md +107 -0
- package/src/ui/theme/README.md +103 -0
- package/dist/node-serve.d.ts +0 -2
- package/dist/node-serve.d.ts.map +0 -1
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# data-table-postgres
|
|
2
|
+
|
|
3
|
+
PostgreSQL adapter for [`remix/data-table`](https://github.com/remix-run/remix/tree/main/packages/data-table).
|
|
4
|
+
Use this package when you want `data-table` APIs backed by `pg`.
|
|
5
|
+
|
|
6
|
+
## Features
|
|
7
|
+
|
|
8
|
+
- **Native `pg` Integration**: Works with `pg` `Pool` and `PoolClient` instances
|
|
9
|
+
- **Full `data-table` API Support**: Queries, relations, writes, and transactions
|
|
10
|
+
- **Adapter-Owned Compiler**: SQL compilation lives in this adapter, with optional shared pure helpers from `data-table`
|
|
11
|
+
- **Multi-Statement Migrations**: `executeScript()` runs `up.sql` / `down.sql` files natively via `pg`
|
|
12
|
+
- **Postgres Capabilities Enabled By Default**:
|
|
13
|
+
- `returning: true`
|
|
14
|
+
- `savepoints: true`
|
|
15
|
+
- `upsert: true`
|
|
16
|
+
- `transactionalDdl: true`
|
|
17
|
+
- `migrationLock: true`
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```sh
|
|
22
|
+
npm i remix pg
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Usage
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
import { Pool } from 'pg'
|
|
29
|
+
import { createDatabase } from 'remix/data-table'
|
|
30
|
+
import { createPostgresDatabaseAdapter } from 'remix/data-table/postgres'
|
|
31
|
+
|
|
32
|
+
let pool = new Pool({
|
|
33
|
+
connectionString: process.env.DATABASE_URL,
|
|
34
|
+
})
|
|
35
|
+
|
|
36
|
+
let db = createDatabase(createPostgresDatabaseAdapter(pool))
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Use `db.query(...)`, relation loading, and transactions from `remix/data-table`.
|
|
40
|
+
Import any driver-specific types you need directly from `pg`.
|
|
41
|
+
|
|
42
|
+
## Adapter Capabilities
|
|
43
|
+
|
|
44
|
+
`data-table-postgres` reports this capability set by default:
|
|
45
|
+
|
|
46
|
+
- `returning: true`
|
|
47
|
+
- `savepoints: true`
|
|
48
|
+
- `upsert: true`
|
|
49
|
+
- `transactionalDdl: true`
|
|
50
|
+
- `migrationLock: true`
|
|
51
|
+
|
|
52
|
+
## Advanced Usage
|
|
53
|
+
|
|
54
|
+
### Transaction Options
|
|
55
|
+
|
|
56
|
+
Transaction options are passed through to the adapter as hints.
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
await db.transaction(async (txDb) => txDb.exec('select 1'), {
|
|
60
|
+
isolationLevel: 'serializable',
|
|
61
|
+
readOnly: false,
|
|
62
|
+
})
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Related Packages
|
|
66
|
+
|
|
67
|
+
- [`data-table`](https://github.com/remix-run/remix/tree/main/packages/data-table) - Core query/relations API
|
|
68
|
+
- [`data-schema`](https://github.com/remix-run/remix/tree/main/packages/data-schema) - Schema parsing and validation
|
|
69
|
+
- [`data-table-mysql`](https://github.com/remix-run/remix/tree/main/packages/data-table-mysql) - MySQL adapter
|
|
70
|
+
- [`data-table-sqlite`](https://github.com/remix-run/remix/tree/main/packages/data-table-sqlite) - SQLite adapter
|
|
71
|
+
|
|
72
|
+
## License
|
|
73
|
+
|
|
74
|
+
See [LICENSE](https://github.com/remix-run/remix/blob/main/LICENSE)
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# data-table-sqlite
|
|
2
|
+
|
|
3
|
+
SQLite adapter for [`remix/data-table`](https://github.com/remix-run/remix/tree/main/packages/data-table).
|
|
4
|
+
Use this package when you want `data-table` APIs backed by a synchronous SQLite client.
|
|
5
|
+
|
|
6
|
+
## Features
|
|
7
|
+
|
|
8
|
+
- **Native Runtime SQLite Support**: Works with Node's `node:sqlite` `DatabaseSync`, Bun's `bun:sqlite` `Database`, and compatible synchronous SQLite clients
|
|
9
|
+
- **Full `data-table` API Support**: Queries, relations, writes, and transactions
|
|
10
|
+
- **Adapter-Owned Compiler**: SQL compilation lives in this adapter, with optional shared pure helpers from `data-table`
|
|
11
|
+
- **Multi-Statement Migrations**: `executeScript()` runs `up.sql` / `down.sql` files via `Database.exec()`
|
|
12
|
+
- **SQLite Capabilities Enabled By Default**:
|
|
13
|
+
- `returning: true`
|
|
14
|
+
- `savepoints: true`
|
|
15
|
+
- `upsert: true`
|
|
16
|
+
- `transactionalDdl: true`
|
|
17
|
+
- `migrationLock: false`
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```sh
|
|
22
|
+
npm i remix
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Usage
|
|
26
|
+
|
|
27
|
+
### Node
|
|
28
|
+
|
|
29
|
+
```ts
|
|
30
|
+
import { DatabaseSync } from 'node:sqlite'
|
|
31
|
+
import { createDatabase } from 'remix/data-table'
|
|
32
|
+
import { createSqliteDatabaseAdapter } from 'remix/data-table/sqlite'
|
|
33
|
+
|
|
34
|
+
let sqlite = new DatabaseSync('app.db')
|
|
35
|
+
let db = createDatabase(createSqliteDatabaseAdapter(sqlite))
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Bun
|
|
39
|
+
|
|
40
|
+
```ts
|
|
41
|
+
import { Database } from 'bun:sqlite'
|
|
42
|
+
import { createDatabase } from 'remix/data-table'
|
|
43
|
+
import { createSqliteDatabaseAdapter } from 'remix/data-table/sqlite'
|
|
44
|
+
|
|
45
|
+
let sqlite = new Database('app.db')
|
|
46
|
+
let db = createDatabase(createSqliteDatabaseAdapter(sqlite))
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
This is a good fit for local development, embedded deployments, and single-node services.
|
|
50
|
+
Import any driver-specific types you need directly from your runtime's SQLite module.
|
|
51
|
+
|
|
52
|
+
## Adapter Capabilities
|
|
53
|
+
|
|
54
|
+
`data-table-sqlite` reports this capability set by default:
|
|
55
|
+
|
|
56
|
+
- `returning: true`
|
|
57
|
+
- `savepoints: true`
|
|
58
|
+
- `upsert: true`
|
|
59
|
+
- `transactionalDdl: true`
|
|
60
|
+
- `migrationLock: false`
|
|
61
|
+
|
|
62
|
+
## Advanced Usage
|
|
63
|
+
|
|
64
|
+
### In-Memory Database For Tests
|
|
65
|
+
|
|
66
|
+
```ts
|
|
67
|
+
import { DatabaseSync } from 'node:sqlite'
|
|
68
|
+
import { createDatabase } from 'remix/data-table'
|
|
69
|
+
import { createSqliteDatabaseAdapter } from 'remix/data-table/sqlite'
|
|
70
|
+
|
|
71
|
+
let sqlite = new DatabaseSync(':memory:')
|
|
72
|
+
let db = createDatabase(createSqliteDatabaseAdapter(sqlite))
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Related Packages
|
|
76
|
+
|
|
77
|
+
- [`data-table`](https://github.com/remix-run/remix/tree/main/packages/data-table) - Core query/relations API
|
|
78
|
+
- [`data-schema`](https://github.com/remix-run/remix/tree/main/packages/data-schema) - Schema parsing and validation
|
|
79
|
+
- [`data-table-postgres`](https://github.com/remix-run/remix/tree/main/packages/data-table-postgres) - PostgreSQL adapter
|
|
80
|
+
- [`data-table-mysql`](https://github.com/remix-run/remix/tree/main/packages/data-table-mysql) - MySQL adapter
|
|
81
|
+
|
|
82
|
+
## License
|
|
83
|
+
|
|
84
|
+
See [LICENSE](https://github.com/remix-run/remix/blob/main/LICENSE)
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# fetch-proxy
|
|
2
|
+
|
|
3
|
+
HTTP proxy utilities built on the web [Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API).
|
|
4
|
+
Use `fetch-proxy` to create `fetch` handlers that forward requests to target servers while optionally rewriting headers and cookies.
|
|
5
|
+
|
|
6
|
+
## Features
|
|
7
|
+
|
|
8
|
+
- **Web Standards** - Built on the standard [JavaScript Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)
|
|
9
|
+
- **Cookie Rewriting** - Supports rewriting `Set-Cookie` headers received from target server
|
|
10
|
+
- **Forwarding Headers** - Supports `X-Forwarded-Proto`, `X-Forwarded-Host`, and `X-Forwarded-Port` headers
|
|
11
|
+
- **Custom Fetch** - Supports custom `fetch` implementations
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
```sh
|
|
16
|
+
npm i remix
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
```ts
|
|
22
|
+
import { createFetchProxy } from 'remix/fetch-proxy'
|
|
23
|
+
|
|
24
|
+
// Create a proxy that sends all requests through to remix.run
|
|
25
|
+
let proxy = createFetchProxy('https://remix.run')
|
|
26
|
+
|
|
27
|
+
// This fetch handler is probably running as part of your server somewhere...
|
|
28
|
+
function handleFetch(request: Request): Promise<Response> {
|
|
29
|
+
return proxy(request)
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Test it out by manually throwing a Request at it
|
|
33
|
+
let response = await handleFetch(new Request('https://shopify.com'))
|
|
34
|
+
|
|
35
|
+
let text = await response.text()
|
|
36
|
+
let title = text.match(/<title>([^<]+)<\/title>/)[1]
|
|
37
|
+
assert(title.includes('Remix'))
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Related Packages
|
|
41
|
+
|
|
42
|
+
- [`node-fetch-server`](https://github.com/remix-run/remix/tree/main/packages/node-fetch-server) - Build HTTP servers for Node.js using the web fetch API
|
|
43
|
+
|
|
44
|
+
## License
|
|
45
|
+
|
|
46
|
+
See [LICENSE](https://github.com/remix-run/remix/blob/main/LICENSE)
|