chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
import * as sdk from '@botpress/sdk'
|
||||
const { z } = sdk
|
||||
|
||||
export namespace BaseItem {
|
||||
const _fields = {
|
||||
id: z.string().title('ID').describe('Unique identifier of the item.'),
|
||||
itemType: z.string().title('Item Type').describe('The type of the item.'),
|
||||
name: z.string().title('Name').describe('The name of the item, including extension.'),
|
||||
path: z.string().title('Path').describe("The path to the item in the user's Dropbox."),
|
||||
webUrl: z.string().optional().title('Web URL').describe('The URL to view the item on the Dropbox website.'),
|
||||
isDeleted: z.boolean().title('Is Deleted?').describe('Whether the item has been deleted.'),
|
||||
isShared: z.boolean().title('Is Shared?').describe('Whether the item is shared with other users.'),
|
||||
} as const
|
||||
|
||||
export const schema = z.object(_fields)
|
||||
export type InferredType = sdk.z.infer<typeof schema>
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
import * as sdk from '@botpress/sdk'
|
||||
const { z } = sdk
|
||||
|
||||
export namespace Deleted {
|
||||
const _fields = {
|
||||
itemType: z.literal('deleted').title('Item Type').describe('The type of the item.'),
|
||||
name: z.string().title('Name').describe('The name of the item.'),
|
||||
path: z.string().title('Path').describe("The path to the item in the user's Dropbox."),
|
||||
isDeleted: z.literal(true).title('Is Deleted?').describe('Whether the item has been deleted.'),
|
||||
} as const
|
||||
|
||||
export const schema = z.object(_fields)
|
||||
export type InferredType = sdk.z.infer<typeof schema>
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
import * as sdk from '@botpress/sdk'
|
||||
import { BaseItem } from './abstract/base-item'
|
||||
const { z } = sdk
|
||||
|
||||
export namespace File {
|
||||
const _fields = {
|
||||
...BaseItem.schema.shape,
|
||||
itemType: z.literal('file').title('Item Type').describe('The type of the item.'),
|
||||
revision: z.string().min(1).title('Revision').describe("The file's revision"),
|
||||
size: z.number().title('Size').describe("The file's size in bytes"),
|
||||
fileHash: z.string().min(1).title('Checksum').describe("The file's validation hash"),
|
||||
isDownloadable: z.boolean().title('Is Downloadable?').describe('Whether the file is downloadable'),
|
||||
symlinkTarget: z
|
||||
.string()
|
||||
.optional()
|
||||
.title('Symlink Target')
|
||||
.describe('The target of the symlink, if the file is a symlink'),
|
||||
modifiedAt: z
|
||||
.string()
|
||||
.title('Modified At')
|
||||
.describe('The date and time the file was last modified, formatted as an ISO 8601 timestamp.'),
|
||||
} as const
|
||||
|
||||
export const schema = z.object(_fields)
|
||||
export type InferredType = sdk.z.infer<typeof schema>
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
import * as sdk from '@botpress/sdk'
|
||||
import { BaseItem } from './abstract/base-item'
|
||||
const { z } = sdk
|
||||
|
||||
export namespace Folder {
|
||||
const _fields = {
|
||||
...BaseItem.schema.shape,
|
||||
itemType: z.literal('folder').title('Item Type').describe('The type of the item.'),
|
||||
} as const
|
||||
|
||||
export const schema = z.object(_fields)
|
||||
export type InferredType = sdk.z.infer<typeof schema>
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
import * as sdk from '@botpress/sdk'
|
||||
|
||||
import { Deleted } from './deleted'
|
||||
import { File } from './file'
|
||||
import { Folder } from './folder'
|
||||
|
||||
export { File, Folder, Deleted }
|
||||
|
||||
export const entities = {
|
||||
file: {
|
||||
title: 'File',
|
||||
description: "A file in a user's Dropbox",
|
||||
schema: File.schema,
|
||||
},
|
||||
folder: {
|
||||
title: 'Folder',
|
||||
description: "A folder in a user's Dropbox",
|
||||
schema: Folder.schema,
|
||||
},
|
||||
} as const satisfies sdk.IntegrationDefinitionProps['entities']
|
||||
Reference in New Issue
Block a user