create-croissant 0.1.44 → 0.1.46

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 (170) hide show
  1. package/dist/add.js +8 -8
  2. package/dist/index.js +8 -8
  3. package/package.json +10 -10
  4. package/template/.env.example +2 -2
  5. package/template/.github/dependabot.yml +15 -0
  6. package/template/.github/workflows/ci.yml +143 -0
  7. package/template/.github/workflows/dependabot-automerge.yml +23 -0
  8. package/template/.husky/pre-push +0 -0
  9. package/template/README.md +23 -23
  10. package/template/apps/desktop/.eslintcache +1 -0
  11. package/template/apps/desktop/README.md +5 -5
  12. package/template/apps/desktop/package.json +5 -5
  13. package/template/apps/mobile/README.md +3 -3
  14. package/template/apps/mobile/app/(tabs)/_layout.tsx +21 -14
  15. package/template/apps/mobile/app/(tabs)/account.tsx +147 -0
  16. package/template/apps/mobile/app/(tabs)/explore.tsx +335 -104
  17. package/template/apps/mobile/app/(tabs)/index.tsx +94 -96
  18. package/template/apps/mobile/app/_layout.tsx +26 -7
  19. package/template/apps/mobile/app/index.tsx +129 -0
  20. package/template/apps/mobile/app/login.tsx +135 -0
  21. package/template/apps/mobile/app/signup.tsx +144 -0
  22. package/template/apps/mobile/app.json +9 -4
  23. package/template/apps/mobile/components/ui/button.tsx +86 -0
  24. package/template/apps/mobile/components/ui/input.tsx +56 -0
  25. package/template/apps/mobile/lib/auth-client.ts +1 -1
  26. package/template/apps/mobile/lib/orpc.ts +28 -0
  27. package/template/apps/mobile/package.json +14 -1
  28. package/template/apps/mobile/scripts/reset-project.js +0 -0
  29. package/template/apps/mobile/tsconfig.json +4 -1
  30. package/template/apps/platform/.env.example +1 -1
  31. package/template/apps/platform/package.json +10 -6
  32. package/template/apps/platform/portless.json +3 -0
  33. package/template/apps/platform/src/components/login-form.tsx +5 -4
  34. package/template/apps/platform/src/components/signup-form.tsx +12 -16
  35. package/template/apps/platform/src/router.tsx +0 -1
  36. package/template/apps/platform/src/routes/__root.tsx +6 -2
  37. package/template/apps/platform/src/routes/_auth/account.tsx +13 -17
  38. package/template/apps/platform/src/routes/_auth/examples/client-orpc-auth.tsx +2 -6
  39. package/template/apps/platform/src/routes/_public/examples/client-orpc.tsx +16 -29
  40. package/template/apps/platform/src/routes/_public/examples/ssr-orpc.tsx +10 -14
  41. package/template/apps/platform/src/routes/api/auth/$.ts +23 -2
  42. package/template/apps/platform/src/routes/api/rpc.$.ts +18 -0
  43. package/template/package.json +23 -18
  44. package/template/packages/auth/package.json +2 -2
  45. package/template/packages/db/package.json +1 -1
  46. package/template/packages/orpc/package.json +11 -4
  47. package/template/packages/orpc/src/lib/planets.ts +18 -18
  48. package/template/packages/orpc/src/lib/router.ts +3 -3
  49. package/template/packages/orpc/src/react/context.tsx +23 -0
  50. package/template/packages/orpc/src/react/general.ts +29 -0
  51. package/template/packages/orpc/src/react/index.ts +3 -0
  52. package/template/packages/orpc/src/react/planets.ts +90 -0
  53. package/template/packages/ui/package.json +3 -2
  54. package/template/pnpm-workspace.yaml +3 -0
  55. package/template/tsconfig.json +2 -1
  56. package/template/apps/mobile/app/modal.tsx +0 -29
  57. package/template/packages/orpc/node_modules/@types/node/LICENSE +0 -21
  58. package/template/packages/orpc/node_modules/@types/node/README.md +0 -15
  59. package/template/packages/orpc/node_modules/@types/node/assert/strict.d.ts +0 -111
  60. package/template/packages/orpc/node_modules/@types/node/assert.d.ts +0 -1078
  61. package/template/packages/orpc/node_modules/@types/node/async_hooks.d.ts +0 -603
  62. package/template/packages/orpc/node_modules/@types/node/buffer.buffer.d.ts +0 -472
  63. package/template/packages/orpc/node_modules/@types/node/buffer.d.ts +0 -1934
  64. package/template/packages/orpc/node_modules/@types/node/child_process.d.ts +0 -1476
  65. package/template/packages/orpc/node_modules/@types/node/cluster.d.ts +0 -578
  66. package/template/packages/orpc/node_modules/@types/node/compatibility/disposable.d.ts +0 -14
  67. package/template/packages/orpc/node_modules/@types/node/compatibility/index.d.ts +0 -9
  68. package/template/packages/orpc/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  69. package/template/packages/orpc/node_modules/@types/node/compatibility/iterators.d.ts +0 -20
  70. package/template/packages/orpc/node_modules/@types/node/console.d.ts +0 -452
  71. package/template/packages/orpc/node_modules/@types/node/constants.d.ts +0 -21
  72. package/template/packages/orpc/node_modules/@types/node/crypto.d.ts +0 -4545
  73. package/template/packages/orpc/node_modules/@types/node/dgram.d.ts +0 -600
  74. package/template/packages/orpc/node_modules/@types/node/diagnostics_channel.d.ts +0 -578
  75. package/template/packages/orpc/node_modules/@types/node/dns/promises.d.ts +0 -503
  76. package/template/packages/orpc/node_modules/@types/node/dns.d.ts +0 -923
  77. package/template/packages/orpc/node_modules/@types/node/domain.d.ts +0 -170
  78. package/template/packages/orpc/node_modules/@types/node/events.d.ts +0 -976
  79. package/template/packages/orpc/node_modules/@types/node/fs/promises.d.ts +0 -1295
  80. package/template/packages/orpc/node_modules/@types/node/fs.d.ts +0 -4461
  81. package/template/packages/orpc/node_modules/@types/node/globals.d.ts +0 -172
  82. package/template/packages/orpc/node_modules/@types/node/globals.typedarray.d.ts +0 -38
  83. package/template/packages/orpc/node_modules/@types/node/http.d.ts +0 -2089
  84. package/template/packages/orpc/node_modules/@types/node/http2.d.ts +0 -2644
  85. package/template/packages/orpc/node_modules/@types/node/https.d.ts +0 -579
  86. package/template/packages/orpc/node_modules/@types/node/index.d.ts +0 -97
  87. package/template/packages/orpc/node_modules/@types/node/inspector.d.ts +0 -253
  88. package/template/packages/orpc/node_modules/@types/node/inspector.generated.d.ts +0 -4052
  89. package/template/packages/orpc/node_modules/@types/node/module.d.ts +0 -891
  90. package/template/packages/orpc/node_modules/@types/node/net.d.ts +0 -1076
  91. package/template/packages/orpc/node_modules/@types/node/os.d.ts +0 -506
  92. package/template/packages/orpc/node_modules/@types/node/package.json +0 -145
  93. package/template/packages/orpc/node_modules/@types/node/path.d.ts +0 -200
  94. package/template/packages/orpc/node_modules/@types/node/perf_hooks.d.ts +0 -968
  95. package/template/packages/orpc/node_modules/@types/node/process.d.ts +0 -2084
  96. package/template/packages/orpc/node_modules/@types/node/punycode.d.ts +0 -117
  97. package/template/packages/orpc/node_modules/@types/node/querystring.d.ts +0 -152
  98. package/template/packages/orpc/node_modules/@types/node/readline/promises.d.ts +0 -161
  99. package/template/packages/orpc/node_modules/@types/node/readline.d.ts +0 -594
  100. package/template/packages/orpc/node_modules/@types/node/repl.d.ts +0 -428
  101. package/template/packages/orpc/node_modules/@types/node/sea.d.ts +0 -153
  102. package/template/packages/orpc/node_modules/@types/node/sqlite.d.ts +0 -721
  103. package/template/packages/orpc/node_modules/@types/node/stream/consumers.d.ts +0 -38
  104. package/template/packages/orpc/node_modules/@types/node/stream/promises.d.ts +0 -90
  105. package/template/packages/orpc/node_modules/@types/node/stream/web.d.ts +0 -622
  106. package/template/packages/orpc/node_modules/@types/node/stream.d.ts +0 -1687
  107. package/template/packages/orpc/node_modules/@types/node/string_decoder.d.ts +0 -67
  108. package/template/packages/orpc/node_modules/@types/node/test.d.ts +0 -2163
  109. package/template/packages/orpc/node_modules/@types/node/timers/promises.d.ts +0 -108
  110. package/template/packages/orpc/node_modules/@types/node/timers.d.ts +0 -287
  111. package/template/packages/orpc/node_modules/@types/node/tls.d.ts +0 -1319
  112. package/template/packages/orpc/node_modules/@types/node/trace_events.d.ts +0 -197
  113. package/template/packages/orpc/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -468
  114. package/template/packages/orpc/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -34
  115. package/template/packages/orpc/node_modules/@types/node/ts5.6/index.d.ts +0 -97
  116. package/template/packages/orpc/node_modules/@types/node/tty.d.ts +0 -208
  117. package/template/packages/orpc/node_modules/@types/node/url.d.ts +0 -984
  118. package/template/packages/orpc/node_modules/@types/node/util.d.ts +0 -2606
  119. package/template/packages/orpc/node_modules/@types/node/v8.d.ts +0 -920
  120. package/template/packages/orpc/node_modules/@types/node/vm.d.ts +0 -1000
  121. package/template/packages/orpc/node_modules/@types/node/wasi.d.ts +0 -181
  122. package/template/packages/orpc/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -34
  123. package/template/packages/orpc/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  124. package/template/packages/orpc/node_modules/@types/node/web-globals/events.d.ts +0 -97
  125. package/template/packages/orpc/node_modules/@types/node/web-globals/fetch.d.ts +0 -55
  126. package/template/packages/orpc/node_modules/@types/node/web-globals/navigator.d.ts +0 -22
  127. package/template/packages/orpc/node_modules/@types/node/web-globals/storage.d.ts +0 -24
  128. package/template/packages/orpc/node_modules/@types/node/worker_threads.d.ts +0 -784
  129. package/template/packages/orpc/node_modules/@types/node/zlib.d.ts +0 -747
  130. package/template/packages/orpc/node_modules/undici-types/LICENSE +0 -21
  131. package/template/packages/orpc/node_modules/undici-types/README.md +0 -6
  132. package/template/packages/orpc/node_modules/undici-types/agent.d.ts +0 -31
  133. package/template/packages/orpc/node_modules/undici-types/api.d.ts +0 -43
  134. package/template/packages/orpc/node_modules/undici-types/balanced-pool.d.ts +0 -29
  135. package/template/packages/orpc/node_modules/undici-types/cache.d.ts +0 -36
  136. package/template/packages/orpc/node_modules/undici-types/client.d.ts +0 -108
  137. package/template/packages/orpc/node_modules/undici-types/connector.d.ts +0 -34
  138. package/template/packages/orpc/node_modules/undici-types/content-type.d.ts +0 -21
  139. package/template/packages/orpc/node_modules/undici-types/cookies.d.ts +0 -28
  140. package/template/packages/orpc/node_modules/undici-types/diagnostics-channel.d.ts +0 -66
  141. package/template/packages/orpc/node_modules/undici-types/dispatcher.d.ts +0 -256
  142. package/template/packages/orpc/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -21
  143. package/template/packages/orpc/node_modules/undici-types/errors.d.ts +0 -149
  144. package/template/packages/orpc/node_modules/undici-types/eventsource.d.ts +0 -61
  145. package/template/packages/orpc/node_modules/undici-types/fetch.d.ts +0 -209
  146. package/template/packages/orpc/node_modules/undici-types/file.d.ts +0 -39
  147. package/template/packages/orpc/node_modules/undici-types/filereader.d.ts +0 -54
  148. package/template/packages/orpc/node_modules/undici-types/formdata.d.ts +0 -108
  149. package/template/packages/orpc/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  150. package/template/packages/orpc/node_modules/undici-types/global-origin.d.ts +0 -7
  151. package/template/packages/orpc/node_modules/undici-types/handlers.d.ts +0 -15
  152. package/template/packages/orpc/node_modules/undici-types/header.d.ts +0 -4
  153. package/template/packages/orpc/node_modules/undici-types/index.d.ts +0 -71
  154. package/template/packages/orpc/node_modules/undici-types/interceptors.d.ts +0 -17
  155. package/template/packages/orpc/node_modules/undici-types/mock-agent.d.ts +0 -50
  156. package/template/packages/orpc/node_modules/undici-types/mock-client.d.ts +0 -25
  157. package/template/packages/orpc/node_modules/undici-types/mock-errors.d.ts +0 -12
  158. package/template/packages/orpc/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  159. package/template/packages/orpc/node_modules/undici-types/mock-pool.d.ts +0 -25
  160. package/template/packages/orpc/node_modules/undici-types/package.json +0 -55
  161. package/template/packages/orpc/node_modules/undici-types/patch.d.ts +0 -33
  162. package/template/packages/orpc/node_modules/undici-types/pool-stats.d.ts +0 -19
  163. package/template/packages/orpc/node_modules/undici-types/pool.d.ts +0 -39
  164. package/template/packages/orpc/node_modules/undici-types/proxy-agent.d.ts +0 -28
  165. package/template/packages/orpc/node_modules/undici-types/readable.d.ts +0 -65
  166. package/template/packages/orpc/node_modules/undici-types/retry-agent.d.ts +0 -8
  167. package/template/packages/orpc/node_modules/undici-types/retry-handler.d.ts +0 -116
  168. package/template/packages/orpc/node_modules/undici-types/util.d.ts +0 -18
  169. package/template/packages/orpc/node_modules/undici-types/webidl.d.ts +0 -228
  170. package/template/packages/orpc/node_modules/undici-types/websocket.d.ts +0 -150
