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.
Files changed (88) hide show
  1. package/dist/fetch-router.d.ts +7 -0
  2. package/dist/fetch-router.d.ts.map +1 -1
  3. package/dist/node-tsx/load-module.d.ts +2 -0
  4. package/dist/node-tsx/load-module.d.ts.map +1 -0
  5. package/dist/node-tsx/load-module.js +2 -0
  6. package/dist/node-tsx.d.ts +3 -0
  7. package/dist/node-tsx.d.ts.map +1 -0
  8. package/{src/node-serve.ts → dist/node-tsx.js} +2 -1
  9. package/dist/render-middleware.d.ts +2 -0
  10. package/dist/render-middleware.d.ts.map +1 -0
  11. package/dist/render-middleware.js +2 -0
  12. package/dist/route-pattern/href.d.ts +2 -0
  13. package/dist/route-pattern/href.d.ts.map +1 -0
  14. package/dist/route-pattern/href.js +2 -0
  15. package/dist/route-pattern/join.d.ts +2 -0
  16. package/dist/route-pattern/join.d.ts.map +1 -0
  17. package/dist/route-pattern/join.js +2 -0
  18. package/dist/route-pattern/match.d.ts +2 -0
  19. package/dist/route-pattern/match.d.ts.map +1 -0
  20. package/dist/route-pattern/match.js +2 -0
  21. package/package.json +158 -44
  22. package/src/assert/README.md +109 -0
  23. package/src/assets/README.md +539 -0
  24. package/src/async-context-middleware/README.md +100 -0
  25. package/src/auth/README.md +445 -0
  26. package/src/auth-middleware/README.md +246 -0
  27. package/src/cli/README.md +78 -0
  28. package/src/compression-middleware/README.md +176 -0
  29. package/src/cookie/README.md +106 -0
  30. package/src/cop-middleware/README.md +117 -0
  31. package/src/cors-middleware/README.md +174 -0
  32. package/src/csrf-middleware/README.md +99 -0
  33. package/src/data-schema/README.md +422 -0
  34. package/src/data-table/README.md +552 -0
  35. package/src/data-table-mysql/README.md +97 -0
  36. package/src/data-table-postgres/README.md +74 -0
  37. package/src/data-table-sqlite/README.md +84 -0
  38. package/src/fetch-proxy/README.md +46 -0
  39. package/src/fetch-router/README.md +902 -0
  40. package/src/fetch-router.ts +7 -0
  41. package/src/file-storage/README.md +57 -0
  42. package/src/file-storage-s3/README.md +47 -0
  43. package/src/form-data-middleware/README.md +109 -0
  44. package/src/form-data-parser/README.md +160 -0
  45. package/src/fs/README.md +60 -0
  46. package/src/headers/README.md +629 -0
  47. package/src/html-template/README.md +101 -0
  48. package/src/lazy-file/README.md +109 -0
  49. package/src/logger-middleware/README.md +132 -0
  50. package/src/method-override-middleware/README.md +71 -0
  51. package/src/mime/README.md +110 -0
  52. package/src/multipart-parser/README.md +241 -0
  53. package/src/node-fetch-server/README.md +352 -0
  54. package/src/node-tsx/README.md +79 -0
  55. package/src/node-tsx/load-module.ts +2 -0
  56. package/{dist/node-serve.js → src/node-tsx.ts} +2 -1
  57. package/src/render-middleware/README.md +99 -0
  58. package/src/render-middleware.ts +2 -0
  59. package/src/route-pattern/README.md +291 -0
  60. package/src/route-pattern/href.ts +2 -0
  61. package/src/route-pattern/join.ts +2 -0
  62. package/src/route-pattern/match.ts +2 -0
  63. package/src/session/README.md +171 -0
  64. package/src/session-middleware/README.md +109 -0
  65. package/src/session-storage-memcache/README.md +37 -0
  66. package/src/session-storage-redis/README.md +37 -0
  67. package/src/static-middleware/README.md +89 -0
  68. package/src/tar-parser/README.md +74 -0
  69. package/src/terminal/README.md +92 -0
  70. package/src/test/README.md +430 -0
  71. package/src/ui/README.md +219 -0
  72. package/src/ui/accordion/README.md +166 -0
  73. package/src/ui/anchor/README.md +153 -0
  74. package/src/ui/animation/README.md +316 -0
  75. package/src/ui/breadcrumbs/README.md +55 -0
  76. package/src/ui/button/README.md +44 -0
  77. package/src/ui/combobox/README.md +145 -0
  78. package/src/ui/glyph/README.md +72 -0
  79. package/src/ui/listbox/README.md +115 -0
  80. package/src/ui/menu/README.md +96 -0
  81. package/src/ui/popover/README.md +122 -0
  82. package/src/ui/scroll-lock/README.md +33 -0
  83. package/src/ui/select/README.md +107 -0
  84. package/src/ui/server/README.md +90 -0
  85. package/src/ui/test/README.md +107 -0
  86. package/src/ui/theme/README.md +103 -0
  87. package/dist/node-serve.d.ts +0 -2
  88. 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)