* backend for triggering automation based on filters
* frontend for handling triggering automations on filter / old row
* lint and bug fix
* fix issue with test header
* make test data optional
* improve safety on trigger gate
* add support for running trigger with filter if no change happened but filter matches
* update var naming to actually make sense
* tests
* fix lint
* improve gating for shouldTrigger check
* remove unecessary cast
* unecessary tableId check
* frontend text updates
* resolving comments
* pro
* Update packages/types/src/documents/app/automation.ts
Co-authored-by: Sam Rose <hello@samwho.dev>
* link out to docs for trigger filtering
* fix pro
* more pr comments
* use getAppId
---------
Co-authored-by: Sam Rose <hello@samwho.dev>
* fixes an issue where nulls weren't being handled correctly in loops
* remove log
* update recursive gate to be more specific
* use lodash for object check
* fix issue where booleans were being parsed to null
* refactor looping out of automations
* clean out execute function in orchestrator of looping code
* re-add accidentally deleted file
* remove spec file
* remove log
* move code back into main automation thread
* account portal update
---------
Co-authored-by: Adria Navarro <adria@budibase.com>
Co-authored-by: Michael Drury <me@michaeldrury.co.uk>
Co-authored-by: Sam Rose <hello@samwho.dev>
* expose old row through the emitter
* accidentally added oldRow to step
* fix row fetch in external datasources
* add test for new / old row comparison
* add testing for old row update event
* allow function overloading in test files
* update tests per comments
* handle event race condition
* update test data modal to account for old row output
* switch icon positioning
* add ability for user to toggle bindable input for attachment
* error handling for missing keys
* improve error handling for smtp attachments
* remove log
* add test
* fixing some pr comments
* update test
* Added disabling functionality for automations
* Removed external trigger automations that are disabled from selectable bindings
* Added new popover option for disabling automations
* Added toggle UI Inside automation screen
* Added subtle styling to automation list for disabled functionality.
* Fixed linting error
* Removed duplicate bbui import
* Fixed store function spacing
* Fixed linting issues.
* Added the requested changes to how disable is handled.
* Fixed linting issues.
* Minor UI tweaks based on feedback.
* Added logic to prevent crons type automations from running when disabled.
* Removing webhook disable, causes trigger url to be re-generated.
* Add unit test to ensure disabled automations are filtered out of the active queue
* Fixed lint issues
* Reverted disabled unit test
* Added error throw for disabled automations
* Add test for when a disabled automation gets triggered
* Added try, catch for trigger function - error handling
* Fixed linting issues