@byline/host-tanstack-start 3.10.0 → 3.11.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.
- package/dist/admin-shell/admin-activity/list.d.ts +10 -0
- package/dist/admin-shell/admin-activity/list.js +228 -0
- package/dist/admin-shell/admin-activity/list.module.js +12 -0
- package/dist/admin-shell/admin-activity/list_module.css +45 -0
- package/dist/admin-shell/chrome/menu-drawer.js +23 -6
- package/dist/admin-shell/chrome/preview-toggle.js +11 -6
- package/dist/routes/create-admin-activity-route.d.ts +8 -0
- package/dist/routes/create-admin-activity-route.js +71 -0
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.js +1 -0
- package/dist/server-fns/admin-account/change-password.js +1 -1
- package/dist/server-fns/admin-account/get.js +1 -1
- package/dist/server-fns/admin-account/update.js +1 -1
- package/dist/server-fns/admin-activity/get.d.ts +50 -0
- package/dist/server-fns/admin-activity/get.js +71 -0
- package/dist/server-fns/admin-activity/index.d.ts +15 -0
- package/dist/server-fns/admin-activity/index.js +1 -0
- package/dist/server-fns/admin-permissions/get-role-abilities.js +1 -1
- package/dist/server-fns/admin-permissions/list-registered.d.ts +2 -2
- package/dist/server-fns/admin-permissions/set-role-abilities.js +1 -1
- package/dist/server-fns/admin-permissions/who-has.js +1 -1
- package/dist/server-fns/admin-roles/create.js +1 -1
- package/dist/server-fns/admin-roles/delete.js +1 -1
- package/dist/server-fns/admin-roles/get.js +1 -1
- package/dist/server-fns/admin-roles/reorder.js +1 -1
- package/dist/server-fns/admin-roles/update.js +1 -1
- package/dist/server-fns/admin-users/create.js +1 -1
- package/dist/server-fns/admin-users/delete.js +1 -1
- package/dist/server-fns/admin-users/disable.js +1 -1
- package/dist/server-fns/admin-users/enable.js +1 -1
- package/dist/server-fns/admin-users/get-user-roles.js +1 -1
- package/dist/server-fns/admin-users/get.js +1 -1
- package/dist/server-fns/admin-users/list.d.ts +1 -1
- package/dist/server-fns/admin-users/list.js +1 -1
- package/dist/server-fns/admin-users/set-password.js +1 -1
- package/dist/server-fns/admin-users/set-user-roles.js +1 -1
- package/dist/server-fns/admin-users/update.js +1 -1
- package/dist/server-fns/ai/execute.js +1 -1
- package/dist/server-fns/auth/sign-in.js +1 -1
- package/dist/server-fns/collections/audit.js +1 -1
- package/dist/server-fns/collections/copy-to-locale.js +1 -1
- package/dist/server-fns/collections/create.js +1 -1
- package/dist/server-fns/collections/delete-locale.js +1 -1
- package/dist/server-fns/collections/delete.js +1 -1
- package/dist/server-fns/collections/duplicate.js +1 -1
- package/dist/server-fns/collections/get.js +2 -2
- package/dist/server-fns/collections/history.js +1 -1
- package/dist/server-fns/collections/list.js +1 -1
- package/dist/server-fns/collections/reorder.js +1 -1
- package/dist/server-fns/collections/restore-version.js +1 -1
- package/dist/server-fns/collections/stats.js +1 -1
- package/dist/server-fns/collections/status.js +2 -2
- package/dist/server-fns/collections/update.js +2 -2
- package/dist/server-fns/collections/upload.js +1 -1
- package/dist/server-fns/i18n/set-locale.js +1 -1
- package/package.json +14 -10
- package/src/admin-shell/admin-activity/list.module.css +69 -0
- package/src/admin-shell/admin-activity/list.tsx +242 -0
- package/src/admin-shell/chrome/menu-drawer.tsx +34 -3
- package/src/admin-shell/chrome/preview-toggle.tsx +14 -3
- package/src/routes/create-admin-activity-route.tsx +76 -0
- package/src/routes/index.ts +1 -0
- package/src/server-fns/admin-account/change-password.ts +1 -1
- package/src/server-fns/admin-account/get.ts +1 -1
- package/src/server-fns/admin-account/update.ts +1 -1
- package/src/server-fns/admin-activity/get.ts +139 -0
- package/src/server-fns/admin-activity/index.ts +23 -0
- package/src/server-fns/admin-permissions/get-role-abilities.ts +1 -1
- package/src/server-fns/admin-permissions/set-role-abilities.ts +1 -1
- package/src/server-fns/admin-permissions/who-has.ts +1 -1
- package/src/server-fns/admin-roles/create.ts +1 -1
- package/src/server-fns/admin-roles/delete.ts +1 -1
- package/src/server-fns/admin-roles/get.ts +1 -1
- package/src/server-fns/admin-roles/reorder.ts +1 -1
- package/src/server-fns/admin-roles/update.ts +1 -1
- package/src/server-fns/admin-users/create.ts +1 -1
- package/src/server-fns/admin-users/delete.ts +1 -1
- package/src/server-fns/admin-users/disable.ts +1 -1
- package/src/server-fns/admin-users/enable.ts +1 -1
- package/src/server-fns/admin-users/get-user-roles.ts +1 -1
- package/src/server-fns/admin-users/get.ts +1 -1
- package/src/server-fns/admin-users/list.ts +1 -1
- package/src/server-fns/admin-users/set-password.ts +1 -1
- package/src/server-fns/admin-users/set-user-roles.ts +1 -1
- package/src/server-fns/admin-users/update.ts +1 -1
- package/src/server-fns/ai/execute.ts +1 -1
- package/src/server-fns/auth/sign-in.ts +1 -1
- package/src/server-fns/collections/audit.ts +1 -3
- package/src/server-fns/collections/copy-to-locale.ts +1 -1
- package/src/server-fns/collections/create.ts +1 -1
- package/src/server-fns/collections/delete-locale.ts +1 -1
- package/src/server-fns/collections/delete.ts +1 -1
- package/src/server-fns/collections/duplicate.ts +1 -1
- package/src/server-fns/collections/get.ts +2 -2
- package/src/server-fns/collections/history.ts +1 -1
- package/src/server-fns/collections/list.ts +1 -1
- package/src/server-fns/collections/reorder.ts +1 -1
- package/src/server-fns/collections/restore-version.ts +1 -1
- package/src/server-fns/collections/stats.ts +1 -1
- package/src/server-fns/collections/status.ts +2 -2
- package/src/server-fns/collections/update.ts +2 -2
- package/src/server-fns/collections/upload.ts +1 -1
- package/src/server-fns/i18n/set-locale.ts +1 -1
|
@@ -18,7 +18,7 @@ import { bylineCore } from '../../integrations/byline-core.js'
|
|
|
18
18
|
// modules each declare their own identical `OkResponse` today, and the
|
|
19
19
|
// root `@byline/admin` barrel can only re-export one of them.
|
|
20
20
|
export const deleteAdminRole = createServerFn({ method: 'POST' })
|
|
21
|
-
.
|
|
21
|
+
.validator((input: { id: string; vid: number }) => input)
|
|
22
22
|
.handler(async ({ data }): Promise<{ ok: true }> => {
|
|
23
23
|
const context = await getAdminRequestContext()
|
|
24
24
|
return deleteAdminRoleCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -14,7 +14,7 @@ import { getAdminRequestContext } from '../../auth/auth-context.js'
|
|
|
14
14
|
import { bylineCore } from '../../integrations/byline-core.js'
|
|
15
15
|
|
|
16
16
|
export const getAdminRole = createServerFn({ method: 'GET' })
|
|
17
|
-
.
|
|
17
|
+
.validator((input: { id: string }) => input)
|
|
18
18
|
.handler(async ({ data }): Promise<AdminRoleResponse> => {
|
|
19
19
|
const context = await getAdminRequestContext()
|
|
20
20
|
return getAdminRoleCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -14,7 +14,7 @@ import { getAdminRequestContext } from '../../auth/auth-context.js'
|
|
|
14
14
|
import { bylineCore } from '../../integrations/byline-core.js'
|
|
15
15
|
|
|
16
16
|
export const reorderAdminRoles = createServerFn({ method: 'POST' })
|
|
17
|
-
.
|
|
17
|
+
.validator((input: { ids: string[] }) => input)
|
|
18
18
|
.handler(async ({ data }): Promise<{ ok: true }> => {
|
|
19
19
|
const context = await getAdminRequestContext()
|
|
20
20
|
return reorderAdminRolesCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -24,7 +24,7 @@ export interface UpdateAdminRoleInput {
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
export const updateAdminRole = createServerFn({ method: 'POST' })
|
|
27
|
-
.
|
|
27
|
+
.validator((input: UpdateAdminRoleInput) => input)
|
|
28
28
|
.handler(async ({ data }): Promise<AdminRoleResponse> => {
|
|
29
29
|
const context = await getAdminRequestContext()
|
|
30
30
|
return updateAdminRoleCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -25,7 +25,7 @@ export interface CreateAdminUserInput {
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
export const createAdminUser = createServerFn({ method: 'POST' })
|
|
28
|
-
.
|
|
28
|
+
.validator((input: CreateAdminUserInput) => input)
|
|
29
29
|
.handler(async ({ data }): Promise<AdminUserResponse> => {
|
|
30
30
|
const context = await getAdminRequestContext()
|
|
31
31
|
return createAdminUserCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -14,7 +14,7 @@ import { getAdminRequestContext } from '../../auth/auth-context.js'
|
|
|
14
14
|
import { bylineCore } from '../../integrations/byline-core.js'
|
|
15
15
|
|
|
16
16
|
export const deleteAdminUser = createServerFn({ method: 'POST' })
|
|
17
|
-
.
|
|
17
|
+
.validator((input: { id: string; vid: number }) => input)
|
|
18
18
|
.handler(async ({ data }): Promise<OkResponse> => {
|
|
19
19
|
const context = await getAdminRequestContext()
|
|
20
20
|
return deleteAdminUserCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -17,7 +17,7 @@ import { bylineCore } from '../../integrations/byline-core.js'
|
|
|
17
17
|
// detail-view enable/disable control they will be wired into. Keep until
|
|
18
18
|
// that control lands; not dead code.
|
|
19
19
|
export const disableAdminUser = createServerFn({ method: 'POST' })
|
|
20
|
-
.
|
|
20
|
+
.validator((input: { id: string }) => input)
|
|
21
21
|
.handler(async ({ data }): Promise<OkResponse> => {
|
|
22
22
|
const context = await getAdminRequestContext()
|
|
23
23
|
return disableAdminUserCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -17,7 +17,7 @@ import { bylineCore } from '../../integrations/byline-core.js'
|
|
|
17
17
|
// detail-view enable/disable control they will be wired into. Keep until
|
|
18
18
|
// that control lands; not dead code.
|
|
19
19
|
export const enableAdminUser = createServerFn({ method: 'POST' })
|
|
20
|
-
.
|
|
20
|
+
.validator((input: { id: string }) => input)
|
|
21
21
|
.handler(async ({ data }): Promise<OkResponse> => {
|
|
22
22
|
const context = await getAdminRequestContext()
|
|
23
23
|
return enableAdminUserCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -14,7 +14,7 @@ import { getAdminRequestContext } from '../../auth/auth-context.js'
|
|
|
14
14
|
import { bylineCore } from '../../integrations/byline-core.js'
|
|
15
15
|
|
|
16
16
|
export const getUserRoles = createServerFn({ method: 'GET' })
|
|
17
|
-
.
|
|
17
|
+
.validator((input: { userId: string }) => input)
|
|
18
18
|
.handler(async ({ data }): Promise<UserRolesResponse> => {
|
|
19
19
|
const context = await getAdminRequestContext()
|
|
20
20
|
return getRolesForUserCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -14,7 +14,7 @@ import { getAdminRequestContext } from '../../auth/auth-context.js'
|
|
|
14
14
|
import { bylineCore } from '../../integrations/byline-core.js'
|
|
15
15
|
|
|
16
16
|
export const getAdminUser = createServerFn({ method: 'GET' })
|
|
17
|
-
.
|
|
17
|
+
.validator((input: { id: string }) => input)
|
|
18
18
|
.handler(async ({ data }): Promise<AdminUserResponse> => {
|
|
19
19
|
const context = await getAdminRequestContext()
|
|
20
20
|
return getAdminUserCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -33,7 +33,7 @@ export interface ListAdminUsersInput {
|
|
|
33
33
|
* TanStack Start transport layer for the client to branch on.
|
|
34
34
|
*/
|
|
35
35
|
export const listAdminUsers = createServerFn({ method: 'GET' })
|
|
36
|
-
.
|
|
36
|
+
.validator((input: ListAdminUsersInput) => input ?? {})
|
|
37
37
|
.handler(async ({ data }): Promise<AdminUserListResponse> => {
|
|
38
38
|
const context = await getAdminRequestContext()
|
|
39
39
|
return listAdminUsersCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -20,7 +20,7 @@ export interface SetAdminUserPasswordInput {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
export const setAdminUserPassword = createServerFn({ method: 'POST' })
|
|
23
|
-
.
|
|
23
|
+
.validator((input: SetAdminUserPasswordInput) => input)
|
|
24
24
|
.handler(async ({ data }): Promise<AdminUserResponse> => {
|
|
25
25
|
const context = await getAdminRequestContext()
|
|
26
26
|
return setAdminUserPasswordCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -19,7 +19,7 @@ export interface SetUserRolesInput {
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
export const setUserRoles = createServerFn({ method: 'POST' })
|
|
22
|
-
.
|
|
22
|
+
.validator((input: SetUserRolesInput) => input)
|
|
23
23
|
.handler(async ({ data }): Promise<UserRolesResponse> => {
|
|
24
24
|
const context = await getAdminRequestContext()
|
|
25
25
|
return setRolesForUserCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -27,7 +27,7 @@ export interface UpdateAdminUserInput {
|
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
export const updateAdminUser = createServerFn({ method: 'POST' })
|
|
30
|
-
.
|
|
30
|
+
.validator((input: UpdateAdminUserInput) => input)
|
|
31
31
|
.handler(async ({ data }): Promise<AdminUserResponse> => {
|
|
32
32
|
const context = await getAdminRequestContext()
|
|
33
33
|
return updateAdminUserCommand(context, data, { store: bylineCore().adminStore! })
|
|
@@ -38,7 +38,7 @@ type ExecuteAiInstructionInput = {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
export const executeAiInstruction = createServerFn({ method: 'POST' })
|
|
41
|
-
.
|
|
41
|
+
.validator((input: ExecuteAiInstructionInput) => input)
|
|
42
42
|
.handler(async ({ data }): Promise<Response> => {
|
|
43
43
|
// Throws ERR_UNAUTHENTICATED if there is no admin session.
|
|
44
44
|
await getAdminRequestContext()
|
|
@@ -36,7 +36,7 @@ export interface SignInResult {
|
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
export const adminSignIn = createServerFn({ method: 'POST' })
|
|
39
|
-
.
|
|
39
|
+
.validator((input: SignInInput) => {
|
|
40
40
|
if (typeof input?.email !== 'string' || input.email.length === 0) {
|
|
41
41
|
throw new Error('email is required')
|
|
42
42
|
}
|
|
@@ -49,9 +49,7 @@ export interface AuditLogEntryDto {
|
|
|
49
49
|
// ---------------------------------------------------------------------------
|
|
50
50
|
|
|
51
51
|
export const getCollectionDocumentAuditLog = createServerFn({ method: 'GET' })
|
|
52
|
-
.
|
|
53
|
-
(input: { collection: string; id: string; params?: AuditLogSearchParams }) => input
|
|
54
|
-
)
|
|
52
|
+
.validator((input: { collection: string; id: string; params?: AuditLogSearchParams }) => input)
|
|
55
53
|
.handler(async ({ data }) => {
|
|
56
54
|
const { collection: path, id, params } = data
|
|
57
55
|
const config = await ensureCollection(path)
|
|
@@ -29,7 +29,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
29
29
|
* failures propagate to TanStack Start's transport layer.
|
|
30
30
|
*/
|
|
31
31
|
export const copyDocumentToLocale = createServerFn({ method: 'POST' })
|
|
32
|
-
.
|
|
32
|
+
.validator(
|
|
33
33
|
(input: {
|
|
34
34
|
collection: string
|
|
35
35
|
id: string
|
|
@@ -20,7 +20,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
20
20
|
// ---------------------------------------------------------------------------
|
|
21
21
|
|
|
22
22
|
export const createCollectionDocument = createServerFn({ method: 'POST' })
|
|
23
|
-
.
|
|
23
|
+
.validator(
|
|
24
24
|
(input: {
|
|
25
25
|
collection: string
|
|
26
26
|
data: any
|
|
@@ -30,7 +30,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
30
30
|
* transport layer.
|
|
31
31
|
*/
|
|
32
32
|
export const deleteDocumentLocale = createServerFn({ method: 'POST' })
|
|
33
|
-
.
|
|
33
|
+
.validator((input: { collection: string; id: string; locale: string }) => input)
|
|
34
34
|
.handler(async ({ data: input }): Promise<DeleteLocaleResult> => {
|
|
35
35
|
const { collection: path, id, locale } = input
|
|
36
36
|
const logger = getLogger()
|
|
@@ -20,7 +20,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
20
20
|
// ---------------------------------------------------------------------------
|
|
21
21
|
|
|
22
22
|
export const deleteDocument = createServerFn({ method: 'POST' })
|
|
23
|
-
.
|
|
23
|
+
.validator((input: { collection: string; id: string }) => input)
|
|
24
24
|
.handler(async ({ data: input }) => {
|
|
25
25
|
const { collection: path, id } = input
|
|
26
26
|
const logger = getLogger()
|
|
@@ -31,7 +31,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
31
31
|
* TanStack Start's transport layer for the client to branch on.
|
|
32
32
|
*/
|
|
33
33
|
export const duplicateCollectionDocument = createServerFn({ method: 'POST' })
|
|
34
|
-
.
|
|
34
|
+
.validator((input: { collection: string; id: string }) => input)
|
|
35
35
|
.handler(async ({ data: input }): Promise<DuplicateDocumentResult> => {
|
|
36
36
|
const { collection: path, id: sourceDocumentId } = input
|
|
37
37
|
const logger = getLogger()
|
|
@@ -30,7 +30,7 @@ import { serialise } from './utils'
|
|
|
30
30
|
// ---------------------------------------------------------------------------
|
|
31
31
|
|
|
32
32
|
const getDocumentFn = createServerFn({ method: 'GET' })
|
|
33
|
-
.
|
|
33
|
+
.validator(
|
|
34
34
|
(input: {
|
|
35
35
|
collection: string
|
|
36
36
|
id: string
|
|
@@ -183,7 +183,7 @@ const getDocumentFn = createServerFn({ method: 'GET' })
|
|
|
183
183
|
// ---------------------------------------------------------------------------
|
|
184
184
|
|
|
185
185
|
const getDocumentByVersionFn = createServerFn({ method: 'GET' })
|
|
186
|
-
.
|
|
186
|
+
.validator((input: { collection: string; versionId: string; locale?: string }) => input)
|
|
187
187
|
.handler(async ({ data }) => {
|
|
188
188
|
const { collection: path, versionId, locale } = data
|
|
189
189
|
const resolvedLocale = locale ?? 'all'
|
|
@@ -32,7 +32,7 @@ export interface HistorySearchParams {
|
|
|
32
32
|
// ---------------------------------------------------------------------------
|
|
33
33
|
|
|
34
34
|
export const getCollectionDocumentHistory = createServerFn({ method: 'GET' })
|
|
35
|
-
.
|
|
35
|
+
.validator((input: { collection: string; id: string; params: HistorySearchParams }) => input)
|
|
36
36
|
.handler(async ({ data }) => {
|
|
37
37
|
const { collection: path, id, params } = data
|
|
38
38
|
const config = await ensureCollection(path)
|
|
@@ -40,7 +40,7 @@ export interface CollectionSearchParams {
|
|
|
40
40
|
// ---------------------------------------------------------------------------
|
|
41
41
|
|
|
42
42
|
export const getCollectionDocuments = createServerFn({ method: 'GET' })
|
|
43
|
-
.
|
|
43
|
+
.validator((input: { collection: string; params: CollectionSearchParams }) => input)
|
|
44
44
|
.handler(async ({ data }) => {
|
|
45
45
|
const { collection: path, params } = data
|
|
46
46
|
const config = await ensureCollection(path)
|
|
@@ -38,7 +38,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
38
38
|
// ---------------------------------------------------------------------------
|
|
39
39
|
|
|
40
40
|
export const reorderCollectionDocument = createServerFn({ method: 'POST' })
|
|
41
|
-
.
|
|
41
|
+
.validator(
|
|
42
42
|
(input: {
|
|
43
43
|
collection: string
|
|
44
44
|
documentId: string
|
|
@@ -20,7 +20,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
20
20
|
// ---------------------------------------------------------------------------
|
|
21
21
|
|
|
22
22
|
export const restoreDocumentVersion = createServerFn({ method: 'POST' })
|
|
23
|
-
.
|
|
23
|
+
.validator((input: { collection: string; id: string; versionId: string }) => input)
|
|
24
24
|
.handler(async ({ data: input }) => {
|
|
25
25
|
const { collection: path, id, versionId } = input
|
|
26
26
|
const logger = getLogger()
|
|
@@ -25,7 +25,7 @@ export interface CollectionStatusCount {
|
|
|
25
25
|
// ---------------------------------------------------------------------------
|
|
26
26
|
|
|
27
27
|
const getCollectionStatsFn = createServerFn({ method: 'GET' })
|
|
28
|
-
.
|
|
28
|
+
.validator((input: { collection: string }) => input)
|
|
29
29
|
.handler(async ({ data }) => {
|
|
30
30
|
const config = await ensureCollection(data.collection)
|
|
31
31
|
if (!config) return { stats: [] as CollectionStatusCount[] }
|
|
@@ -23,7 +23,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
23
23
|
// ---------------------------------------------------------------------------
|
|
24
24
|
|
|
25
25
|
export const updateDocumentStatus = createServerFn({ method: 'POST' })
|
|
26
|
-
.
|
|
26
|
+
.validator((input: { collection: string; id: string; status: string }) => input)
|
|
27
27
|
.handler(async ({ data: input }) => {
|
|
28
28
|
const { collection: path, id, status: nextStatus } = input
|
|
29
29
|
const logger = getLogger()
|
|
@@ -64,7 +64,7 @@ export const updateDocumentStatus = createServerFn({ method: 'POST' })
|
|
|
64
64
|
// ---------------------------------------------------------------------------
|
|
65
65
|
|
|
66
66
|
export const unpublishDocument = createServerFn({ method: 'POST' })
|
|
67
|
-
.
|
|
67
|
+
.validator((input: { collection: string; id: string }) => input)
|
|
68
68
|
.handler(async ({ data: input }) => {
|
|
69
69
|
const { collection: path, id } = input
|
|
70
70
|
const logger = getLogger()
|
|
@@ -26,7 +26,7 @@ import { ensureCollection } from '../../integrations/api-utils.js'
|
|
|
26
26
|
// ---------------------------------------------------------------------------
|
|
27
27
|
|
|
28
28
|
export const updateCollectionDocumentWithPatches = createServerFn({ method: 'POST' })
|
|
29
|
-
.
|
|
29
|
+
.validator(
|
|
30
30
|
(input: {
|
|
31
31
|
collection: string
|
|
32
32
|
id: string
|
|
@@ -78,7 +78,7 @@ export const updateCollectionDocumentWithPatches = createServerFn({ method: 'POS
|
|
|
78
78
|
// ---------------------------------------------------------------------------
|
|
79
79
|
|
|
80
80
|
export const updateCollectionDocumentSystemFields = createServerFn({ method: 'POST' })
|
|
81
|
-
.
|
|
81
|
+
.validator(
|
|
82
82
|
(input: {
|
|
83
83
|
collection: string
|
|
84
84
|
id: string
|
|
@@ -147,7 +147,7 @@ function resolveUploadFieldName(
|
|
|
147
147
|
* without depending on TanStack Start server-function transport details.
|
|
148
148
|
*/
|
|
149
149
|
export const uploadCollectionField = createServerFn({ method: 'POST' })
|
|
150
|
-
.
|
|
150
|
+
.validator(parseUploadFormData)
|
|
151
151
|
.handler(async ({ data }) => {
|
|
152
152
|
const { collectionPath, shouldCreateDocument, fieldName, file, fields } = data
|
|
153
153
|
const logger = getLogger()
|
|
@@ -54,7 +54,7 @@ export interface SetInterfaceLocaleResult {
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
export const setInterfaceLocaleFn = createServerFn({ method: 'POST' })
|
|
57
|
-
.
|
|
57
|
+
.validator((input: SetInterfaceLocaleInput) => input)
|
|
58
58
|
.handler(async ({ data }): Promise<SetInterfaceLocaleResult> => {
|
|
59
59
|
const core = bylineCore()
|
|
60
60
|
const locales = core.config.i18n.interface.locales
|