Files
speckle-server/packages/frontend-2/lib/projects/helpers/components.ts
T
andrewwallacespeckle ff6433128a FE2 - Embedding (#1979)
* Add Dialog

* Add options to embed dialog

* Min Height of Clipboard Input multiline to 3 lines

* Check for visibility

* Link to change access of project

* Rename to guided mode

* Change icon when user clicks copy button

* Update Menu styles based on agi feedback

* Update graphql.ts

* Embed Options as hashState

* Auto grow Clipboard Input

* embed state and more options

* Tidyups

* Footer only shows when !embedOptions.isTransparent

* Add auto/manual Load

* Add Pre setup component

* WIP Button Group mobile

* Updates around manual load

* Viewer Share nav

* Add embed dialog to project page

* Minor fixes

* Check for federated

* Responsive Tidyups

* Responsive Fixes. Fix console issues

* Add Alert to Version Embed

* Disable Zoom

* GQL updates

* Comment Slideshow

* GraphQl changes

* Fix visibility

* Build fix

* Revert "Build fix"

This reverts commit 0e706cbd9fde78204032bb1ec4421b1742d023ac.

* remove unneeded change, revert yarn.lock

* Test Commit

* Remove commit test

* Fix build

* Update Tailwind. Add base url env

* fix for portal scope issue

* useLogger

* useLogger

* chore(fe2): include NUXT_PUBLIC_BASE_URL in deployment manifests

* lazy load optimization

* lint fixes

* Updates

* Re-add guided open Dialog sections

* Prevent login popup on embed

* Tidy up mobile combined button group

* Tidy up embed Dialogs

* Small styling issues

* Update scrolling in embed dialog

* Move selection info when embed

* Testing fixes

* Discuss in Speckle

* Responsive Dialog Changes

* Fix bug

* WIP Manual Load

* Fix nuxt errors

* Fix nuxt logger issue

* Fix embed dialog overflows

* New Dialog layout

* Responsive Breakpoint change

* Preview Image

* Fix bug with dialogSection

* Hide selection info on mobile when thread is open

* Footer Model Name

* Overflow on ClipboardInput

* Style fixes

* Tidy ups

* Responsive updates

* Responsive fixes

* Update button

* Changes from testing

* Fix embed height with footer

* Fix Dialog Section

* Fixes from testing

* Move "reset filters" on embed

* Small fixes

* Updates from CR 1

* CR Comments 2

* Updates from CR

* Add deserializeEmbedOptions helper

* DialogSection changes

* Revert changes in TextArea

* Updates from CR

* Only check for noscroll in watch

* Update useRoute

* Comment Slideshow mode

* Changes from testing

* Fix mobile share button

* onMounted warn fixes

* Updates from testing

* Remove nesting of ManualLoad

* Keep Speckle text on mobile

* minor cleanup & bugfixes

* Add target prop to Logo

* navbar flash fix + more cleanup

* Fix urls

* Footer Logo changes

* Remove viewer-transparent from layout

* Add Reply in Speckle

* Remove Anchored Points from embed

* Final changes pre CR

* Fix Anchored Points

* Update packages/frontend-2/components/project/model-page/dialog/embed/Embed.vue

Co-authored-by: Kristaps Fabians Geikins <fabians@speckle.systems>

* Fixes from CR

* Updates from cr

* Changes WIP

* Fix for dialog opening

* Changes from PR

* Updates to check embed in activity

* fix(fe2): project settings dialog error

* Make Team open section on click of "Manage"

* Fixes from merge

* Changes from cr

* Compare old to new in watch

* Fix logo in footer of embed

* Fixes from merge

* Fix build. Fix lazy load

* Updates from Benjamin

* Fix transparent bg

---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
Co-authored-by: Kristaps Fabians Geikins <fabians@speckle.systems>
2024-02-06 10:38:22 +00:00

72 lines
1.6 KiB
TypeScript

import { Roles } from '@speckle/shared'
import type { Nullable, ServerRoles, StreamRoles } from '@speckle/shared'
import type { LimitedUserAvatarFragment } from '~~/lib/common/generated/gql/graphql'
export type ProjectCollaboratorListItem = {
id: string
title: string
user: Nullable<LimitedUserAvatarFragment>
role: string
inviteId: Nullable<string>
serverRole: Nullable<ServerRoles>
}
export type SelectableStreamRole = StreamRoles | 'delete'
export const roleSelectItems: Record<
SelectableStreamRole | string,
{ id: SelectableStreamRole; title: string }
> = {
[Roles.Stream.Owner]: {
id: Roles.Stream.Owner,
title: 'Owner'
},
[Roles.Stream.Contributor]: {
id: Roles.Stream.Contributor,
title: 'Can edit'
},
[Roles.Stream.Reviewer]: {
id: Roles.Stream.Reviewer,
title: 'Can view'
},
['delete']: {
id: 'delete',
title: 'Remove'
}
}
export enum CommentPermissions {
Anyone = 'anyone',
TeamMembersOnly = 'team'
}
export const commentPermissionsSelectItems: Record<
CommentPermissions,
{ id: CommentPermissions; title: string }
> = {
[CommentPermissions.Anyone]: {
id: CommentPermissions.Anyone,
title: 'Anyone can comment'
},
[CommentPermissions.TeamMembersOnly]: {
id: CommentPermissions.TeamMembersOnly,
title: 'Only team members can comment'
}
}
export enum VersionActionTypes {
Delete = 'delete',
MoveTo = 'move-to',
EditMessage = 'edit-message',
Select = 'select',
Share = 'share',
CopyId = 'copy-id',
EmbedModel = 'embed-model'
}
export enum OpenSectionType {
Invite = 'invite',
Access = 'access',
Team = 'team'
}