@jskit-ai/agent-docs 0.1.271 → 0.1.273
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/guide/agent/app-setup/authentication.md +149 -0
- package/guide/agent/framework/typed-features.md +5 -0
- package/package.json +1 -1
- package/patterns/feature-package/example/booking-engine/package.json +1 -1
- package/patterns/minimal-foundation/example/package.json +3 -3
- package/patterns/shell-foundation/example/package.json +4 -4
- package/patterns/shell-foundation/example/packages/main/package.json +1 -1
- package/reference/autogen/PATTERN_INDEX.md +37 -37
- package/reference/autogen/packages/assistant-core.md +30 -0
- package/reference/autogen/packages/auth-core.md +9 -2
- package/reference/autogen/packages/auth-provider-local-core.md +85 -21
- package/reference/autogen/packages/auth-provider-local-db-core.md +7 -0
- package/reference/autogen/packages/auth-web.md +13 -2
- package/reference/autogen/packages/kernel.md +15 -0
- package/skills/jskit/references/pattern-index.md +37 -37
- package/skills/jskit/references/patterns/app/minimal-foundation/example/package.json +3 -3
- package/skills/jskit/references/patterns/app/shell-foundation/example/package.json +4 -4
- package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/package.json +1 -1
- package/skills/jskit/references/patterns/auth/accounts-hub/example/package.json +2 -2
- package/skills/jskit/references/patterns/auth/oidc-sign-in/example/package.json +2 -2
- package/skills/jskit/references/patterns/auth/supabase-auth/example/package.json +1 -1
- package/skills/jskit/references/patterns/connectors/calendar-cli/example/package.json +4 -4
- package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/package.json +2 -2
- package/skills/jskit/references/patterns/database/mysql-application/example/package.json +1 -1
- package/skills/jskit/references/patterns/database/postgres-application/example/package.json +1 -1
- package/skills/jskit/references/patterns/realtime/realtime-application/example/package.json +2 -2
- package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/package.json +1 -1
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/package.json +2 -2
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/package.json +3 -3
- package/skills/jskit/references/typed-features.md +5 -0
|
@@ -514,6 +514,7 @@ Exports
|
|
|
514
514
|
- `codexProviderConfiguration(provider, apiKey)`
|
|
515
515
|
- `codexProviderCatalogPath(codexHome)`
|
|
516
516
|
- `codexProviderFileConfiguration(provider, key, codexHome)`
|
|
517
|
+
- `readCodexCustomModels(codexHome)`
|
|
517
518
|
- `copyCodexProviderHome(sourceHome, targetHome)`
|
|
518
519
|
- `verifyCodexProviderKey(provider, apiKey, fetchImpl = fetch)`
|
|
519
520
|
Local functions
|
|
@@ -657,6 +658,9 @@ Exports
|
|
|
657
658
|
- `prepareCodexHistory(params, client, { baseUrl, modelProviderId, ...options } = {})`
|
|
658
659
|
- `readCodexHistoryRows`
|
|
659
660
|
Local functions
|
|
661
|
+
- `historyRouted(destination)`
|
|
662
|
+
- `customRouteSegment(baseUrl)`
|
|
663
|
+
- `customUpstream(encoded = "")`
|
|
660
664
|
- `unsupportedHistory(message)`
|
|
661
665
|
- `historicalToolOutput(item)`
|
|
662
666
|
- `historicalResultMessage(label, parts, closingTag)`
|
|
@@ -1299,6 +1303,18 @@ Exports
|
|
|
1299
1303
|
Local functions
|
|
1300
1304
|
- `recordNoNativeCheckpoint()`
|
|
1301
1305
|
|
|
1306
|
+
### `src/server/conversation/customEndpoint.js`
|
|
1307
|
+
Exports
|
|
1308
|
+
- `verifyCustomEndpoint({ engineId, baseUrl, model, apiKey = "", fetchImpl = fetch, timeoutMs = CUSTOM_ENDPOINT_CHECK_TIMEOUT_MS })`
|
|
1309
|
+
- `readOllamaLoadedContext({ baseUrl, model, apiKey = "", fetchImpl = fetch })`
|
|
1310
|
+
- `probeCustomEndpoint({ engineId, baseUrl, fetchImpl = fetch })`
|
|
1311
|
+
- `checkCustomEndpoint({ contextWindow, ...input })`
|
|
1312
|
+
- `CUSTOM_ENDPOINT_CHECK_TIMEOUT_MS`
|
|
1313
|
+
Local functions
|
|
1314
|
+
- `checkError(code, message)`
|
|
1315
|
+
- `readLimitedJson(response)`
|
|
1316
|
+
- `namesMissingModel(result, model)`
|
|
1317
|
+
|
|
1302
1318
|
### `src/server/conversation/deliveryTiming.js`
|
|
1303
1319
|
Exports
|
|
1304
1320
|
- `normalizeConversationDeliveryHostStages(hostStages = [])`
|
|
@@ -1756,6 +1772,7 @@ Exports
|
|
|
1756
1772
|
- `codexProviderConfiguration`
|
|
1757
1773
|
- `codexProviderFileConfiguration`
|
|
1758
1774
|
- `codexProviderCatalogPath`
|
|
1775
|
+
- `readCodexCustomModels`
|
|
1759
1776
|
- `verifyCodexProviderKey`
|
|
1760
1777
|
- `codexAuthOutputRequiresReconnect`
|
|
1761
1778
|
- `createCodexAccountReader`
|
|
@@ -1855,6 +1872,14 @@ Exports
|
|
|
1855
1872
|
- `CODEX_HELPER_THREAD_LIFECYCLES`
|
|
1856
1873
|
- `createCodexHelperThreadLedgerOwner`
|
|
1857
1874
|
|
|
1875
|
+
### `src/server/hosts/customEndpoint.js`
|
|
1876
|
+
Exports
|
|
1877
|
+
- `CUSTOM_ENDPOINT_CHECK_TIMEOUT_MS`
|
|
1878
|
+
- `checkCustomEndpoint`
|
|
1879
|
+
- `probeCustomEndpoint`
|
|
1880
|
+
- `readOllamaLoadedContext`
|
|
1881
|
+
- `verifyCustomEndpoint`
|
|
1882
|
+
|
|
1858
1883
|
### `src/server/hosts/nativeHistory.js`
|
|
1859
1884
|
Exports
|
|
1860
1885
|
- `readStoppedNativeDatabase`
|
|
@@ -2249,7 +2274,12 @@ Exports
|
|
|
2249
2274
|
|
|
2250
2275
|
### `src/shared/nativeProviders.js`
|
|
2251
2276
|
Exports
|
|
2277
|
+
- `CUSTOM_AI_MINIMUM_CONTEXT`
|
|
2278
|
+
- `CUSTOM_AI_PLACEHOLDER_TOKEN`
|
|
2279
|
+
- `CUSTOM_AI_PROVIDER_ID`
|
|
2252
2280
|
- `NATIVE_AI_PROVIDERS`
|
|
2281
|
+
- `connectionAiProvider(providerId, connection)`
|
|
2282
|
+
- `customAiProvider({ engineId = "codex", baseUrl, model: modelId, contextWindow, label = "Custom endpoint" })`
|
|
2253
2283
|
- `nativeAiProvider(id)`
|
|
2254
2284
|
- `nativeAiModel(id, providerId = "")`
|
|
2255
2285
|
Local functions
|
|
@@ -101,7 +101,6 @@ Exports
|
|
|
101
101
|
- `ensureDevAuthRuntimeAvailable(policy = {}, request = null)`
|
|
102
102
|
- `isDevAuthBootstrapEnabled(policy)`
|
|
103
103
|
- `isLocalDevAuthRequest(request)`
|
|
104
|
-
- `isProductionNodeEnv(nodeEnv)`
|
|
105
104
|
- `resolveDevAuthPolicy({ enabled = false, nodeEnv = "development", secret = "" } = {})`
|
|
106
105
|
- `resolveDevAuthPolicyFromEnv(env = {})`
|
|
107
106
|
Local functions
|
|
@@ -164,7 +163,6 @@ Exports
|
|
|
164
163
|
Local functions
|
|
165
164
|
- `normalizeUnsafeMethods(methodsValue)`
|
|
166
165
|
- `normalizeApiPrefix(value)`
|
|
167
|
-
- `normalizeRateLimitPluginOptions(value)`
|
|
168
166
|
- `resolveRouteConfig(request)`
|
|
169
167
|
- `enforceCsrfProtection(fastify, request, reply)`
|
|
170
168
|
- `resolveCsrfToken(request)`
|
|
@@ -367,6 +365,8 @@ Exports
|
|
|
367
365
|
- `okOutputValidator`
|
|
368
366
|
- `okMessageOutputValidator`
|
|
369
367
|
- `registerOutputValidator`
|
|
368
|
+
- `registerConfirmationResendOutputValidator`
|
|
369
|
+
- `registerConfirmOutputValidator`
|
|
370
370
|
- `loginOutputValidator`
|
|
371
371
|
- `otpVerifyOutputValidator`
|
|
372
372
|
- `oauthCompleteOutputValidator`
|
|
@@ -462,6 +462,12 @@ Exports
|
|
|
462
462
|
- `AUTH_REGISTER_CONFIRMATION_RESEND_MESSAGES`
|
|
463
463
|
- `authRegisterConfirmationResendCommand`
|
|
464
464
|
|
|
465
|
+
### `src/shared/commands/authRegisterConfirmCommand.js`
|
|
466
|
+
Exports
|
|
467
|
+
- `authRegisterConfirmBodyValidator`
|
|
468
|
+
- `AUTH_REGISTER_CONFIRM_MESSAGES`
|
|
469
|
+
- `authRegisterConfirmCommand`
|
|
470
|
+
|
|
465
471
|
### `src/shared/commands/authSessionReadCommand.js`
|
|
466
472
|
Exports
|
|
467
473
|
- `sessionOutputValidator`
|
|
@@ -473,6 +479,7 @@ Exports
|
|
|
473
479
|
Exports
|
|
474
480
|
- `authRegisterCommand`
|
|
475
481
|
- `authRegisterConfirmationResendCommand`
|
|
482
|
+
- `authRegisterConfirmCommand`
|
|
476
483
|
- `authLoginPasswordCommand`
|
|
477
484
|
- `authLoginOtpRequestCommand`
|
|
478
485
|
- `authLoginOtpVerifyCommand`
|
|
@@ -17,11 +17,12 @@ Use this on demand; do not load the full index at startup.
|
|
|
17
17
|
### `src/server/lib/accounts.js`
|
|
18
18
|
Exports
|
|
19
19
|
- `NO_PASSWORD`
|
|
20
|
-
- `createLocalAccounts({ appProfileProjection, backend, config, invitationContextResolver, passwords, profileProjector, sessions })`
|
|
20
|
+
- `createLocalAccounts({ appProfileProjection, backend, config, emailConfirmation, firstAccountSetup, invitationContextResolver, passwords, profileProjector, sessions })`
|
|
21
21
|
- `hasPassword(user)`
|
|
22
22
|
- `normalizeDisplayName(value, email)`
|
|
23
|
+
- `resolveRegistrationProfileOptions(invitationContextResolver, invitationInput, email)`
|
|
23
24
|
- `validateEmailInput(email)`
|
|
24
|
-
- `validatePasswordInput(password)`
|
|
25
|
+
- `validatePasswordInput(password, minLength)`
|
|
25
26
|
Local functions
|
|
26
27
|
- `devLoginAsValidationError(fields = {})`
|
|
27
28
|
- `devLoginAsUserNotFound({ email = "", userId = "" } = {})`
|
|
@@ -44,31 +45,30 @@ Local functions
|
|
|
44
45
|
|
|
45
46
|
### `src/server/lib/config.js`
|
|
46
47
|
Exports
|
|
47
|
-
- `resolveLocalAuthConfig({ appRoot, env, fileBackend, emailRecovery })`
|
|
48
|
+
- `resolveLocalAuthConfig({ appRoot, env, fileBackend, emailRecovery, emailConfirmationSender = false })`
|
|
48
49
|
Local functions
|
|
49
50
|
- `resolveStoreDir(env, appRoot)`
|
|
50
51
|
- `resolveSessionSecret(env, { storeDir, isProduction })`
|
|
51
|
-
- `
|
|
52
|
+
- `resolveSetupCode(env, { isProduction })`
|
|
53
|
+
- `resolveAppPublicUrl(env, { emailRecovery, emailedConfirmation, oauthEnabled })`
|
|
52
54
|
- `resolveRecoveryDelivery(env, { emailRecovery, isProduction })`
|
|
55
|
+
- `resolveConfirmationDelivery(env, { emailConfirmationSender, isProduction })`
|
|
56
|
+
- `resolvePasswordMinLength(env)`
|
|
57
|
+
|
|
58
|
+
### `src/server/lib/emailConfirmation.js`
|
|
59
|
+
Exports
|
|
60
|
+
- `CONFIRMATION_TOKEN_TTL_SECONDS`
|
|
61
|
+
- `createLocalEmailConfirmation({ backend, config, confirmationSender, firstAccountSetup, invitationContextResolver, profileProjector, sessions })`
|
|
62
|
+
- `createLoggedConfirmationSender(logger)`
|
|
63
|
+
Local functions
|
|
64
|
+
- `emailTakenError()`
|
|
65
|
+
- `confirmationInvalidError()`
|
|
53
66
|
|
|
54
67
|
### `src/server/lib/fileBackend.js`
|
|
55
68
|
Exports
|
|
56
69
|
- `createLocalFileBackend({ storeDir })`
|
|
57
70
|
Local functions
|
|
58
71
|
- `nowIso()`
|
|
59
|
-
- `encodeField(value)`
|
|
60
|
-
- `decodeField(value)`
|
|
61
|
-
- `splitLine(line, expectedType)`
|
|
62
|
-
- `parseUsers(content)`
|
|
63
|
-
- `serializeUsers(users)`
|
|
64
|
-
- `parseSessions(content)`
|
|
65
|
-
- `serializeSessions(sessions)`
|
|
66
|
-
- `parseRecovery(content)`
|
|
67
|
-
- `serializeRecovery(records)`
|
|
68
|
-
- `parseIdentities(content)`
|
|
69
|
-
- `serializeIdentities(identities)`
|
|
70
|
-
- `parseOAuthAttempts(content)`
|
|
71
|
-
- `serializeOAuthAttempts(attempts)`
|
|
72
72
|
- `readText(filePath)`
|
|
73
73
|
- `writeAtomic(filePath, content)`
|
|
74
74
|
- `encodeJournalContent(content)`
|
|
@@ -84,12 +84,50 @@ Local functions
|
|
|
84
84
|
- `clone(value)`
|
|
85
85
|
- `createTx(state, touched)`
|
|
86
86
|
|
|
87
|
+
### `src/server/lib/fileRecords.js`
|
|
88
|
+
Exports
|
|
89
|
+
- `parseIdentities(content)`
|
|
90
|
+
- `parseOAuthAttempts(content)`
|
|
91
|
+
- `parseRecovery(content)`
|
|
92
|
+
- `parseRegistrations(content)`
|
|
93
|
+
- `parseSessions(content)`
|
|
94
|
+
- `parseSignInFailures(content)`
|
|
95
|
+
- `parseUsers(content)`
|
|
96
|
+
- `serializeIdentities(identities)`
|
|
97
|
+
- `serializeOAuthAttempts(attempts)`
|
|
98
|
+
- `serializeRecovery(records)`
|
|
99
|
+
- `serializeRegistrations(records)`
|
|
100
|
+
- `serializeSessions(sessions)`
|
|
101
|
+
- `serializeSignInFailures(records)`
|
|
102
|
+
- `serializeUsers(users)`
|
|
103
|
+
Local functions
|
|
104
|
+
- `encodeField(value)`
|
|
105
|
+
- `decodeField(value)`
|
|
106
|
+
- `splitLine(line, expectedType)`
|
|
107
|
+
|
|
108
|
+
### `src/server/lib/firstAccountSetup.js`
|
|
109
|
+
Exports
|
|
110
|
+
- `SETUP_CODE_ENV`
|
|
111
|
+
- `SETUP_CODE_FILE`
|
|
112
|
+
- `SETUP_CODE_MIN_CHARACTERS`
|
|
113
|
+
- `createFirstAccountSetup({ backend, config, logger })`
|
|
114
|
+
- `normalizedSetupCode(code)`
|
|
115
|
+
Local functions
|
|
116
|
+
- `newSetupCode()`
|
|
117
|
+
- `setupCodeHash(code)`
|
|
118
|
+
- `setupCodeRequired()`
|
|
119
|
+
- `setupCodeInvalid()`
|
|
120
|
+
|
|
87
121
|
### `src/server/lib/index.js`
|
|
88
122
|
Exports
|
|
89
123
|
- `createLocalAuthService`
|
|
90
124
|
- `resolveLocalAuthConfig`
|
|
125
|
+
- `createLoggedConfirmationSender`
|
|
91
126
|
- `createLoggedRecoverySender`
|
|
92
127
|
- `createLocalFileBackend`
|
|
128
|
+
- `SETUP_CODE_ENV`
|
|
129
|
+
- `SETUP_CODE_FILE`
|
|
130
|
+
- `createFirstAccountSetup`
|
|
93
131
|
- `LOCAL_AUTH_USER_REGISTERED_EVENT`
|
|
94
132
|
- `createLocalAuthRegisterHookDecorator`
|
|
95
133
|
- `hashPassword`
|
|
@@ -108,7 +146,7 @@ Local functions
|
|
|
108
146
|
|
|
109
147
|
### `src/server/lib/oauthFlows.js`
|
|
110
148
|
Exports
|
|
111
|
-
- `createLocalOAuthFlows({ backend, config, logger, oauthProvidersById, profileProjector, securityStatus, sessions })`
|
|
149
|
+
- `createLocalOAuthFlows({ backend, config, firstAccountSetup, logger, oauthProvidersById, profileProjector, securityStatus, sessions })`
|
|
112
150
|
|
|
113
151
|
### `src/server/lib/passwordFlows.js`
|
|
114
152
|
Exports
|
|
@@ -142,7 +180,7 @@ Exports
|
|
|
142
180
|
|
|
143
181
|
### `src/server/lib/service.js`
|
|
144
182
|
Exports
|
|
145
|
-
- `createLocalAuthService({ backend, config, invitationContextResolver, logger, passwordStrategy, profileProjector, recoverySender })`
|
|
183
|
+
- `createLocalAuthService({ backend, config, confirmationSender, firstAccountSetup: givenFirstAccountSetup = null, invitationContextResolver, logger, passwordStrategy, profileProjector, recoverySender })`
|
|
146
184
|
|
|
147
185
|
### `src/server/lib/sessions.js`
|
|
148
186
|
Exports
|
|
@@ -156,6 +194,17 @@ Local functions
|
|
|
156
194
|
- `buildAccessToken({ user, session, secret, ttlSeconds = ACCESS_TTL_SECONDS })`
|
|
157
195
|
- `buildSessionPayload({ user, session, refreshToken, secret })`
|
|
158
196
|
|
|
197
|
+
### `src/server/lib/signInThrottle.js`
|
|
198
|
+
Exports
|
|
199
|
+
- `DEFAULT_SIGN_IN_THROTTLE`
|
|
200
|
+
- `forgottenFailuresBefore(now)`
|
|
201
|
+
- `recordSignInFailure(throttle, record, email, now)`
|
|
202
|
+
- `resolveSignInThrottle(env)`
|
|
203
|
+
- `signInLockedError(waitMs)`
|
|
204
|
+
- `signInWaitMs(record, now)`
|
|
205
|
+
Local functions
|
|
206
|
+
- `readSetting(env, name, fallback)`
|
|
207
|
+
|
|
159
208
|
### `src/server/lib/tokens.js`
|
|
160
209
|
Exports
|
|
161
210
|
- `createId(prefix)`
|
|
@@ -176,29 +225,44 @@ Exports
|
|
|
176
225
|
### `src/server/types.js`
|
|
177
226
|
Exports
|
|
178
227
|
- `type AuthLocalBackendTransaction`
|
|
228
|
+
- `type AuthLocalRegistration`
|
|
229
|
+
- `type AuthLocalSignInFailures`
|
|
179
230
|
- `type AuthLocalBackend`
|
|
180
231
|
- `type AuthLocalPasswordStrategy`
|
|
181
232
|
- `type AuthLocalRecoverySender`
|
|
233
|
+
- `type AuthLocalConfirmationSender`
|
|
182
234
|
- `type AuthLocalConfig`
|
|
183
235
|
- `type AuthLocalOAuthProvider`
|
|
236
|
+
- `type AuthLocalFirstAccountSetup`
|
|
184
237
|
- `type AuthLocalPasswords`
|
|
185
238
|
- `type AuthLocalSessions`
|
|
186
239
|
|
|
187
240
|
### test-support
|
|
188
241
|
|
|
242
|
+
### `test-support/emailConfirmationScenario.js`
|
|
243
|
+
Exports
|
|
244
|
+
- `exerciseEmailConfirmation(t, service, storedRegistrations)`
|
|
245
|
+
Local functions
|
|
246
|
+
- `linkToken(result)`
|
|
247
|
+
|
|
189
248
|
### `test-support/localService.js`
|
|
190
249
|
Exports
|
|
191
|
-
- `localServiceOptions({ env = {}, emailRecovery = false } = {})`
|
|
250
|
+
- `localServiceOptions({ env = {}, emailRecovery = false, emailConfirmationSender = false } = {})`
|
|
192
251
|
|
|
193
252
|
### `test-support/oauthHarness.js`
|
|
194
253
|
Exports
|
|
195
254
|
- `APP_URL`
|
|
196
255
|
- `ATTEMPT_COOKIE`
|
|
197
256
|
- `approveAtProvider(service, { provider = "google", returnTo = "/home", cookies = {}, link = false } = {})`
|
|
198
|
-
- `createService({ backend, oauthProviders, profileProjector })`
|
|
257
|
+
- `createService({ backend, oauthProviders, profileProjector, firstAccountSetup })`
|
|
199
258
|
- `oidcProviderEntry(issuer, { id = "google", label = "Google" } = {})`
|
|
200
259
|
- `sessionCookies(session)`
|
|
201
260
|
- `startFakeGitHub({ user = { id: 4242, login: "ada", name: "Ada Lovelace" }, emails } = {})`
|
|
202
261
|
- `startOidcProvider({ account } = {})`
|
|
203
262
|
Local functions
|
|
204
263
|
- `readBody(req)`
|
|
264
|
+
|
|
265
|
+
### `test-support/signInThrottleScenario.js`
|
|
266
|
+
Exports
|
|
267
|
+
- `exerciseSignInThrottle(t, service)`
|
|
268
|
+
- `lockedFor(seconds)`
|
|
@@ -31,6 +31,9 @@ Local functions
|
|
|
31
31
|
- `mapRecovery(row)`
|
|
32
32
|
- `mapIdentity(row)`
|
|
33
33
|
- `mapOAuthAttempt(row)`
|
|
34
|
+
- `mapSignInFailures(row)`
|
|
35
|
+
- `mapRegistration(row)`
|
|
36
|
+
- `registrationRow(record = {})`
|
|
34
37
|
- `userInsert(input = {})`
|
|
35
38
|
- `sessionInsert(input = {})`
|
|
36
39
|
- `recoveryInsert(input = {})`
|
|
@@ -53,3 +56,7 @@ Exports
|
|
|
53
56
|
### `migrations/auth_local_db_oauth.cjs`
|
|
54
57
|
Exports
|
|
55
58
|
- None
|
|
59
|
+
|
|
60
|
+
### `migrations/auth_local_db_protection.cjs`
|
|
61
|
+
Exports
|
|
62
|
+
- None
|
|
@@ -21,6 +21,12 @@ Exports
|
|
|
21
21
|
- `pageWindow()`
|
|
22
22
|
- `replacePage(path)`
|
|
23
23
|
|
|
24
|
+
### `src/client/composables/loginView/confirmationLink.js`
|
|
25
|
+
Exports
|
|
26
|
+
- `CONFIRMATION_TOKEN_PARAM`
|
|
27
|
+
- `confirmationTokenFromInput(input)`
|
|
28
|
+
- `takeConfirmationTokenFromLocation()`
|
|
29
|
+
|
|
24
30
|
### `src/client/composables/loginView/constants.js`
|
|
25
31
|
Exports
|
|
26
32
|
- `LOGIN_MODE`
|
|
@@ -294,9 +300,14 @@ Exports
|
|
|
294
300
|
Exports
|
|
295
301
|
- None
|
|
296
302
|
|
|
303
|
+
### `src/server/authRateLimits.js`
|
|
304
|
+
Exports
|
|
305
|
+
- `DEFAULT_AUTH_RATE_LIMITS`
|
|
306
|
+
- `resolveAuthRateLimits(config)`
|
|
307
|
+
|
|
297
308
|
### `src/server/authWeb.js`
|
|
298
309
|
Exports
|
|
299
|
-
- `createAuthWeb({ authService, env })`
|
|
310
|
+
- `createAuthWeb({ authService, env, config })`
|
|
300
311
|
|
|
301
312
|
### `src/server/AuthWebFeature.js`
|
|
302
313
|
Exports
|
|
@@ -336,7 +347,7 @@ Local functions
|
|
|
336
347
|
|
|
337
348
|
### `src/server/routes/authRoutes.js`
|
|
338
349
|
Exports
|
|
339
|
-
- `buildRoutes(controller, { includeDevLoginAs = false } = {})`
|
|
350
|
+
- `buildRoutes(controller, { includeDevLoginAs = false, rateLimits = DEFAULT_AUTH_RATE_LIMITS } = {})`
|
|
340
351
|
|
|
341
352
|
### `src/server/services/AuthWebService.js`
|
|
342
353
|
Exports
|
|
@@ -802,9 +802,19 @@ Local functions
|
|
|
802
802
|
- `normalizeMethod(method)`
|
|
803
803
|
- `normalizePath(pathname)`
|
|
804
804
|
- `normalizeRouteMiddleware(value, routeLabel)`
|
|
805
|
+
- `normalizeRouteConfig(value, routeLabel)`
|
|
805
806
|
- `normalizeRouteInternal(value, { method = "", path = "" } = {})`
|
|
806
807
|
- `normalizeRouteInput(method, path, optionsOrHandler, maybeHandler)`
|
|
807
808
|
|
|
809
|
+
### `server/http/lib/routeRateLimits.js`
|
|
810
|
+
Exports
|
|
811
|
+
- `normalizeRouteRateLimit(value, routeLabel)`
|
|
812
|
+
- `rateLimitRouteConfig(rateLimit)`
|
|
813
|
+
- `registerRouteRateLimiter(fastify, routes)`
|
|
814
|
+
Local functions
|
|
815
|
+
- `toTimeWindowMs(timeWindow)`
|
|
816
|
+
- `buildRateLimitedError(_request, { ttl })`
|
|
817
|
+
|
|
808
818
|
### `server/http/lib/routeRegistration.js`
|
|
809
819
|
Exports
|
|
810
820
|
- `registerRoutes(fastify, { routes, actions })`
|
|
@@ -994,6 +1004,11 @@ Exports
|
|
|
994
1004
|
- `safePathnameFromRequest(request)`
|
|
995
1005
|
- `resolveClientIpAddress(request)`
|
|
996
1006
|
|
|
1007
|
+
### `server/runtime/runtimeMode.js`
|
|
1008
|
+
Exports
|
|
1009
|
+
- `assertDevelopmentOnlySettings(env, names)`
|
|
1010
|
+
- `isProductionEnv(env)`
|
|
1011
|
+
|
|
997
1012
|
### `server/runtime/serviceAuthorization.js`
|
|
998
1013
|
Exports
|
|
999
1014
|
- `requireAuth(source = {}, options = {})`
|