@nkzw/fate 0.1.3 → 1.0.0-rc.0

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/README.md +810 -129
  2. package/docs/api/classes/FateClient.md +832 -0
  3. package/docs/api/functions/clientRoot.md +27 -0
  4. package/docs/api/functions/createClient.md +21 -0
  5. package/docs/api/functions/createHTTPTransport.md +51 -0
  6. package/docs/api/functions/createTRPCTransport.md +46 -0
  7. package/docs/api/functions/getListEntries.md +15 -0
  8. package/docs/api/functions/getSelectionPlan.md +36 -0
  9. package/docs/api/functions/isRecord.md +15 -0
  10. package/docs/api/functions/isViewTag.md +17 -0
  11. package/docs/api/functions/liveConnectionTopic.md +19 -0
  12. package/docs/api/functions/liveEntityTopic.md +19 -0
  13. package/docs/api/functions/liveGlobalConnectionTopic.md +15 -0
  14. package/docs/api/functions/mutation.md +32 -0
  15. package/docs/api/functions/toEntityId.md +21 -0
  16. package/docs/api/functions/view.md +26 -0
  17. package/docs/api/index.md +81 -0
  18. package/docs/api/interfaces/FateThenable.md +31 -0
  19. package/docs/api/interfaces/Transport.md +199 -0
  20. package/docs/api/server/classes/FateRequestError.md +67 -0
  21. package/docs/api/server/drizzle/functions/createDrizzleFate.md +431 -0
  22. package/docs/api/server/drizzle/functions/createDrizzleSourceAdapter.md +21 -0
  23. package/docs/api/server/drizzle/functions/createDrizzleSourceRegistry.md +21 -0
  24. package/docs/api/server/drizzle/index.md +23 -0
  25. package/docs/api/server/drizzle/type-aliases/DrizzleManyToManyConfig.md +15 -0
  26. package/docs/api/server/drizzle/type-aliases/DrizzleManyToManyInput.md +5 -0
  27. package/docs/api/server/drizzle/type-aliases/DrizzleQueryExtra.md +21 -0
  28. package/docs/api/server/drizzle/type-aliases/DrizzleSourceAdapter.md +337 -0
  29. package/docs/api/server/drizzle/type-aliases/DrizzleViewConfig.md +29 -0
  30. package/docs/api/server/functions/bindSourceProcedures.md +32 -0
  31. package/docs/api/server/functions/computed.md +43 -0
  32. package/docs/api/server/functions/count.md +21 -0
  33. package/docs/api/server/functions/createFateFetchHandler.md +21 -0
  34. package/docs/api/server/functions/createFateServer.md +41 -0
  35. package/docs/api/server/functions/createHonoFateHandler.md +21 -0
  36. package/docs/api/server/functions/createLiveEventBus.md +17 -0
  37. package/docs/api/server/functions/createNestedSourcePlan.md +103 -0
  38. package/docs/api/server/functions/createResolver.md +74 -0
  39. package/docs/api/server/functions/createSourcePlan.md +95 -0
  40. package/docs/api/server/functions/createSourceProcedures.md +46 -0
  41. package/docs/api/server/functions/dataView.md +32 -0
  42. package/docs/api/server/functions/field.md +15 -0
  43. package/docs/api/server/functions/getNestedSelection.md +19 -0
  44. package/docs/api/server/functions/getScopedArgs.md +21 -0
  45. package/docs/api/server/functions/hasNestedSelection.md +19 -0
  46. package/docs/api/server/functions/list.md +28 -0
  47. package/docs/api/server/functions/refetchSourceById.md +55 -0
  48. package/docs/api/server/functions/resolveSourceById.md +55 -0
  49. package/docs/api/server/functions/resolveSourceByIds.md +55 -0
  50. package/docs/api/server/functions/resolveSourceConnection.md +67 -0
  51. package/docs/api/server/functions/resolver.md +42 -0
  52. package/docs/api/server/functions/toPrismaSelect.md +25 -0
  53. package/docs/api/server/functions/withConnection.md +24 -0
  54. package/docs/api/server/index.md +109 -0
  55. package/docs/api/server/prisma/functions/createPrismaFate.md +435 -0
  56. package/docs/api/server/prisma/functions/createPrismaSourceAdapter.md +21 -0
  57. package/docs/api/server/prisma/functions/createPrismaSourceRegistry.md +21 -0
  58. package/docs/api/server/prisma/functions/prismaConnectionArgs.md +57 -0
  59. package/docs/api/server/prisma/index.md +23 -0
  60. package/docs/api/server/prisma/type-aliases/PrismaDelegate.md +59 -0
  61. package/docs/api/server/prisma/type-aliases/PrismaQueryExtra.md +5 -0
  62. package/docs/api/server/prisma/type-aliases/PrismaSourceAdapter.md +343 -0
  63. package/docs/api/server/prisma/type-aliases/PrismaViewConfig.md +31 -0
  64. package/docs/api/server/type-aliases/ComputedField.md +55 -0
  65. package/docs/api/server/type-aliases/ComputedSelection.md +5 -0
  66. package/docs/api/server/type-aliases/ConnectionItem.md +29 -0
  67. package/docs/api/server/type-aliases/ConnectionPagination.md +39 -0
  68. package/docs/api/server/type-aliases/ConnectionResult.md +29 -0
  69. package/docs/api/server/type-aliases/CountSelection.md +29 -0
  70. package/docs/api/server/type-aliases/CountWhere.md +5 -0
  71. package/docs/api/server/type-aliases/DataViewListOptions.md +13 -0
  72. package/docs/api/server/type-aliases/DataViewOrderBy.md +5 -0
  73. package/docs/api/server/type-aliases/DataViewOrderDirection.md +5 -0
  74. package/docs/api/server/type-aliases/DataViewResult.md +11 -0
  75. package/docs/api/server/type-aliases/Entity.md +21 -0
  76. package/docs/api/server/type-aliases/FateServer.md +75 -0
  77. package/docs/api/server/type-aliases/FateServerManifest.md +5 -0
  78. package/docs/api/server/type-aliases/FieldSelection.md +21 -0
  79. package/docs/api/server/type-aliases/LiveConnectionEventType.md +5 -0
  80. package/docs/api/server/type-aliases/LiveConnectionSourceEvent.md +5 -0
  81. package/docs/api/server/type-aliases/LiveEventBus.md +5 -0
  82. package/docs/api/server/type-aliases/LiveEventType.md +5 -0
  83. package/docs/api/server/type-aliases/LiveSourceEvent.md +5 -0
  84. package/docs/api/server/type-aliases/NativeFateAPI.md +47 -0
  85. package/docs/api/server/type-aliases/OrderDirection.md +5 -0
  86. package/docs/api/server/type-aliases/SourceConfig.md +55 -0
  87. package/docs/api/server/type-aliases/SourceDefinition.md +55 -0
  88. package/docs/api/server/type-aliases/SourceOrder.md +5 -0
  89. package/docs/api/server/type-aliases/SourceOrderField.md +21 -0
  90. package/docs/api/server/type-aliases/SourcePlan.md +29 -0
  91. package/docs/api/server/type-aliases/SourcePlanNode.md +29 -0
  92. package/docs/api/server/type-aliases/SourceRegistry.md +11 -0
  93. package/docs/api/server/type-aliases/SourceRelation.md +15 -0
  94. package/docs/api/server/type-aliases/SourceRelationConfig.md +23 -0
  95. package/docs/api/server/variables/byIdInput.md +5 -0
  96. package/docs/api/server/variables/connectionArgs.md +7 -0
  97. package/docs/api/type-aliases/ConnectionMetadata.md +7 -0
  98. package/docs/api/type-aliases/ConnectionRef.md +13 -0
  99. package/docs/api/type-aliases/Entity.md +15 -0
  100. package/docs/api/type-aliases/EntityId.md +7 -0
  101. package/docs/api/type-aliases/FateLiveConnectionEvent.md +5 -0
  102. package/docs/api/type-aliases/FateLiveEvent.md +5 -0
  103. package/docs/api/type-aliases/FateMutations.md +7 -0
  104. package/docs/api/type-aliases/FateOperation.md +5 -0
  105. package/docs/api/type-aliases/FateProtocolRequest.md +5 -0
  106. package/docs/api/type-aliases/FateProtocolResponse.md +5 -0
  107. package/docs/api/type-aliases/FateRecord.md +7 -0
  108. package/docs/api/type-aliases/FateRoots.md +7 -0
  109. package/docs/api/type-aliases/InferFateAPI.md +11 -0
  110. package/docs/api/type-aliases/List.md +5 -0
  111. package/docs/api/type-aliases/ListEntry.md +5 -0
  112. package/docs/api/type-aliases/ListItem.md +13 -0
  113. package/docs/api/type-aliases/Mask.md +15 -0
  114. package/docs/api/type-aliases/MutationDefinition.md +21 -0
  115. package/docs/api/type-aliases/MutationEntity.md +13 -0
  116. package/docs/api/type-aliases/MutationIdentifier.md +19 -0
  117. package/docs/api/type-aliases/MutationInput.md +13 -0
  118. package/docs/api/type-aliases/MutationResult.md +13 -0
  119. package/docs/api/type-aliases/NodesItem.md +13 -0
  120. package/docs/api/type-aliases/Pagination.md +39 -0
  121. package/docs/api/type-aliases/Request.md +7 -0
  122. package/docs/api/type-aliases/RequestMode.md +7 -0
  123. package/docs/api/type-aliases/RequestOptions.md +7 -0
  124. package/docs/api/type-aliases/RequestResult.md +18 -0
  125. package/docs/api/type-aliases/Selection.md +13 -0
  126. package/docs/api/type-aliases/Snapshot.md +7 -0
  127. package/docs/api/type-aliases/TypeConfig.md +41 -0
  128. package/docs/api/type-aliases/View.md +17 -0
  129. package/docs/api/type-aliases/ViewData.md +18 -0
  130. package/docs/api/type-aliases/ViewEntity.md +13 -0
  131. package/docs/api/type-aliases/ViewEntityName.md +13 -0
  132. package/docs/api/type-aliases/ViewRef.md +13 -0
  133. package/docs/api/type-aliases/ViewSelection.md +13 -0
  134. package/docs/api/type-aliases/ViewSnapshot.md +18 -0
  135. package/docs/api/type-aliases/ViewTag.md +7 -0
  136. package/docs/api/variables/ConnectionTag.md +7 -0
  137. package/docs/guide/actions.md +263 -0
  138. package/docs/guide/core-concepts.md +22 -0
  139. package/docs/guide/getting-started.md +57 -0
  140. package/docs/guide/list-views.md +86 -0
  141. package/docs/guide/live-views.md +245 -0
  142. package/docs/guide/requests.md +130 -0
  143. package/docs/guide/server-integration.md +630 -0
  144. package/docs/guide/views.md +278 -0
  145. package/docs/guide/void-integration.md +167 -0
  146. package/docs/index.md +4 -0
  147. package/lib/cli.mjs +17 -250
  148. package/lib/clientStub.d.mts +6 -0
  149. package/lib/clientStub.mjs +6 -0
  150. package/lib/executor-BqwHdN3n.d.mts +468 -0
  151. package/lib/index.d.mts +64 -2
  152. package/lib/index.mjs +1961 -555
  153. package/lib/list-4wRNSVgI.d.mts +10 -0
  154. package/lib/list-C_mi6GnE.mjs +16 -0
  155. package/lib/list.d.mts +2 -0
  156. package/lib/list.mjs +2 -0
  157. package/lib/liveTopics-DzNtJaBD.mjs +197 -0
  158. package/lib/{record-DnhZuvUe.mjs → record-AeZJC9fd.mjs} +1 -2
  159. package/lib/record-ENh92gyb.d.mts +315 -0
  160. package/lib/server/drizzle.d.mts +304 -0
  161. package/lib/server/drizzle.mjs +688 -0
  162. package/lib/server/prisma.d.mts +309 -0
  163. package/lib/server/prisma.mjs +345 -0
  164. package/lib/server.d.mts +82 -183
  165. package/lib/server.mjs +870 -416
  166. package/lib/sourceRouter-Bwpkr062.mjs +972 -0
  167. package/lib/{types-HECWvGpd.d.mts → types-Dz46PXr3.d.mts} +215 -63
  168. package/lib/vite.d.mts +17 -0
  169. package/lib/vite.mjs +592 -0
  170. package/package.json +44 -6