@@ -1,93 +0,0 @@
1
- import { IncomingHttpHeaders } from './header'
2
- import Dispatcher from './dispatcher';
3
- import { BodyInit, Headers } from './fetch'
4
-
5
- export {
6
- Interceptable,
7
- MockInterceptor,
8
- MockScope
9
- }
10
-
11
- /** The scope associated with a mock dispatch. */
12
- declare class MockScope<TData extends object = object> {
13
- constructor(mockDispatch: MockInterceptor.MockDispatch<TData>);
14
- /** Delay a reply by a set amount of time in ms. */
15
- delay(waitInMs: number): MockScope<TData>;
16
- /** Persist the defined mock data for the associated reply. It will return the defined mock data indefinitely. */
17
- persist(): MockScope<TData>;
18
- /** Define a reply for a set amount of matching requests. */
19
- times(repeatTimes: number): MockScope<TData>;
20
- }
21
-
22
- /** The interceptor for a Mock. */
23
- declare class MockInterceptor {
24
- constructor(options: MockInterceptor.Options, mockDispatches: MockInterceptor.MockDispatch[]);
25
- /** Mock an undici request with the defined reply. */
26
- reply<TData extends object = object>(replyOptionsCallback: MockInterceptor.MockReplyOptionsCallback<TData>): MockScope<TData>;
27
- reply<TData extends object = object>(
28
- statusCode: number,
29
- data?: TData | Buffer | string | MockInterceptor.MockResponseDataHandler<TData>,
30
- responseOptions?: MockInterceptor.MockResponseOptions
31
- ): MockScope<TData>;
32
- /** Mock an undici request by throwing the defined reply error. */
33
- replyWithError<TError extends Error = Error>(error: TError): MockScope;
34
- /** Set default reply headers on the interceptor for subsequent mocked replies. */
35
- defaultReplyHeaders(headers: IncomingHttpHeaders): MockInterceptor;
36
- /** Set default reply trailers on the interceptor for subsequent mocked replies. */
37
- defaultReplyTrailers(trailers: Record<string, string>): MockInterceptor;
38
- /** Set automatically calculated content-length header on subsequent mocked replies. */
39
- replyContentLength(): MockInterceptor;
40
- }
41
-
42
- declare namespace MockInterceptor {
43
- /** MockInterceptor options. */
44
- export interface Options {
45
- /** Path to intercept on. */
46
- path: string | RegExp | ((path: string) => boolean);
47
- /** Method to intercept on. Defaults to GET. */
48
- method?: string | RegExp | ((method: string) => boolean);
49
- /** Body to intercept on. */
50
- body?: string | RegExp | ((body: string) => boolean);
51
- /** Headers to intercept on. */
52
- headers?: Record<string, string | RegExp | ((body: string) => boolean)> | ((headers: Record<string, string>) => boolean);
53
- /** Query params to intercept on */
54
- query?: Record<string, any>;
55
- }
56
- export interface MockDispatch<TData extends object = object, TError extends Error = Error> extends Options {
57
- times: number | null;
58
- persist: boolean;
59
- consumed: boolean;
60
- data: MockDispatchData<TData, TError>;
61
- }
62
- export interface MockDispatchData<TData extends object = object, TError extends Error = Error> extends MockResponseOptions {
63
- error: TError | null;
64
- statusCode?: number;
65
- data?: TData | string;
66
- }
67
- export interface MockResponseOptions {
68
- headers?: IncomingHttpHeaders;
69
- trailers?: Record<string, string>;
70
- }
71
-
72
- export interface MockResponseCallbackOptions {
73
- path: string;
74
- method: string;
75
- headers?: Headers | Record<string, string>;
76
- origin?: string;
77
- body?: BodyInit | Dispatcher.DispatchOptions['body'] | null;
78
- maxRedirections?: number;
79
- }
80
-
81
- export type MockResponseDataHandler<TData extends object = object> = (
82
- opts: MockResponseCallbackOptions
83
- ) => TData | Buffer | string;
84
-
85
- export type MockReplyOptionsCallback<TData extends object = object> = (
86
- opts: MockResponseCallbackOptions
87
- ) => { statusCode: number, data?: TData | Buffer | string, responseOptions?: MockResponseOptions }
88
- }
89
-
90
- interface Interceptable extends Dispatcher {
91
- /** Intercepts any matching requests that use the same origin as this mock client. */
92
- intercept(options: MockInterceptor.Options): MockInterceptor;
93
- }
@@ -1,25 +0,0 @@
1
- import Pool from './pool'
2
- import MockAgent from './mock-agent'
3
- import { Interceptable, MockInterceptor } from './mock-interceptor'
4
- import Dispatcher from './dispatcher'
5
-
6
- export default MockPool
7
-
8
- /** MockPool extends the Pool API and allows one to mock requests. */
9
- declare class MockPool extends Pool implements Interceptable {
10
- constructor(origin: string, options: MockPool.Options);
11
- /** Intercepts any matching requests that use the same origin as this mock pool. */
12
- intercept(options: MockInterceptor.Options): MockInterceptor;
13
- /** Dispatches a mocked request. */
14
- dispatch(options: Dispatcher.DispatchOptions, handlers: Dispatcher.DispatchHandlers): boolean;
15
- /** Closes the mock pool and gracefully waits for enqueued requests to complete. */
16
- close(): Promise<void>;
17
- }
18
-
19
- declare namespace MockPool {
20
- /** MockPool options. */
21
- export interface Options extends Pool.Options {
22
- /** The agent to associate this MockPool with. */
23
- agent: MockAgent;
24
- }
25
- }
@@ -1,55 +0,0 @@
1
- {
2
- "name": "undici-types",
3
- "version": "6.21.0",
4
- "description": "A stand-alone types package for Undici",
5
- "homepage": "https://undici.nodejs.org",
6
- "bugs": {
7
- "url": "https://github.com/nodejs/undici/issues"
8
- },
9
- "repository": {
10
- "type": "git",
11
- "url": "git+https://github.com/nodejs/undici.git"
12
- },
13
- "license": "MIT",
14
- "types": "index.d.ts",
15
- "files": [
16
- "*.d.ts"
17
- ],
18
- "contributors": [
19
- {
20
- "name": "Daniele Belardi",
21
- "url": "https://github.com/dnlup",
22
- "author": true
23
- },
24
- {
25
- "name": "Ethan Arrowood",
26
- "url": "https://github.com/ethan-arrowood",
27
- "author": true
28
- },
29
- {
30
- "name": "Matteo Collina",
31
- "url": "https://github.com/mcollina",
32
- "author": true
33
- },
34
- {
35
- "name": "Matthew Aitken",
36
- "url": "https://github.com/KhafraDev",
37
- "author": true
38
- },
39
- {
40
- "name": "Robert Nagy",
41
- "url": "https://github.com/ronag",
42
- "author": true
43
- },
44
- {
45
- "name": "Szymon Marczak",
46
- "url": "https://github.com/szmarczak",
47
- "author": true
48
- },
49
- {
50
- "name": "Tomas Della Vedova",
51
- "url": "https://github.com/delvedor",
52
- "author": true
53
- }
54
- ]
55
- }
@@ -1,33 +0,0 @@
1
- /// <reference types="node" />
2
-
3
- // See https://github.com/nodejs/undici/issues/1740
4
-
5
- export type DOMException = typeof globalThis extends { DOMException: infer T }
6
- ? T
7
- : any
8
-
9
- export interface EventInit {
10
- bubbles?: boolean
11
- cancelable?: boolean
12
- composed?: boolean
13
- }
14
-
15
- export interface EventListenerOptions {
16
- capture?: boolean
17
- }
18
-
19
- export interface AddEventListenerOptions extends EventListenerOptions {
20
- once?: boolean
21
- passive?: boolean
22
- signal?: AbortSignal
23
- }
24
-
25
- export type EventListenerOrEventListenerObject = EventListener | EventListenerObject
26
-
27
- export interface EventListenerObject {
28
- handleEvent (object: Event): void
29
- }
30
-
31
- export interface EventListener {
32
- (evt: Event): void
33
- }
@@ -1,19 +0,0 @@
1
- import Pool from "./pool"
2
-
3
- export default PoolStats
4
-
5
- declare class PoolStats {
6
- constructor(pool: Pool);
7
- /** Number of open socket connections in this pool. */
8
- connected: number;
9
- /** Number of open socket connections in this pool that do not have an active request. */
10
- free: number;
11
- /** Number of pending requests across all clients in this pool. */
12
- pending: number;
13
- /** Number of queued requests across all clients in this pool. */
14
- queued: number;
15
- /** Number of currently active requests across all clients in this pool. */
16
- running: number;
17
- /** Number of active, pending, or queued requests across all clients in this pool. */
18
- size: number;
19
- }
@@ -1,39 +0,0 @@
1
- import Client from './client'
2
- import TPoolStats from './pool-stats'
3
- import { URL } from 'url'
4
- import Dispatcher from "./dispatcher";
5
-
6
- export default Pool
7
-
8
- type PoolConnectOptions = Omit<Dispatcher.ConnectOptions, "origin">;
9
-
10
- declare class Pool extends Dispatcher {
11
- constructor(url: string | URL, options?: Pool.Options)
12
- /** `true` after `pool.close()` has been called. */
13
- closed: boolean;
14
- /** `true` after `pool.destroyed()` has been called or `pool.close()` has been called and the pool shutdown has completed. */
15
- destroyed: boolean;
16
- /** Aggregate stats for a Pool. */
17
- readonly stats: TPoolStats;
18
-
19
- // Override dispatcher APIs.
20
- override connect(
21
- options: PoolConnectOptions
22
- ): Promise<Dispatcher.ConnectData>;
23
- override connect(
24
- options: PoolConnectOptions,
25
- callback: (err: Error | null, data: Dispatcher.ConnectData) => void
26
- ): void;
27
- }
28
-
29
- declare namespace Pool {
30
- export type PoolStats = TPoolStats;
31
- export interface Options extends Client.Options {
32
- /** Default: `(origin, opts) => new Client(origin, opts)`. */
33
- factory?(origin: URL, opts: object): Dispatcher;
34
- /** The max number of clients to create. `null` if no limit. Default `null`. */
35
- connections?: number | null;
36
-
37
- interceptors?: { Pool?: readonly Dispatcher.DispatchInterceptor[] } & Client.Options["interceptors"]
38
- }
39
- }
@@ -1,28 +0,0 @@
1
- import Agent from './agent'
2
- import buildConnector from './connector';
3
- import Dispatcher from './dispatcher'
4
- import { IncomingHttpHeaders } from './header'
5
-
6
- export default ProxyAgent
7
-
8
- declare class ProxyAgent extends Dispatcher {
9
- constructor(options: ProxyAgent.Options | string)
10
-
11
- dispatch(options: Agent.DispatchOptions, handler: Dispatcher.DispatchHandlers): boolean;
12
- close(): Promise<void>;
13
- }
14
-
15
- declare namespace ProxyAgent {
16
- export interface Options extends Agent.Options {
17
- uri: string;
18
- /**
19
- * @deprecated use opts.token
20
- */
21
- auth?: string;
22
- token?: string;
23
- headers?: IncomingHttpHeaders;
24
- requestTls?: buildConnector.BuildOptions;
25
- proxyTls?: buildConnector.BuildOptions;
26
- clientFactory?(origin: URL, opts: object): Dispatcher;
27
- }
28
- }
@@ -1,65 +0,0 @@
1
- import { Readable } from "stream";
2
- import { Blob } from 'buffer'
3
-
4
- export default BodyReadable
5
-
6
- declare class BodyReadable extends Readable {
7
- constructor(
8
- resume?: (this: Readable, size: number) => void | null,
9
- abort?: () => void | null,
10
- contentType?: string
11
- )
12
-
13
- /** Consumes and returns the body as a string
14
- * https://fetch.spec.whatwg.org/#dom-body-text
15
- */
16
- text(): Promise<string>
17
-
18
- /** Consumes and returns the body as a JavaScript Object
19
- * https://fetch.spec.whatwg.org/#dom-body-json
20
- */
21
- json(): Promise<unknown>
22
-
23
- /** Consumes and returns the body as a Blob
24
- * https://fetch.spec.whatwg.org/#dom-body-blob
25
- */
26
- blob(): Promise<Blob>
27
-
28
- /** Consumes and returns the body as an Uint8Array
29
- * https://fetch.spec.whatwg.org/#dom-body-bytes
30
- */
31
- bytes(): Promise<Uint8Array>
32
-
33
- /** Consumes and returns the body as an ArrayBuffer
34
- * https://fetch.spec.whatwg.org/#dom-body-arraybuffer
35
- */
36
- arrayBuffer(): Promise<ArrayBuffer>
37
-
38
- /** Not implemented
39
- *
40
- * https://fetch.spec.whatwg.org/#dom-body-formdata
41
- */
42
- formData(): Promise<never>
43
-
44
- /** Returns true if the body is not null and the body has been consumed
45
- *
46
- * Otherwise, returns false
47
- *
48
- * https://fetch.spec.whatwg.org/#dom-body-bodyused
49
- */
50
- readonly bodyUsed: boolean
51
-
52
- /**
53
- * If body is null, it should return null as the body
54
- *
55
- * If body is not null, should return the body as a ReadableStream
56
- *
57
- * https://fetch.spec.whatwg.org/#dom-body-body
58
- */
59
- readonly body: never | undefined
60
-
61
- /** Dumps the response body by reading `limit` number of bytes.
62
- * @param opts.limit Number of bytes to read (optional) - Default: 262144
63
- */
64
- dump(opts?: { limit: number }): Promise<void>
65
- }
@@ -1,8 +0,0 @@
1
- import Dispatcher from './dispatcher'
2
- import RetryHandler from './retry-handler'
3
-
4
- export default RetryAgent
5
-
6
- declare class RetryAgent extends Dispatcher {
7
- constructor(dispatcher: Dispatcher, options?: RetryHandler.RetryOptions)
8
- }
@@ -1,116 +0,0 @@
1
- import Dispatcher from "./dispatcher";
2
-
3
- export default RetryHandler;
4
-
5
- declare class RetryHandler implements Dispatcher.DispatchHandlers {
6
- constructor(
7
- options: Dispatcher.DispatchOptions & {
8
- retryOptions?: RetryHandler.RetryOptions;
9
- },
10
- retryHandlers: RetryHandler.RetryHandlers
11
- );
12
- }
13
-
14
- declare namespace RetryHandler {
15
- export type RetryState = { counter: number; };
16
-
17
- export type RetryContext = {
18
- state: RetryState;
19
- opts: Dispatcher.DispatchOptions & {
20
- retryOptions?: RetryHandler.RetryOptions;
21
- };
22
- }
23
-
24
- export type OnRetryCallback = (result?: Error | null) => void;
25
-
26
- export type RetryCallback = (
27
- err: Error,
28
- context: {
29
- state: RetryState;
30
- opts: Dispatcher.DispatchOptions & {
31
- retryOptions?: RetryHandler.RetryOptions;
32
- };
33
- },
34
- callback: OnRetryCallback
35
- ) => number | null;
36
-
37
- export interface RetryOptions {
38
- /**
39
- * Callback to be invoked on every retry iteration.
40
- * It receives the error, current state of the retry object and the options object
41
- * passed when instantiating the retry handler.
42
- *
43
- * @type {RetryCallback}
44
- * @memberof RetryOptions
45
- */
46
- retry?: RetryCallback;
47
- /**
48
- * Maximum number of retries to allow.
49
- *
50
- * @type {number}
51
- * @memberof RetryOptions
52
- * @default 5
53
- */
54
- maxRetries?: number;
55
- /**
56
- * Max number of milliseconds allow between retries
57
- *
58
- * @type {number}
59
- * @memberof RetryOptions
60
- * @default 30000
61
- */
62
- maxTimeout?: number;
63
- /**
64
- * Initial number of milliseconds to wait before retrying for the first time.
65
- *
66
- * @type {number}
67
- * @memberof RetryOptions
68
- * @default 500
69
- */
70
- minTimeout?: number;
71
- /**
72
- * Factior to multiply the timeout factor between retries.
73
- *
74
- * @type {number}
75
- * @memberof RetryOptions
76
- * @default 2
77
- */
78
- timeoutFactor?: number;
79
- /**
80
- * It enables to automatically infer timeout between retries based on the `Retry-After` header.
81
- *
82
- * @type {boolean}
83
- * @memberof RetryOptions
84
- * @default true
85
- */
86
- retryAfter?: boolean;
87
- /**
88
- * HTTP methods to retry.
89
- *
90
- * @type {Dispatcher.HttpMethod[]}
91
- * @memberof RetryOptions
92
- * @default ['GET', 'HEAD', 'OPTIONS', 'PUT', 'DELETE', 'TRACE'],
93
- */
94
- methods?: Dispatcher.HttpMethod[];
95
- /**
96
- * Error codes to be retried. e.g. `ECONNRESET`, `ENOTFOUND`, `ETIMEDOUT`, `ECONNREFUSED`, etc.
97
- *
98
- * @type {string[]}
99
- * @default ['ECONNRESET','ECONNREFUSED','ENOTFOUND','ENETDOWN','ENETUNREACH','EHOSTDOWN','EHOSTUNREACH','EPIPE']
100
- */
101
- errorCodes?: string[];
102
- /**
103
- * HTTP status codes to be retried.
104
- *
105
- * @type {number[]}
106
- * @memberof RetryOptions
107
- * @default [500, 502, 503, 504, 429],
108
- */
109
- statusCodes?: number[];
110
- }
111
-
112
- export interface RetryHandlers {
113
- dispatch: Dispatcher["dispatch"];
114
- handler: Dispatcher.DispatchHandlers;
115
- }
116
- }
@@ -1,18 +0,0 @@
1
- export namespace util {
2
- /**
3
- * Retrieves a header name and returns its lowercase value.
4
- * @param value Header name
5
- */
6
- export function headerNameToString(value: string | Buffer): string;
7
-
8
- /**
9
- * Receives a header object and returns the parsed value.
10
- * @param headers Header object
11
- * @param obj Object to specify a proxy object. Used to assign parsed values.
12
- * @returns If `obj` is specified, it is equivalent to `obj`.
13
- */
14
- export function parseHeaders(
15
- headers: (Buffer | string | (Buffer | string)[])[],
16
- obj?: Record<string, string | string[]>
17
- ): Record<string, string | string[]>;
18
- }