* added base logic for team billing
- moved Stripe customer related logic to customer.ts
- implemented unstable logic for team owner upgrading, downgrading and adding/removing seats
* logic improvements
* - improved Alert style
- hide free team members on public team page
- upgraded textarea to ui component TextArea in SAML setup
- added Alert on team settings for hidden members
- hide CreateEventTypeButton if not admin
- fixed missing locale strings in team settings
* remove random import
* - show hidden status on team list
- refactor team pill
* - improved logic (mostly functional)
- added Alerts for members & owners
- added local strings
- created upgrade modal
- added info notice on invite member modal
- fixed router redirect after leaving team
* - improved logic in team-billing
- error display on upgrade modal
- added better launch.json for VSCode debugger
- fixed bug with missing inviteeUserId
* code cleanup
* nit pick fixes i should sleep now
* fixed leave team bug
- quantity would not decrease upon leave or removal
* added stripe billing callback handler
* - better launch.json
- teams empty component
* - fixed error not removing after successful pro upgrade
- fixed silent fail on team create name conflict
- fixed input border radius on member invite modal
* updated local strings
* improved logic for edge cases, such as:
- team owned by member sponsored by another team can smoothly upgrade to pro if kicked from sponsored team
- logic to calculate if owner is specifically missing pro subscription (ownerIsMissingSeat)
- corrected calculation of members missing seats, shouldn't care for proPaidForByTeamId as that only matters for removing member and preserving pro if they pay for it themselves
- added react query devtools
- added missing locale string
* - allow type override for LinkIconButton
- consolidate filter logic for getMembersMissingSeats
* - only activate team billing for hosted cal
- fix prod price keys
* fix requiresUpgrade when not hosted by cal
* added HOSTED_CAL_FEATURES
* fixed failing build
- fixed broken import path
- added support for premium price plan. (will consider premium as a valid seat)
- remove rouge console log
* fix customer id type error
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
* updated saml-jackson
* if logged in redirect to getting-started page with username in the query param
* fixed issue with mixed up Google login, profile.id is undefined and this is causing the first record to be retrieved instead of the AND query failing
* updated updated saml-jackson
* document PGSSLMODE for Heroku
* tweaks to PGSSLMODE doc
* for self-hosted instance just allow user to signin with any identity (as long as email matches)
* fixed submitting flag
* added username to onboarding flow (if requested during signup)
* added telemetry for google login, saml login, saml config
* check if firstName and lastName are defined
* convert mutation to an async op
* added e2e test to ensure username query param gets picked up during onboarding
* fixed minor typo and added note about configuring Google integration as an Internal app when self-hosting
* cleaned up unnecessary ssr in sso signup routes
* renamed function
* Revert "cleaned up unnecessary ssr in sso signup routes"
This reverts commit 3607ffef79.
* moved client side code to useEffect hook
* - format
- fixed Save button in SAML config component
Co-authored-by: Peer Richelsen <peeroke@gmail.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>