Commit Graph

75 Commits

Author SHA1 Message Date
Matti Nannt
9d1ea819c5 feat: add mau limit to web-app survey (#828) 2023-09-17 22:57:47 +09:00
Matti Nannt
f313275a14 fix: sync call gets called by other functions (#823)
* fix: sync call gets called by other functions

* fix: sync call gets called by other functions

* remove unused imports

* remove unused import

* fix userId update
2023-09-17 00:31:38 +09:00
Anshuman Pandey
d8b14f5f35 chore: add caching to js actions endpoint (#822)
* fix: caching in actions endpoint

* refactor

---------

Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-09-16 22:35:50 +09:00
Matti Nannt
e86b80cf0f chore: enable caching in all js endpoints to reduce database calls (#821)
* Move cached functions to services, add new caching to set-attribute

* update set-user-id route

* move remaining cache functions to services, simplify revalidation and keys

* simplify set-attribute further

* fix build errors

* comment out prisma client logging
2023-09-16 20:53:31 +09:00
Matti Nannt
b04acae0ba fix: formatting issue and build error (#820) 2023-09-16 16:05:12 +09:00
Matti Nannt
73ba6feec2 refactor: Add caching to the sync endpoint (#819)
* test: caching strategies

* feat: caching

* remove hotfix code

* remove unused import

* fix: adds revalidation to action services

* add environments to product service & type

* fix: fixes caching

* fix: fixes product cache

* add person revalidation to person js endpoints

* update surveys cache rule

* add new caching policy for surveys in sync

---------

Co-authored-by: pandeymangg <anshuman.pandey9999@gmail.com>
2023-09-16 15:53:44 +09:00
Dhruwang Jariwala
041bf36f20 refactor: add proper types to jwt service (#815) 2023-09-15 10:06:41 +09:00
Matti Nannt
4e5c822bec feat: fix prisma accelerate types (#812)
* Fix prisma client types;

* Undo ungraceful changes to the sync route with a more graceful cloud-only fix.

* update prisma runtime
2023-09-14 12:21:21 +09:00
Matti Nannt
a60ff93754 temporarily deactivate sync endpoint (#809) 2023-09-14 01:50:33 +09:00
Matti Nannt
1a5e5fc845 make sync endpoint unavailable (#808) 2023-09-14 01:38:51 +09:00
Matti Nannt
ff51f2f25d chore: format code and fix lint workflow (#804) 2023-09-12 18:20:09 +09:00
Dhruwang Jariwala
6a88420122 feat: Add Make.com integration (#628)
* added documentation for make.com integration

* ran pnpm format

* update wording in docs

* updated docs for make integration

* updated connect link

---------

Co-authored-by: Johannes <johannes@formbricks.com>
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-09-12 18:05:52 +09:00
Dhruwang Jariwala
1be6deec64 chore: Rewrite environment navbar to server components (#690)
* moved environment navbar to RSC

* added Error component

* format

* update errors path

* use standard services in environment navbar, update product service according to standards, add redirect shortcuts for teams and products

* update analysis github workflow with environment variables

* fix WEBAPP_URL is required

---------

Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-09-12 14:15:03 +09:00
Shubham Palriwala
3a202541d0 remove: @formbricks/errors (#784) 2023-09-11 10:29:12 +09:00
Matti Nannt
0a08d7df68 chore: Introduce unified survey UI package @formbricks/surveys (#698)
* add vite survey package

* add renderSurvey method

* add all survey components

* First working version of renderSurvey

* integrate survey package into survey preview

* add survey modal functionality to formbricks-surveys

* fix build errors and add new template types

* add response queue

* add simple formbricks-js integration

* add local state management for surveys

* add local storage to multiple choice and open text questions

* add local state to other question types, layout fixes

* Fix modal close button, clean js package code

* add new calculate progress function

* fix progressbar on thankyou card

* fix churn survey branching in demo product

* use tsup to bundle @formbricks/js

* update survey positioning in link surveys

* fix preview reset button in link survey

* change logic for progress bar

* update progressbar logic

* update spacing

* add conditional autofocus / disable for iframe

* add userId to link survey

* integrated email verification

* moved token verification and reading to server component

* ran pnpm format

* added question prefilling

* ran pnpm format

* Moved question prefilling logic to Link Survey

* Refactor types

* centralize survey package props, fix build errors

* fix userId in link survey

* fix survey closed message

* add redirect on complete, fix bugs

* smaller bugfixes

* smaller bugfixes

* fix bugs

* fix build errors

* remove logs

---------

Co-authored-by: Johannes <johannes@formbricks.com>
Co-authored-by: Dhruwang <dhruwangjariwala18@gmail.com>
2023-09-10 14:06:55 +09:00
Shubham Palriwala
e8b54dd3ae fix: Generalise login error messages to prevent user account enumeration (#772) 2023-09-06 10:35:45 +09:00
Matti Nannt
4de85eb365 Add jsVersion & sessionCreated event to Telemetry (#720) 2023-08-21 11:30:00 +02:00
Matti Nannt
754bdfbca7 Move Telemetry events to services and limit events to surveyCreated and responseCreated (#719) 2023-08-21 09:47:06 +02:00
Johannes
88c17546b7 add font weight bold to weekly summary 2023-08-14 10:20:53 +02:00
Shubham Palriwala
fdb1aa2299 Rewrite Person Detail Page to Server Components (#609)
* feat: migration /[personId] page to server side

* feat: decouple components in person page

* fix: ZDisplaysWithSurveyName now extends the ZDisplay type

* feat: drop custom service and use existing service for survey and response

* run pnpm format

* shift data fetching to component level but still server side

* rename event to action

* move special person services to activity service

* remove activityFeedItem type in ActivityFeed

* simplify TResponseWithSurvey

---------

Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-08-06 09:53:37 +02:00
Anshuman Pandey
ad42f4cc55 Dramatically improve load times when creating a new team(#614)
* fix: attempts to reduce time taken to create team

* fix: fixes long time taken in team creation

* fix: refactors prisma logic

* feat: added logic for adding demo data while signing up

* fix: adds comment

* fix: adds another logic for adding demo data

* fix: adds service for adding demo data

* fix: fixes

* fix: adds demo product creation logic in next auth options

* fix: fixes next auth options

* fix: fixes team creation logic

* refactor: clean up

* fix: moves the logic for adding demo product while creating team in bg

* fix: moves individual queries in a transaction

* refactor: service

* fix: moves api route to app-dir

* fix: fixes api calls

* fix: fixes cache

* fix: removes unused code
2023-08-05 13:59:06 +02:00
Johannes
ee545b7ade remove N/A CR, exclude completed if has no submission 2023-08-04 09:51:49 +02:00
Matti Nannt
3d0d633bc8 Fix new Session event not triggered every time a new session is created (#624)
* Fix new Session event not triggered every time a new session is created

* make syncWithBackend method private
2023-07-31 16:40:21 +02:00
Matti Nannt
288fc79366 Fix Authentication issues for Webhook API (#622) 2023-07-31 14:10:28 +02:00
Meet Patel
6b3f977d83 Store current Url in the responses meta data (#566)
* url add to link-survey

* fixed

* fixed

* fixed

* fixed

* ran pnpm format

* make url optional in response input to not break existing integrations

---------

Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-07-24 17:05:54 +02:00
Johannes
16b7e0d82a Improve Weekly Summary Email (#584)
* fix bugs in weekly

* fix CTA

* update bg color of completed badge
2023-07-20 16:33:01 +02:00
Johannes
78ed48adeb fix error messages 2023-07-20 15:59:21 +02:00
Matthias Nannt
feadefa90d clean up and move to new action -> service structure 2023-07-19 19:00:04 +02:00
Matti Nannt
c52df00d39 Fix Email Notifications (#583)
* Fix email notifications not working properly

* Fix response notification not working

* fix response meta schema

* fix typo in docs

* improve error message in webhooks
2023-07-19 12:30:31 +02:00
Matti Nannt
2199a4b102 Improve pnpm go command pipeline & remove database tsup setup (#574)
* move docker compose dev

* update all packages; pnpm format

* remove tsup from prisma

* add zod to prisma files

* delete tsup config

* improve pnpm go script, downgrade prettier

* update pnpm lock
2023-07-17 18:12:40 +02:00
Matti Nannt
62c001cbee Update packages, Fix error getting current subscription plan (#549) 2023-07-13 18:23:31 +02:00
Johannes
1d5fab3665 Add Link Source Tracking for Weekly Summary Emails (#547)
* add UTM to links, update CTA button color in mails

* add tracking, update weekly + email layout
2023-07-13 16:22:50 +02:00
Matti Nannt
8ea6016cf5 Sync surveys and events with formbricks-js automatically (#537)
* 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
2023-07-13 00:49:58 +02:00
Matti Nannt
1c58474dc2 Fix email notification not working (#531) 2023-07-11 22:52:17 +02:00
Piyush Gupta
c8c84d0148 Add close on date functionality for surveys (#463)
* added date-picker

* added state and handlers for closeOnDate

* closeDate -> closeOnDate

* added endpoint for CRON to close surveys

* resolved migrations

* fixed datetime format

* removed warnings

* PR review changes

* resolved merge conflicts and package update

* add github workflow for cron

* change migration order

* change migration order

* add zod types for closeOnDate

---------

Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-07-11 12:47:35 +02:00
Matti Nannt
7be6879afb add SurveyId filter option to responses endpoint (#517) 2023-07-10 17:03:36 +02:00
Matti Nannt
04ec0a6827 Extend Webhook with surveyIds filter (#512)
* add surveyIds filter to webhooks. Use triggers array instead of single trigger

* include webhook id in webhook payload

* run pnpm format
2023-07-10 16:24:03 +02:00
Matti Nannt
31ccb9d43f Add new Surveys endpoint to list all surveys of an account (#500) 2023-07-10 10:44:37 +02:00
Matti Nannt
4017a5c4f9 Add t3 env for env validation (#498)
* add t3 env for env validation

* fix env variables that should be optional

* update gitignore

* add vercel ignore
2023-07-07 15:58:15 +02:00
Subhodip Roy
60c96fe3f9 Build Display service and rebuild display endpoint in app directory (#432)
* created new create-display and updated display endpoints with zod, db service-layer, and next.js route handlers

* changed the api URL and changed few type definations

* new getTeamDetails service is created which will be further used by display and response endpoints

* changed the prisma call with getTeamDetails service

* created display services and zod validation schema

* removed envId from func parameter

* fix build error by adding a type annotation

* Moved the return inside try block

* Removed comments

* changed the update display service name to markDisplayResponded

* Update route.ts

* reference person type in display, check response code first then transform to json

* add createdAt & updatedAt to person when query display

* pnpm format

* small optimizations

---------

Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-07-07 12:28:47 +02:00
Bhaskar Singh
9e9db7103e Add Weekly Summary Feature (Beta) (#431)
* Added Notification API

* Added Email functionality to the weekly
notification

* Added no live survey email notification

* Activating weeklySummary notification alertSwitch

* Adding check to include only surveys which
have weeklySummary enabled

* Updated the condition for weekSummary
notification check

* update UI

* Update to reduce number of database calls

* Updated the email subject when no survey in weeklysummary

* applied pnpm format

* update notification settings with new types and fix functionality

* loop through all products to send weekly summary email, colocate files

* fix build errors

* add more types

* add vercel.json for cron configuration

* remove console.logs, limit responses to 5 per survey

* update email subject

* improve how responses are displayed in summary email

* update email layout

* add cron to github action instead of vercel

* add github action

* add beta flag

---------

Co-authored-by: Johannes <johannes@formbricks.com>
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-07-06 15:47:33 +02:00
Matti Nannt
896e91a38b add product information to api/v1/me endpoint (#494) 2023-07-06 14:36:39 +02:00
Matti Nannt
73a2b077e5 add response poll endpoint for zapier (#465)
* add response poll endpoint for zapier

* fix internal server error with incorrect api key
2023-07-02 22:32:20 +02:00
Matti Nannt
4f12886bfc Fix userId prefilling not working properly (#446) 2023-06-28 15:35:41 +02:00
Matti Nannt
9cc836a775 Clean up + Bugfixes (#443)
* format code

* fix building issue in database package

* update turbo config and package jsons

* update error package with more information and license

* fix typescript issues in ui package

* update package-lock

* update packages

* clean dependencies in web

* clean up dependencies in demo & formbricks-com

* remove unsused template file

* remove legacy capture endpoint

* remove unfinished client endpoints

* clean up unused functions

* fix formbricks not loading on invalid session

* update readme
2023-06-28 13:07:51 +02:00
Zorig
daf030b183 Add option to connect a Linksurvey with a userId (#430)
* feat: identify users in link surveys #384

* fix: identify users in link surveys formbricks#384 PR feedback

* relocate endpoint, add check for preview=true

---------

Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-06-27 10:01:47 +02:00
Nafees Nazik
55c1e354fc Add user agent as meta data to responses (#398)
* chore: add ua parser

* feat: add user agent to meta

* feat: parse ua

* feat: add tooltip

* fix: type

* fix: empty tooltip

* fix: typo

* add simple formatting to tooltip text

---------

Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-06-26 11:42:42 +02:00
Matti Nannt
8486e516b6 Move Summary & responses page over to serverside data-retrieval (#433)
* 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
2023-06-25 17:26:17 +02:00
Ashutosh Bhadauriya
7ed24c9f49 Add 50% Scroll & Exit Attempt Automatic events to trigger surveys (#393)
* Add exit intent and scroll depth automatic actions

* Remove lorem ipsum text

* Modified event listeners to not get called if survey is already running

* Add trackEvent inside event listeners

* Remove lorem ipsum

* Move event listeners to init

* Fix exit intent listener

* Modify event listeners to get called everytime and change exit intent text

* Add missed files

* Move events to separate file and add name check

* Add name check

* Fix build error
2023-06-23 12:17:37 +02:00
Nitesh Seram
08717cd396 Add NEXT_PUBLIC_INVITE_DISABLED env variable to disable invite functionality (#373)
* Add env variable to check for team invite

* Check for only public invite env for invite

* Disable Add Member and block the invite API

* Change the invite disabled condition

* Update the condition for env variable

---------

Co-authored-by: Seram Nitesh Singh <nitesh.s@auzmor.com>
Co-authored-by: Matthias Nannt <mail@matthiasnannt.com>
2023-06-21 11:53:37 +02:00