* add event end time as variable
* add timezone as new variable
* add first version of template prefill
* set template body when template is updated
* set reminder template body and subject when creating workflow
* set email subject when changes templates
* save emailBody and emailsubject for all templates + fix duplicate template text
* add more flexibility for templates
* remove console.log
* fix {ORAGANIZER} and {ATTENDEE} variable
* make sure to always send reminder body and not default template
* fix import
* remove email body text and match variables in templates
* handle translations of formatted variables
* fix email reminder template
* add cancel and reschedule link as variable
* add cancel and reschedule link for scheduled emails/sms
* make sure empty empty body and subject are set for reminder template
* add info message for testing workflow
* fix typo
* add sms template
* add migration to remove reminderBody and emailSubject
* add branding
* code clean up
* add hide branding everywhere
* fix sms reminder template
* set sms reminder template if sms body is empty
* fix custom inputs variables everywhere
* fix variable translations + other small fixes
* fix some type errors
* fix more type errors
* fix everything missing around cron job scheduling
* make sure to always use custom template for sms messages
* fix type error
* code clean up
* rename link to url
* Add debug logs
* Update handleNewBooking.ts
* Add debug logs
* removed unneded responses
* fix booking questions + UI improvements
* remove html email body when changing to sms action
* code clean up + comments
* code clean up
* code clean up
* remove comment
* more clear info message for timezone variable
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Hariom Balhara <hariombalhara@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: alannnc <alannnc@gmail.com>
* migrate from react-icons to lucide-react
* replace react-icon with lucide-dev: Webhook Icon
* add lucide transformer
* Fix LinkIcon import
* Update yarn.lock to include monorepo deps
* Migrated icons in ChargeCardDialog
* Port Storybook to new icons as well
* Adjust Info & Globe icons size to match react-icons size
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Add payment option to schema
* Add payment option to Stripe zod
* Set payment option on event type
* Create manual payment intent in Stripe
* Set payment option from Stripe app
* Add payment option to DB
* Pass React.ReactNode to checkbox
* Create uncaptured payment intent
* WIP
* Capture card in setup intent
* Show charge card option
* Charge card from booking page
* Bug fixes
* Clean up
* Clean up app card
* Add no-show fee messaging on booking page
* Send payment email on payment & add price
* Fix messaging
* Create no show fee charged email
* Send charge fee collected email
* Disable submit on card failure
* Clean up
* Serverside prevent charging card again if already charged
* Only confirm booking if paid for
* Type fixes
* More type fixes
* More type fixes
* Type fix
* Type fixes
* UI changes
* Payment component rework
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update apps/web/public/static/locales/en/common.json
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update apps/web/components/dialog/ChargeCardDialog.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Update packages/trpc/server/routers/viewer/payments.tsx
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* Revert GTM config
* Adjust payment option dropdown
* Show alert when seats are set
* Small bug fixes
* Create collect card method
* clean up
* Prevent seats & charge no-show fee to be enabled together
* Do not charge no-show fee on unconfirmed bookings
* Add check to collect card method
* Webhook send request emails
* Fix some dark mode colours
* Change awaiting payment language
* Type fixes
* Set height of Select and TextField both to 38px to fix alignment
* Fix message seats & payment error message
* Type fix
---------
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* show already verified numbers as verified
* delete old batch_ids from scheduled sends
* only delete cancelled ones
---------
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* WIP
* Create Booking Questions builder
* Renaming things
* wip
* wip
* Implement Add Guests and other fixes
* Fixes after testing
* Fix wrong status code 404
* Fixes
* Lint fixes
* Self review comments addressed
* More self review comments addressed
* Feedback from zomars
* BugFixes after testing
* More fixes discovered during review
* Update packages/lib/hooks/useHasPaidPlan.ts
Co-authored-by: Omar López <zomars@me.com>
* More fixes discovered during review
* Update packages/ui/components/form/inputs/Input.tsx
Co-authored-by: Omar López <zomars@me.com>
* More fixes discovered during review
* Update packages/features/bookings/lib/getBookingFields.ts
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* More PR review fixes
* Hide label using labelSrOnly
* Fix Carinas feedback and implement 2 workflows thingy
* Misc fixes
* Fixes from Loom comments and PR
* Fix a lint errr
* Fix cancellation reason
* Fix regression in edit due to name conflict check
* Update packages/features/form-builder/FormBuilder.tsx
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
* Fix options not set when default value is used
* Restoring reqBody to avoid uneeded conflicts with main
* Type fix
* Update apps/web/components/booking/pages/BookingPage.tsx
Co-authored-by: Omar López <zomars@me.com>
* Update packages/features/form-builder/FormBuilder.tsx
Co-authored-by: Omar López <zomars@me.com>
* Update apps/web/components/booking/pages/BookingPage.tsx
Co-authored-by: Omar López <zomars@me.com>
* Apply suggestions from code review
Co-authored-by: Omar López <zomars@me.com>
* Show fields but mark them disabled
* Apply suggestions from code review
Co-authored-by: Omar López <zomars@me.com>
* More comments
* Fix booking success page crash when a booking doesnt have newly added required fields response
* Dark theme asterisk not visible
* Make location required in zodSchema as was there in production
* Linting
* Remove _metadata.ts files for apps that have config.json
* Revert "Remove _metadata.ts files for apps that have config.json"
This reverts commit d79bdd336c.
* Fix lint error
* Fix missing condition for samlSPConfig
* Delete unexpectedly added file
* yarn.lock change not required
* fix types
* Make checkboxes rounded
* Fix defaultLabel being stored as label due to SSR rendering
* Shaved 16kb from booking page
* Explicit types for profile
* Show payment value only if price is greater than 0
* Fix type error
* Add back inferred types as they are failing
* Fix duplicate label on number
---------
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
Co-authored-by: Efraín Rochín <roae.85@gmail.com>
* fix untitled workflow name when no action exists
* fix wrong data loaded one first laod when step was added
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* use texteditor for bio
* remove block types from about editor
* add props to make editor height adjustable
* set isDirty to true when about input is edited
* add editor to getting-started
* fix editor height
* remove required error for onboarding
* add helper function to check if parsed bio has text
* add back commented code
* fix onboarding tests for optional about field
* rename function
* parse team bio for read only members
* code clean up
* fix failing e2e because of missing test id
* fix onboarding e2e test
* add missing parse of user bio
* Update apps/web/components/getting-started/steps-views/UserProfile.tsx
* Update apps/web/pages/settings/my-account/profile.tsx
Co-authored-by: Omar López <zomars@me.com>
* use css inline style for height instead of tailwind class
* fix height of editor-input
* save bio as markdown in db
* fix empty line when bio is empty
* fix hydration failed error
* Update packages/ui/components/editor/Editor.tsx
Co-authored-by: Omar López <zomars@me.com>
* remove unused import
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
* adds upgrade badge to dropdown
* add space between batch and check
* add upgrade tool tip
* fix import
* code clean up
* fix type error
* fix type error
* fix type errors
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* make text editor reusable
* use dropdown component for block type
* remove ring when clicking on block type
* allow excluding items in toolbar
* refactor code
* make AddVariableDropdown reusable
* fixed missed translations
* fixes variable translation issue
* change missed translation variables
* make AddVariablesDropdown reusable
* reorder block types in dropdown
* remove not needed prop
* code clean up
* center add variable dropwdown icon
* remove rounded borders in dropwdown on hover and active
* center icons
* fix tool bar items dropdown
* add constant for dynamic text variables
* remove not needed variables (added from merge)
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
* make text editor reusable
* use dropdown component for block type
* remove ring when clicking on block type
* allow excluding items in toolbar
* refactor code
* make AddVariableDropdown reusable
* fixed missed translations
* fixes variable translation issue
* change missed translation variables
* make AddVariablesDropdown reusable
* reorder block types in dropdown
* remove not needed prop
* code clean up
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* return latest bookings for example bookings for zapier
* remove mt on skeleton loader
* Revert "return latest bookings for example bookings for zapier"
This reverts commit b69f393a73.
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* small design fix for time unit select
* save video cal url to booking in metaData
* save video url when bookings are confirmed
* fix e2e tests
* remove not needed waitForNavigation
* add metadata to booking created webhook payload
* add migration
* fix type error
* add meeting url variable to dropdown
* add meeting url to custom template
* add BookingMetaDataSchema
* add meeting url to email reminder
* add meeting url to sms notifcation
* adjust e2e tests
* add bookingMetadataSchema
* add missing change from merge
* fix spelling
* fix type error
* code clean up
* fix e2e snapshot
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* first implementation of verifying phone number
* add UI + logic for verifying phone number flow
* check if all phone numbers are verified before submit
* add numberVerification pending
* only send SMS to verified numbers
* fix design for mobile view
* check if phone number is verified before testing action
* add back message service id check
* add TWILIO_VERIFY_SID to .env.example
* code clean up
* add TWILIO_VERIFY_SID to README.md instructions
* save new verified numbers
* fix wrongly thrown error for new verified numbers
* use false as default value for isVerificationPending paramater
* add translations
* add migration file
* code clean up
* don't throw error if phone number is not needed
* Feedback
* Shows error when Twillio isn't properly setup
* Type fixes
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* small design fix for time unit select
* save video cal url to booking in metaData
* save video url when bookings are confirmed
* fix e2e tests
* remove not needed waitForNavigation
* add metadata to booking created webhook payload
* add migration
* fix type error
* adjust e2e tests
* add bookingMetadataSchema
* add missing change from merge
* add new line to expected test result
* update snapshot
* fix e2e tests
* Update confirm.ts
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: zomars <zomars@me.com>
* additional checks for testing workflow action
* fix old variable in testAction mutaiton
* remove workflowId
* only allow team plan to test action
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: alannnc <alannnc@gmail.com>
Co-authored-by: Omar López <zomars@me.com>
* disable sms actions for users without team
* add isTeamsPlan query
* disable SMS action if user is not in a team
* remove console log
* disable SMS actions also in AddActionDialog
* throw error is users wants to add sms or edit to sms action
* code clean up
* Get actions options from backend. cleanup
* Typefix
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* don't use alphanumeric sender ID for not support country codes
* fix import
* rename file
* fix spelling mistakes
* add twilio phone number to .env file
* add SENDER_ID to env variable and create function to get sender id
* add NEXT_PUBLIC_SENDER_ID env variable
* remove not needed Cal fallback
* fix readme
* code clean up
* code clean up
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* add first version of text editor
* add new editor to email body
* fix line height
* remove not needed styles
* allow adding html tags + small refactoring
* fix error when input is empty
* styling of add variable dropdown
* fix bg on focus
* small design fixes
* improve design
* show error message for no input
* text editor only for email body
* remove test button
* code clean up
* code clean up
* code clean up
* fix that added variables weren't saved
* fix import
* first version of editor
* connect reminder body of form with new editor
* add pencile for link-editor
* remove TreeViewPlugin
* clean up css file
* code clean up
* add text indent for list
* improve editor design
* fix style
* slow resizing of editor
* fix that new data was removed when leaving tab
* dont allow italic and bold at same time
* code clean up
* fix type error
* code clean up
* code clean up
* remove text if changed from SMS to email or other way around
* add add variable dropdown
* show error message if email body is empty
* add white-space pre-wrap
* fix import
* prettier
* fix add variable dropdown for mobile
* move dependencies to correct package.json file
* remove html-to-text
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
* Removed emptyscreen component v1 version, migrated pages that still used it to v2, and removed v1 of workflow pages and components.
* updated workflow pages imports to remove v2 from path.
* Deleted v1 switch component, deleted v1 api-keys components, deleted old web integrations components that were unused.
* Removed v1 list component.
* Fixed event workflows tab path.
* Fixed import path for button in sandbox page.
* Cleanup and type fixes
* Making explicit indexes
* UI import migrations
* More import fixes
* More import fixes
* Submodule sync
* Type fixes
* Build fixes
Co-authored-by: zomars <zomars@me.com>
* Added proper dark mode support for buttons, and converted buttons to use CVA for better maintainable variant styling.
* Added animations to buttons.
* Added cva types to buttonbase type since thats imported in different places
* Fixed issue with styled buttons when false was pas for disabled instead of undefined. Added a small util function that now accepts arrays of variants, and creates all the possible combinations. This way we have less duplicate compoundvariants defined. This fixes the styles in the eventsinglelayout component.
* Undo disabling of api jest tests.
* Fixed remaining buttons using combined prop, which is replace by button group.
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: sean-brydon <55134778+sean-brydon@users.noreply.github.com>
* Made full row of event type clickable, and fixed event type loader dimensions.
* Fixed skeletons for teams and workflows.
* Fixed skeleton for workflow detail page.
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* Removed unused ui components and updated skeleton components throughout the app to use new version.
* Deleted unused app component and changed destructive button variants to secondary as per design.
Co-authored-by: zomars <zomars@me.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* add sender id
* add sender to twilio from
* added missing sender
* add migration
* fix design of add action dialog
* add cal as sender when creating new workflow
* fix type errors
Co-authored-by: CarinaWolli <wollencarina@gmail.com>
Co-authored-by: Alex van Andel <me@alexvanandel.com>
* storybook v2 init
* Merge config into storybook vite build
* Remove path
* Storybook config tweaks
* Added styles and settings for storybook v2, and started working on button documentation and examples.
* Badges + flex wrap on mobile
* Breadcrumbs+button+avatar
* Checkbox
* Input + moving files around
* WIP table
* WIP table grid
* Replaced imports for new components.
* Added first steps for varianttable.
* Small alignment fix.
* Custom Args Table - With scrollbar
* Adding table to components that need it + darkmode
* Add intro
* Fix types
* Remove V1 storybook and replace with V2
* Fix badge type error
* Fixed storybook dependencies
* Added cover image to storybook
* Remove vita from ts config, we dont use vite.
* Fixed button import.
* Explained postcss pseudo plugin.
* Fixed badge import.
* Add Avatar Stories
* ButtonGroup Stories
* Fixed imports
* Add checkbox stories
* Add exports for differnt types of inputs
* Fix form and text area input
* Fix mass import errors
Co-authored-by: Jeroen Reumkens <hello@jeroenreumkens.nl>
Co-authored-by: Alex van Andel <me@alexvanandel.com>