@@ -0,0 +1,74 @@
1
+ # Function: createResolver()
2
+
3
+ > **createResolver**\<`Item`, `Context`\>(`__namedParameters`): `object`
4
+
5
+ Defined in: [packages/fate/src/server/dataView.ts:758](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/dataView.ts#L758)
6
+
7
+ Builds a resolver that applies a client's selection to a server data view,
8
+ filtering fields, running nested resolvers, and shaping Prisma selects.
9
+
10
+ ## Type Parameters
11
+
12
+ ### Item
13
+
14
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
15
+
16
+ ### Context
17
+
18
+ `Context` = `unknown`
19
+
20
+ ## Parameters
21
+
22
+ ### \_\_namedParameters
23
+
24
+ #### args?
25
+
26
+ [`FateRecord`](../../type-aliases/FateRecord.md)
27
+
28
+ #### ctx?
29
+
30
+ `Context`
31
+
32
+ #### select
33
+
34
+ `Iterable`\<`string`\>
35
+
36
+ #### view
37
+
38
+ `DataView`\<`Item`\>
39
+
40
+ ## Returns
41
+
42
+ `object`
43
+
44
+ ### resolve
45
+
46
+ > **resolve**: (`item`) => `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)\> = `plan.resolve`
47
+
48
+ #### Parameters
49
+
50
+ ##### item
51
+
52
+ `Item`
53
+
54
+ #### Returns
55
+
56
+ `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)\>
57
+
58
+ ### resolveMany
59
+
60
+ > **resolveMany**: (`items`) => `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)[]\> = `plan.resolveMany`
61
+
62
+ #### Parameters
63
+
64
+ ##### items
65
+
66
+ [`FateRecord`](../../type-aliases/FateRecord.md)[]
67
+
68
+ #### Returns
69
+
70
+ `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)[]\>
71
+
72
+ ### select
73
+
74
+ > **select**: `AnyRecord`
@@ -0,0 +1,95 @@
1
+ # Function: createSourcePlan()
2
+
3
+ > **createSourcePlan**\<`Item`, `Context`, `Adapter`\>(`__namedParameters`): `object`
4
+
5
+ Defined in: [packages/fate/src/server/source.ts:378](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/source.ts#L378)
6
+
7
+ ## Type Parameters
8
+
9
+ ### Item
10
+
11
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
12
+
13
+ ### Context
14
+
15
+ `Context` = `unknown`
16
+
17
+ ### Adapter
18
+
19
+ `Adapter` = `unknown`
20
+
21
+ ## Parameters
22
+
23
+ ### \_\_namedParameters
24
+
25
+ #### args?
26
+
27
+ `Record`\<`string`, `unknown`\>
28
+
29
+ #### ctx?
30
+
31
+ `Context`
32
+
33
+ #### select
34
+
35
+ `Iterable`\<`string`\>
36
+
37
+ #### source
38
+
39
+ [`SourceDefinition`](../type-aliases/SourceDefinition.md)\<`Item`, `Adapter`\>
40
+
41
+ ## Returns
42
+
43
+ `object`
44
+
45
+ ### args
46
+
47
+ > **args**: [`FateRecord`](../../type-aliases/FateRecord.md) \| `undefined`
48
+
49
+ ### ctx
50
+
51
+ > **ctx**: `Context` \| `undefined`
52
+
53
+ ### resolve
54
+
55
+ > **resolve**: (`item`) => `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)\>
56
+
57
+ #### Parameters
58
+
59
+ ##### item
60
+
61
+ `Item`
62
+
63
+ #### Returns
64
+
65
+ `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)\>
66
+
67
+ ### resolveMany
68
+
69
+ > **resolveMany**: (`items`) => `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)[]\>
70
+
71
+ #### Parameters
72
+
73
+ ##### items
74
+
75
+ [`FateRecord`](../../type-aliases/FateRecord.md)[]
76
+
77
+ #### Returns
78
+
79
+ `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)[]\>
80
+
81
+ ### root
82
+
83
+ > **root**: [`SourcePlanNode`](../type-aliases/SourcePlanNode.md)\<`unknown`, `Adapter`\>
84
+
85
+ ### selectedPaths
86
+
87
+ > **selectedPaths**: `Set`\<`string`\>
88
+
89
+ ### source
90
+
91
+ > **source**: [`SourceDefinition`](../type-aliases/SourceDefinition.md)\<`Item`, `Adapter`\>
92
+
93
+ ### view
94
+
95
+ > **view**: `DataView`\<`Item`\>
@@ -0,0 +1,46 @@
1
+ # Function: createSourceProcedures()
2
+
3
+ > **createSourceProcedures**\<`Context`, `Item`, `Procedure`, `ConnectionProcedure`, `ById`, `List`\>(`__namedParameters`): `SourceProcedureResult`\<`ById`, `List`, `Procedure`, `ConnectionProcedure`\>
4
+
5
+ Defined in: [packages/fate/src/server/sourceRouter.ts:107](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/sourceRouter.ts#L107)
6
+
7
+ Creates standard `byId` and `list` procedures for a Fate source.
8
+
9
+ Use this when a router also has custom mutations or custom queries and you
10
+ want to spread the generated source procedures into that router.
11
+
12
+ ## Type Parameters
13
+
14
+ ### Context
15
+
16
+ `Context`
17
+
18
+ ### Item
19
+
20
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
21
+
22
+ ### Procedure
23
+
24
+ `Procedure` *extends* `ProcedureLike`
25
+
26
+ ### ConnectionProcedure
27
+
28
+ `ConnectionProcedure` *extends* `ConnectionProcedureLike` \| `undefined` = `ConnectionProcedureLike` \| `undefined`
29
+
30
+ ### ById
31
+
32
+ `ById` *extends* `boolean` \| `undefined` = `undefined`
33
+
34
+ ### List
35
+
36
+ `List` *extends* `boolean` \| `ListConfig` \| `undefined` = `undefined`
37
+
38
+ ## Parameters
39
+
40
+ ### \_\_namedParameters
41
+
42
+ `SourceProcedureOptions`\<`Context`, `Item`, `Procedure`, `ConnectionProcedure`\> & `object`
43
+
44
+ ## Returns
45
+
46
+ `SourceProcedureResult`\<`ById`, `List`, `Procedure`, `ConnectionProcedure`\>
@@ -0,0 +1,32 @@
1
+ # Function: dataView()
2
+
3
+ > **dataView**\<`Item`\>(`typeName`): \<`Fields`\>(`fields`) => `DataView`\<`Item`\> & `object`
4
+
5
+ Defined in: [packages/fate/src/server/dataView.ts:164](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/dataView.ts#L164)
6
+
7
+ Declares a server data view that exposes an object's available fields to the client.
8
+
9
+ ## Type Parameters
10
+
11
+ ### Item
12
+
13
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
14
+
15
+ ## Parameters
16
+
17
+ ### typeName
18
+
19
+ `string`
20
+
21
+ ## Returns
22
+
23
+ \<`Fields`\>(`fields`) => `DataView`\<`Item`\> & `object`
24
+
25
+ ## Example
26
+
27
+ ```ts
28
+ const Post = dataView<PostItem>('Post')({
29
+ id: true,
30
+ title: true,
31
+ });
32
+ ```
@@ -0,0 +1,15 @@
1
+ # Function: field()
2
+
3
+ > **field**(`path`): [`FieldSelection`](../type-aliases/FieldSelection.md)
4
+
5
+ Defined in: [packages/fate/src/server/dataView.ts:207](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/dataView.ts#L207)
6
+
7
+ ## Parameters
8
+
9
+ ### path
10
+
11
+ `string`
12
+
13
+ ## Returns
14
+
15
+ [`FieldSelection`](../type-aliases/FieldSelection.md)
@@ -0,0 +1,19 @@
1
+ # Function: getNestedSelection()
2
+
3
+ > **getNestedSelection**(`select`, `field`): `string`[]
4
+
5
+ Defined in: [packages/fate/src/server/source.ts:312](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/source.ts#L312)
6
+
7
+ ## Parameters
8
+
9
+ ### select
10
+
11
+ `Iterable`\<`string`\>
12
+
13
+ ### field
14
+
15
+ `string`
16
+
17
+ ## Returns
18
+
19
+ `string`[]
@@ -0,0 +1,21 @@
1
+ # Function: getScopedArgs()
2
+
3
+ > **getScopedArgs**(`args`, `path`): [`FateRecord`](../../type-aliases/FateRecord.md) \| `undefined`
4
+
5
+ Defined in: [packages/fate/src/server/queryArgs.ts:30](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/queryArgs.ts#L30)
6
+
7
+ Narrows nested args to the slice relevant for a particular selection path.
8
+
9
+ ## Parameters
10
+
11
+ ### args
12
+
13
+ [`FateRecord`](../../type-aliases/FateRecord.md) \| `undefined`
14
+
15
+ ### path
16
+
17
+ `string`
18
+
19
+ ## Returns
20
+
21
+ [`FateRecord`](../../type-aliases/FateRecord.md) \| `undefined`
@@ -0,0 +1,19 @@
1
+ # Function: hasNestedSelection()
2
+
3
+ > **hasNestedSelection**(`select`, `field`): `boolean`
4
+
5
+ Defined in: [packages/fate/src/server/source.ts:302](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/source.ts#L302)
6
+
7
+ ## Parameters
8
+
9
+ ### select
10
+
11
+ `Iterable`\<`string`\>
12
+
13
+ ### field
14
+
15
+ `string`
16
+
17
+ ## Returns
18
+
19
+ `boolean`
@@ -0,0 +1,28 @@
1
+ # Function: list()
2
+
3
+ > **list**\<`Item`\>(`view`, `options?`): `DataView`\<`Item`\> & `DataViewInternals`\<`Item`\> & `object`
4
+
5
+ Defined in: [packages/fate/src/server/dataView.ts:180](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/dataView.ts#L180)
6
+
7
+ Marks a data view as a list resolver so the server can respond with
8
+ connection information.
9
+
10
+ ## Type Parameters
11
+
12
+ ### Item
13
+
14
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
15
+
16
+ ## Parameters
17
+
18
+ ### view
19
+
20
+ `DataView`\<`Item`\>
21
+
22
+ ### options?
23
+
24
+ [`DataViewListOptions`](../type-aliases/DataViewListOptions.md)
25
+
26
+ ## Returns
27
+
28
+ `DataView`\<`Item`\> & `DataViewInternals`\<`Item`\> & `object`
@@ -0,0 +1,55 @@
1
+ # Function: refetchSourceById()
2
+
3
+ > **refetchSourceById**\<`Context`, `Item`\>(`__namedParameters`): `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md) \| `null`\>
4
+
5
+ Defined in: [packages/fate/src/server/executor.ts:208](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/executor.ts#L208)
6
+
7
+ ## Type Parameters
8
+
9
+ ### Context
10
+
11
+ `Context`
12
+
13
+ ### Item
14
+
15
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
16
+
17
+ ## Parameters
18
+
19
+ ### \_\_namedParameters
20
+
21
+ #### ctx
22
+
23
+ `Context`
24
+
25
+ #### extra?
26
+
27
+ `unknown`
28
+
29
+ #### id
30
+
31
+ `string`
32
+
33
+ #### input
34
+
35
+ \{ `args?`: `Record`\<`string`, `unknown`\>; `select`: `Iterable`\<`string`\>; \}
36
+
37
+ #### input.args?
38
+
39
+ `Record`\<`string`, `unknown`\>
40
+
41
+ #### input.select
42
+
43
+ `Iterable`\<`string`\>
44
+
45
+ #### registry
46
+
47
+ [`SourceRegistry`](../type-aliases/SourceRegistry.md)\<`Context`\>
48
+
49
+ #### source
50
+
51
+ [`SourceDefinition`](../type-aliases/SourceDefinition.md)\<`Item`, `unknown`\>
52
+
53
+ ## Returns
54
+
55
+ `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md) \| `null`\>
@@ -0,0 +1,55 @@
1
+ # Function: resolveSourceById()
2
+
3
+ > **resolveSourceById**\<`Context`, `Item`\>(`__namedParameters`): `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md) \| `null`\>
4
+
5
+ Defined in: [packages/fate/src/server/executor.ts:128](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/executor.ts#L128)
6
+
7
+ ## Type Parameters
8
+
9
+ ### Context
10
+
11
+ `Context`
12
+
13
+ ### Item
14
+
15
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
16
+
17
+ ## Parameters
18
+
19
+ ### \_\_namedParameters
20
+
21
+ #### ctx
22
+
23
+ `Context`
24
+
25
+ #### extra?
26
+
27
+ `unknown`
28
+
29
+ #### id
30
+
31
+ `string`
32
+
33
+ #### input
34
+
35
+ \{ `args?`: `Record`\<`string`, `unknown`\>; `select`: `Iterable`\<`string`\>; \}
36
+
37
+ #### input.args?
38
+
39
+ `Record`\<`string`, `unknown`\>
40
+
41
+ #### input.select
42
+
43
+ `Iterable`\<`string`\>
44
+
45
+ #### registry
46
+
47
+ [`SourceRegistry`](../type-aliases/SourceRegistry.md)\<`Context`\>
48
+
49
+ #### source
50
+
51
+ [`SourceDefinition`](../type-aliases/SourceDefinition.md)\<`Item`, `unknown`\>
52
+
53
+ ## Returns
54
+
55
+ `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md) \| `null`\>
@@ -0,0 +1,55 @@
1
+ # Function: resolveSourceByIds()
2
+
3
+ > **resolveSourceByIds**\<`Context`, `Item`\>(`__namedParameters`): `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)[]\>
4
+
5
+ Defined in: [packages/fate/src/server/executor.ts:92](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/executor.ts#L92)
6
+
7
+ ## Type Parameters
8
+
9
+ ### Context
10
+
11
+ `Context`
12
+
13
+ ### Item
14
+
15
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
16
+
17
+ ## Parameters
18
+
19
+ ### \_\_namedParameters
20
+
21
+ #### ctx
22
+
23
+ `Context`
24
+
25
+ #### extra?
26
+
27
+ `unknown`
28
+
29
+ #### ids
30
+
31
+ `string`[]
32
+
33
+ #### input
34
+
35
+ \{ `args?`: `Record`\<`string`, `unknown`\>; `select`: `Iterable`\<`string`\>; \}
36
+
37
+ #### input.args?
38
+
39
+ `Record`\<`string`, `unknown`\>
40
+
41
+ #### input.select
42
+
43
+ `Iterable`\<`string`\>
44
+
45
+ #### registry
46
+
47
+ [`SourceRegistry`](../type-aliases/SourceRegistry.md)\<`Context`\>
48
+
49
+ #### source
50
+
51
+ [`SourceDefinition`](../type-aliases/SourceDefinition.md)\<`Item`, `unknown`\>
52
+
53
+ ## Returns
54
+
55
+ `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)[]\>
@@ -0,0 +1,67 @@
1
+ # Function: resolveSourceConnection()
2
+
3
+ > **resolveSourceConnection**\<`Context`, `Item`\>(`__namedParameters`): `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)[]\>
4
+
5
+ Defined in: [packages/fate/src/server/executor.ts:163](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/executor.ts#L163)
6
+
7
+ ## Type Parameters
8
+
9
+ ### Context
10
+
11
+ `Context`
12
+
13
+ ### Item
14
+
15
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
16
+
17
+ ## Parameters
18
+
19
+ ### \_\_namedParameters
20
+
21
+ #### ctx
22
+
23
+ `Context`
24
+
25
+ #### cursor?
26
+
27
+ `string`
28
+
29
+ #### direction
30
+
31
+ `"forward"` \| `"backward"`
32
+
33
+ #### extra?
34
+
35
+ `unknown`
36
+
37
+ #### input
38
+
39
+ \{ `args?`: `Record`\<`string`, `unknown`\>; `select`: `Iterable`\<`string`\>; \}
40
+
41
+ #### input.args?
42
+
43
+ `Record`\<`string`, `unknown`\>
44
+
45
+ #### input.select
46
+
47
+ `Iterable`\<`string`\>
48
+
49
+ #### registry
50
+
51
+ [`SourceRegistry`](../type-aliases/SourceRegistry.md)\<`Context`\>
52
+
53
+ #### skip?
54
+
55
+ `number`
56
+
57
+ #### source
58
+
59
+ [`SourceDefinition`](../type-aliases/SourceDefinition.md)\<`Item`, `unknown`\>
60
+
61
+ #### take
62
+
63
+ `number`
64
+
65
+ ## Returns
66
+
67
+ `Promise`\<[`FateRecord`](../../type-aliases/FateRecord.md)[]\>
@@ -0,0 +1,42 @@
1
+ # Function: resolver()
2
+
3
+ > **resolver**\<`Item`, `Result`, `Context`\>(`config`): `ResolverField`\<`Item`, `Result`, `Context`\>
4
+
5
+ Defined in: [packages/fate/src/server/dataView.ts:196](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/dataView.ts#L196)
6
+
7
+ Declares a resolver field inside a data view, optionally providing a
8
+ selection for any data dependencies.
9
+
10
+ ## Type Parameters
11
+
12
+ ### Item
13
+
14
+ `Item` *extends* [`FateRecord`](../../type-aliases/FateRecord.md)
15
+
16
+ ### Result
17
+
18
+ `Result` = `unknown`
19
+
20
+ ### Context
21
+
22
+ `Context` = `unknown`
23
+
24
+ ## Parameters
25
+
26
+ ### config
27
+
28
+ #### authorize?
29
+
30
+ `ResolverAuthorize`\<`Item`, `Context`\>
31
+
32
+ #### resolve
33
+
34
+ `ResolverResolve`\<`Item`, `Result`, `Context`\>
35
+
36
+ #### select?
37
+
38
+ `ResolverSelect`\<`Context`\>
39
+
40
+ ## Returns
41
+
42
+ `ResolverField`\<`Item`, `Result`, `Context`\>
@@ -0,0 +1,25 @@
1
+ # Function: toPrismaSelect()
2
+
3
+ > **toPrismaSelect**\<`Item`, `Context`\>(`plan`): `AnyRecord`
4
+
5
+ Defined in: [packages/fate/src/server/prismaSelect.ts:279](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/prismaSelect.ts#L279)
6
+
7
+ ## Type Parameters
8
+
9
+ ### Item
10
+
11
+ `Item` *extends* `AnyRecord`
12
+
13
+ ### Context
14
+
15
+ `Context` = `unknown`
16
+
17
+ ## Parameters
18
+
19
+ ### plan
20
+
21
+ `ViewPlan`\<`Item`, `Context`\>
22
+
23
+ ## Returns
24
+
25
+ `AnyRecord`
@@ -0,0 +1,24 @@
1
+ # Function: withConnection()
2
+
3
+ > **withConnection**\<`TProcedure`\>(`procedure`): \<`TItem`, `TNode`, `TAdditionalInput`\>(`options`) => `ConnectionProcedure`\<`ConnectionInputWithAdditional`\<`TAdditionalInput`\>, [`ConnectionResult`](../type-aliases/ConnectionResult.md)\<`TNode`\>\>
4
+
5
+ Defined in: [packages/fate/src/server/connection.ts:365](https://github.com/nkzw-tech/fate/blob/d972c17c02c8292194208ab53c91f9216703a5a7/packages/fate/src/server/connection.ts#L365)
6
+
7
+ Wraps a tRPC procedure to handle cursor-based pagination with consistent
8
+ connection semantics.
9
+
10
+ ## Type Parameters
11
+
12
+ ### TProcedure
13
+
14
+ `TProcedure` *extends* `ProcedureLike`
15
+
16
+ ## Parameters
17
+
18
+ ### procedure
19
+
20
+ `TProcedure`
21
+
22
+ ## Returns
23
+
24
+ \<`TItem`, `TNode`, `TAdditionalInput`\>(`options`) => `ConnectionProcedure`\<`ConnectionInputWithAdditional`\<`TAdditionalInput`\>, [`ConnectionResult`](../type-aliases/ConnectionResult.md)\<`TNode`\>\>