@jskit-ai/agent-docs 0.1.282 → 0.1.284
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-extras/assistant.md +14 -2
- package/guide/agent/app-extras/realtime.md +38 -1
- package/guide/agent/app-setup/authentication.md +64 -14
- package/guide/agent/app-setup/console.md +8 -0
- package/guide/agent/app-setup/database-layer.md +23 -103
- package/guide/agent/app-setup/existing-application-migration.md +105 -72
- package/guide/agent/app-setup/multi-homing.md +94 -32
- package/guide/agent/app-setup/quickstart.md +1 -1
- package/guide/agent/app-setup/run-an-accounts-hub.md +1 -1
- package/guide/agent/app-setup/upgrading-jskit.md +8 -3
- package/guide/agent/app-setup/users.md +8 -5
- package/guide/agent/framework/application-operations.md +1 -1
- package/guide/agent/framework/crud-operations.md +63 -45
- package/guide/agent/framework/data-access.md +1031 -0
- package/guide/agent/framework/sanity-checks.md +26 -27
- package/guide/agent/framework/typed-features.md +114 -247
- package/guide/agent/index.md +2 -0
- package/package.json +6 -3
- package/patterns/feature-package/PATTERN.md +25 -17
- package/patterns/feature-package/example/booking-engine/package.json +1 -1
- package/patterns/feature-package/example/variations/InvoiceRollupFeature.js +6 -7
- package/patterns/feature-package/example/variations/invoiceResource.js +15 -0
- package/patterns/feature-package/example/variations/invoiceRollupActions.js +4 -4
- package/patterns/feature-package/example/variations/ownedTableRepository.js +27 -0
- package/patterns/feature-package/example/variations/types.js +1 -1
- package/patterns/minimal-foundation/example/AGENTS.md +4 -0
- package/patterns/minimal-foundation/example/package.json +4 -4
- package/patterns/minimal-foundation/example/server.js +4 -1
- package/patterns/shell-foundation/example/AGENTS.md +4 -0
- package/patterns/shell-foundation/example/package.json +5 -5
- package/patterns/shell-foundation/example/packages/main/package.json +1 -1
- package/patterns/shell-foundation/example/server.js +4 -1
- package/reference/autogen/KERNEL_MAP.md +2 -1
- package/reference/autogen/PATTERN_INDEX.md +70 -59
- package/reference/autogen/README.md +1 -1
- package/reference/autogen/packages/agent-docs.md +7 -3
- package/reference/autogen/packages/agent-runtime.md +48 -11
- package/reference/autogen/packages/architecture-inspector.md +6 -2
- package/reference/autogen/packages/assistant-core.md +4 -4
- package/reference/autogen/packages/assistant-runtime.md +33 -13
- package/reference/autogen/packages/auth-provider-local-core.md +3 -1
- package/reference/autogen/packages/auth-provider-local-db-core.md +65 -14
- package/reference/autogen/packages/auth-provider-oidc-core.md +5 -1
- package/reference/autogen/packages/auth-provider-supabase-core.md +1 -1
- package/reference/autogen/packages/connectors-core.md +22 -2
- package/reference/autogen/packages/console-core.md +9 -5
- package/reference/autogen/packages/crud-core.md +38 -173
- package/reference/autogen/packages/database-runtime.md +8 -32
- package/reference/autogen/packages/http-runtime.md +3 -3
- package/reference/autogen/packages/http-web.md +12 -0
- package/reference/autogen/packages/kernel.md +25 -2
- package/reference/autogen/packages/oidc-issuer-core.md +4 -0
- package/reference/autogen/packages/payments-core.md +29 -6
- package/reference/autogen/packages/realtime.md +15 -6
- package/reference/autogen/packages/resource-core.md +30 -5
- package/reference/autogen/packages/resource-crud-core.md +30 -34
- package/reference/autogen/packages/resource-runtime.md +198 -0
- package/reference/autogen/packages/rewarded-core.md +16 -10
- package/reference/autogen/packages/shell-web.md +1 -0
- package/reference/autogen/packages/users-core.md +26 -14
- package/reference/autogen/packages/workspaces-core.md +17 -10
- package/reference/autogen/tooling/config-eslint.md +69 -0
- package/reference/autogen/tooling/jskit-catalog.md +40 -1
- package/reference/autogen/tooling/jskit-release.md +3 -0
- package/skills/jskit/SKILL.md +4 -1
- package/skills/jskit/references/app-operations.md +1 -1
- package/skills/jskit/references/crud-operations.md +62 -44
- package/skills/jskit/references/data-access.md +1026 -0
- package/skills/jskit/references/database-layer.md +411 -0
- package/skills/jskit/references/existing-application-migration.md +105 -72
- package/skills/jskit/references/heuristics/INDEX.md +6 -4
- package/skills/jskit/references/heuristics/crud-authoring.md +22 -14
- package/skills/jskit/references/heuristics/data-access.md +19 -0
- package/skills/jskit/references/heuristics/filters.md +6 -6
- package/skills/jskit/references/heuristics/row-policies.md +40 -16
- package/skills/jskit/references/heuristics/server-search.md +30 -42
- package/skills/jskit/references/heuristics/table-resource-fields.md +78 -0
- package/skills/jskit/references/heuristics/typed-features.md +3 -3
- package/skills/jskit/references/multi-homing.md +94 -32
- package/skills/jskit/references/pattern-index.md +70 -59
- package/skills/jskit/references/patterns/app/minimal-foundation/example/AGENTS.md +4 -0
- package/skills/jskit/references/patterns/app/minimal-foundation/example/package.json +4 -4
- package/skills/jskit/references/patterns/app/minimal-foundation/example/server.js +4 -1
- package/skills/jskit/references/patterns/app/shell-foundation/example/AGENTS.md +4 -0
- package/skills/jskit/references/patterns/app/shell-foundation/example/package.json +5 -5
- package/skills/jskit/references/patterns/app/shell-foundation/example/packages/main/package.json +1 -1
- package/skills/jskit/references/patterns/app/shell-foundation/example/server.js +4 -1
- package/skills/jskit/references/patterns/assistant/assistant-surface/PATTERN.md +5 -2
- package/skills/jskit/references/patterns/auth/accounts-hub/example/package.json +3 -2
- package/skills/jskit/references/patterns/auth/auth-surface/PATTERN.md +15 -0
- 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/crud-contract/PATTERN.md +133 -0
- package/skills/jskit/references/patterns/crud/crud-contract/example/bookResource.js +74 -0
- package/skills/jskit/references/patterns/crud/{json-api-resource-package → crud-feature-package}/PATTERN.md +69 -37
- package/skills/jskit/references/patterns/crud/{json-api-resource-package → crud-feature-package}/example/packages/books/package.json +5 -4
- package/skills/jskit/references/patterns/crud/crud-feature-package/example/packages/books/src/server/BooksFeature.js +13 -0
- package/skills/jskit/references/patterns/crud/crud-feature-package/example/packages/books/src/shared/bookResource.js +74 -0
- package/skills/jskit/references/patterns/crud/crud-feature-package/example/packages/books/src/shared/index.js +1 -0
- package/skills/jskit/references/patterns/crud/crud-screen-set/PATTERN.md +26 -8
- package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookEditPage.vue +2 -2
- package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookListPage.vue +2 -2
- package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookNewPage.vue +2 -2
- package/skills/jskit/references/patterns/crud/crud-screen-set/example/books/BookViewPage.vue +3 -3
- package/skills/jskit/references/patterns/database/mysql-application/PATTERN.md +9 -4
- package/skills/jskit/references/patterns/database/mysql-application/example/package.json +2 -1
- package/skills/jskit/references/patterns/database/mysql-application/example/scripts/prepare-database.js +8 -0
- package/skills/jskit/references/patterns/database/postgres-application/PATTERN.md +8 -4
- package/skills/jskit/references/patterns/database/postgres-application/example/package.json +2 -1
- package/skills/jskit/references/patterns/database/postgres-application/example/scripts/prepare-database.js +8 -0
- package/skills/jskit/references/patterns/database/table-resource/PATTERN.md +117 -0
- package/skills/jskit/references/patterns/database/table-resource/example/orderResource.js +25 -0
- package/skills/jskit/references/patterns/realtime/realtime-application/PATTERN.md +7 -0
- package/skills/jskit/references/patterns/realtime/realtime-application/example/package.json +2 -2
- package/skills/jskit/references/patterns/rewards/google-rewarded/PATTERN.md +1 -1
- package/skills/jskit/references/patterns/server/feature-package/PATTERN.md +25 -17
- package/skills/jskit/references/patterns/server/feature-package/example/booking-engine/package.json +1 -1
- package/skills/jskit/references/patterns/server/feature-package/example/variations/InvoiceRollupFeature.js +6 -7
- package/skills/jskit/references/patterns/server/feature-package/example/variations/invoiceResource.js +15 -0
- package/skills/jskit/references/patterns/server/feature-package/example/variations/invoiceRollupActions.js +4 -4
- package/skills/jskit/references/patterns/server/feature-package/example/variations/ownedTableRepository.js +27 -0
- package/skills/jskit/references/patterns/server/feature-package/example/variations/types.js +1 -1
- package/skills/jskit/references/patterns/users/user-administration-server/PATTERN.md +59 -10
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/package.json +5 -4
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/src/server/UsersFeature.js +7 -5
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/src/shared/index.js +1 -1
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/src/shared/userCrud.js +21 -0
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/package.json +11 -5
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/src/server/UsersWorkspaceFeature.js +14 -5
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/src/server/workspaceMembersOnly.js +52 -0
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/src/shared/index.js +1 -1
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/src/shared/userCrud.js +21 -0
- package/skills/jskit/references/patterns/workspaces/workspace-server/PATTERN.md +9 -9
- package/skills/jskit/references/patterns/workspaces/workspace-surfaces/PATTERN.md +16 -0
- package/skills/jskit/references/patterns/workspaces/workspace-surfaces/example/src/pages/home/workspaces/index.vue +2 -0
- package/skills/jskit/references/sanity-checks.md +27 -28
- package/skills/jskit/references/typed-features.md +114 -247
- package/patterns/feature-package/example/variations/customKnexRepository.js +0 -40
- package/reference/autogen/packages/json-rest-api-core.md +0 -66
- package/skills/jskit/references/heuristics/crud-repository-mapping.md +0 -140
- package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/src/server/BooksFeature.js +0 -13
- package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/src/shared/bookResource.js +0 -83
- package/skills/jskit/references/patterns/crud/json-api-resource-package/example/packages/books/src/shared/index.js +0 -1
- package/skills/jskit/references/patterns/crud/resource-contract/PATTERN.md +0 -155
- package/skills/jskit/references/patterns/crud/resource-contract/example/bookResource.js +0 -87
- package/skills/jskit/references/patterns/server/feature-package/example/variations/customKnexRepository.js +0 -40
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users/src/shared/userResource.js +0 -69
- package/skills/jskit/references/patterns/users/user-administration-server/example/packages/users-workspace/src/shared/userResource.js +0 -56
- /package/skills/jskit/references/patterns/crud/{json-api-resource-package → crud-feature-package}/example/migrations/20260815000000_books.cjs +0 -0
- /package/skills/jskit/references/patterns/crud/{json-api-resource-package → crud-feature-package}/example/packages/books/src/server/types.js +0 -0
|
@@ -198,6 +198,12 @@ Local functions
|
|
|
198
198
|
- `releaseNoSubscriptions()`
|
|
199
199
|
- `assertConversationAccess(conversationAccess, conversationRuntime)`
|
|
200
200
|
|
|
201
|
+
### `src/server/AssistantStoreFeature.js`
|
|
202
|
+
Exports
|
|
203
|
+
- `AssistantStoreFeature`
|
|
204
|
+
Local functions
|
|
205
|
+
- `createAssistantRepositories({ resources, systemContext })`
|
|
206
|
+
|
|
201
207
|
### `src/server/conversationOperations.js`
|
|
202
208
|
Exports
|
|
203
209
|
- `createConversationOperations({ conversationRuntime, config, workspaceScopeSupport, conversationDataSchema })`
|
|
@@ -239,6 +245,7 @@ Exports
|
|
|
239
245
|
### `src/server/index.js`
|
|
240
246
|
Exports
|
|
241
247
|
- `AssistantFeature`
|
|
248
|
+
- `AssistantStoreFeature`
|
|
242
249
|
- `createAssistantActions`
|
|
243
250
|
- `assistantConversationGoalBodyValidator`
|
|
244
251
|
- `registerAssistantRoutes`
|
|
@@ -294,43 +301,55 @@ Local functions
|
|
|
294
301
|
|
|
295
302
|
### `src/server/repositories/assistantConfigRepository.js`
|
|
296
303
|
Exports
|
|
297
|
-
- `createRepository(
|
|
304
|
+
- `createRepository({ assistantConfig, systemContext })`
|
|
298
305
|
Local functions
|
|
299
306
|
- `normalizeTargetSurfaceId(value = "")`
|
|
300
307
|
- `buildScopeKey(targetSurfaceId, workspaceId = null)`
|
|
301
|
-
- `
|
|
308
|
+
- `mapConfigRecord(record = {})`
|
|
302
309
|
- `createDefaultRecord({ targetSurfaceId = "", workspaceId = null } = {})`
|
|
303
310
|
|
|
311
|
+
### `src/server/repositories/assistantResources.js`
|
|
312
|
+
Exports
|
|
313
|
+
- `assistantConfigResource`
|
|
314
|
+
- `assistantConversationsResource`
|
|
315
|
+
- `assistantMessagesResource`
|
|
316
|
+
- `assistantTurnRequestsResource`
|
|
317
|
+
Local functions
|
|
318
|
+
- `textField(definition = {})`
|
|
319
|
+
- `dateTimeField(definition = {})`
|
|
320
|
+
|
|
304
321
|
### `src/server/repositories/conversationsRepository.js`
|
|
305
322
|
Exports
|
|
306
|
-
- `createRepository(
|
|
323
|
+
- `createRepository({ conversations, systemContext })`
|
|
307
324
|
Local functions
|
|
308
325
|
- `normalizeRequiredSurfaceId(value)`
|
|
309
|
-
- `
|
|
326
|
+
- `mapConversationRecord(record = {})`
|
|
310
327
|
- `normalizeCursorPagination(pagination = {}, { defaultLimit = 20, maxLimit = 200 } = {})`
|
|
311
|
-
- `
|
|
328
|
+
- `rethrowLockError(error)`
|
|
329
|
+
- `conversationChanges(patch)`
|
|
312
330
|
|
|
313
331
|
### `src/server/repositories/messagesRepository.js`
|
|
314
332
|
Exports
|
|
315
|
-
- `createRepository(
|
|
333
|
+
- `createRepository({ messages, conversations, systemContext })`
|
|
316
334
|
Local functions
|
|
317
|
-
- `
|
|
335
|
+
- `mapMessageRecord(record = {})`
|
|
318
336
|
- `normalizePagination(pagination = {}, { defaultPage = 1, defaultPageSize = 200, maxPageSize = 500 } = {})`
|
|
319
|
-
- `
|
|
337
|
+
- `isNewer(a, b)`
|
|
320
338
|
|
|
321
339
|
### `src/server/repositories/repositoryPersistenceUtils.js`
|
|
322
340
|
Exports
|
|
323
|
-
- `applyWorkspaceScope(query, columnName, workspaceId)`
|
|
324
|
-
- `normalizeDbWorkspaceId(value)`
|
|
325
341
|
- `normalizeInputRecordId(value)`
|
|
326
342
|
- `parseJsonObject`
|
|
327
343
|
- `stringifyJsonObject(value)`
|
|
328
344
|
- `toIso(value)`
|
|
329
|
-
- `
|
|
345
|
+
- `toWrittenDateTime(value = null)`
|
|
330
346
|
|
|
331
347
|
### `src/server/repositories/turnRequestsRepository.js`
|
|
332
348
|
Exports
|
|
333
|
-
- `createRepository(
|
|
349
|
+
- `createRepository({ turnRequests, systemContext })`
|
|
350
|
+
Local functions
|
|
351
|
+
- `scopeKey(scope)`
|
|
352
|
+
- `mapTurnRequestRecord(record)`
|
|
334
353
|
|
|
335
354
|
### `src/server/services/assistantConfigService.js`
|
|
336
355
|
Exports
|
|
@@ -340,7 +359,7 @@ Exports
|
|
|
340
359
|
|
|
341
360
|
### `src/server/services/chatService.js`
|
|
342
361
|
Exports
|
|
343
|
-
- `createChatService({ conversationRuntime, aiClientFactory, turnRequests, attachments, transcriptService, serviceToolCatalog, assistantConfigService, personContextPrompt, appConfig, workspaceScopeSupport })`
|
|
362
|
+
- `createChatService({ conversationRuntime, aiClientFactory, turnRequests, attachments, transcriptService, serviceToolCatalog, assistantConfigService, personContextPrompt, appConfig, workspaceScopeSupport, logger = silentLogger })`
|
|
344
363
|
- `type AssistantAiClientFactory`
|
|
345
364
|
- `type AssistantAttachments`
|
|
346
365
|
- `type AssistantConfigService`
|
|
@@ -449,6 +468,7 @@ Exports
|
|
|
449
468
|
- `type ConversationsRepository`
|
|
450
469
|
- `type MessagesRepository`
|
|
451
470
|
- `type TurnRequestsRepository`
|
|
471
|
+
- `type AssistantRepositories`
|
|
452
472
|
- `type WorkspaceScopeSupport`
|
|
453
473
|
- `type ConversationAccess`
|
|
454
474
|
- `type AssistantAttachments`
|
|
@@ -59,11 +59,12 @@ Local functions
|
|
|
59
59
|
### `src/server/lib/emailConfirmation.js`
|
|
60
60
|
Exports
|
|
61
61
|
- `CONFIRMATION_TOKEN_TTL_SECONDS`
|
|
62
|
-
- `createLocalEmailConfirmation({ backend, config, confirmationSender, firstAccountSetup, invitationContextResolver, profileProjector, sessions })`
|
|
62
|
+
- `createLocalEmailConfirmation({ backend, config, confirmationSender, firstAccountSetup, invitationContextResolver, passwords, profileProjector, sessions })`
|
|
63
63
|
- `createLoggedConfirmationSender(logger)`
|
|
64
64
|
Local functions
|
|
65
65
|
- `emailTakenError()`
|
|
66
66
|
- `confirmationInvalidError()`
|
|
67
|
+
- `confirmationPasswordInvalidError()`
|
|
67
68
|
|
|
68
69
|
### `src/server/lib/fileBackend.js`
|
|
69
70
|
Exports
|
|
@@ -243,6 +244,7 @@ Exports
|
|
|
243
244
|
### `test-support/emailConfirmationScenario.js`
|
|
244
245
|
Exports
|
|
245
246
|
- `exerciseEmailConfirmation(t, service, storedRegistrations)`
|
|
247
|
+
- `exerciseRegistrationTakeover(service)`
|
|
246
248
|
Local functions
|
|
247
249
|
- `linkToken(result)`
|
|
248
250
|
|
|
@@ -14,38 +14,85 @@ Use this on demand; do not load the full index at startup.
|
|
|
14
14
|
|
|
15
15
|
### src
|
|
16
16
|
|
|
17
|
+
### `src/server/lib/dateTimes.js`
|
|
18
|
+
Exports
|
|
19
|
+
- `nowIso()`
|
|
20
|
+
- `toDate(value)`
|
|
21
|
+
|
|
17
22
|
### `src/server/lib/dbBackend.js`
|
|
18
23
|
Exports
|
|
19
24
|
- `LOCAL_AUTH_DB_TABLES`
|
|
20
|
-
- `
|
|
25
|
+
- `LOCAL_AUTH_INFRASTRUCTURE_TABLES`
|
|
26
|
+
- `createLocalDbBackend({ resources, identities, context })`
|
|
27
|
+
- `createLocalDbOwners({ resources, identities, context })`
|
|
28
|
+
- `type LocalAuthHandles`
|
|
21
29
|
Local functions
|
|
22
|
-
- `nowIso()`
|
|
23
|
-
- `toDate(value)`
|
|
24
30
|
- `requiredDateTime(value, fallback = nowIso())`
|
|
25
31
|
- `optionalDateTime(value)`
|
|
26
32
|
- `readDateTime(value, fallback = "")`
|
|
27
|
-
- `
|
|
33
|
+
- `text(value)`
|
|
34
|
+
- `readPassword(record)`
|
|
28
35
|
- `writePassword(password = {})`
|
|
29
|
-
- `mapUser(
|
|
30
|
-
- `mapSession(
|
|
31
|
-
- `mapRecovery(
|
|
36
|
+
- `mapUser(record)`
|
|
37
|
+
- `mapSession(record)`
|
|
38
|
+
- `mapRecovery(record)`
|
|
39
|
+
- `mapOAuthAttempt(record)`
|
|
40
|
+
- `mapSignInFailures(record)`
|
|
41
|
+
- `mapRegistration(record)`
|
|
42
|
+
- `registrationRecord(input = {})`
|
|
43
|
+
- `userRecord(input = {})`
|
|
44
|
+
- `sessionRecord(input = {})`
|
|
45
|
+
- `recoveryRecord(input = {})`
|
|
46
|
+
- `oauthAttemptRecord(input = {})`
|
|
47
|
+
- `findOne(handle, field, value, options)`
|
|
48
|
+
- `findById(handle, id, options)`
|
|
49
|
+
- `deleteById(handle, id, options)`
|
|
50
|
+
- `replaceFailures(failures, email, attributes, options)`
|
|
51
|
+
- `patchExisting(handle, id, changes, options)`
|
|
52
|
+
- `userRecords(users, options)`
|
|
53
|
+
- `sessionRecords(sessions, options)`
|
|
54
|
+
- `recoveryRecords(recovery, options)`
|
|
55
|
+
- `oauthAttemptRecords(attempts, options)`
|
|
56
|
+
- `signInFailureRecords(failures, options)`
|
|
57
|
+
- `registrationRecords(registrations, options)`
|
|
58
|
+
- `createRecords(resources, identities, options)`
|
|
59
|
+
|
|
60
|
+
### `src/server/lib/identityStore.js`
|
|
61
|
+
Exports
|
|
62
|
+
- `IDENTITIES_TABLE`
|
|
63
|
+
- `createIdentityStore({ database })`
|
|
64
|
+
- `type IdentityStore`
|
|
65
|
+
Local functions
|
|
32
66
|
- `mapIdentity(row)`
|
|
33
|
-
- `mapOAuthAttempt(row)`
|
|
34
|
-
- `mapSignInFailures(row)`
|
|
35
|
-
- `mapRegistration(row)`
|
|
36
|
-
- `registrationRow(record = {})`
|
|
37
|
-
- `userInsert(input = {})`
|
|
38
|
-
- `sessionInsert(input = {})`
|
|
39
|
-
- `recoveryInsert(input = {})`
|
|
40
67
|
|
|
41
68
|
### `src/server/lib/index.js`
|
|
42
69
|
Exports
|
|
43
70
|
- `createLocalDbBackend`
|
|
71
|
+
- `createLocalDbOwners`
|
|
44
72
|
- `LOCAL_AUTH_DB_TABLES`
|
|
73
|
+
- `LOCAL_AUTH_INFRASTRUCTURE_TABLES`
|
|
74
|
+
|
|
75
|
+
### `src/server/lib/localAuthResources.js`
|
|
76
|
+
Exports
|
|
77
|
+
- `LOCAL_AUTH_RESOURCES`
|
|
78
|
+
- `localAuthOAuthAttemptResource`
|
|
79
|
+
- `localAuthRecoveryResource`
|
|
80
|
+
- `localAuthRegistrationResource`
|
|
81
|
+
- `localAuthSessionResource`
|
|
82
|
+
- `localAuthSignInFailureResource`
|
|
83
|
+
- `localAuthUserResource`
|
|
45
84
|
|
|
46
85
|
### `src/server/providers/AuthLocalDatabaseBackendProvider.js`
|
|
47
86
|
Exports
|
|
48
87
|
- `AuthLocalDatabaseBackendProvider`
|
|
88
|
+
Local functions
|
|
89
|
+
- `textRecordId(value)`
|
|
90
|
+
|
|
91
|
+
### `src/server/types.js`
|
|
92
|
+
Exports
|
|
93
|
+
- `type AuthLocalAccounts`
|
|
94
|
+
- `type AuthLocalSessions`
|
|
95
|
+
- `type AuthLocalRecovery`
|
|
49
96
|
|
|
50
97
|
### migrations
|
|
51
98
|
|
|
@@ -60,3 +107,7 @@ Exports
|
|
|
60
107
|
### `migrations/auth_local_db_protection.cjs`
|
|
61
108
|
Exports
|
|
62
109
|
- None
|
|
110
|
+
|
|
111
|
+
### `migrations/auth_local_db_users_email_verified.cjs`
|
|
112
|
+
Exports
|
|
113
|
+
- None
|
|
@@ -39,6 +39,7 @@ Exports
|
|
|
39
39
|
- `adoptOidcAccounts`
|
|
40
40
|
- `exportLocalAccounts`
|
|
41
41
|
- `createOidcAuthService`
|
|
42
|
+
- `OIDC_CLIENT_INFRASTRUCTURE_TABLES`
|
|
42
43
|
- `createOidcStore`
|
|
43
44
|
|
|
44
45
|
### `src/server/lib/issuer.js`
|
|
@@ -79,8 +80,10 @@ Local functions
|
|
|
79
80
|
|
|
80
81
|
### `src/server/lib/store.js`
|
|
81
82
|
Exports
|
|
83
|
+
- `OIDC_CLIENT_INFRASTRUCTURE_TABLES`
|
|
82
84
|
- `TABLES`
|
|
83
|
-
- `createOidcStore({
|
|
85
|
+
- `createOidcStore({ database, profiles, now = Date.now })`
|
|
86
|
+
- `type OidcKnownUsers`
|
|
84
87
|
Local functions
|
|
85
88
|
- `toDate(value)`
|
|
86
89
|
- `isExpired(value, now)`
|
|
@@ -141,6 +144,7 @@ Exports
|
|
|
141
144
|
Local functions
|
|
142
145
|
- `createDatabase()`
|
|
143
146
|
- `createProfileProjector(knex)`
|
|
147
|
+
- `createUsersProfiles(knex)`
|
|
144
148
|
|
|
145
149
|
### `test-support/mockIssuer.js`
|
|
146
150
|
Exports
|
|
@@ -163,7 +163,7 @@ Local functions
|
|
|
163
163
|
### `src/server/lib/profileModes.js`
|
|
164
164
|
Exports
|
|
165
165
|
- `PROVIDER_MODE_PROFILES`
|
|
166
|
-
- `createUsersModeProfiles(
|
|
166
|
+
- `createUsersModeProfiles({ profileProjector, userProfiles, userSettings })`
|
|
167
167
|
Local functions
|
|
168
168
|
- `createProviderProfileProjector()`
|
|
169
169
|
|
|
@@ -28,6 +28,27 @@ Local functions
|
|
|
28
28
|
- `connectionMatches(connection, integration, providerId, registration)`
|
|
29
29
|
- `callbackMatches(connection, provider, registration)`
|
|
30
30
|
|
|
31
|
+
### `src/server/connectionStore.js`
|
|
32
|
+
Exports
|
|
33
|
+
- `createConnectionStore({ resources, systemContext, protection })`
|
|
34
|
+
- `requireProtection(protection)`
|
|
35
|
+
Local functions
|
|
36
|
+
- `hash(value)`
|
|
37
|
+
|
|
38
|
+
### `src/server/ConnectionStoreFeature.js`
|
|
39
|
+
Exports
|
|
40
|
+
- `CONNECTION_STORE_FEATURE`
|
|
41
|
+
- `CONNECTION_STORE_SYSTEM_SCOPE`
|
|
42
|
+
- `createConnectionStoreFeature({ protection })`
|
|
43
|
+
|
|
44
|
+
### `src/server/connectorResources.js`
|
|
45
|
+
Exports
|
|
46
|
+
- `CONNECTOR_TABLES`
|
|
47
|
+
- `connectorAuthorizationAttemptResource`
|
|
48
|
+
- `connectorConnectionResource`
|
|
49
|
+
Local functions
|
|
50
|
+
- `key(column)`
|
|
51
|
+
|
|
31
52
|
### `src/server/ConnectorsFeature.js`
|
|
32
53
|
Exports
|
|
33
54
|
- `createConnectorsFeature(options)`
|
|
@@ -68,8 +89,6 @@ Exports
|
|
|
68
89
|
### `src/server/knexConnectionStore.js`
|
|
69
90
|
Exports
|
|
70
91
|
- `createKnexConnectionStore({ knex, protection })`
|
|
71
|
-
Local functions
|
|
72
|
-
- `hash(value)`
|
|
73
92
|
|
|
74
93
|
### `src/server/providerRequests.js`
|
|
75
94
|
Exports
|
|
@@ -86,6 +105,7 @@ Local functions
|
|
|
86
105
|
### `src/server/storage.js`
|
|
87
106
|
Exports
|
|
88
107
|
- `createCredentialProtection`
|
|
108
|
+
- `createConnectionStoreFeature`
|
|
89
109
|
- `createKnexConnectionStore`
|
|
90
110
|
|
|
91
111
|
### `src/server/types.js`
|
|
@@ -30,7 +30,7 @@ Exports
|
|
|
30
30
|
|
|
31
31
|
### `src/server/consoleRuntime.js`
|
|
32
32
|
Exports
|
|
33
|
-
- `createConsoleRuntime({
|
|
33
|
+
- `createConsoleRuntime({ consoleSettingsRepository })`
|
|
34
34
|
|
|
35
35
|
### `src/server/consoleSettings/consoleService.js`
|
|
36
36
|
Exports
|
|
@@ -42,10 +42,9 @@ Exports
|
|
|
42
42
|
|
|
43
43
|
### `src/server/consoleSettings/consoleSettingsRepository.js`
|
|
44
44
|
Exports
|
|
45
|
-
- `createRepository({
|
|
45
|
+
- `createRepository({ consoleSettings })`
|
|
46
46
|
Local functions
|
|
47
|
-
- `
|
|
48
|
-
- `mapSingletonRow(row)`
|
|
47
|
+
- `mapSingletonRecord(record)`
|
|
49
48
|
|
|
50
49
|
### `src/server/consoleSettings/consoleSettingsRoutes.js`
|
|
51
50
|
Exports
|
|
@@ -62,6 +61,7 @@ Local functions
|
|
|
62
61
|
### `src/server/types.js`
|
|
63
62
|
Exports
|
|
64
63
|
- `type ConsoleCore`
|
|
64
|
+
- `type ConsoleSettings`
|
|
65
65
|
- `type ConsoleService`
|
|
66
66
|
- `type ConsoleSettingsRepository`
|
|
67
67
|
- `type ConsoleSettingsService`
|
|
@@ -72,7 +72,11 @@ Exports
|
|
|
72
72
|
|
|
73
73
|
### `src/shared/resources/consoleSettingsResource.js`
|
|
74
74
|
Exports
|
|
75
|
-
- `
|
|
75
|
+
- `consoleSettingsContract`
|
|
76
|
+
|
|
77
|
+
### `src/shared/resources/consoleSettingsTableResource.js`
|
|
78
|
+
Exports
|
|
79
|
+
- `consoleSettingsTableResource`
|
|
76
80
|
|
|
77
81
|
### migrations
|
|
78
82
|
|
|
@@ -14,27 +14,34 @@ Use this on demand; do not load the full index at startup.
|
|
|
14
14
|
|
|
15
15
|
### src
|
|
16
16
|
|
|
17
|
-
### `src/server/createCrudServiceFromResource.js`
|
|
18
|
-
Exports
|
|
19
|
-
- `createCrudServiceFromResource(resource, { context = "crudService" } = {})`
|
|
20
|
-
|
|
21
17
|
### `src/server/createHooksToCollectChildren.js`
|
|
22
18
|
Exports
|
|
23
19
|
- `createHooksToCollectChildren(options = {})`
|
|
24
20
|
Local functions
|
|
25
21
|
- `normalizeOwnerKey(value)`
|
|
26
22
|
- `readParentId(record)`
|
|
27
|
-
- `
|
|
23
|
+
- `passCallOptions({ callOptions = {} } = {})`
|
|
24
|
+
- `explainForeignKeyFilterError(error, context, childForeignKey)`
|
|
28
25
|
- `resolveListChildrenHandler(options = {}, { context = "createHooksToCollectChildren" } = {})`
|
|
29
26
|
- `resolveGetChildOwnerId(options = {}, { context = "createHooksToCollectChildren" } = {})`
|
|
30
27
|
- `resolveChildrenContainerKey(hookContext = {}, options = {})`
|
|
31
28
|
|
|
32
|
-
### `src/server/
|
|
29
|
+
### `src/server/crudContracts.js`
|
|
33
30
|
Exports
|
|
34
|
-
- `
|
|
31
|
+
- `CrudContractsProvider`
|
|
32
|
+
- `createCrudContracts()`
|
|
33
|
+
|
|
34
|
+
### `src/server/defineCrudFeature.js`
|
|
35
|
+
Exports
|
|
36
|
+
- `defineCrudFeature(feature)`
|
|
35
37
|
Local functions
|
|
36
|
-
- `
|
|
38
|
+
- `assertKnownOptions(options)`
|
|
39
|
+
- `assertPermissionNames(permissions, actions)`
|
|
40
|
+
- `assertServiceOperations(service, operations)`
|
|
41
|
+
- `normalizeAccess(crud = {})`
|
|
37
42
|
- `normalizeScope(scope = {})`
|
|
43
|
+
- `routeOwnership(ownership)`
|
|
44
|
+
- `crudOwns(crud, owns, ownerRepository)`
|
|
38
45
|
- `assertWorkspaceScope(scope, ownershipFilter)`
|
|
39
46
|
- `normalizeFeatureRequirements(requires = {})`
|
|
40
47
|
- `operationsFromResource(resource)`
|
|
@@ -42,21 +49,6 @@ Local functions
|
|
|
42
49
|
- `resolveActionPermission(actionName, { access, workspaceScoped, permissions })`
|
|
43
50
|
- `projectEnabledServiceOperations(service, operations)`
|
|
44
51
|
|
|
45
|
-
### `src/server/fieldAccess.js`
|
|
46
|
-
Exports
|
|
47
|
-
- `createCrudFieldAccessRuntime(resource = {}, { context = "crudFieldAccess" } = {})`
|
|
48
|
-
- `createFieldAccessForRoleMatrix(matrix = {}, { context = "crudFieldAccess" } = {})`
|
|
49
|
-
Local functions
|
|
50
|
-
- `normalizeFieldSet(value, { context = "crudFieldAccess", label = "field list" } = {})`
|
|
51
|
-
- `resolveFieldSet(resolver, input = {}, { context = "crudFieldAccess", label = "field list" } = {})`
|
|
52
|
-
- `resolveWriteMode(fieldAccess = {}, { context = "crudFieldAccess" } = {})`
|
|
53
|
-
- `buildOutputFieldRules(resource)`
|
|
54
|
-
- `resolveRoleFromFieldAccessInput(input)`
|
|
55
|
-
- `resolveActionFromFieldAccessInput(input)`
|
|
56
|
-
- `resolveOperationPolicyValue(operationPolicy, input = {}, action = "*")`
|
|
57
|
-
- `resolveRoleMatrixPolicy(matrix = {}, operation = "readable", input = {})`
|
|
58
|
-
- `applyReadableFieldPolicyToRecord(record, allowedFields, outputRules, { context = "crudFieldAccess" } = {})`
|
|
59
|
-
|
|
60
52
|
### `src/server/jsonApiModule/actions.js`
|
|
61
53
|
Exports
|
|
62
54
|
- `assertCrudOperationName(operation = "")`
|
|
@@ -89,13 +81,6 @@ Local functions
|
|
|
89
81
|
Exports
|
|
90
82
|
- `buildCrudCustomActionId(namespace, name, definition)`
|
|
91
83
|
|
|
92
|
-
### `src/server/jsonApiModule/repository.js`
|
|
93
|
-
Exports
|
|
94
|
-
- `createCrudJsonApiRepository({ api, resource, resourceScopeName })`
|
|
95
|
-
- `type WriteReturning`
|
|
96
|
-
Local functions
|
|
97
|
-
- `writeReturning(options, fallback = "full")`
|
|
98
|
-
|
|
99
84
|
### `src/server/jsonApiModule/routes.js`
|
|
100
85
|
Exports
|
|
101
86
|
- `registerCrudJsonApiRoutes(router, { namespace, resource, routeBase, relativePath, surface, ownershipFilter, access, internal, operations, actions, operationInputs, listFilterQueryValidator, routeParamsValidator, scopeInput })`
|
|
@@ -106,10 +91,15 @@ Local functions
|
|
|
106
91
|
|
|
107
92
|
### `src/server/jsonApiModule/service.js`
|
|
108
93
|
Exports
|
|
109
|
-
- `
|
|
110
|
-
- `repositoryCallOptions(options = {})`
|
|
94
|
+
- `createCrudService({ repository, crud })`
|
|
111
95
|
Local functions
|
|
96
|
+
- `documentNotFound()`
|
|
112
97
|
- `requireDocument(document)`
|
|
98
|
+
- `isNotFound(error)`
|
|
99
|
+
- `recordOutput(crud)`
|
|
100
|
+
- `contractShape(crud)`
|
|
101
|
+
- `includedShape({ attributes, relationships }, labelKey = "")`
|
|
102
|
+
- `documentShapes(crud)`
|
|
113
103
|
|
|
114
104
|
### `src/server/jsonApiResourceContract.js`
|
|
115
105
|
Exports
|
|
@@ -117,6 +107,8 @@ Exports
|
|
|
117
107
|
- `resolveJsonApiFieldsetContract(resource)`
|
|
118
108
|
- `resolveJsonApiRelationshipEntries(definition = null)`
|
|
119
109
|
- `resolveSchemaFieldDefinitions(definition = null)`
|
|
110
|
+
Local functions
|
|
111
|
+
- `includeFieldsOf(label, names)`
|
|
120
112
|
|
|
121
113
|
### `src/server/listFilterJsonRest.js`
|
|
122
114
|
Exports
|
|
@@ -180,130 +172,16 @@ Local functions
|
|
|
180
172
|
- `buildJsonApiFieldsetValueDefinition({ allowedFields = [] } = {})`
|
|
181
173
|
- `resolveCrudListUsesOrderedCursor(list = {})`
|
|
182
174
|
|
|
183
|
-
### `src/server/lookupPathSupport.js`
|
|
184
|
-
Exports
|
|
185
|
-
- `normalizeLookupOwnershipFilter(value, { context })`
|
|
186
|
-
- `requireCrudLookupNamespace(value = "", { context = "crudLookup" } = {})`
|
|
187
|
-
- `resolveCrudLookupToken(namespace = "", { context = "crudLookup" } = {})`
|
|
188
|
-
|
|
189
|
-
### `src/server/lookups.js`
|
|
190
|
-
Exports
|
|
191
|
-
- `resolveCrudLookupToken`
|
|
192
|
-
- `createCrudLookup(repository, { context = "crudLookup", ownershipFilter = "" } = {})`
|
|
193
|
-
|
|
194
175
|
### `src/server/normalizeOptionalText.js`
|
|
195
176
|
Exports
|
|
196
177
|
- `normalizeOptionalText(value)`
|
|
197
178
|
|
|
198
|
-
### `src/server/
|
|
199
|
-
Exports
|
|
200
|
-
- `DEFAULT_LIST_LIMIT`
|
|
201
|
-
- `MAX_LIST_LIMIT`
|
|
202
|
-
- `normalizeCrudListLimit(value, { fallback = DEFAULT_LIST_LIMIT, max = MAX_LIST_LIMIT } = {})`
|
|
203
|
-
- `normalizeCrudListCursor(cursor = null, { allowEmpty = true } = {})`
|
|
204
|
-
- `requireCrudTableName(tableName, { context = "crudRepository" } = {})`
|
|
205
|
-
- `deriveRepositoryMappingFromResource(resource = {}, { context = "crudRepository" } = {})`
|
|
206
|
-
- `applyCrudListQueryFilters(query, { idColumn = "id", cursor = "", applyCursor = true, q = "", searchColumns = [], parentFilters = {}, parentFilterColumns = {} } = {})`
|
|
207
|
-
- `mapRecordRow(row, fieldKeys = [], overrides = {}, { recordIdKeys = [], serializerByKey = {} } = {})`
|
|
208
|
-
- `buildWritePayload(sourcePayload = {}, fieldKeys = [], overrides = {}, { serializerByKey = {} } = {})`
|
|
209
|
-
- `resolveColumnName(fieldKey, overrides = {})`
|
|
210
|
-
- `resolveCrudIdColumn(idColumn, { fallback = "id" } = {})`
|
|
211
|
-
- `buildRepositoryColumnMetadata({ outputKeys = [], writeKeys = [], columnOverrides = {}, fieldStorageByKey = {} } = {})`
|
|
212
|
-
Local functions
|
|
213
|
-
- `resolveOptionalFieldDefinitions(definition, options = {})`
|
|
214
|
-
- `requireFieldDefinitions(definition, { context = "crudRepository", schemaLabel = "schema definition", defaultMode = "patch" } = {})`
|
|
215
|
-
- `resolveFieldDefinitionType(definition)`
|
|
216
|
-
- `definitionIncludesStringType(definition = {})`
|
|
217
|
-
- `definitionIncludesDateTimeType(definition = {})`
|
|
218
|
-
- `definitionIncludesRecordIdType(definition = {})`
|
|
219
|
-
|
|
220
|
-
### `src/server/resourceRuntime/compiledRuntime.js`
|
|
179
|
+
### `src/server/removedApi.js`
|
|
221
180
|
Exports
|
|
222
|
-
- `
|
|
223
|
-
|
|
224
|
-
- `
|
|
225
|
-
- `
|
|
226
|
-
- `normalizeCrudVirtualFieldHandlers(virtualFields = {}, repositoryMapping, { context })`
|
|
227
|
-
- `resolveRecordOutputValidator(resource, { context })`
|
|
228
|
-
- `resolveOperationBodyValidator(resource, operationKey, { context })`
|
|
229
|
-
- `normalizeCrudRepositoryOperationStage(stage, stageLabel, { context })`
|
|
230
|
-
- `normalizeCrudRepositoryOperationConfig(config, operationKey, { context })`
|
|
231
|
-
- `normalizeCrudRepositoryOperations(sourceOperations, { context })`
|
|
232
|
-
|
|
233
|
-
### `src/server/resourceRuntime/index.js`
|
|
234
|
-
Exports
|
|
235
|
-
- `createCrudResourceRuntime(resource, knex, repositoryOptions = {})`
|
|
236
|
-
- `type RuntimeKnex`
|
|
237
|
-
Local functions
|
|
238
|
-
- `requireCrudRecordId(value, { context })`
|
|
239
|
-
- `resolveCrudRepositoryCall(runtime, knex, callOptions)`
|
|
240
|
-
- `applyCrudRepositoryReadLock(dbQuery, callOptions)`
|
|
241
|
-
- `listRecords(runtime, knex, query, callOptions)`
|
|
242
|
-
- `findRecordById(runtime, knex, recordId, callOptions)`
|
|
243
|
-
- `listRecordsByIds(runtime, knex, ids, callOptions)`
|
|
244
|
-
- `createRecord(runtime, knex, payload, callOptions)`
|
|
245
|
-
- `updateRecordById(runtime, knex, recordId, patch, callOptions)`
|
|
246
|
-
- `deleteRecordById(runtime, knex, recordId, callOptions)`
|
|
247
|
-
|
|
248
|
-
### `src/server/resourceRuntime/listControls.js`
|
|
249
|
-
Exports
|
|
250
|
-
- `resolveListRuntimeConfig(list = {}, fallbackSearchColumns, { idColumn })`
|
|
251
|
-
- `encodeOrderedListCursor(row, orderBy)`
|
|
252
|
-
- `applyOrderedListCursorFilter(query, { orderBy, cursor })`
|
|
253
|
-
- `enforceCrudRepositoryListControls(dbQuery, { idColumn, limit, orderBy })`
|
|
254
|
-
Local functions
|
|
255
|
-
- `normalizeSearchColumns(searchColumns, fallbackColumns)`
|
|
256
|
-
- `normalizeListOrderDirection(value = LIST_ORDER_DIRECTION_ASC)`
|
|
257
|
-
- `normalizeListOrderNulls(value = LIST_ORDER_NULLS_LAST)`
|
|
258
|
-
- `normalizeListOrderBy(orderBy, { idColumn })`
|
|
259
|
-
- `encodeOrderedListCursorValue(value = null)`
|
|
260
|
-
- `decodeOrderedListCursorValue(value = null)`
|
|
261
|
-
- `decodeOrderedListCursor(cursor, orderBy)`
|
|
262
|
-
- `applyOrderedListCursorEquality(query, descriptor = {}, value = null)`
|
|
263
|
-
- `applyOrderedListCursorAfterBranch(query, descriptor = {}, value = null)`
|
|
264
|
-
- `canApplyOrderedListCursorAfterBranch(descriptor = {}, value = null)`
|
|
265
|
-
- `appendOrderedListCursorBranches(query, orderBy = [], cursorValues = [], index = 0, { useOr = false } = {})`
|
|
266
|
-
- `applyOrderedListControls(dbQuery, orderBy)`
|
|
267
|
-
|
|
268
|
-
### `src/server/resourceRuntime/lookupHydration.js`
|
|
269
|
-
Exports
|
|
270
|
-
- `buildCrudLookupRuntime(resource, { outputKeys, context })`
|
|
271
|
-
- `hydrateCrudLookupRecords(records, runtime, { include, mode, repositoryOptions, callOptions })`
|
|
272
|
-
- `type LookupRuntime`
|
|
273
|
-
Local functions
|
|
274
|
-
- `normalizeLookupRelationEntry(entry, outputKeys)`
|
|
275
|
-
- `normalizeLookupDefaultInclude(value)`
|
|
276
|
-
- `normalizeLookupMaxDepth(value)`
|
|
277
|
-
- `resolveLookupRuntimeDefaults(resource)`
|
|
278
|
-
- `normalizeLookupIdentifier(value)`
|
|
279
|
-
- `normalizeIncludePaths(include, defaultInclude)`
|
|
280
|
-
- `resolveChildIncludeFromPaths(paths)`
|
|
281
|
-
- `shouldHydrateByMode(entry, mode)`
|
|
282
|
-
- `buildLookupHydrationPlan(runtime, include, { mode, includeWasExplicit, skippedNamespaces })`
|
|
283
|
-
- `resolveLookupResolver(repositoryOptions, callOptions, { context })`
|
|
284
|
-
- `resolveLookupDepthRuntime(runtime, repositoryOptions, callOptions)`
|
|
285
|
-
- `buildLookupGroupKey(relation)`
|
|
286
|
-
- `normalizeLookupRelationValues(records, entries, childIncludeByKey)`
|
|
287
|
-
- `resolveGroupChildInclude(group)`
|
|
288
|
-
- `normalizeLookup(provider, relation, { context })`
|
|
289
|
-
- `resolveLookupVisibilityContext(provider, relation, callOptions, { context })`
|
|
290
|
-
- `buildLookupRecordMap(records, valueKey)`
|
|
291
|
-
- `buildLookupCollectionMap(records, foreignKey)`
|
|
292
|
-
- `resolveLookupVisitedNamespaces(runtime, callOptions)`
|
|
293
|
-
|
|
294
|
-
### `src/server/resourceRuntime/operationStages.js`
|
|
295
|
-
Exports
|
|
296
|
-
- `applyCrudRepositoryVirtualProjections(dbQuery, runtime, { knex, tableName })`
|
|
297
|
-
- `applyConfiguredQueryStage(dbQuery, stage, stageContext, { context, stageKey })`
|
|
298
|
-
- `applyConfiguredObjectStage(payload, stage, stageContext, { context, stageKey })`
|
|
299
|
-
- `buildCrudRepositoryActionContextBase(runtime, callOptions)`
|
|
300
|
-
Local functions
|
|
301
|
-
- `isCrudRepositoryQueryBuilder(value)`
|
|
302
|
-
|
|
303
|
-
### `src/server/resourceRuntime/recordValidation.js`
|
|
304
|
-
Exports
|
|
305
|
-
- `normalizeRepositoryInputPayload(runtime, payload, operationKey)`
|
|
306
|
-
- `normalizeRepositoryOutputRecord(runtime, record, { operation })`
|
|
181
|
+
- `LEGACY_REPOSITORY_METHODS`
|
|
182
|
+
- `LEGACY_SERVICE_METHODS`
|
|
183
|
+
- `rejectLegacyMethods(target, legacyMethods, label)`
|
|
184
|
+
- `withRemovedProperties(target, removed, label)`
|
|
307
185
|
|
|
308
186
|
### `src/server/routeContracts.js`
|
|
309
187
|
Exports
|
|
@@ -328,20 +206,10 @@ Exports
|
|
|
328
206
|
- `buildCrudRecordChangedEvent({ namespace, operation, entityId, audience })`
|
|
329
207
|
- `resolveCrudJsonApiEntityIdFromResult({ result } = {})`
|
|
330
208
|
|
|
331
|
-
### `src/server/serviceMethods.js`
|
|
332
|
-
Exports
|
|
333
|
-
- `createCrudServiceRuntime(resource = {}, { context = "crudService" } = {})`
|
|
334
|
-
- `crudServiceListRecords(runtime, repository, fieldAccess = {}, query = {}, options = {})`
|
|
335
|
-
- `crudServiceGetRecord(runtime, repository, fieldAccess = {}, recordId, options = {})`
|
|
336
|
-
- `crudServiceCreateRecord(runtime, repository, fieldAccess = {}, payload = {}, options = {})`
|
|
337
|
-
- `crudServiceUpdateRecord(runtime, repository, fieldAccess = {}, recordId, payload = {}, options = {})`
|
|
338
|
-
- `crudServiceDeleteRecord(runtime, repository, fieldAccess = {}, recordId, options = {})`
|
|
339
|
-
Local functions
|
|
340
|
-
- `splitCrudListRepositoryCall(query = {}, options = {})`
|
|
341
|
-
|
|
342
209
|
### `src/server/types.js`
|
|
343
210
|
Exports
|
|
344
|
-
- `type
|
|
211
|
+
- `type TableResource`
|
|
212
|
+
- `type CrudContract`
|
|
345
213
|
- `type CrudRepository`
|
|
346
214
|
- `type CrudService`
|
|
347
215
|
- `type CrudJsonApiResult`
|
|
@@ -351,30 +219,27 @@ Exports
|
|
|
351
219
|
- `type CrudLifecycleContext`
|
|
352
220
|
- `type CrudLifecycleHooks`
|
|
353
221
|
- `type CrudOperationLifecycle`
|
|
354
|
-
- `type CrudRecordRepository`
|
|
355
|
-
- `type CompiledCrudRepositoryRuntime`
|
|
356
|
-
- `type CrudLookupRepository`
|
|
357
|
-
- `type CrudFieldAccess`
|
|
358
|
-
- `type CrudServiceRuntime`
|
|
359
222
|
|
|
360
223
|
### patterns
|
|
361
224
|
|
|
362
|
-
### `patterns/
|
|
225
|
+
### `patterns/crud-feature-package/example/migrations/20260815000000_books.cjs`
|
|
363
226
|
Exports
|
|
364
227
|
- None
|
|
365
228
|
|
|
366
|
-
### `patterns/
|
|
229
|
+
### `patterns/crud-feature-package/example/packages/books/src/server/BooksFeature.js`
|
|
367
230
|
Exports
|
|
368
231
|
- `BooksFeature`
|
|
369
232
|
|
|
370
|
-
### `patterns/
|
|
233
|
+
### `patterns/crud-feature-package/example/packages/books/src/server/types.js`
|
|
371
234
|
Exports
|
|
372
235
|
- `type AppBooks`
|
|
373
236
|
|
|
374
|
-
### `patterns/
|
|
237
|
+
### `patterns/crud-feature-package/example/packages/books/src/shared/bookResource.js`
|
|
375
238
|
Exports
|
|
239
|
+
- `bookCrud`
|
|
376
240
|
- `bookResource`
|
|
377
241
|
|
|
378
|
-
### `patterns/
|
|
242
|
+
### `patterns/crud-feature-package/example/packages/books/src/shared/index.js`
|
|
379
243
|
Exports
|
|
244
|
+
- `bookCrud`
|
|
380
245
|
- `bookResource`
|