@nixxie-cms/core 1.0.3 → 2.0.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 (203) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/CHANGES-1.1.md +134 -0
  3. package/context/dist/nixxie-cms-core-context.cjs.js +4 -3
  4. package/context/dist/nixxie-cms-core-context.esm.js +3 -2
  5. package/dist/declarations/src/access.d.ts +2 -2
  6. package/dist/declarations/src/access.d.ts.map +1 -1
  7. package/dist/declarations/src/admin-ui/components/Navigation.d.ts +2 -2
  8. package/dist/declarations/src/admin-ui/components/Navigation.d.ts.map +1 -1
  9. package/dist/declarations/src/admin-ui/context.d.ts +6 -6
  10. package/dist/declarations/src/admin-ui/context.d.ts.map +1 -1
  11. package/dist/declarations/src/admin-ui/utils/Fields.d.ts +3 -3
  12. package/dist/declarations/src/admin-ui/utils/Fields.d.ts.map +1 -1
  13. package/dist/declarations/src/admin-ui/utils/filters.d.ts +5 -5
  14. package/dist/declarations/src/admin-ui/utils/filters.d.ts.map +1 -1
  15. package/dist/declarations/src/admin-ui/utils/useCreateItem.d.ts +3 -3
  16. package/dist/declarations/src/admin-ui/utils/useCreateItem.d.ts.map +1 -1
  17. package/dist/declarations/src/admin-ui/utils/utils.d.ts +2 -2
  18. package/dist/declarations/src/admin-ui/utils/utils.d.ts.map +1 -1
  19. package/dist/declarations/src/context.d.ts +1 -1
  20. package/dist/declarations/src/context.d.ts.map +1 -1
  21. package/dist/declarations/src/fields/types/bigInt/index.d.ts +3 -3
  22. package/dist/declarations/src/fields/types/bigInt/index.d.ts.map +1 -1
  23. package/dist/declarations/src/fields/types/bytes/index.d.ts +3 -3
  24. package/dist/declarations/src/fields/types/bytes/index.d.ts.map +1 -1
  25. package/dist/declarations/src/fields/types/calendarDay/index.d.ts +3 -3
  26. package/dist/declarations/src/fields/types/calendarDay/index.d.ts.map +1 -1
  27. package/dist/declarations/src/fields/types/checkbox/index.d.ts +3 -3
  28. package/dist/declarations/src/fields/types/checkbox/index.d.ts.map +1 -1
  29. package/dist/declarations/src/fields/types/decimal/index.d.ts +3 -3
  30. package/dist/declarations/src/fields/types/decimal/index.d.ts.map +1 -1
  31. package/dist/declarations/src/fields/types/file/index.d.ts +4 -4
  32. package/dist/declarations/src/fields/types/file/index.d.ts.map +1 -1
  33. package/dist/declarations/src/fields/types/float/index.d.ts +3 -3
  34. package/dist/declarations/src/fields/types/float/index.d.ts.map +1 -1
  35. package/dist/declarations/src/fields/types/image/index.d.ts +4 -4
  36. package/dist/declarations/src/fields/types/image/index.d.ts.map +1 -1
  37. package/dist/declarations/src/fields/types/integer/index.d.ts +3 -3
  38. package/dist/declarations/src/fields/types/integer/index.d.ts.map +1 -1
  39. package/dist/declarations/src/fields/types/json/index.d.ts +3 -3
  40. package/dist/declarations/src/fields/types/json/index.d.ts.map +1 -1
  41. package/dist/declarations/src/fields/types/multiselect/index.d.ts +3 -3
  42. package/dist/declarations/src/fields/types/multiselect/index.d.ts.map +1 -1
  43. package/dist/declarations/src/fields/types/multiselect/views/index.d.ts.map +1 -1
  44. package/dist/declarations/src/fields/types/password/index.d.ts +3 -3
  45. package/dist/declarations/src/fields/types/password/index.d.ts.map +1 -1
  46. package/dist/declarations/src/fields/types/relationship/index.d.ts +8 -8
  47. package/dist/declarations/src/fields/types/relationship/index.d.ts.map +1 -1
  48. package/dist/declarations/src/fields/types/relationship/views/ComboboxMany.d.ts +3 -3
  49. package/dist/declarations/src/fields/types/relationship/views/ComboboxMany.d.ts.map +1 -1
  50. package/dist/declarations/src/fields/types/relationship/views/ComboboxSingle.d.ts +3 -3
  51. package/dist/declarations/src/fields/types/relationship/views/ComboboxSingle.d.ts.map +1 -1
  52. package/dist/declarations/src/fields/types/relationship/views/index.d.ts +3 -3
  53. package/dist/declarations/src/fields/types/relationship/views/index.d.ts.map +1 -1
  54. package/dist/declarations/src/fields/types/relationship/views/types.d.ts +3 -3
  55. package/dist/declarations/src/fields/types/relationship/views/types.d.ts.map +1 -1
  56. package/dist/declarations/src/fields/types/select/index.d.ts +3 -3
  57. package/dist/declarations/src/fields/types/select/index.d.ts.map +1 -1
  58. package/dist/declarations/src/fields/types/text/index.d.ts +3 -3
  59. package/dist/declarations/src/fields/types/text/index.d.ts.map +1 -1
  60. package/dist/declarations/src/fields/types/timestamp/index.d.ts +3 -3
  61. package/dist/declarations/src/fields/types/timestamp/index.d.ts.map +1 -1
  62. package/dist/declarations/src/fields/types/virtual/index.d.ts +7 -7
  63. package/dist/declarations/src/fields/types/virtual/index.d.ts.map +1 -1
  64. package/dist/declarations/src/helpers.d.ts +249 -13
  65. package/dist/declarations/src/helpers.d.ts.map +1 -1
  66. package/dist/declarations/src/index.d.ts +9 -4
  67. package/dist/declarations/src/index.d.ts.map +1 -1
  68. package/dist/declarations/src/internal-unstable/admin-ui/pages/ListPage/index.d.ts.map +1 -1
  69. package/dist/declarations/src/lib/admin-meta.d.ts +11 -11
  70. package/dist/declarations/src/lib/admin-meta.d.ts.map +1 -1
  71. package/dist/declarations/src/lib/core/access-control.d.ts +18 -18
  72. package/dist/declarations/src/lib/core/access-control.d.ts.map +1 -1
  73. package/dist/declarations/src/lib/core/cascade.d.ts +47 -0
  74. package/dist/declarations/src/lib/core/cascade.d.ts.map +1 -0
  75. package/dist/declarations/src/lib/core/initialise-lists.d.ts +27 -24
  76. package/dist/declarations/src/lib/core/initialise-lists.d.ts.map +1 -1
  77. package/dist/declarations/src/lib/env.d.ts +9 -0
  78. package/dist/declarations/src/lib/env.d.ts.map +1 -0
  79. package/dist/declarations/src/lib/system.d.ts +1 -1
  80. package/dist/declarations/src/lib/system.d.ts.map +1 -1
  81. package/dist/declarations/src/list-features.d.ts +162 -0
  82. package/dist/declarations/src/list-features.d.ts.map +1 -0
  83. package/dist/declarations/src/schema.d.ts +24 -23
  84. package/dist/declarations/src/schema.d.ts.map +1 -1
  85. package/dist/declarations/src/session.d.ts +75 -0
  86. package/dist/declarations/src/session.d.ts.map +1 -1
  87. package/dist/declarations/src/types/admin-meta.d.ts +11 -11
  88. package/dist/declarations/src/types/admin-meta.d.ts.map +1 -1
  89. package/dist/declarations/src/types/config/access-control.d.ts +42 -42
  90. package/dist/declarations/src/types/config/access-control.d.ts.map +1 -1
  91. package/dist/declarations/src/types/config/fields.d.ts +19 -19
  92. package/dist/declarations/src/types/config/fields.d.ts.map +1 -1
  93. package/dist/declarations/src/types/config/hooks.d.ts +131 -131
  94. package/dist/declarations/src/types/config/hooks.d.ts.map +1 -1
  95. package/dist/declarations/src/types/config/index.d.ts +190 -8
  96. package/dist/declarations/src/types/config/index.d.ts.map +1 -1
  97. package/dist/declarations/src/types/config/lists.d.ts +146 -108
  98. package/dist/declarations/src/types/config/lists.d.ts.map +1 -1
  99. package/dist/declarations/src/types/context.d.ts +507 -47
  100. package/dist/declarations/src/types/context.d.ts.map +1 -1
  101. package/dist/declarations/src/types/next-fields.d.ts +28 -28
  102. package/dist/declarations/src/types/next-fields.d.ts.map +1 -1
  103. package/dist/declarations/src/types/type-info.d.ts +3 -3
  104. package/dist/declarations/src/types/type-info.d.ts.map +1 -1
  105. package/dist/{express-455ae20c.cjs.js → express-84d534c2.cjs.js} +6 -6
  106. package/dist/{express-7559ca2d.esm.js → express-d0a4ce99.esm.js} +6 -6
  107. package/dist/{index-15c8f81e.esm.js → index-5d8b0b4e.esm.js} +363 -183
  108. package/dist/index-6055753b.cjs.js +393 -0
  109. package/dist/{index-42045902.cjs.js → index-ac29f382.cjs.js} +363 -185
  110. package/dist/index-f1703b7b.esm.js +386 -0
  111. package/dist/nixxie-cms-core.cjs.js +1388 -30
  112. package/dist/nixxie-cms-core.esm.js +1362 -24
  113. package/dist/{non-null-graphql-add6bb3d.cjs.js → non-null-graphql-4a44c122.cjs.js} +1 -1
  114. package/dist/{non-null-graphql-a84ed64d.esm.js → non-null-graphql-8c5feaae.esm.js} +1 -1
  115. package/dist/{resolve-hooks-165a9ce2.cjs.js → resolve-hooks-10a5f84c.cjs.js} +240 -6
  116. package/dist/{resolve-hooks-6813a045.esm.js → resolve-hooks-9e676794.esm.js} +238 -7
  117. package/dist/{system-a321642d.cjs.js → system-6b37a5f8.cjs.js} +33 -7
  118. package/dist/{system-03e49e4f.esm.js → system-e591d821.esm.js} +33 -7
  119. package/fields/dist/nixxie-cms-core-fields.cjs.js +29 -576
  120. package/fields/dist/nixxie-cms-core-fields.esm.js +18 -565
  121. package/fields/types/bytes/dist/nixxie-cms-core-fields-types-bytes.cjs.js +4 -2
  122. package/fields/types/bytes/dist/nixxie-cms-core-fields-types-bytes.esm.js +4 -2
  123. package/fields/types/multiselect/views/dist/nixxie-cms-core-fields-types-multiselect-views.cjs.js +1 -6
  124. package/fields/types/multiselect/views/dist/nixxie-cms-core-fields-types-multiselect-views.esm.js +1 -6
  125. package/fields/types/password/dist/nixxie-cms-core-fields-types-password.cjs.js +4 -2
  126. package/fields/types/password/dist/nixxie-cms-core-fields-types-password.esm.js +4 -2
  127. package/internal-unstable/artifacts/dist/nixxie-cms-core-internal-unstable-artifacts.cjs.js +4 -3
  128. package/internal-unstable/artifacts/dist/nixxie-cms-core-internal-unstable-artifacts.esm.js +4 -3
  129. package/package.json +4 -4
  130. package/scripts/cli/dist/nixxie-cms-core-scripts-cli.cjs.js +4 -3
  131. package/scripts/cli/dist/nixxie-cms-core-scripts-cli.esm.js +4 -3
  132. package/scripts/dist/nixxie-cms-core-scripts.cjs.js +4 -3
  133. package/scripts/dist/nixxie-cms-core-scripts.esm.js +4 -3
  134. package/session/dist/nixxie-cms-core-session.cjs.js +286 -0
  135. package/session/dist/nixxie-cms-core-session.esm.js +279 -1
  136. package/src/access.ts +25 -25
  137. package/src/admin-ui/admin-meta-graphql.ts +5 -5
  138. package/src/admin-ui/components/CreateButtonLink.tsx +46 -46
  139. package/src/admin-ui/components/Navigation.tsx +3 -3
  140. package/src/admin-ui/context.tsx +6 -6
  141. package/src/admin-ui/utils/Fields.tsx +241 -241
  142. package/src/admin-ui/utils/actionData.ts +36 -36
  143. package/src/admin-ui/utils/filters.ts +148 -148
  144. package/src/admin-ui/utils/useCreateItem.ts +171 -171
  145. package/src/admin-ui/utils/utils.tsx +127 -127
  146. package/src/context.ts +1 -1
  147. package/src/fields/non-null-graphql.ts +115 -115
  148. package/src/fields/types/bigInt/index.ts +6 -6
  149. package/src/fields/types/bytes/index.ts +6 -6
  150. package/src/fields/types/calendarDay/index.ts +18 -19
  151. package/src/fields/types/checkbox/index.ts +6 -6
  152. package/src/fields/types/decimal/index.ts +6 -6
  153. package/src/fields/types/file/index.ts +8 -8
  154. package/src/fields/types/float/index.ts +6 -6
  155. package/src/fields/types/image/index.ts +8 -8
  156. package/src/fields/types/integer/index.ts +6 -6
  157. package/src/fields/types/json/index.ts +5 -5
  158. package/src/fields/types/multiselect/index.ts +7 -7
  159. package/src/fields/types/multiselect/views/index.tsx +149 -151
  160. package/src/fields/types/password/index.ts +6 -6
  161. package/src/fields/types/relationship/index.ts +13 -13
  162. package/src/fields/types/relationship/views/ComboboxMany.tsx +110 -110
  163. package/src/fields/types/relationship/views/ComboboxSingle.tsx +115 -115
  164. package/src/fields/types/relationship/views/ContextualActions.tsx +139 -139
  165. package/src/fields/types/relationship/views/index.tsx +492 -492
  166. package/src/fields/types/relationship/views/types.ts +46 -46
  167. package/src/fields/types/relationship/views/useApolloQuery.ts +185 -185
  168. package/src/fields/types/relationship/views/useFilter.tsx +109 -109
  169. package/src/fields/types/select/index.ts +6 -6
  170. package/src/fields/types/text/index.ts +6 -6
  171. package/src/fields/types/timestamp/index.ts +23 -21
  172. package/src/fields/types/virtual/index.ts +11 -11
  173. package/src/helpers.ts +773 -42
  174. package/src/index.ts +66 -24
  175. package/src/internal-unstable/admin-ui/pages/ItemPage/common.tsx +4 -4
  176. package/src/internal-unstable/admin-ui/pages/ItemPage/index.tsx +5 -5
  177. package/src/internal-unstable/admin-ui/pages/ListPage/index.tsx +8 -8
  178. package/src/lib/admin-meta.ts +369 -369
  179. package/src/lib/context/createContext.ts +6 -0
  180. package/src/lib/core/access-control.ts +434 -434
  181. package/src/lib/core/cascade.ts +236 -0
  182. package/src/lib/core/initialise-lists.ts +49 -33
  183. package/src/lib/core/mutations/index.ts +7 -0
  184. package/src/lib/core/mutations/nested-mutation-many-input-resolvers.ts +145 -145
  185. package/src/lib/core/mutations/nested-mutation-one-input-resolvers.ts +71 -71
  186. package/src/lib/core/queries/output-field.ts +178 -178
  187. package/src/lib/env.ts +50 -0
  188. package/src/lib/id-field.ts +2 -2
  189. package/src/lib/system.ts +221 -207
  190. package/src/lib/typescript-schema-printer.ts +227 -227
  191. package/src/list-features.ts +476 -0
  192. package/src/schema.ts +92 -22
  193. package/src/session.ts +225 -0
  194. package/src/types/admin-meta.ts +218 -218
  195. package/src/types/config/access-control.ts +186 -186
  196. package/src/types/config/fields.ts +96 -96
  197. package/src/types/config/hooks.ts +529 -529
  198. package/src/types/config/index.ts +206 -7
  199. package/src/types/config/lists.ts +606 -565
  200. package/src/types/context.ts +592 -55
  201. package/src/types/next-fields.ts +31 -31
  202. package/src/types/type-info.ts +38 -38
  203. package/src/types/type-tests.ts +21 -21
