Commit Graph

47 Commits

Author SHA1 Message Date
Mike d88507566b Feat: Add Workspace Joined event (#2936)
* Feat: Add Workspace Joined event

* Feat: Add Workspace Joined event

* Remove event property

* Remove event property
2024-09-11 10:58:54 +02:00
Mike 7c00a1de80 Feat: Mixpanel workspace groups add properties (#2904) 2024-09-10 14:18:29 +02:00
Chuck Driesler 624716cf5d chore(workspaces): shorten discoverable workspace copy (#2910) 2024-09-09 18:46:15 +01:00
Mike b5e93e6d40 Feat: Empty state for workspaces (#2908) 2024-09-09 19:22:07 +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
Chuck Driesler d06f44329b Dismissable invite banners for discoverable workspaces (#2892)
* fix(workspaces): dismissable join banners

* fix(workspaces): correctly update cookie
2024-09-09 09:56:46 +01:00
Chuck Driesler 4896816506 fix(workspaces): mutate on join workspace (#2833)
* 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

* fix(workspaces): also mutate cache on join

* fix(workspaces): more better

---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2024-09-05 23:25:27 +01:00
andrewwallacespeckle 0e01119b3b feat(fe2): Open settings on click of users or version count (#2879)
* Open settings on click of users or version count

* Update to use SettingMenuKeys
2024-09-05 11:20:31 +01:00
Kristaps Fabians Geikins 04d0ee074f fix(fe2): default error skip logic & error policy (#2875) 2024-09-05 11:33:38 +03:00
Mike 93f5eb81b2 Fix: Remove 'workspaces' from breadcrumbs (#2871) 2024-09-04 16:11:33 +02:00
Mike fba72eaf7a Fix: Show version count for all members (#2868) 2024-09-04 08:24:30 +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
Chuck Driesler 39c34b1b78 fix(workspaces): safer billing query for guests (#2844)
* fix(workspaces): safer billing query for guests

* chore(workspaces): comment

* chore(workspaces): lint

* chore(workspaces): ope
2024-09-02 15:23:27 +01:00
Mike f50de80338 Fix: Check for domain policy on workspace invites (#2846) 2024-09-02 14:12:09 +01:00
Mike f820084f03 Fix: Dont allow non domain policy matching members to be invited to workspace (#2838) 2024-09-02 14:05:16 +02:00
Kristaps Fabians Geikins b83b9b43f0 fix(fe2): workspace header hydration mismatch (#2842) 2024-09-02 13:30:49 +03:00
Alessandro Magionami 4ac6d6dbd3 Merge pull request #2841 from specklesystems/alessandro/web-1762-improve-workspace-discovery-message
chore(workspaces): update discoverability message
2024-09-02 12:19:18 +02:00
Mike 1ad990d438 Fix: Workspace and project header styling (#2839) 2024-09-02 12:14:26 +02:00
Alessandro Magionami 3fa126a92b chore(workspaces): update discoverability message 2024-09-02 12:08:19 +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
Mike e62a68cee7 Feat: Add role label, version count, and update styling of project header (#2820) 2024-08-30 12:44:51 +02:00
Chuck Driesler 8ec0d364cb Chuck/web 1614 unify workspaceproject role creation (#2795)
* fix(workspaces): transact all simultaneous workspace-project role changes

* fix(workspaces): more correct usage of transactions

* fix(workspaces): add tests for transaction-based role changes

* fix(workspaces): do not leak knex into domain

* fix(workspaces): transaction-ify factory functions

* fix(workspaces): factory-ify some old functions

* fix(workspaces): missed a resolver

* chore(workspaces): get tests in order

* park it

* chore(workspaces): failing tests

* WHAT DO YOU WANT

* fix(workspaces): i lived bitch

* fix(workspaces): remove test that is no longer true

* fix(workspaces): better repo/service boundaries

* right

* fix(workspaces): service in injected

* fix(workspaces): repair references

* refactor(workspaces): role management rework

* chore(workspaces): adjust tests to match new behaviour

* lint lint lint

* fix(workspaces): fix tests

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-08-30 09:56:56 +02: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
Mike b84efcc8f2 Feat: Add more workspace mixpanel events (#2806) 2024-08-29 13:14:13 +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
andrewwallacespeckle f27a1262f6 feat(fe2): Align workspace member tables with designs (#2747)
* Upate LayoutMent to mount on body. Add to members table

* Updates pre PR

* Update button style

* Remove leave workspace option

* gql

* Invites Table

* Update other LayoutMenus

* Fix individual menu toggle behaviour

* Remove wrong comment

* Add margins to tables
2024-08-27 15:11:42 +01:00
Mike 986f438851 Fix: Update invite banners styling (#2768) 2024-08-27 15:20:36 +02:00
Mike 01c9fb4e55 Feat: Workspace creation wizard should allow for optional logo (#2757)
* Fixed reactivity, added workspace logo to create workspace modal

* Reverse order so name is focussed first

* Fix typo

* feat(workspaces): allow sending the logo on ws creation

* Fix avatar uploading

* Added default index 0

* fix(workspaces): maybe default logo

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-08-26 17:20:43 +02: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 a22a2fe52f Fix: Permissions on workspace dashboard 2024-08-23 17:54:20 +02:00
Mike 976bb680f0 Feat: Add link to settings to workspace dashboard (#2745) 2024-08-23 16:29:18 +02:00
andrewwallacespeckle b957f5aa83 fix(fe2): Various bugfixes from testing (#2744)
* Update workspace header. Style login button in menu

* Fix misalignment in tabs

* Remove NuxtImg. Move file

* Update yarn.lock

* Move image to assets
2024-08-23 15:27:42 +01:00
andrewwallacespeckle 5b51e3b1be feat(fe2) Implement workspaces explainer page (#2735)
* Workspaces Page

* Add NuxtImg

* New designs

* Navigate on success option

* Add sidebar item

* Fix capitalisation

* Use CommonCard
2024-08-23 11:13:50 +01: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
Mike 17b89e4cb4 Feat: Added delete user from workspace button (#2726) 2024-08-22 13:35:32 +02:00
Mike 4189d6a5f0 Fix: dont show workspace projects empty state during search (#2729) 2024-08-22 11:22:22 +02:00
Chuck Driesler 63735eb044 feat(workspaces): work(space) invader default logos (#2708)
* feat(workspaces): add default logo index

* Added WorkspaceAvatar component

* Added WorkspaceAvatar component

* Fix issues

* Fix Avatar

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-08-21 13:53:37 +01:00
Mike e957259970 Fix: Minor workspace related styling tweaks (#2705) 2024-08-20 15:01:18 +02:00
Kristaps Fabians Geikins e4cc0cbc83 fix(workspaces): add email to existing account workflow bugfix (#2703)
* fix(fe2): properly handling invitedTeam auth error

* fix(fe2): disable invite dialog if not workspace admin

* fix(useremails): fix for default primary:true when creating new emails

* test fix
2024-08-20 15:45:34 +03:00
andrewwallacespeckle 8ca5c99aa1 Andrew/web 1338 implement new navigation (#2668)
* Initial Sidebar Implementation

* Updates to sidebar

* Use NuxtLinks in FE2 not UI-Components

* Move sidebar to component

* Active State

* Responsive menu

* Update sidebar links

* Add Projects Page. Improve routing

* Small fixes

* Responsive fixes

* TopBar refactor

* Topbar improvements

* User Menu Updates

* Responsive/Topbar improvements

* Various minor changes

* Update sidebar icon

* Revert dui3 change

* Potential fix for login issue

* Fix login issue. Improve empty state for projects

* Add Project & Workspace Invites to notification

* Revert "Add Project & Workspace Invites to notification"

This reverts commit ac33dd0cb1fc47cd5c6e2925ee2a6bbea328d94f.

* Updates to Project Invite Notifications

* Add scroll to Sidebar component

* Dashboard Card targets

* Changes to logo

* Small responsive fixes

* Remove unused alias

* Minor tidy ups

* Updates from CR

* Dashboard Header

* Add padding to non-collapsible headings

* Add Project empty state
2024-08-20 11:11:15 +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 49d6705630 fix(fe2): workspace invite sign out cta fix (#2689) 2024-08-19 16:22:03 +03:00
Kristaps Fabians Geikins 7323db223c feat(fe2): proper unregistered accept/decline support (#2687) 2024-08-19 15:37:50 +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