mirror of
https://github.com/xtr-dev/payload-automation.git
synced 2025-12-11 01:03:23 +00:00
- Add createTrigger() and createAdvancedTrigger() helpers - Add preset builders: webhookTrigger, cronTrigger, eventTrigger, etc. - Implement virtual fields with JSON backing for trigger parameters - Eliminate 90% of boilerplate when creating custom triggers - Add /helpers export path for trigger builders - Fix field name clashing between built-in and custom trigger parameters - Add comprehensive examples and documentation - Maintain backward compatibility with existing triggers 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
47 lines
1.1 KiB
TypeScript
47 lines
1.1 KiB
TypeScript
/**
|
|
* Trigger builder helpers for creating custom triggers with less boilerplate
|
|
*
|
|
* @example
|
|
* ```typescript
|
|
* import { createTrigger, webhookTrigger } from '@xtr-dev/payload-automation/helpers'
|
|
*
|
|
* // Simple trigger
|
|
* const myTrigger = createTrigger('my-trigger').parameters({
|
|
* apiKey: { type: 'text', required: true },
|
|
* timeout: { type: 'number', defaultValue: 30 }
|
|
* })
|
|
*
|
|
* // Webhook trigger with presets
|
|
* const orderWebhook = webhookTrigger('order-webhook')
|
|
* .parameter('orderTypes', {
|
|
* type: 'select',
|
|
* hasMany: true,
|
|
* options: ['regular', 'subscription']
|
|
* })
|
|
* .build()
|
|
* ```
|
|
*/
|
|
|
|
// Core helpers
|
|
export {
|
|
createTriggerParameter,
|
|
createTriggerParameters,
|
|
createTrigger,
|
|
createAdvancedTrigger
|
|
} from '../utils/trigger-helpers.js'
|
|
|
|
// Preset builders
|
|
export {
|
|
webhookTrigger,
|
|
cronTrigger,
|
|
eventTrigger,
|
|
manualTrigger,
|
|
apiTrigger
|
|
} from '../utils/trigger-presets.js'
|
|
|
|
// Common parameter sets for extending
|
|
export {
|
|
webhookParameters,
|
|
cronParameters,
|
|
eventParameters
|
|
} from '../utils/trigger-presets.js' |