@@ -2,38 +2,38 @@ import type { CacheHint } from '@apollo/cache-control-types';
2
2
  import type { allIcons as KeystarIcons } from '@keystar/ui/icon/all';
3
3
  import type { GArg, InferValueFromArgs } from '@graphql-ts/schema';
4
4
  import type { NixxieContext } from "../context.js";
5
- import type { BaseListTypeInfo } from "../type-info.js";
5
+ import type { BaseCollectionTypeInfo } from "../type-info.js";
6
6
  import type { MaybePromise } from "../utils.js";
7
- import type { ListAccessControl, ActionAccessControlFunction } from "./access-control.js";
7
+ import type { CollectionAccessControl, ActionAccessControlFunction } from "./access-control.js";
8
8
  import type { BaseFields, BaseFieldTypeInfo } from "./fields.js";
9
- import type { ListHooks } from "./hooks.js";
9
+ import type { CollectionHooks } from "./hooks.js";
10
10
  export type ActionArgumentsConfig = Record<string, GArg<any, any>>;
11
- export type ActionArgsConfig<ListTypeInfo extends BaseListTypeInfo> = Record<string, {
11
+ export type ActionArgsConfig<CollectionTypeInfo extends BaseCollectionTypeInfo> = Record<string, {
12
12
  graphql: GArg<any, any>;
13
13
  ui?: {
14
14
  source?: {
15
- itemField: ListTypeInfo['fields'];
15
+ itemField: CollectionTypeInfo['fields'];
16
16
  };
17
17
  };
18
18
  }>;
19
19
  type ActionArgs<Args extends ActionArgsConfig<any> | undefined> = Args extends ActionArgsConfig<any> ? InferValueFromArgs<{
20
20
  [K in keyof Args]: Args[K]['graphql'];
21
21
  }> : Record<string, never>;
22
- export type DeclaredAction<ListTypeInfo extends BaseListTypeInfo> = {
22
+ export type DeclaredAction<CollectionTypeInfo extends BaseCollectionTypeInfo> = {
23
23
  ___defineActionsWithActionFunction: true;
24
- } & Action<ListTypeInfo, ActionArgsConfig<ListTypeInfo> | undefined>;
25
- export type Action<ListTypeInfo extends BaseListTypeInfo, Args extends ActionArgsConfig<ListTypeInfo> | undefined> = {
24
+ } & Action<CollectionTypeInfo, ActionArgsConfig<CollectionTypeInfo> | undefined>;
25
+ export type Action<CollectionTypeInfo extends BaseCollectionTypeInfo, Args extends ActionArgsConfig<CollectionTypeInfo> | undefined> = {
26
26
  /**
27
27
  * Controls who or what can use this action
28
28
  * @see https://www.nixxieinternational.com/guides/auth-and-access-control
29
29
  */
30
- access: ActionAccessControlFunction<ListTypeInfo>;
30
+ access: ActionAccessControlFunction<CollectionTypeInfo>;
31
31
  resolve: (args: {
32
- listKey: ListTypeInfo['key'];
33
- actionKey: ListTypeInfo['actions'];
34
- where: ListTypeInfo['inputs']['uniqueWhere'];
32
+ listKey: CollectionTypeInfo['key'];
33
+ actionKey: CollectionTypeInfo['actions'];
34
+ where: CollectionTypeInfo['inputs']['uniqueWhere'];
35
35
  args: ActionArgs<Args>;
36
- }, context: NixxieContext<ListTypeInfo['all']>) => MaybePromise<ListTypeInfo['item'] | null>;
36
+ }, context: NixxieContext<CollectionTypeInfo['all']>) => MaybePromise<CollectionTypeInfo['item'] | null>;
37
37
  graphql?: {
38
38
  /**
39
39
  * The name of the singular mutation in the GraphQL schema
@@ -99,7 +99,7 @@ export type Action<ListTypeInfo extends BaseListTypeInfo, Args extends ActionArg
99
99
  * Controls the action mode for this action in the item view in the Admin UI.
100
100
  * @default 'enabled'
101
101
  */
102
- actionMode?: MaybeItemActionFunctionWithFilter<'enabled' | 'disabled' | 'hidden', 'disabled' | 'hidden', ListTypeInfo>;
102
+ actionMode?: MaybeItemActionFunctionWithFilter<'enabled' | 'disabled' | 'hidden', 'disabled' | 'hidden', CollectionTypeInfo>;
103
103
  /**
104
104
  * Controls the navigation behaviour after the action completes in the item view in the Admin UI.
105
105
  * @default 'follow'
@@ -121,33 +121,71 @@ export type Action<ListTypeInfo extends BaseListTypeInfo, Args extends ActionArg
121
121
  * Controls the action mode for this action in the list view in the Admin UI.
122
122
  * @default 'enabled'
123
123
  */
124
- actionMode?: MaybeSessionFunctionWithFilter<'enabled' | 'disabled' | 'hidden', 'disabled' | 'hidden', ListTypeInfo>;
124
+ actionMode?: MaybeSessionFunctionWithFilter<'enabled' | 'disabled' | 'hidden', 'disabled' | 'hidden', CollectionTypeInfo>;
125
125
  };
126
126
  };
