Commit Graph

103 Commits

Author SHA1 Message Date
Mike 42b841d36f Feat: Add projects subscription to dashboard (#4011) 2025-02-18 10:25:13 +01:00
andrewwallacespeckle b55a9e565f Remove commentThreads count from delete project dialog (#3806) 2025-01-13 16:45:06 +00:00
Mike baea53e5ab Disable uploads, project creation and moving when read only (#3744) 2024-12-23 14:40:11 +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 047f21aef4 Feat: Billing info on change role (#3715) 2024-12-18 14:23:50 +01:00
Mike 29bcb66eb4 Fix: Unable to delete project from workspace settings (#3708) 2024-12-18 12:50:46 +01:00
Mike ee3ac48579 Feat: Change default workspace avatars (#3670) 2024-12-11 10:11:21 +01:00
Kristaps Fabians Geikins 16897b86cb feat(fe2): show custom data residency restriction disclaimer (#3605)
* move to workspace disclaimer

* disclaimer added everywhere

* cleanup

* copy update

* Update copy

---------

Co-authored-by: Benjamin Ottensten <benjamin.ottensten@gmail.com>
2024-12-03 11:58:14 +01:00
Gergő Jedlicska c68090a041 feat(projects): filter projects, that are not available under sso (#3585)
* feat(projects): filter projects, that are not available under sso

* feat(fe2): add SSO authentication warning banner

* Use specific fragment types

* fix(streams): stream load behavior should match old implementation

* Add user id to ProjectsHiddenProjectWarning_User fragment

* GQL gen

* Copy update

* fix(streams): admin override logic

* chore: gqlcodegen

* Update fragment name

---------

Co-authored-by: andrewwallacespeckle <andrew@speckle.systems>
2024-12-03 11:51:27 +01:00
Chuck Driesler 67b785a09a chore(automate): include workspace in automate mixpanel events (#3601)
* chore(automate): include workspace in automate mixpanel events

* chore(automate): repair gql

* chore(automate): fix type
2024-12-02 18:15:34 +00:00
Mike 827288c36f Feat: Remove inline workspace creation (#3591)
* Feat: Remove inline workspace creation

* Update text

* Move to function

* Remove typecasting

* Remove typecasting

* Remove unneeded condtional

* asyns

* try catch promise

* try catch promise
2024-12-02 14:28:37 +02: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
Mike a37a7fc88a Fix: Invite banners borders (#3539) 2024-11-21 15:32:13 +01:00
andrewwallacespeckle dd467097b3 Prevent creation of multiple projects by multiple clicks (#3480) 2024-11-12 09:39:13 +00: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
Chuck Driesler dc9519f141 fix(workspaces): emit slug with discoverable workspaces (#3361)
* fix(workspaces): emit slug with discoverable workspaces

* chore(workspaces): gql lint
2024-10-23 09:50:08 +01:00
andrewwallacespeckle 332e4a4784 Remove spacing (#3338) 2024-10-18 14:52:30 +01: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 efaa6970cd Remove Banners component, have all invites in same location (#3304) 2024-10-16 17:22:18 +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 219c7aa7be Update placeholder of workspace select. Disable select if no workspaces. (#3241) 2024-10-10 17:23:46 +01:00
andrewwallacespeckle d956fbf79d refactor(fe2): Change workspace creation triggers (#3211)
* Tasks from ticket

* Update copy

* Add confirm dialog to cancel button

* Show Workspace create dialog when on explainer page

* Reorder

* Add new mixpanel event

* Use 1 confirm modal
2024-10-10 16:10:21 +01:00
Mike 2005067a6a Feat: Add role descriptions to select inputs (#3217) 2024-10-10 15:26:14 +02:00
andrewwallacespeckle 058e780bd3 Update DashboardHeader.vue (#3212) 2024-10-10 09:50:03 +01:00
Benjamin Ottensten b428250a69 Update copy in project invite banner (#3210)
Old copy felt a bit clumsy and I also didn't like the use of "team" here.
2024-10-09 13:09:58 +01:00
Mike 83aa2fa999 Fix: Dont show invites wrapper if empty (#3200) 2024-10-08 12:55:23 +02: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 9ab0ee5be4 Fix: Dont allow unset for default project roles (#3065) 2024-09-20 14:56:44 +02:00
Mike 9ff58d9803 Fix: Dont allow workspace members to move projects into workspace (#3044) 2024-09-19 14:04:53 +02:00
Mike 334d058682 Feat: Move projects into workspace (#3042) 2024-09-19 12:38:03 +02:00
Mike 9bbb63e6da Fix: Add clearable option for workspace select (#3015) 2024-09-17 11:06:44 +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 6197ac1f40 Fix: dont show workspace select on projects inside workspaces (#2977) 2024-09-12 16:08:56 +02:00
Mike 6bc8cf45e6 Feat: Allow users to create or select workspace on project creation (#2964) 2024-09-12 15:08:17 +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
Mike 0f0046ede2 Fix: change workspaceId to workspace_id (#2886) 2024-09-05 17:48:35 +02:00
Mike 3fc3225f3a Fix: Change new project button copy and text (#2870) 2024-09-04 15:23:50 +02:00
Kristaps Fabians Geikins 596ccf8ee3 feat(fe2): greatly improved DX for apollo cache modification (#2831)
* proof of concept - types work

* WIP

* wipp

* new modifyObjectFieldf

* updatePathIfExists

* wipp

* working?

* projects dashboard test

* more improvements

* more improvements

* fixx

* bugfix

* minor fixes and cleanup

* moar cleanup

* autoEvictFiltered
2024-09-03 10:59:16 +03:00
andrewwallacespeckle 8787a5c8bc feat(fe2): Frontend should show a pre-filtered list of users for workspace members (#2845)
* Show prefiltered list for members in workspace with project ownership rights

* Fix: Added dropdown for project role

* Fix typo

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-09-02 16:59:30 +02:00
Mike 1ad990d438 Fix: Workspace and project header styling (#2839) 2024-09-02 12:14:26 +02:00
andrewwallacespeckle c771fc8553 fix(fe2): Various alignment fixes from testing (#2790)
* Update Nav Link Font weight. Nowrap badge

* Plus spacing

* Workspace page tidy up

* Mobile testing

* Responsive fixes

* Fix clipping of avatar

* Adjust workspace item pl

* Square the plus button

* Font overwrites for workspace items in settings

* Remove unused props
2024-08-29 10:11:16 +01:00
Mike afd90957a8 Added FE tracking events (#2798) 2024-08-28 21:06:09 +02:00
Mike bebc4b922e Feat: Add links to workspace on project cards (#2773) 2024-08-27 18:24:51 +02:00
Mike 986f438851 Fix: Update invite banners styling (#2768) 2024-08-27 15:20:36 +02:00
andrewwallacespeckle 27bc4b2761 fix(fe2): Only show banners on dashboard (#2766)
* Add 2024 specklecon banners

* Only show in Dashboard
2024-08-27 13:03:40 +01:00
andrewwallacespeckle 2181130a75 Add 2024 specklecon banners (#2765) 2024-08-27 12:44:33 +01:00
Gergő Jedlicska 08e941f8af Poor man's SSO (#2641)
* Implemented workspace general page

* Added notifications to user input

* Allowed non-admins to view but not edit

* Added redirect to homeroute

* Fixed validation

* Squashed commit of the following:

commit 7bf14ab8af0f76b4c9d0aa87fc08085af7c34959
Author: Chuck Driesler <chuck@speckle.systems>
Date:   Tue Aug 6 19:40:50 2024 +0200

    mob next [ci-skip] [ci skip] [skip ci]

    lastFile:packages/server/modules/workspacesCore/migrations/20240806160740_workspace_domains.ts

commit 8aa3fb0cb052c10eeeb83bf9874ae0d1c065e480
Author: Alessandro Magionami <alessandro.magionami@gmail.com>
Date:   Tue Aug 6 18:54:15 2024 +0200

    mob next [ci-skip] [ci skip] [skip ci]

    lastFile:packages/server/modules/core/domain/userEmails/operations.ts

commit 66dfd0cf6c15a789c8f96a65a3168323e83a7b9e
Author: Chuck Driesler <chuck@speckle.systems>
Date:   Tue Aug 6 18:30:22 2024 +0200

    mob next [ci-skip] [ci skip] [skip ci]

    lastFile:packages/server/modules/workspacesCore/domain/types.ts

Co-authored-by: Alessandro Magionami <alessandro.magionami@gmail.com>

* Move General to workspaces folder

* feat(workspaces): inputs on security section

* feat(workspaces): add domain to workspace mutation

* chore(workspaces): add blocked domains list

* fix(workspaces): modals with buttons

* feat(workspaceDomains): delete domain

* fix(workspaces): use  mutation

* fix(workspaces): present user verified domains as options

* Moved sidebar menu to a composable

* Added coming soon tag back

* feat(workspaces): create domains resolver for workspace

* chore(workspaces): fix tests

* chore(workspaces): fix types

* chore(workspaces): fix linter

* fix(workspaces): do some delete I think

* chore(workspaces): add domainBasedMembershipProtectionEnabled field to workspace

* chore(workspaces): improve validation for email domain

* fix(workspace): query and do the thing

* chore(workspaces): add graphql schema for domainBasedMembershipProtection

* chore(workspaces): lint and test failures

* fix(workspaces): test issues w new field

* feat(workspaces): add discoverability flag

* chore(workspaces): they made me do it

* feat(workspaces): enable toggling domain protection

* feat(workspaces): add discoverability toggle to workspace settings

* feat(workspace): auto enable discoverability on first domain registration

* feat(workspace): discoverability toggle fixes

* fix(eventBus): fix tests

* feat(workspaces): user discoverable workspaces (#2620)

* feat(workspaces): it works just trust me

* fix(workspaces): don't worry about it

* fix(workspaces); happy path success

* fix(workspaces): almost there

* fix(workspaces): successful tests!

* fix(workspaces): we have DISCOVERED (#2621)

* Fixed linting issue

* Updated query

* Updated validation rules

* Updated validation rules

* Fix unsaved file with type export

* Addressed PR comments

* Updated cache

* Updated item classes, add fragment back

* Gergo/web 1574 join workspaces via discovery (#2623)

* chore(useremails): add find verified emails by user function

* chore(workspace): table helper for workspace domains

* chore(workspace): get workspace with domains function

* chore(workspace): test get workspace with domains function

* feat(workspace): restrict workspace membership when updating workspace role

* chore(workspaces): fix types

* feat(workspaces): WIP join

* feat(workspaces): join button makes u join

* chore(useremails): fix type for find verified emails function

* feat(workspaces): join

* feat(workspace): prevent inviting user without email matching domain

* chore(workspaces): fix linter

* fix(workspaces): invoke join (gergo wrote this)

* fuck

* fix(workspaces): properly get discoverable workspaces

* fix(workspaces): test

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
Co-authored-by: Chuck Driesler <chuck@speckle.systems>

* fix(workspaces): some query stuff

* fix(workspaces): mutate cache instead of refetch

* fix(workspaces): more adjustments to gql query and fragment structure

* fix(workspaces): queries, style, structure

* fix(workspaces): match discoverability with current styles

* chore(workspaces): lint lint lint

* fix(workspaces): got it twisted

* chore(workspaces): fix test

* fix(workspaces): route to joined workspace on join

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
Co-authored-by: Chuck Driesler <chuck@speckle.systems>
Co-authored-by: Alessandro Magionami <alessandro.magionami@gmail.com>
2024-08-26 13:33:16 +02:00
Mike b07935964b Fix: Minor styling/copy updates (#2755)
* Fix: Minor styling/copy updates

* Fix linting
2024-08-26 11:43:51 +02:00
Mike a22a2fe52f Fix: Permissions on workspace dashboard 2024-08-23 17:54:20 +02:00