58 lines
1.9 KiB
TypeScript
58 lines
1.9 KiB
TypeScript
import { z } from '@botpress/sdk'
|
|
import { ActionDef } from './types'
|
|
|
|
export const getLabel = {
|
|
title: 'Get Label',
|
|
description: 'Gets the specified label by its ID.',
|
|
input: {
|
|
schema: z.object({
|
|
id: z.string().title('Label ID').describe('The ID of the label to retrieve.'),
|
|
}),
|
|
},
|
|
output: {
|
|
schema: z.object({
|
|
id: z.string().optional().title('Label ID').describe('The immutable ID of the label.'),
|
|
name: z.string().optional().title('Name').describe('The display name of the label.'),
|
|
type: z.string().optional().title('Type').describe('The owner type for the label (system or user).'),
|
|
messageListVisibility: z
|
|
.string()
|
|
.optional()
|
|
.title('Message List Visibility')
|
|
.describe('The visibility of messages with this label in the message list.'),
|
|
labelListVisibility: z
|
|
.string()
|
|
.optional()
|
|
.title('Label List Visibility')
|
|
.describe('The visibility of the label in the label list.'),
|
|
messagesTotal: z
|
|
.number()
|
|
.optional()
|
|
.title('Messages Total')
|
|
.describe('The total number of messages with the label.'),
|
|
messagesUnread: z
|
|
.number()
|
|
.optional()
|
|
.title('Messages Unread')
|
|
.describe('The number of unread messages with the label.'),
|
|
threadsTotal: z
|
|
.number()
|
|
.optional()
|
|
.title('Threads Total')
|
|
.describe('The total number of threads with the label.'),
|
|
threadsUnread: z
|
|
.number()
|
|
.optional()
|
|
.title('Threads Unread')
|
|
.describe('The number of unread threads with the label.'),
|
|
color: z
|
|
.object({
|
|
backgroundColor: z.string().optional().describe('The background color.'),
|
|
textColor: z.string().optional().describe('The text color.'),
|
|
})
|
|
.optional()
|
|
.title('Color')
|
|
.describe('The color to assign to the label.'),
|
|
}),
|
|
},
|
|
} as const satisfies ActionDef
|