chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
import * as actions from './actions'
|
||||
import * as hooks from './hooks'
|
||||
import * as bp from '.botpress'
|
||||
|
||||
const plugin = new bp.Plugin({
|
||||
actions: {
|
||||
async syncFilesToBotpess(props) {
|
||||
props.logger.info('Called action syncFilesToBotpess')
|
||||
return await actions.syncFilesToBotpess.callAction(props)
|
||||
},
|
||||
async listItemsInFolder(props) {
|
||||
props.logger.info('Called action listItemsInFolder. Redirecting to integration...')
|
||||
return await props.actions['files-readonly'].listItemsInFolder(props.input)
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
plugin.on.event('files-readonly:fileCreated', async (props) => {
|
||||
if (!props.configuration.enableRealTimeSync) {
|
||||
return
|
||||
}
|
||||
|
||||
props.logger.info('File created event triggered', props.event.payload.file)
|
||||
await hooks.onEvent.fileCreated.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.event('files-readonly:fileDeleted', async (props) => {
|
||||
if (!props.configuration.enableRealTimeSync) {
|
||||
return
|
||||
}
|
||||
|
||||
props.logger.info('File deleted event triggered', props.event.payload.file)
|
||||
await hooks.onEvent.fileDeleted.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.event('files-readonly:fileUpdated', async (props) => {
|
||||
if (!props.configuration.enableRealTimeSync) {
|
||||
return
|
||||
}
|
||||
|
||||
props.logger.info('File updated event triggered', props.event.payload.file)
|
||||
await hooks.onEvent.fileUpdated.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.event('files-readonly:folderDeletedRecursive', async (props) => {
|
||||
if (!props.configuration.enableRealTimeSync) {
|
||||
return
|
||||
}
|
||||
|
||||
props.logger.info('Folder deleted event triggered', props.event.payload.folder)
|
||||
await hooks.onEvent.folderDeletedRecursive.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.event('files-readonly:aggregateFileChanges', async (props) => {
|
||||
if (!props.configuration.enableRealTimeSync) {
|
||||
return
|
||||
}
|
||||
|
||||
props.logger.info('Aggregate file changes event triggered', props.event.payload.modifiedItems)
|
||||
await hooks.onEvent.aggregateFileChanges.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.workflowStart('buildQueue', async (props) => {
|
||||
props.logger.info('buildQueue workflow started', props.workflow.tags)
|
||||
await hooks.onWorkflowStart.buildQueue.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.workflowContinue('buildQueue', async (props) => {
|
||||
props.logger.info('buildQueue workflow continued', props.workflow.tags)
|
||||
await hooks.onWorkflowContinue.buildQueue.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.workflowTimeout('buildQueue', async (props) => {
|
||||
props.logger.info('buildQueue workflow timed out', props.workflow.tags)
|
||||
await hooks.onWorkflowTimeout.buildQueue.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.workflowStart('processQueue', async (props) => {
|
||||
props.logger.info('processQueue workflow started', props.workflow.tags)
|
||||
await hooks.onWorkflowStart.processQueue.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.workflowContinue('processQueue', async (props) => {
|
||||
props.logger.info('processQueue workflow continued', props.workflow.tags)
|
||||
await hooks.onWorkflowContinue.processQueue.handleEvent(props)
|
||||
})
|
||||
|
||||
plugin.on.workflowTimeout('processQueue', async (props) => {
|
||||
props.logger.info('processQueue workflow timed out', props.workflow.tags)
|
||||
await hooks.onWorkflowTimeout.processQueue.handleEvent(props)
|
||||
})
|
||||
|
||||
export default plugin
|
||||
Reference in New Issue
Block a user