* WIP can create project
* WIP can create project more work
* complete body, stencil tests
* feat(shared): move workspace plan types into shared
* test progress wip
* feat(shared): add more logic to canCreateWorkspaceProject
* a few more tests, as a treat
* chore(authz): round out tests
* fixed loaders, new GQL checks, dataLoaders in auth loaders
* fix(authz): get workspace limits loader
* chore(authz): update loaders
* frontend fixed up to snuff
* fix(authz): fix workspace plans for tests
* fix(authz): classic
* fix(authz): 0 counts
---------
Co-authored-by: Chuck Driesler <chuck@speckle.systems>
Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
* fix(workspaces): make discoverable workspace dismiss sticky
* Modify cache instead of refetch
* Add to new cards
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
* New middleware. New page structure
* Changes from designs
* New workspace creation flow
* FF Hide SSO
* No middleware with no FF
* When to show join
* Update Join description text based on count
* Use new FF
* Major changes
* Update join text
* New FF in middleware
* Discoverable Banners
* Fix cache warning
* Undo merge conflict
* Revert merge conflicts
* Remove unneeded change
* Rename
* Revert merge issues
* Fix error
* Remove FF
* Check workspaces is enabled
* Use FF to show old onboarding flow
* Remove unused FF
* Fixes from PR
* Remove Region & SSO
* Revert workspace wizard changes
* WorkspaceDiscoverableWorkspacesCard
* Remove old code that was hidden with FF
* Fix
* Changes from call with Mike
* Fix typo
* Fix typo
* Update JoinPage.vue
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
* New SelectMulti with no headless
* Use FormSelectMulti in developer settings
* Fix build
* isMultiItemSelected
* minor
* Tidy up FormSelectBase useage
* fix(automate): redirect to workspace after auth if possible
* fix(automate): include session in github auth flow
* chore(automate): update props after merge
* fix(automate): pick => fragment
* fix(automate): use fragments correctly
* 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>
* 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>