Commit Graph

154 Commits

Author SHA1 Message Date
Baptiste Arnaud
7804ae2572 🐛 Fix crash on toast show up due to tolgee provider not defined 2023-12-29 16:47:18 +01:00
Baptiste Arnaud
a235a7accd Attempt to fix tolgee random crash due to provider not detected 2023-12-29 10:12:13 +01:00
Baptiste Arnaud
74f5a17de0 🛂 (radar) Correctly block banned IP event when signing in with oauth providers 2023-12-27 08:11:15 +01:00
Baptiste Arnaud
1e5fa5a575 📝 Migrate from Docusaurus to Mintlify (#1115)
Closes #868
2023-12-22 09:13:53 +01:00
Baptiste Arnaud
deab1a12e9 (sheets) Use Google Drive picker and remove sensitive OAuth scope
BREAKING CHANGE: The Google Picker API needs to be enabled in the Google Cloud console. You also need to enable it in
your NEXT_PUBLIC_GOOGLE_API_KEY. You also need to add the drive.file OAuth scope.
2023-12-18 15:44:57 +01:00
Baptiste Arnaud
5e019bbb22 Introducing The Forge (#1072)
The Forge allows anyone to easily create their own Typebot Block.

Closes #380
2023-12-13 10:22:02 +01:00
Baptiste Arnaud
fcfbd63443 🛂 Auto ban IP on suspected bot publishing (#1095)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enhanced sign-in error handling with specific messages for different
error types.
- Implemented IP-based restrictions for authentication and publishing
actions.

- **Bug Fixes**
- Updated the retrieval of user session information to improve
reliability.

- **Documentation**
- Updated usage instructions for `getServerSession` to reflect the new
authentication options.

- **Refactor**
- Replaced direct usage of `authOptions` with a new function
`getAuthOptions` to dynamically generate authentication options.
- Improved IP address extraction logic to handle various header formats.

- **Chores**
- Added a new `BannedIp` model to the database schema for managing
IP-based restrictions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-12-11 13:40:07 +01:00
Baptiste Arnaud
4fdc1bfe5c Introducing Radar, fraud detection 2023-12-08 18:16:07 +00:00
Baptiste Arnaud
b0d7039577 🛂 (billing) Past due status only for unpaid invoices with additional usage 2023-12-05 16:24:44 +01:00
Baptiste Arnaud
8ce4e4808d 🐛 (share) Fix duplicate folderId issue 2023-11-28 16:32:56 +01:00
Baptiste Arnaud
4666fd8fa0 🔧 Increase builder request max size to 4MB 2023-11-26 11:12:13 +01:00
Baptiste Arnaud
0856c59b50 (billing) Improve past_due workspace checking webhook 2023-11-23 15:53:12 +01:00
Baptiste Arnaud
5b0073bb61 🚑 (billing) Fix stripe webhook "invoice.paid" typo 2023-11-23 15:43:02 +01:00
Baptiste Arnaud
bb41226a04 Allow user to share a flow publicly and make it duplicatable
Closes #360
2023-11-23 12:05:31 +01:00
Baptiste Arnaud
ca79934ef5 🛂 (billing) Add isPastDue field in workspace (#1046)
Closes #1039

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
  - Workspaces now include additional status indicator: `isPastDue`.
- New pages for handling workspaces that are past due. Meaning, an
invoice is unpaid.

- **Bug Fixes**
- Fixed issues with workspace status checks and redirections for
suspended workspaces.

- **Refactor**
- Refactored workspace-related API functions to accommodate new status
fields.
- Improved permission checks for reading and writing typebots based on
workspace status.

- **Chores**
  - Database schema updated to include `isPastDue` field for workspaces.
- Implemented new webhook event handling for subscription and invoice
updates.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-11-23 08:16:23 +01:00
Baptiste Arnaud
084588a086 🧑‍💻 (chat) Introduce startChat and continueChat endpoints
Closes #1030
2023-11-13 15:27:36 +01:00
Baptiste Arnaud
35300eaf34 ♻️ Introduce typebot v6 with events (#1013)
Closes #885
2023-11-08 15:34:16 +01:00
Baptiste Arnaud
bed8b42a2e 🧑‍💻 Migrate to Tolgee (#976)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

### Summary by CodeRabbit

- Refactor: Transitioned to a new translation library (`@tolgee/react`)
across the application, enhancing the localization capabilities and
consistency.
- New Feature: Introduced a JSON configuration file for application
settings, improving customization and flexibility.
- Refactor: Updated SVG attribute naming convention in the
`WhatsAppLogo` component to align with React standards.
- Chore: Adjusted the `.gitignore` file and added a new line at the end.
- Documentation: Added instructions for setting up environment variables
for the Tolgee i18n contribution dev tool, improving the self-hosting
configuration guide.
- Style: Updated the `CollaborationMenuButton` to hide the
`PopoverContent` component by scaling it down to zero.
- Refactor: Simplified error handling logic for fetching and updating
typebots in `TypebotProvider.tsx`, improving code readability and
maintenance.
- Refactor: Removed the dependency on the `parseGroupTitle` function,
simplifying the code in several components.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-10-27 09:23:50 +02:00
Baptiste Arnaud
53558dc303 🚑 Fix can invite new members in workspace bool
Closes #964
2023-10-25 17:57:13 +02:00
Baptiste Arnaud
797751b418 (billing) Automatic usage-based billing (#924)
BREAKING CHANGE: Stripe environment variables simplified. Check out the
new configs to adapt your existing system.

Closes #906





<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
### Summary by CodeRabbit

**New Features:**
- Introduced a usage-based billing system, providing more flexibility
and options for users.
- Integrated with Stripe for a smoother and more secure payment process.
- Enhanced the user interface with improvements to the billing,
workspace, and pricing pages for a more intuitive experience.

**Improvements:**
- Simplified the billing logic, removing additional chats and yearly
billing for a more streamlined user experience.
- Updated email notifications to keep users informed about their usage
and limits.
- Improved pricing and currency formatting for better clarity and
understanding.

**Testing:**
- Updated tests and specifications to ensure the reliability of new
features and improvements.

**Note:** These changes aim to provide a more flexible and user-friendly
billing system, with clearer pricing and improved notifications. Users
should find the new system more intuitive and easier to navigate.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-10-17 08:03:30 +02:00
Baptiste Arnaud
3e7b9b3afd ⬆️ Upgrade sentry and improve its reliability 2023-10-07 12:40:43 +02:00
Baptiste Arnaud
bf1f657642 🔥 Remove streamer Pages API endpoint 2023-10-06 17:45:12 +02:00
Baptiste Arnaud
ccc34b3028 🚸 (whatsapp) Improve upgrade plan for whatsapp notice 2023-09-27 14:22:51 +02:00
Baptiste Arnaud
b81fcf0167 Auto continue bot on whatsApp if starting block is input (#849)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
### Summary by CodeRabbit

**New Features:**
- Added WhatsApp integration feature to the Pro plan.

**Refactor:**
- Introduced the ability to exclude specific plans from being displayed
in the Change Plan Modal.
- Renamed the function `isProPlan` to `hasProPerks`, enhancing code
readability and maintainability.
- Updated the `EmbedButton` component to handle a new `lockTagPlan`
property and use the `modal` function instead of the `Modal` component.

**Chore:**
- Removed the `whatsAppPhoneNumberId` field from the `Typebot` model
across various files, simplifying the data structure of the model.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2023-09-25 17:20:42 +02:00
Baptiste Arnaud
9e0109f561 (whatsapp) Improve whatsApp management and media collection
Closes #796
2023-09-22 11:08:41 +02:00
Baptiste Arnaud
d7dc5fb5fb ♻️ Remove storage limit related code 2023-09-20 16:06:53 +02:00
Baptiste Arnaud
7d57e8dd06 ♻️ Export bot-engine code into its own package 2023-09-20 15:42:34 +02:00
Baptiste Arnaud
bb13c2bd61 🛂 (fileUpload) Improve file upload size limit enforcement
Closes #799, closes #797
2023-09-19 15:42:33 +02:00
Baptiste Arnaud
6375a2425f 📝 Update support contact email 2023-09-12 09:45:45 +02:00
Baptiste Arnaud
aaa208cef4 🌐 Add pt_BR and more translations (#767)
Original PR: https://github.com/baptisteArno/typebot.io/pull/694

---------

Co-authored-by: Daniel Oliveira <daniel.oliveira@kununu.com>
Co-authored-by: Daniel Oliveira <daniel@headdev.com.br>
2023-09-05 18:15:59 +02:00
Baptiste Arnaud
e4ece315ed 🌐 Add i18n-ally config and upgrade next-international 2023-09-05 16:44:44 +02:00
Baptiste Arnaud
23b629f82c ♻️ Move s3-related files to specific lib folder 2023-08-30 09:36:45 +02:00
Baptiste Arnaud
9a79bc38ee Use minio for presigned urls and remove aws sdk 2023-08-30 09:08:05 +02:00
Baptiste Arnaud
b852b4af0b Add WhatsApp integration beta test (#722)
Related to #401
2023-08-29 10:05:24 +02:00
Baptiste Arnaud
efd4600b7e 🚑 Set proper env defaults 2023-08-28 11:08:15 +02:00
Baptiste Arnaud
786e5cb582 🧑‍💻 Improve env variables type safety and management (#718)
Closes #679
2023-08-28 09:13:53 +02:00
Baptiste Arnaud
0acede92ef 🚸 Improve parsing preprocessing on typebots 2023-08-23 10:57:38 +02:00
Baptiste Arnaud
6240fd982b 🐛 (billing) Fix cancel webhook when publishedTypebot does not exist 2023-08-22 10:55:32 +02:00
Baptiste Arnaud
53dd7ba499 🚸 (billing) Make sure customer is not created before launching checkout page 2023-08-22 10:40:34 +02:00
Baptiste Arnaud
c08e0cdb0a (customDomains) Fix custom domain update feedback 2023-08-21 15:32:27 +02:00
Baptiste Arnaud
a4f7f8fae7 📈 Remove user email from Sentry tracking 2023-08-18 14:18:28 +02:00
Baptiste Arnaud
454d320c6b (api) Add CRUD typebot endpoints
Closes #320, closes #696
2023-08-17 09:39:11 +02:00
Baptiste Arnaud
fc25734689 ♻️ (webhook) Integrate webhook in typebot schema
Closes #313
2023-08-06 10:03:45 +02:00
Baptiste Arnaud
abc3abd86b 🔒 (auth) Block disposable emails during sign up 2023-07-27 09:29:17 +02:00
Baptiste Arnaud
43555c171e 🚸 New dedicated onboarding page 2023-07-25 16:21:40 +02:00
Johannes Zellner
48f074cdf7 Support specifying custom OAuth scope (#619)
For OpenID connect over OAuth, at least `openid profile` need to be set
there, but since the email is also used, the `email` scope will instruct
the OpenID provider to also deliver that.

---------

Co-authored-by: Baptiste Arnaud <contact@baptiste-arnaud.fr>
2023-07-20 11:38:21 +02:00
Baptiste Arnaud
3426d6689d Replace updates with updateManys when possible
Easy performance win to avoid triggering SELECT query after an UPDATE
2023-07-16 18:52:30 +02:00
Baptiste Arnaud
81bc0746cf ⬆️ Upgrade dependencies 2023-07-15 10:46:36 +02:00
Baptiste Arnaud
455c3bdfd7 👷 Improve monthly clean database script
Archive results that were not properly archived
2023-07-12 12:00:23 +02:00
Baptiste Arnaud
fc0e3782b1 🐛 (workspace) Fix members list limit bug 2023-07-11 18:14:23 +02:00