Commit Graph

29 Commits

Author SHA1 Message Date
Mike 60a05d3626 Feat: Add join requests to sidebar (#3894) 2025-01-27 09:33:24 +01:00
Mike e798fc4e8a Feat: Request to join workspace (#3871) 2025-01-24 14:05:53 +01:00
Mike d77af226fc Feat: Setting as pages (#3813) 2025-01-20 13:46:32 +01:00
andrewwallacespeckle be898dbe6b feat(fe2): New workspace page layout (#3716)
* prevent recursive layout rendering with named slots

* Workspace sidebar desktop

* Responsiveness

* Billing

* Edit icons

* Fragmentation

* Spacing updates

* Fragmentation

* Mobile updates

* Full notification for non-trial

* Readd workspace role

* New icon. Invite dialog

* Avatar Group count

* Add select-none

* Updates

* Updates

* Fix build

* New layout

* Mobile sidebar fix

* BillingAlert update logic

* Updates from CR

* New empty state

* Admin/Guest checks

* Changes from Benjamin

* Changes from michal

* Mobile changes

* Remove fullstop

* Update propname. Optional buttonCopy

* Improved project card grid

* Workspace page prop

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-12-20 13:31:39 +00:00
Mike 8f4593e606 Feat: Workspace creation wizard (#3625) 2024-12-04 14:19:52 +01:00
Chuck Driesler e312110933 Automate Public Beta (#3472)
* feat(automate): query active user functions

* fix(automate): show automations to non-stream-owners

* feat(automate): associate function with workspace

* fix(automate): split functions page between user and example functions

* fix(automate): ugh

* fix(functions): use correct query type in different places

* fix(automate): workspace functions page

* feat(automate): query specific categories of functions

* fix(automate): checkpoint

* fix(workspaces): successful queries w local env

* fix(automate): createFunctionWithoutVersion

* fix(automate): successful associate function with workspace

* fix(automate): query and return workspaces on functions

* fix(automate): show current function workspace

* fix(automate): query functions in automation create dialog

* fix(automate): audit non-owner automation access

* refactor(automate): logs api can get the projectId from the path

* fix(automate): multiregion gql resolvers

* fix(automate): multiregion event listeners

* fix(automate): drop automationCount

* fix(automate): multiregion run status

* fix(automate): correctness

* fix(automate): successful usage of multiregion results

* fix(automate): actually finish event listeners

* chore(automate): fix tests fix tests

* fix(automate): fix tests but make it multiregion flavor

* fix(automate): logs endpoint

* fix(automate): inject projectid correctly

* fix(automate): drop user-source functions

* fix(automate): owners edit, others can view

* fix(automate): simplify queries, auto workspace association

* chore(automate): appease

* chore(automate): fix function types

* fix(automate): get to workspace functions from empty state

* chore(automate): death to all slugs

* fix(automate): no create automation from function

* fix(automate): hide workspace change, tweak role access

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-11-29 17:33:14 +01: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
Kristaps Fabians Geikins 1800dbbdbd feat(server): improved subscription testing DX + tests for common subs + new subs (#3554)
* userProjectsUpdated.added test

* multi region support

* userStreamAdded

* commit subs tested

* fix for proj workspace assignment

* undo commitHelper main changes

* disable all ffs mode

* createTestWorkspace support when workspaces arent enabled

* project create fix

* workspace projects updated subscription

* WIP new workspace sub

* updated workspaceCreated

* updated workspaceUpdated

* BE for workspace updated sub

* workspace updated sub

* ts err fix
2024-11-27 15:41:04 +02: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 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
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
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 0c3ce07146 feat(fe2): Show model and version count in move projects to workspace dialog (#3240)
* Show model/version count in moveprojectsdialog. Update copy

* Add truncate

* Add truncate

* Change copy and text styling

* Add model and version count to fragment

* Fix gql

---------

Co-authored-by: Benjamin Ottensten <benjamin.ottensten@gmail.com>
2024-10-11 14:53:03 +01:00
andrewwallacespeckle ebef771c3a refactor(fe2): Update queries to use workspaceBySlug (#3177)
* Use workspaceBySlug

* workspace invite support slug

* fix workspace invite email link

* added tests

* Update workspaceInvite query to use new option

* useSlug directly in query

---------

Co-authored-by: Fabis <fabis94@live.com>
2024-10-02 13:01:38 +01:00
Mike 378373a575 Feat: Added modal for moving projects into workspace (#3124) 2024-10-02 13:14:20 +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 7c00a1de80 Feat: Mixpanel workspace groups add properties (#2904) 2024-09-10 14:18:29 +02:00
Kristaps Fabians Geikins 7c6ea464e8 fix: support accepting invites even if a workspace member already (#2826)
* blocking workspace project invites from incorrect resolver

* invite create validation fixes + tests

* fix for email added on decline

* doing init validation on finalization as well

* more tests

* fix(server): allow accepting an email invite even if already a member

* fix(fe2): support accepting invites even if a workspace member already
2024-09-02 09:45:24 +02:00
Kristaps Fabians Geikins bd188fc189 fix(fe2): post workspace create cache update (#2827) 2024-08-30 14:46:03 +03:00
Kristaps Fabians Geikins 46afd793c7 Revert "fix(fe2): post workspace creation cache update"
This reverts commit 726e09e157.
2024-08-30 14:22:23 +03:00
Kristaps Fabians Geikins 726e09e157 fix(fe2): post workspace creation cache update 2024-08-30 14:21:13 +03:00
Chuck Driesler bbd5146e5a fix(workspaces): add pagination to workspace team members (#2644)
* fix(workspaces): a suggestion of paginated teams

* fix(workspaces): workspace team pagination (?)

* fix(workspaces): pagination based on acl createdAt

* fix(workspaces): fix some roles-related tests

* fix(workspaces): improve query and tests

* fix(workspaces): collaborators query without incorrect groupBy

* fix(workspaces): add default values to migration

* Fixed queries and fragments

* Merged main

* Remove comment

* chore(workspaces): update WorkspaceCollaboratorCollection mocks

* chore(workspaces): fix role test

* chore(workspaces); ope

* fix(workspaces): move workspace acl timestamps to separate table

* Merge?

* fix(workspaces) drop that table

* fix(workspaces): cursor

* fix(workspaceInvites): undo merge borkage

* fix(workspaces): rework workspace member pagination

* fix(workspaces): fix test

* fix(workspaces): test test

* fix(workspaces): literally garbage

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-08-29 21:17:37 +02:00
Chuck Driesler 7bfe36ef9e feat(workspaces): create workspace button (#2645)
* fix(workspaces): it's my passion

* fix(workspaces): actually make workspaces

* Update graphql.ts

* Dechuckify

* Minor housekeeping changes

* useCreateWorkspace WIP

* Updated add workspace button

* Removed dubble dialog

---------

Co-authored-by: andrewwallacespeckle <andrew@speckle.systems>
Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-08-22 13:23:12 +01:00
Kristaps Fabians Geikins 0b417c9ba0 feat(fe2): workspace invite cancel/resend + Invite dialog CTA in workspace home (#2691)
* feat(server): resend invite mutation

* invite resend/cancel from FE

* functional invite cta on workspace page
2024-08-20 10:17:42 +03:00
Kristaps Fabians Geikins 2bb7802fb9 feat: accept & decline workspace invite as a registered member (#2675)
* abstract base invite banner

* WIP banner actions

* WIP modify obj

* minor fix

* invite accept/decline cache mutations

* banner accept/decline basically works

* new block for accepting workspace invite

* WIP wrong account flow

* login/registration block changes

* add email invite related changes

* add new email FE

* add email w/ invite works

* final adjustments

* minor fixes

* addressing cr comments

* no-FF support

* extra workspace ff checks
2024-08-19 13:01:25 +03:00
andrewwallacespeckle e3f90377b5 feat(fe2): workspace project list (#2616)
* Create and Use ProjectList

* ProjectList and WorkspaceList

* Workspace Header

* Header Actions Menu

* Add projects to Workspace

* Add middleware

* Remove unused title

* Rename WorkspaceList

* useDebouncedSearch

* Merge ProjectList into Dashboard

* Make workspaceId reactive

* Remove unneeded useSubscription

* Merge Dashboard into index

* Add fragments

* Cache updates

* gql

* GQL

* Linting updates

* Updates from CR

* Changes from CR

* Changes from PR. Middleware added

* Updates from CR

* GQL

* Updates from CR

* Updates from CR

* Updates from CR

* Add id to WorkspaceHeader_Workspace

* GQL

* Fragment naming

* Use identifier

* Comment buttons not yet ready

* Fix problem with pagination
2024-08-14 15:21:38 +01:00
Kristaps Fabians Geikins 4dae1569cd feat(fe2): invite + list workspace invites (#2629)
* list invites table

* invites list works

* update last reminded date on resend

* fix FE

* WIP invitedialog + updated debounced utility

* invite create works

* exclude users correctly

* more adjustments

* minor cleanup

* using workspace invite server role

* test fix

* fixed multiple root eslint issues

* minor adjustments
2024-08-12 11:30:01 +03:00
Mike 3c15fa8809 Feat: Add member settings page (#2574) 2024-08-06 10:03:22 +02:00