v0.14.0
EricLBuehler/mistral.rsv0.14.0Nov 18, 2024by farukaydin
AI Summary
This release introduces new integrations for MailerLite, Mailchimp, Jotform, and ClickUp, alongside a comprehensive suite of REST API endpoints for managing flows, users, and connections. It also includes significant UI enhancements and bug fixes.
Key Highlights
- Added integrations for MailerLite, Mailchimp, Jotform, and ClickUp
- Implemented extensive REST API endpoints for flows, users, apps, and connections
- Introduced Monaco editor for JavaScript code execution
- Added support for Redis Sentinel
New Features
- MailerLite integration
- Mailchimp integration
- Jotform integration
- ClickUp integration
- REST API endpoints for flows, users, apps, and connections
- Monaco editor for JavaScript code execution
- Redis Sentinel support
- HTTP request response headers and status exposure
Full Release Notes
## What's Changed * fix: Adjust dockerfile env syntax to new dsl by @farukaydin in https://github.com/automatisch/automatisch/pull/2004 * fix: in FlowStep wrap in Form component only controlled inputs by @kattoczko in https://github.com/automatisch/automatisch/pull/2005 * feat(code/run-javascript): run JS code and introduce monaco editor by @barinali in https://github.com/automatisch/automatisch/pull/1998 * fix(github/create-issue): mark repo field as required by @barinali in https://github.com/automatisch/automatisch/pull/2013 * feat(http-request/custom-request): expose response headers and status by @barinali in https://github.com/automatisch/automatisch/pull/2012 * feat: support redis sentinel by @barinali in https://github.com/automatisch/automatisch/pull/1999 * fix: mark steps incomplete when their parameters change by @barinali in https://github.com/automatisch/automatisch/pull/2010 * test(compute-parameters): write tests for different type of values by @barinali in https://github.com/automatisch/automatisch/pull/2009 * chore(deps): bump msgpackr from 1.5.6 to 1.11.0 by @dependabot in https://github.com/automatisch/automatisch/pull/2015 * feat(mailerlite): add mailerlite integration by @ridvanakca in https://github.com/automatisch/automatisch/pull/1561 * feat(mailerlite): add spam complaint trigger by @ridvanakca in https://github.com/automatisch/automatisch/pull/1562 * feat(mailerlite): add subscriber created trigger by @ridvanakca in https://github.com/automatisch/automatisch/pull/1563 * feat(mailerlite): add subscriber unsubscribed trigger by @ridvanakca in https://github.com/automatisch/automatisch/pull/1564 * feat(mailerlite): add campaign sent trigger by @ridvanakca in https://github.com/automatisch/automatisch/pull/1565 * feat(google-sheets): add find worksheet action by @ridvanakca in https://github.com/automatisch/automatisch/pull/1461 * fix: improve paths for windows os by @kuba618 in https://github.com/automatisch/automatisch/pull/1990 * feat: make role input required in CreateUser by @kattoczko in https://github.com/automatisch/automatisch/pull/2014 * chore(deps): bump braces from 3.0.2 to 3.0.3 by @dependabot in https://github.com/automatisch/automatisch/pull/1937 * chore(deps): bump ws from 7.5.6 to 7.5.10 by @dependabot in https://github.com/automatisch/automatisch/pull/1938 * chore(deps): bump fast-xml-parser from 4.2.5 to 4.4.1 by @dependabot in https://github.com/automatisch/automatisch/pull/2016 * chore(deps): Bump ip from 1.1.5 to 1.1.9 by @dependabot in https://github.com/automatisch/automatisch/pull/1627 * fix(update-flow-status): throw at incomplete trigger step by @barinali in https://github.com/automatisch/automatisch/pull/2017 * fix(carbone/add-template): correct typo in template by @barinali in https://github.com/automatisch/automatisch/pull/2018 * fix(duplicate-flow): let users duplicate flows they have access to by @barinali in https://github.com/automatisch/automatisch/pull/2019 * feat(mailchimp): add mailchimp integration by @ridvanakca in https://github.com/automatisch/automatisch/pull/1571 * feat(jotform): add jotform integration by @ridvanakca in https://github.com/automatisch/automatisch/pull/1577 * feat(clickup): add clickup integration by @ridvanakca in https://github.com/automatisch/automatisch/pull/1594 * feat(clickup): add create task action by @ridvanakca in https://github.com/automatisch/automatisch/pull/1615 * feat(PowerInput): support whole objects as variables by @barinali in https://github.com/automatisch/automatisch/pull/2022 * refactor(compute-parameters): rewrite logic by @barinali in https://github.com/automatisch/automatisch/pull/2026 * test: add simple webhook flow test by @kuba618 in https://github.com/automatisch/automatisch/pull/2024 * test: harden webhook tests by @kuba618 in https://github.com/automatisch/automatisch/pull/2027 * feat(compute-parameters): add valueType with parse option and string by default by @barinali in https://github.com/automatisch/automatisch/pull/2025 * feat: update step only when data changes by @kattoczko in https://github.com/automatisch/automatisch/pull/2028 * feat: Implement delete step rest API endpoint by @farukaydin in https://github.com/automatisch/automatisch/pull/2032 * fix: prevent resetting test data until data is loaded by @kattoczko in https://github.com/automatisch/automatisch/pull/2030 * Refactor test connection action by @farukaydin in https://github.com/automatisch/automatisch/pull/2033 * feat: Implement rest API endpoint to verify connection by @farukaydin in https://github.com/automatisch/automatisch/pull/2034 * refactor: rewrite create-app-auth-client mutation as REST endpoint by @barinali in https://github.com/automatisch/automatisch/pull/2031 * refactor: rewrite create-app-config mutation as REST endpoint by @barinali in https://github.com/automatisch/automatisch/pull/2035 * refactor: Use express-async-errors instead of express-async-handler by @farukaydin in https://github.com/automatisch/automatisch/pull/2037 * feat: write PATCH /v1/admin/apps/:appKey/auth-clients/:appAuthClientId by @barinali in https://github.com/automatisch/automatisch/pull/2036 * fix: remove redundant asyncHandler wrapper by @barinali in https://github.com/automatisch/automatisch/pull/2041 * feat: Implement update user rest API endpoint by @farukaydin in https://github.com/automatisch/automatisch/pull/2044 * feat: Implement rest API endpoint to update users for admin by @farukaydin in https://github.com/automatisch/automatisch/pull/2045 * feat: write PATCH /v1/admin/apps/:appKey/config by @barinali in https://github.com/automatisch/automatisch/pull/2042 * feat: write DELETE /v1/connections/:connectionId by @barinali in https://github.com/automatisch/automatisch/pull/2043 * fix(FlowAppIcons): fix crash when no steps exist by @barinali in https://github.com/automatisch/automatisch/pull/2047 * feat: write POST /v1/connections/:connectionId/reset by @barinali in https://github.com/automatisch/automatisch/pull/2046 * chore: remove redundant update-app-config mutation by @barinali in https://github.com/automatisch/automatisch/pull/2049 * feat: incorporate NotAuthorized error in error handler by @barinali in https://github.com/automatisch/automatisch/pull/2051 * feat: write PATCH /v1/admin/config by @barinali in https://github.com/automatisch/automatisch/pull/2048 * feat: write PATCH /v1/flows/:flowId by @barinali in https://github.com/automatisch/automatisch/pull/2050 * test: add wait for response on update flow by @kuba618 in https://github.com/automatisch/automatisch/pull/2053 * feat: Implement create flow rest API endpoint by @farukaydin in https://github.com/automatisch/automatisch/pull/2056 * feat: Implement rest api endpoint to test step by @farukaydin in https://github.com/automatisch/automatisch/pull/2055 * Split UpsertSamlAuthProvider mutation into two endpoints by @barinali in https://github.com/automatisch/automatisch/pull/2054 * feat: Implement rest API endpoint to remove current user by @farukaydin in https://github.com/automatisch/automatisch/pull/2058 * fix: Throw error if trigger doesn't have a type by @farukaydin in https://github.com/automatisch/automatisch/pull/2062 * feat: write and implement REST API endpoint to create role by @barinali in https://github.com/automatisch/automatisch/pull/2059 * feat: write and implement REST API endpoint to update role by @barinali in https://github.com/automatisch/automatisch/pull/2060 * feat: write endpoint to update SamlAuthProvidersRoleMappings by @barinali in https://github.com/automatisch/automatisch/pull/2057 * feat: write and implement REST API endpoint to create step by @barinali in https://github.com/automatisch/automatisch/pull/2066 * feat: write and implement REST API endpoint to delete role by @barinali in https://github.com/automatisch/automatisch/pull/2064 * feat(AddAppConnection): show pop-up reminder hint by @barinali in https://github.com/automatisch/automatisch/pull/2063 * feat: Implement rest API endpoint to update current user password by @farukaydin in https://github.com/automatisch/automatisch/pull/2069 * feat: write and implement REST API endpoint to register user by @barinali in https://github.com/automatisch/automatisch/pull/2072 * feat: write REST API endpoint to create connection by @barinali in https://github.com/automatisch/automatisch/pull/2068 * feat: write REST API endpoint to generate auth url by @barinali in https://github.com/automatisch/automatisch/pull/2073 * chore: Mark create connection as converted mutation by @farukaydin in https://github.com/automatisch/automatisch/pull/2075 * feat: Implement rest API endpoint to delete flow by @farukaydin in https://github.com/automatisch/automatisch/pull/2076 * refactor: Move reset logic to connection model by @farukaydin in https://github.com/automatisch/automatisch/pull/2077 * feat: Implement rest API endpoint to update connection by @farukaydin in https://github.com/automatisch/automatisch/pull/2080 * feat: Implement rest API endpoint for admins to create user by @farukaydin in https://github.com/automatisch/automatisch/pull/2081 * feat: write and implement REST API endpoint to duplicate flow by @barinali in https://github.com/automatisch/automatisch/pull/2070 * feat: use REST API endpoint to create flow by @barinali in https://github.com/automatisch/automatisch/pull/2084 * feat: use REST API endpoint to delete current user by @barinali in https://github.com/automatisch/automatisch/pull/2086 * feat: use REST API endpoint to delete flow by @barinali in https://github.com/automatisch/automatisch/pull/2087 * feat: use REST API endpoint to delete step by @barinali in https://github.com/automatisch/automatisch/pull/2088 * feat: write and implement REST API endpoint to update step by @barinali in https://github.com/automatisch/automatisch/pull/2083 * feat: use REST API endpoint to create user by @barinali in https://github.com/automatisch/automatisch/pull/2085 * feat: use REST API endpoint to update flow status by @barinali in https://github.com/automatisch/automatisch/pull/2089 * feat: use REST API endpoint to update user by @barinali in https://github.com/automatisch/automatisch/pull/2091 * test: add applications settings tests by @kuba618 in https://github.com/automatisch/automatisch/pull/2052 * feat: Introduce toRequireProperty custom assertion by @farukaydin in https://github.com/automatisch/automatisch/pull/2097 * feat: use REST API endpoint to test step by @barinali in https://github.com/automatisch/automatisch/pull/2090 * test: add change own user data test by @kuba618 in https://github.com/automatisch/automatisch/pull/2103 * feat(useAuthenticateApp): use REST API endpoint to create connection by @barinali in https://github.com/automatisch/automatisch/pull/2098 * feat: refactor update-current-user mutation with the REST API endpoint by @kattoczko in https://github.com/automatisch/automatisch/pull/2106 * feat: use REST API endpoints to create and reconnect connections by @barinali in https://github.com/automatisch/automatisch/pull/2099 * refactor: remove whole graphql implementation by @barinali in https://github.com/automatisch/automatisch/pull/2104 * feat: Implement datastore model tests by @farukaydin in https://github.com/automatisch/automatisch/pull/2095 * test(SamlAuthProvidersRoleMapping): assert model properties by @barinali in https://github.com/automatisch/automatisch/pull/2096 * test: Implement execution model tests by @farukaydin in https://github.com/automatisch/automatisch/pull/2107 * test(access-token): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2108 * test: Implement subscription model tests by @farukaydin in https://github.com/automatisch/automatisch/pull/2112 * test(app-auth-client): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2109 * feat(config): make data structure horizontal by @barinali in https://github.com/automatisch/automatisch/pull/2093 * fix: bring back missing custom logo by @kuba618 in https://github.com/automatisch/automatisch/pull/2117 * feat: fix primary app color value and how it is displayed in the app by @kattoczko in https://github.com/automatisch/automatisch/pull/2114 * fix: limit resetting form on defaultValues change by @kattoczko in https://github.com/automatisch/automatisch/pull/2029 * fix: use env var for authDocUrl by @kuba618 in https://github.com/automatisch/automatisch/pull/2113 * tests: Implement tests for ExecutionStep model by @farukaydin in https://github.com/automatisch/automatisch/pull/2119 * test: Implement UsageData model tests by @farukaydin in https://github.com/automatisch/automatisch/pull/2121 * test(config): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2123 * test(app): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2111 * test(connection): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2125 * Permission tests by @farukaydin in https://github.com/automatisch/automatisch/pull/2134 * test(connection): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2130 * test(connection): cover model lifecycle hooks by @barinali in https://github.com/automatisch/automatisch/pull/2135 * feat: add error snackbar for errors originating from registerUser function by @kattoczko in https://github.com/automatisch/automatisch/pull/2129 * feat: allow both number and string values as sampleValue by @kattoczko in https://github.com/automatisch/automatisch/pull/2120 * feat: add error snackbar for updating role mappings by @kattoczko in https://github.com/automatisch/automatisch/pull/2122 * test(connection): write remaining model tests by @barinali in https://github.com/automatisch/automatisch/pull/2136 * feat: add error snackbar when creating or updating saml auth provider by @kattoczko in https://github.com/automatisch/automatisch/pull/2127 * test(app-config): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2110 * refactor: Use toStrictEqual instead of toEqual for tests by @farukaydin in https://github.com/automatisch/automatisch/pull/2142 * test(role): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2145 * test(role): write remaining model tests by @barinali in https://github.com/automatisch/automatisch/pull/2146 * test(flow): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2139 * chore(saml-auth-providers-role-mapping): remove unused test snapshot by @barinali in https://github.com/automatisch/automatisch/pull/2154 * test(flow): write model tests by @barinali in https://github.com/automatisch/automatisch/pull/2148 * test(flow): write tests for model lifecycle hooks by @barinali in https://github.com/automatisch/automatisch/pull/2149 * refactor(flow): restructure afterFind hook in model by @barinali in https://github.com/automatisch/automatisch/pull/2150 * refactor(flow): distribute createActionStep logic to different methods in model by @barinali in https://github.com/automatisch/automatisch/pull/2153 * refactor(flow): split delete method and write test by @barinali in https://github.com/automatisch/automatisch/pull/2156 * test(flow): write test cases for isPaused method by @barinali in https://github.com/automatisch/automatisch/pull/2158 * test(step): cover tableName, jsonSchema, virtualAttributes, relationMappings in model by @barinali in https://github.com/automatisch/automatisch/pull/2159 * test(step): write tests for webhookUrl and iconUrl by @barinali in https://github.com/automatisch/automatisch/pull/2160 * test(step): write tests for isTrigger, isAction, getWebhookUrl by @barinali in https://github.com/automatisch/automatisch/pull/2161 * test(step): write tests for getApp, test, getLastExecutionStep and getNextStep by @barinali in https://github.com/automatisch/automatisch/pull/2162 * test(step): write tests for getTriggerCommand and getActionCommand by @barinali in https://github.com/automatisch/automatisch/pull/2163 * test(step): write tests for lifecycle hooks in model by @barinali in https://github.com/automatisch/automatisch/pull/2165 * test(step): write tests for getSetupFields and delete by @barinali in https://github.com/automatisch/automatisch/pull/2164 * feat: introduce fallback for title value in the BillingCard by @kattoczko in https://github.com/automatisch/automatisch/pull/2152 * feat: check if cancellationEffectiveDateObject is a valid date by @kattoczko in https://github.com/automatisch/automatisch/pull/2151 * fix: use correct default values when editing a role by @kattoczko in https://github.com/automatisch/automatisch/pull/2124 * test(step): write test for updateFor method in model by @barinali in https://github.com/automatisch/automatisch/pull/2166 * test(user): write tests for tableName, jsonSchema, relationMappings by @barinali in https://github.com/automatisch/automatisch/pull/2168 * test: Implement initial tests for SamlAuthProvider model by @farukaydin in https://github.com/automatisch/automatisch/pull/2169 * test(user): write test for acceptInvitationUrl by @barinali in https://github.com/automatisch/automatisch/pull/2176 * test(user): write tests for authenticate by @barinali in https://github.com/automatisch/automatisch/pull/2177 * test(user): write tests for authorizedFlows by @barinali in https://github.com/automatisch/automatisch/pull/2170 * test(user): write tests for login by @barinali in https://github.com/automatisch/automatisch/pull/2178 * test(user): write test for generateResetPasswordToken by @barinali in https://github.com/automatisch/automatisch/pull/2179 * test(user): write test for generateInvitationToken by @barinali in https://github.com/automatisch/automatisch/pull/2180 * test(user): write test for resetPassword by @barinali in https://github.com/automatisch/automatisch/pull/2181 * test(user): write test for acceptInvitation by @barinali in https://github.com/automatisch/automatisch/pull/2182 * feat: introduce uniqueness validation for remote role name by @kattoczko in https://github.com/automatisch/automatisch/pull/2143 * fix: variable chip label disappearing by @kattoczko in https://github.com/automatisch/automatisch/pull/2167 * test(user): write tests for updatePassword by @barinali in https://github.com/automatisch/automatisch/pull/2183 * feat: make Wordpress instanceUrl field required by @kattoczko in https://github.com/automatisch/automatisch/pull/2191 * test: Implement tests for saml auth provider url methods by @farukaydin in https://github.com/automatisch/automatisch/pull/2186 * feat: persist pagination and search value on flows page by @kattoczko in https://github.com/automatisch/automatisch/pull/2190 * feat: inline login form error and unify Alert font weight by @kattoczko in https://github.com/automatisch/automatisch/pull/2196 * chore(deps): upgrade lerna with version 8 by @barinali in https://github.com/automatisch/automatisch/pull/2211 * Update version to 0.14.0 by @farukaydin in https://github.com/automatisch/automatisch/pull/2210 **Full Changelog**: https://github.com/automatisch/automatisch/compare/v0.13.1...v0.14.0