Commit Graph

86 Commits

Author SHA1 Message Date
Mike b2cebea7eb Fix: Various billing fixes (#3569) 2024-11-28 20:24:05 +01:00
Chuck Driesler 4a0f69e184 fix(sso): delete via id (#3570) 2024-11-27 16:15:19 +00:00
Kristaps Fabians Geikins a90bc3a1ed fix(fe2): workspace region settings broken if non-admin + Workspace.subscription errors (#3567)
* regions fix

* skip logging subscription error

* added default region set mp track

* removed no longer necessary test
2024-11-27 16:42:58 +02:00
andrewwallacespeckle b4ecb30789 fix(fe2): Update delete sso provider composable (#3568)
* Update delete composable. Check role in Wrapper

* Use CommonCard

* Tooltip for non-admin users
2024-11-27 14:33:26 +00:00
andrewwallacespeckle 9c29ca07e3 Add SSO indicator to Wrapper (#3565) 2024-11-27 11:46:02 +00:00
Gergő Jedlicska 80cf6b3904 fix(gatekeeper): fix the checkout session cancellation logic (#3553)
* fix(gatekeeper): fix the checkout session cancellation logic

* Updated FE

* Remove debug

* Add error toast

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-11-26 16:30:55 +01:00
Mike afb0cf353f Feat: Disable SSO if not in plan (#3547) 2024-11-26 12:46:14 +01:00
Mike 69cedba652 Feat: Add pricing table to promo page (#3548) 2024-11-26 11:55:49 +01:00
Kristaps Fabians Geikins 35819f4756 feat(fe2): updated workspace data residency settings (#3543)
* WIPP

* remaining shii
2024-11-22 19:49:59 +01:00
Gergő Jedlicska 83a991bfac feat(gatekeeper): rename workspace plans (#3533)
* feat(gatekeeper): rename workspace plans

* Updated plans in FE

* feat(gatekeeper): stripe redirect to workspace dashboard

* test(gatekeeper): fix tests

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-11-22 05:50:16 +01:00
andrewwallacespeckle d3931f1855 feat(fe2): Frontend SSO Integration (#3464)
* Readd work from old branch

* Improved Login.vue

* Replace watch with onResult

* Server: Error improvement

* FE Middleware

* Update style

* Delete Sso. Mixpanel events

* Updates

* Improved loading state

* Invites. Register sso page

* Middleware improvements. Session error no logout

* Changes from deisgns

* Swap button to LayoutMenu

* Improve middleware

* Remove typo

* Fix errormessage

* Remove edit functionality

* New composable file for sso

* Improved names for composables. Tidyups

* Reactive errors

* Reorder Login.vue

* Improved Typeguard

* Enum

* Comments from Mike

* Add error toast

* Remove FormButton from LoginButtonBase

* Use linkComponent prop

* Move workspace select to new component

* Fragmentation

* Fix loading useFetch

* use WorkspaceAvatar

* Feature flag sso button

* Update fragment name

* Skip middleware during auth flow

* Add rules to Workspace Selector

* Reactive useWorkspacePublicSsoCheck

* AuthRegisterNewsletter types

* v-bind on Select

* Fragment WrapperSecurity

* Remove useForm from Form.vue

* Reactive values in composables

* Prevent infinite loading when no invite found

* useWorkspaceSsoValidation maybeRef

* Added comment to requireSsoEnabled

* Bugfix

* Update Button.vue

* Fix form

* Update valid model middleware

* Update LoginButtonBase.vue

* NewsletterConset ref

* use setFieldValue

* Update Login.vue

* Swap mayberef to ref

* Comments from PR

* Changes from call with Fabs

* Fix session-error bug

* Fix circleci

* Small fix to index
2024-11-21 12:50:57 +00:00
Mike 5628068bda Fix: Billing fail/success toasts (#3516) 2024-11-20 13:52:13 +01:00
Mike a0fb2edc2b Feat: Add mobile pricing plan (#3509) 2024-11-20 13:10:36 +01:00
Mike bc8b6bec2d Feat: Adjust billing settings for Academia and Unlimited plans (#3519) 2024-11-20 12:59:49 +01:00
Kristaps Fabians Geikins 42db2f6b82 feat(server): comments module multiregion support (#3493)
* prepwork

* more prep for testing

* tests/linting seems fine

* a couple of query fixes

* fix up notifications for multiregion

* test fixes?

* wal_level issue fix?

* fileupload test fix

* anotha test fix

* undo unnecessary changes

* streamActivity -> main DB
2024-11-19 12:15:43 +02:00
Mike 32fed39fb1 Feat: Update billing summary/add pricing table (#3506) 2024-11-18 14:47:48 +01:00
Mike 423350eb64 Feat: Add cancel billing sessions, billing alerts, assume no plan is trial plan (#3467) 2024-11-16 20:33:03 +01:00
Mike 5260111f8c Feat: Add billing summary (#3456)
* Feat: Add billing summary

* Update linting

* Fix workspacePricingPlanInformation include info object

* Fix typing

* Cleanup

* Update seat prices

* Fix casing

* Remove old billing logic
2024-11-08 11:28:23 +01:00
Gergő Jedlicska f210d9b749 gergo/web 2109 project region based db connection selector (#3434)
* feat(projects): add project regions, default to null

* feat(multiregion): add projectRegion Db client lookup logic

* feat(multiregion): add project region repositories and caching

* feat(multiRegion): db initialization and get project db client

* feat(docker-compose): add second db for regions testing

* feat(multiRegion): initialize region with pubs and subs working

* fix(multiRegion): get region client even if it was registered in another pod

* feat(workspaces): create workspace resolver split

* feat: update server region metadata

* feat(projects): rewrite project creation

* feat(multiRegion): getRegionDb

* fix(workspaces): get projects now can retur null

* feat(multiRegion): make local multi region DB-s work

* feat: set d efault workspace region

* CR changes

* tests

* feat(multiRegion): bind region properly

* fe update

* test fixes

* feat(multiRegion): automatically create aiven extras plugin

* ci(postgres): use published postgres with aiven extras

* fix(multiRegion): roll back the aiven extras migration, there is a better way

* tests fix

* fix(billing): we do not need to add a seat, if the workspace is on a plan, but has no sub

---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2024-11-06 17:29:08 +01:00
Mike 693f751e38 Feat: Remove version limit counters (#3424) 2024-11-01 12:19:19 +01:00
Chuck Driesler 52bb1116ed SSO (#3376)
* feat(workspaces): add workspace sso feature flag

* feat(workspaceSso): wip validate sso

* feat(workspaces): validate and add sso provider to the workspace with user sso sessions

* feat(workspaces): validate and add sso provider to the workspace with user sso sessions

* WIP

* fix(sso): restructure to handle all branches at end of flow

* fix(sso): add and validate emails used for sso

* fix(sso): park progress

* chore(workspaces): review sso login/valdate

* fix(sso): adjust validate url

* chore(sso): auth header puzzle

* fix(sso): happy-path config

* chore(gql): gqlgen

* fix(sso): almost almost

* fix(sso): auth endpoint

* a lil more terse

* fix(sso): light at the end of the tunnel

* fix(sso): improve catch block error messages

* fix(sso): session lifespan => validUntil

* fix(sso): I think we've got it

* feat(sso): limited workspace values for public sso login

* fix(sso): use factory functions

* fix(sso): til decrypt is single-use

* fix(sso): correct usage of access codes

* fix(sso): use finalize middleware in all routes

* chore(sso): cheeky tweak

* fix(sso): move some types around

* fix(sso): stencil final shape I'm sleepy

* fix(sso): more factories more factories

* fix(sso): on to final boss of factories

* fix(sso): needs a haircut but she works

* fix(sso): init rest w function, not side-effects

* fix(sso): /authn => /sso

* chore(sso): errors

* chore(sso): test test test

* chore(sso): test all the corners

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-10-31 13:20:53 +01:00
andrewwallacespeckle d48b935722 feat(fe2): Add change role dialog to guests table (#3375)
* Add change role dialog to guests table

* PR comments

* Disabled items based on role

* Fix build
2024-10-22 13:47:18 +01:00
Gergő Jedlicska 8cba7eb6f7 gergo/web 1968 add features list (#3332)
* feat(gatekeeper): add gatekeeper module feature flag

* feat(gatekeeper): add workspace pricing table domain

* feat(gatekeeper): add checkout session creation

* feat(gatekeeper): verify stripe signature

* wip(gatekeeper): checkout callbacks

* feat(gatekeeper): add unlimited and academia plan types

* refactor(envHelper): getStringFromEnv helper

* chore(gatekeeper): add future todos

* feat(gatekeeper): add productId to the subscription domain

* feat(gatekeeper): add in memory repositories

* feat(gatekeeper): add more errors

* feat(gatekeeper): complete checkout session service

* feat(gatekeeper): add stripe client implementation

* feat(gatekeeper): add checkout session completion webhook callback path

* feat(gendo): fix not needing env vars if gendo module is not enabled

* feat(gatekeeper): require a license for billing

* chore(gatekeeper): cleanup before testing

* feat(gatekeeper): subscriptionData parsing model

* ci: add billing integration and gatekeeper modules to test config

* test(gatekeeper): add checkout service tests

* feat(gatekeeper): make completeCheckout callback idempotent properly

* feat(gatekeeper): move to knex based repositories

* test(gatekeeper): billing repository tests

* feat(gatekeeper): add yearly billing cycle toggle

* feat(ci): add stripe integration context to test job

* feat(billingPage): conditionally render the checkout CTAs

* fix(gatekeeper): remove flaky test condition

* feat(helm): add billing integration feature flag
2024-10-20 15:40:31 +02:00
Benjamin Ottensten 1f1300baaf Fix: Various papercuts (#3296)
* Update move copy

* Ensure version counter doesn't break onto 2 lines

* Increase contrast in breadcrumb

Darker '/' and only font-medium on the active item

* Make it clearer to input new short ID and not current

* Add ... to menu items

* Change more "..." in menu items

* Fix gap and border between invite banners

And move the background to the individual banners
2024-10-18 12:40:20 +02:00
andrewwallacespeckle 922f6a2b5b fix(fe2): Add Validation for Slugs (#3255)
* Don't close dialog on invalid slug

* Custom error message on textInput

* Query backend to validate slug

* Updated loading spinner

* Update to error in Create Dialog

* Add to edit. Debounce input

* GQL

* Update CreateDialog.vue

* Update Edit Dialog

* Fix typo

* Update reset to avoid error on submit

* Temporary replacement until we swap to WebFlow API

* Update Icon.vue

* Fix build!
2024-10-17 14:41:31 +01:00
andrewwallacespeckle 75af7e5418 feat(fe2): Add deletion verification when deleting workspaces (#3277)
* Add confirm input to delete workspace

* Redirect home and open deletion reason dialog

* Merge delete dialogs

* Remove glitch file

* Update route

* Update feedback message

* Improve messaging in discord

* Testing changes

* Improve text

* Remove lg prop

* Spacing
2024-10-17 12:13:00 +01:00
andrewwallacespeckle e847fb2285 Disable workspace invite button - not hide (#3267) 2024-10-14 14:46:04 +01:00
Mike acf38e7c81 Fix: Re-enable count on member settings (#3247) 2024-10-11 14:38:29 +02:00
Alessandro Magionami 20bf7181b9 Activitystream IoC 2 addStreamAccessRequestDeclinedActivity (#3231)
* chore(activitystream): addStreamUpdatedActivity refactor multi region

* chore(activitystream): addStreamAccessRequestedActivity refactor multiregion

* chore(activitystream): addStreamAccessRequestDeclinedActivity refactor multiregion
2024-10-11 11:37:41 +02:00
Mike 6cb2761d91 Feat: Tooltips on avatars (#3243) 2024-10-10 23:54:23 +02:00
Mike 1fba35a7de Fix: Various bugfixes (#3245) 2024-10-10 23:54:08 +02:00
Mike cf701cd9a8 Fix: Dont allow admins to change their own WS role (#3228) 2024-10-10 17:27:53 +02:00
Mike f2ba2dd084 Feat: Add SSO settings (#3186) 2024-10-10 16:07:14 +02:00
Mike 2005067a6a Feat: Add role descriptions to select inputs (#3217) 2024-10-10 15:26:14 +02:00
Chuck Driesler e7ba48e320 Feat: Remove guests from workspace members table (#3219) 2024-10-10 14:25:45 +02:00
andrewwallacespeckle 677b8202fa feat(fe2): workspace slug / short id support (#3088)
* Add edit slug dialog

* Design changes to edit button

* Slug url implementation

* Disable slug edit if non admin

* Preloading queries

* Use preloaded workspace id

* Changes pre PR

* Removed unneeded import

* feat(workspaces): migrate slug to match the workspaceId

* WIP Comments

* Add watch. Use Fragment

* Tidy create

* Tidy ups

* Tidy up Edit Dialog

* Remove comment

* Update text - changing slug does not break embeds

* Updates from CR

* Reorder ProjectList

* Feedback from Michal

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-10-01 16:23:54 +01:00
Mike 3b453385de Feat: Enable billing page for members (#3094) 2024-09-24 13:36:18 +02:00
Mike aa2fe181fa Fix: disable project role select for non admin (#3093) 2024-09-24 12:57:21 +02:00
andrewwallacespeckle b7db51649d feat(fe2): Guest table should show what they have access to (#3047)
* Initial work

* Update role dialog

* useDebouncedTextInput

* Only show dialog if user has projects

* Update Cache on updating role

* Remove unused cache eviction

* Fix reactivity bug

* Handle pluralisation. Empty state when no projects left

* Hide owner from Permission Select
2024-09-23 15:20:38 +01:00
Mike c5e79eaca9 Feat: Allow selection of default workspace roles (#3034) 2024-09-19 16:45:20 +02:00
andrewwallacespeckle 4c1ab5f5a0 refactor(fe2): Inputs and Settings Dialog Updates (#2941)
* WIP

* Up to General

* Projects Table

* Other menu items

* Tidy up other inputs

* Refactor Developer Settings to be more modular

* Move buttons to menus

* Minor changes

* Fix build

* Updates from testing

* Fixes from testing
2024-09-12 16:15:27 +01:00
Mike 7c00a1de80 Feat: Mixpanel workspace groups add properties (#2904) 2024-09-10 14:18:29 +02:00
Mike cf3a948cf1 Feat: add filter for workspace members table (#2917) 2024-09-10 11:57:47 +02:00
andrewwallacespeckle d6754d6c80 fix(fe2): Align dialogs with the designs (#2895)
* Updates to Dialogs

* Updates to dialogs
2024-09-09 13:46:53 +01:00
Kristaps Fabians Geikins 04d0ee074f fix(fe2): default error skip logic & error policy (#2875) 2024-09-05 11:33:38 +03:00
Mike 8f60384ec0 Fix: Disable blocked domains in the FE (#2876) 2024-09-05 07:53:17 +02:00
Mike 3e9f14b245 Fix: Add non compliancy warning to change role modal (#2866) 2024-09-03 21:21:06 +02:00
Mike cca2d1a5c2 Fix: Dont show domain warning if role is guest (#2865) 2024-09-03 20:45:13 +02:00
Chuck Driesler beabb5552b Chuck/guests bug (#2863)
* fix(workspace): why can't guests seeeeee

* fix(workspaces): fix reference in test

* fix(workspaces): idk
2024-09-03 17:44:20 +02:00
Gergő Jedlicska 6a11016dc2 feat(workspaces): do not discount (#2861)
* feat(workspaces): do not discount

* fix(workspaces): typo

* fix(workspaces): tests

* fix(workspaces): minor polish
2024-09-03 17:19:38 +02:00