* WIP
* added prisma actions
* remove console.logs
* some more fixes
* tweaks
* addressed all PR review comments
* remove hits from the prisma schema and all its corresponding service logic
* add nanoid
* corrected placeholders
* change database model, bring shortUrl service up to Formbricks code conventions
* update UI and shortUrl endpoint to work with new service
---------
Co-authored-by: Dhruwang <dhruwangjariwala18@gmail.com>
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
* add uniqueResponseId to link survey
* add uniqueResponseId to survey response
* add singUseId to database and link survey
* add singleUseId to api
* add single use option in survey response options
* add single use to getSurvey
* add getResponseBySingleUseId
* add ZSurveySingleUse schema to survey schema
* add logic to check if link with suid has response
* pass singleUseId as props, revert SWR changes
* generation of single-use url in LinkSurveyModal
* add singleUseId to SingleResponseCard
* update SurveyInactive for invalid link
* add suId to ZResponse schema
* fix typo in SurveyInactive
* update ResponseOptionCard
* add suId to response select
* add default message for SurveyLinkUsed
* update logic to render SurveyLinkUsed
* add comment for suId in prisma schema
* fix types
* refresh server component on save survey
* update logic
* fix build errors
* fix prisma schema
* add db migration
* update wording
* add singleUseId to localstorage
* fix survey link used over thank you
* add suid to people responses
* fix preview and copy link on surveys page.
* update text and icon for link survey modal
* check survey not finished before setting question
* update show surveylink used logic
* add zodtype to prisma
* fix logic to render last question answered/stored
* add better comments
* update default message for single use surveys
* add LinkSingleUseSurveyModal
* add guard before getting response with suid
* fix build error
* add default message for link used page
* add key and group imports
* add suId encryption and validation
* make survey url encryption optional
* fix build errors
* move singleUseId to server side in surveyList
* added validation to getResponseBySingleUseId service
* restored env var names
* import FORMBRICKS_ENCRYPTION_KEY from constants
* check if encryption environment variable is set, add length validation for env variable
---------
Co-authored-by: Ty Kerr <tykerr@Tys-MacBook-Pro.local>
Co-authored-by: Johannes <johannes@formbricks.com>
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
Co-authored-by: Dhruwang <dhruwangjariwala18@gmail.com>
* added intro and surveySelect page
* added home page and wrapper component
* added spreadsheet select
* added data write functionality and added integration schema model
* improved UX
* reworked UI
* added google sheet integration
* removed some unused code
* added user email
* UI tweaks
* fixed build issues and made added question to top of spreadsheets
* adds refreshSheets and added empty survey/spreadsheets text
* restored pnpm-lock
* added duplicate sheet warning
* move process.env to t3env
* move migration
* update docs link, add note to show that sheets integration is not configured
* Add simple docs page for google-sheets
* added session check
* restored pnpm-lock
* Merge branch 'main' of github.com:formbricks/formbricks into Integration/Google-sheet
* added google sheet env variables to runtimeEnv
---------
Co-authored-by: Johannes <johannes@formbricks.com>
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
* feat: webhooks now have a source to diff between user and third party
* fix: capitalise first letter of source and increase vertical padding in row
* fix: update webhhok source type in prisma and cleanup services
* combine two migrations into one
* add actions file for webhook UI
---------
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
* Fix email notifications not working properly
* Fix response notification not working
* fix response meta schema
* fix typo in docs
* improve error message in webhooks
* add first part of sync service
* add actionClasses to js sync
* fix errors, add product to sync
* rewrite formbricks-js for new states and types
* fix tests
* fix build errors
* add cors
* fix cors errors and other bugs
* comment test in checks until working again
* feat: added surveyClosedMessage field to database and also added it's types
* feat: added the custom closed message to the frontend
* fix: fixes build issue
* fix: refactored the code to toggle surveyClosedMessage and redirectUrl
* pnpm format
* recreate prisma migration
---------
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
* add placement enum and prop to db scheme
* enable placement toggle in setttings
* enable in-app survey placement demo
* add position helper function
* add placement to in-app-modal preview
* add placement prop to api endpoint
* add placement to widget
* remove coming soon
* add styling
* add apply tailwind styles instead of a ts function
* add clickoutside and darkoverlay prop
* add darkOverlay and clickOutside form
* update js package tailwind apply classes
* add background to widget and close on click outside
* only show backdrop and clickOutside if is center
* only display background when modal is centered
* responsive changes in js widget
* add updated migration, move styles from global.css to function
---------
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
* use new services for server-side data retrieval in survey responses & summary
* fix build errors
* add notes to response schema
* add response notes
* fix type conflicts
* add tag functionality
* run pnpm format
* fix tag state not updating correctly
* fat: added prisma model for Tag
* feat: adds api route for tags
* fat: added prisma model for Tag
* feat: adds mutation hook for creating a tag
* feat: adds apis for creating and retrieving tags
* feat: adds sample UI for creating and retrieving tags
* feat: adds UI components for Combobox
* feat: adds api router for fetching all tags for a product
* feat: adds combobox and api for appending tag to a response
* feat: adds api call for removing a tag from a response
* fix: relaced normal post with swr mutations
* fix: mutations for adding and deleting tags
* feat: integrated the create and delete tags apis and combobox
* fix: fixes api routes and db queries for tags apis
* fix: fixes api routes and headers
* feat: adds tag delete functionality
* feat: adds update tag api and UI
* feat: adds tags count api and integration
* feat: inital UI for tags table
* fix: UI for autosave name component
* fix: fixes api response
* fix: fixes errors on merge tags
* fat: added prisma model for Tag
* fix: replaces lodash.debounce with lodash
* fix: fixes capital letter tags not getting added
* fix: changed tag table to relate to environment
* fix: migrated tag apis from product to environment
* fix: formatting with prettier
* fix: fixes tags interface in single response
* fix: fixes UI bugs
* fix: fixes text on no tags
* fix: deleted local migrations
* fix: synced migrations with main
* fix: fixes combobox bugs
* fix: fixes placeholder
* update migrations
* fix build issues
* fix tag adding functionality
---------
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
* feat: added current person attributes to the user response
* feat: added tooltip showing user attributes in response view
* fix: switched to using the service layer and added annotations for json field
* rename PersonAttributesData to ResponsePersonAttributes to fit current naming scheme
---------
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>