e72b193f06
* Add settings tab. Update style of component * Structuring of files/components * Updates to TexInput * Add RadioGroup * Last FE work * FE Updates * Webhooks Settings Tab * Styling updates to webhooks * Title/Description Update * General Page done * Collaborators WIP * Styling updates * Add custom message to updateProject * Radio Group Same Height * Styling updates to radio group. Disabled state * Updates pre demo * Updates to icons & post demo changes * Major Updates * Unsaved Changes Dialog * Routing WIP * Remove StatsBlock * Auto update discussions on Private * Routing/Redirects * New input style * Invite Dialog * Fix mobile radiogroup * Mobile Improvements * Fix console warning * Fix build * Disabled States * Fix console * Unhide webhooks * Updates from testing * Responsive fixes * Alignment fixes * Fix textarea mobile height * Updates to GraphQL Fragments * Fix disabled state * WIP Arrows for scroll * Update PageTabs - broken * Fix to PageTabs * PageTab fix initial scroll * Hide Scrollbar * Better underline method * Fix mobile initial underline * Webhooks Empty State * Fix input border * Fix empty state * Input Styling updates * Remove mobile smaller text * Update disabled state for disabled items * Updates disabled sates on Settings Block * Fix build. Disable Invite * Fixes to invite permissions * Disable role select when invite is disabled * Small alignment fix * Fix webhooks empty state * cleaning up unnecessary vue files * story improvement * Remove DisabledMessage prop * Fix disabled prop on Button * Move team to Leave Fragment * Remove unused Disabled Message props * Add limit to graphql query * Updates to BlockDiscussions * add formatTriggers function to webhooks * Remove md from button. Improved switch * Update RadioGroup.stories.ts * Update RadioGroup to use defineModel * Various styling and copy updates - More concise and accurate copy - More readable - Works better on mobile * Updates to Invite Dialog * Custom success Message * Update slot names * Remove md in TextInput. Set h-8 to default * Changes from call with fabs * Replace isOwner with composable * Set SettingsBlock icon as optional * Comments from PR * Updates from PR * Final Tidy Ups * Fix Title/Description * Fix spacing issue on Webhooks page * Update borders and colors to align with Automate Makes the same changes that I recently made to the unreleased Automate tab * WEB-869 * Improve styling of radiogroup component Better borders, hover effect, bigger checkmark icon, more subtle active background color, same across breakpoints. * Adjust border styling of RadioGroup component * Improve circle around checkmark in RadioGroup * Split Tabs into 2 components * Restyle overflow arrows * Adjust gap and remove icons from vertical nav Too many icons on the screen got distracting. * Ensure active item visible * Increase gap on vertical nav * Update copy for Access and Discussions settings * Input Tidyup * WEB-877 update-collaborators-block * Update inputs to new style * Fix webhooks button hover state * Fix comment copy Appears in the access settings before embedding a model * Remove hover shadow from search input on Dashboard * Small change from Benjamin * Change collaborators permissions copy * Comments from PR #1 * Comments from PR #2 * Fix condition for EditableHeader * Updates from CR --------- Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com> Co-authored-by: Benjamin Ottensten <benjamin.ottensten@gmail.com>
72 lines
1.6 KiB
TypeScript
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 collaborators 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'
|
|
}
|