127
127
  };
128
- export type BaseActions<ListTypeInfo extends BaseListTypeInfo> = {
128
+ export type BaseActions<CollectionTypeInfo extends BaseCollectionTypeInfo> = {
129
129
  /**
130
130
  * The key of the action, by default this is used to prefix the mutation in the GraphQL schema
131
131
  */
132
- [action: string]: DeclaredAction<ListTypeInfo>;
132
+ [action: string]: DeclaredAction<CollectionTypeInfo>;
133
133
  };
134
- export type ListConfig<ListTypeInfo extends BaseListTypeInfo> = {
134
+ /** What to do with related records when an item in this collection is deleted. */
135
+ export type CascadeAction = 'delete' | 'setNull' | 'restrict' | 'softDelete';
136
+ /**
137
+ * A referential-integrity rule enacted when an item of this collection is deleted.
138
+ * Rules run inside the delete pipeline through the normal mutation APIs, so the target
139
+ * collections' own hooks, events and cascade rules all fire (cascades recurse, with
140
+ * cycle protection).
141
+ *
142
+ * @example
143
+ * cascade: [
144
+ * { collection: 'Comment', field: 'post', action: 'delete' },
145
+ * { collection: 'Draft', field: 'original', action: 'setNull' },
146
+ * { collection: 'Order', field: 'product', action: 'restrict' },
147
+ * ]
148
+ */
149
+ export type CascadeRule = {
150
+ /** Target collection holding the related records. */
151
+ collection: string;
152
+ /** Relationship field on the target collection that points at this collection. */
153
+ field: string;
154
+ /**
155
+ * - `'delete'` — delete the related records (recursing into their own cascade rules)
156
+ * - `'setNull'` — disconnect the relationship, keeping the records
157
+ * - `'restrict'` — refuse the delete while related records exist
158
+ * - `'softDelete'` — stamp the records' `softDeleteField` instead of deleting
159
+ * @default 'delete'
160
+ */
161
+ action?: CascadeAction;
162
+ /** Set when `field` on the target collection is a many-relationship. @default false */
163
+ many?: boolean;
164
+ /** Timestamp field stamped by `'softDelete'`. @default 'deletedAt' */
165
+ softDeleteField?: string;
166
+ };
167
+ export type CollectionConfig<CollectionTypeInfo extends BaseCollectionTypeInfo> = {
135
168
  /**
136
169
  * Controls what data users of the Admin UI and GraphQL can access and change
137
170
  * @see https://nixxieinternational.com/guides/auth-and-access-control
138
171
  */
139
- access: ListAccessControl<ListTypeInfo>;
140
- fields: BaseFields<ListTypeInfo>;
141
- actions?: BaseActions<ListTypeInfo>;
172
+ access: CollectionAccessControl<CollectionTypeInfo>;
173
+ /**
174
+ * Referential-integrity rules enacted when items of this collection are deleted.
175
+ * Use `previewDelete()` to compute what a delete would affect before running it.
176
+ */
177
+ cascade?: CascadeRule[];
178
+ fields: BaseFields<CollectionTypeInfo>;
179
+ actions?: BaseActions<CollectionTypeInfo>;
142
180
  /** Options for how this list should show in the Admin UI */
143
- ui?: ListAdminUIConfig<ListTypeInfo>;
181
+ ui?: CollectionAdminUIConfig<CollectionTypeInfo>;
144
182
  /**
145
183
  * Hooks to modify the behaviour of GraphQL operations at certain points
146
184
  * @see https://nixxieinternational.com/guides/hooks
147
185
  */
148
- hooks?: ListHooks<ListTypeInfo>;
149
- graphql?: ListGraphQLConfig<ListTypeInfo>;
150
- db?: ListDBConfig;
186
+ hooks?: CollectionHooks<CollectionTypeInfo>;
187
+ graphql?: CollectionGraphQLConfig<CollectionTypeInfo>;
188
+ db?: CollectionDBConfig;
151
189
  /**
152
190
  * Controls if this list is a singleton
153
191
  * @see https://nixxieinternational.com/docs/config/lists#is-singleton
@@ -156,17 +194,17 @@ export type ListConfig<ListTypeInfo extends BaseListTypeInfo> = {
156
194
  /**
157
195
  * The default value to use for graphql.isEnabled.filter on all fields for this list
158
196
  */
159
- defaultIsFilterable?: MaybeFieldFunction<ListTypeInfo>;
197
+ defaultIsFilterable?: MaybeFieldFunction<CollectionTypeInfo>;
160
198
  /**
161
199
  * The default value to use for graphql.isEnabled.orderBy on all fields for this list
162
200
  */
163
- defaultIsOrderable?: MaybeFieldFunction<ListTypeInfo>;
201
+ defaultIsOrderable?: MaybeFieldFunction<CollectionTypeInfo>;
164
202
  };
165
- export type ListSortDescriptor<Fields extends string> = {
203
+ export type CollectionSortDescriptor<Fields extends string> = {
166
204
  field: 'id' | Fields;
167
205
  direction: 'ASC' | 'DESC';
168
206
  };
169
- export type ListAdminUIConfig<ListTypeInfo extends BaseListTypeInfo> = {
207
+ export type CollectionAdminUIConfig<CollectionTypeInfo extends BaseCollectionTypeInfo> = {
170
208
  /**
171
209
  * The label used to identify the list in navigation and etc.
172
210
  * @default listKey.replace(/([a-z])([A-Z])/g, '$1 $2').split(/\s|_|\-/).filter(i => i).map(upcase).join(' ');
@@ -197,30 +235,30 @@ export type ListAdminUIConfig<ListTypeInfo extends BaseListTypeInfo> = {
197
235
  * The field to use as a label in the Admin UI. If you want to base the label off more than a single field, use a virtual field and reference that field here.
198
236
  * @default 'label', if it exists, falling back to 'name', then 'title', and finally 'id', which is guaranteed to exist.
199
237
  */
200
- labelField?: 'id' | Exclude<ListTypeInfo['fields'], number>;
238
+ labelField?: 'id' | Exclude<CollectionTypeInfo['fields'], number>;
201
239
  /**
202
240
  * The fields used by the Admin UI when searching this list.
203
241
  * It is always possible to search by id and `id` should not be specified in this option.
204
242
  * @default The `labelField` if it has a string `contains` filter, otherwise none.
205
243
  */
206
- searchFields?: ListTypeInfo['fields'][];
244
+ searchFields?: CollectionTypeInfo['fields'][];
207
245
  /**
208
246
  * Hides this list from the Admin UI navigation, it only hides the list, you can still navigate directly.
209
247
  * @default false
210
248
  */
211
- hideNavigation?: MaybeSessionFunction<boolean, ListTypeInfo>;
249
+ hideNavigation?: MaybeSessionFunction<boolean, CollectionTypeInfo>;
212
250
  /**
213
251
  * Hides the create button in the Admin UI.
214
252
  * Note that this does **not** disable creating items through the GraphQL API, it only hides the button to create an item for this list in the Admin UI.
215
253
  * @default false
216
254
  */
217
- hideCreate?: MaybeSessionFunction<boolean, ListTypeInfo>;
255
+ hideCreate?: MaybeSessionFunction<boolean, CollectionTypeInfo>;
218
256
  /**
219
257
  * Hides the delete button in the Admin UI.
220
258
  * Note that this does **not** disable deleting items through the GraphQL API, it only hides the button to delete an item for this list in the Admin UI.
221
259
  * @default false
222
260
  */
223
- hideDelete?: MaybeSessionFunction<boolean, ListTypeInfo>;
261
+ hideDelete?: MaybeSessionFunction<boolean, CollectionTypeInfo>;
224
262
  /**
225
263
  * Configuration specific to the create view in the Admin UI
226
264
  */
@@ -230,7 +268,7 @@ export type ListAdminUIConfig<ListTypeInfo extends BaseListTypeInfo> = {
230
268
  * Specific field modes on a per-field basis via a field's config.
231
269
  * @default 'edit'
232
270
  */
233
- defaultFieldMode?: MaybeSessionFunctionWithFilter<'edit' | 'hidden', 'hidden', ListTypeInfo>;
271
+ defaultFieldMode?: MaybeSessionFunctionWithFilter<'edit' | 'hidden', 'hidden', CollectionTypeInfo>;
234
272
  };
235
273
  /**
236
274
  * Configuration specific to the item view in the Admin UI
@@ -242,7 +280,7 @@ export type ListAdminUIConfig<ListTypeInfo extends BaseListTypeInfo> = {
242
280
  * Specific field modes on a per-field basis via a field's config.
243
281
  * @default 'edit'
244
282
  */
245
- defaultFieldMode?: MaybeItemFunctionWithFilter<'edit' | 'read' | 'hidden', 'read' | 'hidden', ListTypeInfo>;
283
+ defaultFieldMode?: MaybeItemFunctionWithFilter<'edit' | 'read' | 'hidden', 'read' | 'hidden', CollectionTypeInfo>;
246
284
  };
247
285
  /**
248
286
  * Configuration specific to the list view in the Admin UI
@@ -253,27 +291,27 @@ export type ListAdminUIConfig<ListTypeInfo extends BaseListTypeInfo> = {
253
291
  * Specific field modes on a per-field basis via a field's config.
254
292
  * @default 'read'
255
293
  */
256
- defaultFieldMode?: MaybeSessionFunction<'read' | 'hidden', ListTypeInfo>;
294
+ defaultFieldMode?: MaybeSessionFunction<'read' | 'hidden', CollectionTypeInfo>;
257
295
  /**
258
296
  * The columns(which refer to fields) that should be shown to users of the Admin UI.
259
297
  * Users of the Admin UI can select different columns to show in the UI.
260
298
  * @default the first three fields in the list
261
299
  */
262
- initialColumns?: readonly ('id' | ListTypeInfo['fields'])[];
263
- initialFilter?: MaybeSessionFunction<Omit<ListTypeInfo['inputs']['where'], 'AND' | 'OR' | 'NOT'>, ListTypeInfo>;
264
- initialSort?: ListSortDescriptor<ListTypeInfo['fields']>;
300
+ initialColumns?: readonly ('id' | CollectionTypeInfo['fields'])[];
301
+ initialFilter?: MaybeSessionFunction<Omit<CollectionTypeInfo['inputs']['where'], 'AND' | 'OR' | 'NOT'>, CollectionTypeInfo>;
302
+ initialSort?: CollectionSortDescriptor<CollectionTypeInfo['fields']>;
265
303
  pageSize?: number;
266
304
  };
267
305
  };
268
- export type MaybeFieldFunction<ListTypeInfo extends BaseListTypeInfo> = boolean | ((args: {
269
- context: NixxieContext<ListTypeInfo['all']>;
270
- session?: ListTypeInfo['all']['session'];
271
- listKey: ListTypeInfo['key'];
272
- fieldKey: ListTypeInfo['fields'];
306
+ export type MaybeFieldFunction<CollectionTypeInfo extends BaseCollectionTypeInfo> = boolean | ((args: {
307
+ context: NixxieContext<CollectionTypeInfo['all']>;
308
+ session?: CollectionTypeInfo['all']['session'];
309
+ listKey: CollectionTypeInfo['key'];
310
+ fieldKey: CollectionTypeInfo['fields'];
273
311
  }) => MaybePromise<boolean>);
274
- export type MaybeSessionFunction<T, ListTypeInfo extends BaseListTypeInfo> = T | ((args: {
275
- context: NixxieContext<ListTypeInfo['all']>;
276
- session?: ListTypeInfo['all']['session'];
312
+ export type MaybeSessionFunction<T, CollectionTypeInfo extends BaseCollectionTypeInfo> = T | ((args: {
313
+ context: NixxieContext<CollectionTypeInfo['all']>;
314
+ session?: CollectionTypeInfo['all']['session'];
277
315
  }) => MaybePromise<T>);
278
316
  type ConditionalFilterFieldValue<Value> = {
279
317
  equals?: Value;
@@ -283,70 +321,70 @@ type ConditionalFilterFieldValue<Value> = {
283
321
  in?: Value[];
284
322
  };
285
323
  };
286
- type ConditionalFilterObject<ListTypeInfo extends BaseListTypeInfo> = ListTypeInfo extends [] ? any : {
287
- AND?: ReadonlyArray<ConditionalFilterObject<ListTypeInfo>>;
288
- OR?: ReadonlyArray<ConditionalFilterObject<ListTypeInfo>>;
289
- NOT?: ConditionalFilterObject<ListTypeInfo>;
324
+ type ConditionalFilterObject<CollectionTypeInfo extends BaseCollectionTypeInfo> = CollectionTypeInfo extends [] ? any : {
325
+ AND?: ReadonlyArray<ConditionalFilterObject<CollectionTypeInfo>>;
326
+ OR?: ReadonlyArray<ConditionalFilterObject<CollectionTypeInfo>>;
327
+ NOT?: ConditionalFilterObject<CollectionTypeInfo>;
290
328
  } & {
291
- [K in keyof ListTypeInfo['inputs']['update']]?: ConditionalFilterFieldValue<ListTypeInfo['inputs']['update'][K]>;
329
+ [K in keyof CollectionTypeInfo['inputs']['update']]?: ConditionalFilterFieldValue<CollectionTypeInfo['inputs']['update'][K]>;
292
330
  };
293
- export type ConditionalFilterCase<ListTypeInfo extends BaseListTypeInfo> = boolean | ConditionalFilterObject<ListTypeInfo>;
294
- export type ConditionalFilter<StaticState extends string, Filterable extends string, ListTypeInfo extends BaseListTypeInfo> = StaticState | {
295
- [_ in Filterable]?: ConditionalFilterCase<ListTypeInfo>;
331
+ export type ConditionalFilterCase<CollectionTypeInfo extends BaseCollectionTypeInfo> = boolean | ConditionalFilterObject<CollectionTypeInfo>;
332
+ export type ConditionalFilter<StaticState extends string, Filterable extends string, CollectionTypeInfo extends BaseCollectionTypeInfo> = StaticState | {
333
+ [_ in Filterable]?: ConditionalFilterCase<CollectionTypeInfo>;
296
334
  };
297
- export type MaybeSessionFunctionWithFilter<StaticState extends string, Filterable extends string, ListTypeInfo extends BaseListTypeInfo> = ConditionalFilter<StaticState, Filterable, ListTypeInfo> | ((args: {
298
- context: NixxieContext<ListTypeInfo['all']>;
299
- session?: NixxieContext<ListTypeInfo['all']>['session'];
300
- }) => MaybePromise<ConditionalFilter<StaticState, Filterable, ListTypeInfo>>);
301
- export type MaybeBooleanSessionFunctionWithFilter<ListTypeInfo extends BaseListTypeInfo> = ConditionalFilterCase<ListTypeInfo> | ((args: {
302
- context: NixxieContext<ListTypeInfo['all']>;
303
- session?: ListTypeInfo['all']['session'];
304
- }) => MaybePromise<ConditionalFilterCase<ListTypeInfo>>);
305
- export type MaybeBooleanItemFunctionWithFilter<ListTypeInfo extends BaseListTypeInfo, FieldTypeInfo extends BaseFieldTypeInfo> = ConditionalFilterCase<ListTypeInfo> | ((args: {
306
- context: NixxieContext<ListTypeInfo['all']>;
307
- listKey: ListTypeInfo['key'];
308
- fieldKey: ListTypeInfo['fields'];
309
- item: ListTypeInfo['item'] | null;
335
+ export type MaybeSessionFunctionWithFilter<StaticState extends string, Filterable extends string, CollectionTypeInfo extends BaseCollectionTypeInfo> = ConditionalFilter<StaticState, Filterable, CollectionTypeInfo> | ((args: {
336
+ context: NixxieContext<CollectionTypeInfo['all']>;
337
+ session?: NixxieContext<CollectionTypeInfo['all']>['session'];
338
+ }) => MaybePromise<ConditionalFilter<StaticState, Filterable, CollectionTypeInfo>>);
339
+ export type MaybeBooleanSessionFunctionWithFilter<CollectionTypeInfo extends BaseCollectionTypeInfo> = ConditionalFilterCase<CollectionTypeInfo> | ((args: {
340
+ context: NixxieContext<CollectionTypeInfo['all']>;
341
+ session?: CollectionTypeInfo['all']['session'];
342
+ }) => MaybePromise<ConditionalFilterCase<CollectionTypeInfo>>);
343
+ export type MaybeBooleanItemFunctionWithFilter<CollectionTypeInfo extends BaseCollectionTypeInfo, FieldTypeInfo extends BaseFieldTypeInfo> = ConditionalFilterCase<CollectionTypeInfo> | ((args: {
344
+ context: NixxieContext<CollectionTypeInfo['all']>;
345
+ listKey: CollectionTypeInfo['key'];
346
+ fieldKey: CollectionTypeInfo['fields'];
347
+ item: CollectionTypeInfo['item'] | null;
310
348
  itemField: FieldTypeInfo['item'] | null;
311
- session?: ListTypeInfo['all']['session'];
312
- }) => MaybePromise<ConditionalFilterCase<ListTypeInfo>>);
313
- export type MaybeItemFieldFunctionWithFilter<StaticState extends string, Filterable extends string, ListTypeInfo extends BaseListTypeInfo, FieldTypeInfo extends BaseFieldTypeInfo> = ConditionalFilter<StaticState, Filterable, ListTypeInfo> | ((args: {
314
- context: NixxieContext<ListTypeInfo['all']>;
315
- session?: ListTypeInfo['all']['session'];
316
- listKey: ListTypeInfo['key'];
317
- fieldKey: ListTypeInfo['fields'];
318
- item: ListTypeInfo['item'] | null;
349
+ session?: CollectionTypeInfo['all']['session'];
350
+ }) => MaybePromise<ConditionalFilterCase<CollectionTypeInfo>>);
351
+ export type MaybeItemFieldFunctionWithFilter<StaticState extends string, Filterable extends string, CollectionTypeInfo extends BaseCollectionTypeInfo, FieldTypeInfo extends BaseFieldTypeInfo> = ConditionalFilter<StaticState, Filterable, CollectionTypeInfo> | ((args: {
352
+ context: NixxieContext<CollectionTypeInfo['all']>;
353
+ session?: CollectionTypeInfo['all']['session'];
354
+ listKey: CollectionTypeInfo['key'];
355
+ fieldKey: CollectionTypeInfo['fields'];
356
+ item: CollectionTypeInfo['item'] | null;
319
357
  itemField: FieldTypeInfo['item'] | null;
320
- }) => MaybePromise<ConditionalFilter<StaticState, Filterable, ListTypeInfo>>);
321
- export type MaybeItemFieldFunction<T, ListTypeInfo extends BaseListTypeInfo, FieldTypeInfo extends BaseFieldTypeInfo> = T | ((args: {
322
- context: NixxieContext<ListTypeInfo['all']>;
323
- session?: ListTypeInfo['all']['session'];
324
- listKey: ListTypeInfo['key'];
325
- fieldKey: ListTypeInfo['fields'];
326
- item: ListTypeInfo['item'] | null;
358
+ }) => MaybePromise<ConditionalFilter<StaticState, Filterable, CollectionTypeInfo>>);
359
+ export type MaybeItemFieldFunction<T, CollectionTypeInfo extends BaseCollectionTypeInfo, FieldTypeInfo extends BaseFieldTypeInfo> = T | ((args: {
360
+ context: NixxieContext<CollectionTypeInfo['all']>;
361
+ session?: CollectionTypeInfo['all']['session'];
362
+ listKey: CollectionTypeInfo['key'];
363
+ fieldKey: CollectionTypeInfo['fields'];
364
+ item: CollectionTypeInfo['item'] | null;
327
365
  itemField: FieldTypeInfo['item'] | null;
328
366
  }) => MaybePromise<T>);
329
- export type MaybeItemFunctionWithFilter<StaticState extends string, Filterable extends string, ListTypeInfo extends BaseListTypeInfo> = ConditionalFilter<StaticState, Filterable, ListTypeInfo> | ((args: {
330
- context: NixxieContext<ListTypeInfo['all']>;
331
- session?: ListTypeInfo['all']['session'];
332
- listKey: ListTypeInfo['key'];
333
- item: ListTypeInfo['item'] | null;
334
- }) => MaybePromise<ConditionalFilter<StaticState, Filterable, ListTypeInfo>>);
335
- export type MaybeItemActionFunction<T extends string, ListTypeInfo extends BaseListTypeInfo> = (args: {
336
- context: NixxieContext<ListTypeInfo['all']>;
337
- session?: ListTypeInfo['all']['session'];
338
- listKey: ListTypeInfo['key'];
339
- actionKey: ListTypeInfo['actions'];
340
- item: ListTypeInfo['item'] | null;
367
+ export type MaybeItemFunctionWithFilter<StaticState extends string, Filterable extends string, CollectionTypeInfo extends BaseCollectionTypeInfo> = ConditionalFilter<StaticState, Filterable, CollectionTypeInfo> | ((args: {
368
+ context: NixxieContext<CollectionTypeInfo['all']>;
369
+ session?: CollectionTypeInfo['all']['session'];
370
+ listKey: CollectionTypeInfo['key'];
371
+ item: CollectionTypeInfo['item'] | null;
372
+ }) => MaybePromise<ConditionalFilter<StaticState, Filterable, CollectionTypeInfo>>);
373
+ export type MaybeItemActionFunction<T extends string, CollectionTypeInfo extends BaseCollectionTypeInfo> = (args: {
374
+ context: NixxieContext<CollectionTypeInfo['all']>;
375
+ session?: CollectionTypeInfo['all']['session'];
376
+ listKey: CollectionTypeInfo['key'];
377
+ actionKey: CollectionTypeInfo['actions'];
378
+ item: CollectionTypeInfo['item'] | null;
341
379
  }) => MaybePromise<T>;
342
- export type MaybeItemActionFunctionWithFilter<StaticState extends string, Filterable extends string, ListTypeInfo extends BaseListTypeInfo> = ConditionalFilter<StaticState, Filterable, ListTypeInfo> | ((args: {
343
- context: NixxieContext<ListTypeInfo['all']>;
344
- session?: ListTypeInfo['all']['session'];
345
- listKey: ListTypeInfo['key'];
346
- actionKey: ListTypeInfo['actions'];
347
- item: ListTypeInfo['item'] | null;
348
- }) => MaybePromise<ConditionalFilter<StaticState, Filterable, ListTypeInfo>>);
349
- export type ListGraphQLConfig<ListTypeInfo extends BaseListTypeInfo> = {
380
+ export type MaybeItemActionFunctionWithFilter<StaticState extends string, Filterable extends string, CollectionTypeInfo extends BaseCollectionTypeInfo> = ConditionalFilter<StaticState, Filterable, CollectionTypeInfo> | ((args: {
381
+ context: NixxieContext<CollectionTypeInfo['all']>;
382
+ session?: CollectionTypeInfo['all']['session'];
383
+ listKey: CollectionTypeInfo['key'];
384
+ actionKey: CollectionTypeInfo['actions'];
385
+ item: CollectionTypeInfo['item'] | null;
386
+ }) => MaybePromise<ConditionalFilter<StaticState, Filterable, CollectionTypeInfo>>);
387
+ export type CollectionGraphQLConfig<CollectionTypeInfo extends BaseCollectionTypeInfo> = {
350
388
  /**
351
389
  * The description added to the GraphQL schema
352
390
  * @default empty
@@ -364,7 +402,7 @@ export type ListGraphQLConfig<ListTypeInfo extends BaseListTypeInfo> = {
364
402
  * The maximum value for the take parameter when querying this list
365
403
  */
366
404
  maxTake?: number;
367
- cacheHint?: ((args: CacheHintArgs<ListTypeInfo>) => CacheHint) | CacheHint;
405
+ cacheHint?: ((args: CacheHintArgs<CollectionTypeInfo>) => CacheHint) | CacheHint;
368
406
  omit?: boolean | {
369
407
  query?: boolean;
370
408
  create?: boolean;
@@ -372,8 +410,8 @@ export type ListGraphQLConfig<ListTypeInfo extends BaseListTypeInfo> = {
372
410
  delete?: boolean;
373
411
  };
374
412
  };
375
- export type CacheHintArgs<ListTypeInfo extends BaseListTypeInfo> = {
376
- results: ListTypeInfo['item'][];
413
+ export type CacheHintArgs<CollectionTypeInfo extends BaseCollectionTypeInfo> = {
414
+ results: CollectionTypeInfo['item'][];
377
415
  operationName?: string;
378
416
  meta: false;
379
417
  } | {
@@ -408,7 +446,7 @@ export type IdFieldConfig = {
408
446
  kind: 'number';
409
447
  type: 'Int' | 'BigInt';
410
448
  };
411
- export type ListDBConfig = {
449
+ export type CollectionDBConfig = {
412
450
  /**
413
451
  * The kind of id to use.
414
452
  * @default { kind: "cuid" }
@@ -1 +1 @@
1
- {"version":3,"file":"lists.d.ts","sourceRoot":"../../../../../src/types/config","sources":["lists.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lists.d.ts","sourceRoot":"../../../../../src/types/config","sources":["lists.ts"],"names":[],"mappings":"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"}