diff --git a/app/client/ui/DocMenu.ts b/app/client/ui/DocMenu.ts index 20ad2ca5..8e4d32be 100644 --- a/app/client/ui/DocMenu.ts +++ b/app/client/ui/DocMenu.ts @@ -129,7 +129,7 @@ function createLoadedDocMenu(owner: IDisposableOwner, home: HomeModel) { hasFeaturedTemplates ? t("More Examples and Templates") : t("Examples and Templates") ) : page === 'trash' ? t("Trash") : - workspace && [css.docHeaderIcon('Folder'), workspaceName(home.app, workspace)] + workspace && [css.docHeaderIcon(workspace.shareType === 'public' ? 'Folder' : 'FolderPrivate'), workspaceName(home.app, workspace)] ), testId('doc-header'), ), @@ -180,8 +180,7 @@ function buildAllDocsBlock( return css.docBlock( css.docBlockHeaderLink( - css.wsLeft( - css.docHeaderIcon('Folder'), + css.wsLeft(css.docHeaderIcon(ws.shareType === 'public' ? 'Folder' : 'FolderPrivate'), workspaceName(home.app, ws), ), @@ -266,7 +265,7 @@ function buildAllTemplates(home: HomeModel, templateWorkspaces: Observable, home: Hom // TODO: Introduce a "SwitchSelector" pattern to avoid the need for N computeds (and N // recalculations) to select one of N items. const isRenaming = computed((use) => use(renaming) === ws); + const iconName = ws.shareType === 'public' ? 'Folder' : 'FolderPrivate'; return cssPageEntry( dom.autoDispose(isRenaming), dom.autoDispose(isTrivial), dom.hide(isTrivial), cssPageEntry.cls('-selected', (use) => use(home.currentWSId) === ws.id), - cssPageLink(cssPageIcon('Folder'), cssLinkText(workspaceName(home.app, ws)), + cssPageLink( + cssPageIcon(iconName, + cssPageIcon.cls(`-${ws.shareType}`) + ), cssLinkText(workspaceName(home.app, ws)), dom.hide(isRenaming), urlState().setLinkUrl({ws: ws.id}), // Don't show menu if workspace is personal and shared by another user; we could @@ -92,7 +96,8 @@ export function createHomeLeftPane(leftPanelOpen: Observable, home: Hom ), cssPageEntry.cls('-renaming', isRenaming), dom.maybe(isRenaming, () => - cssPageLink(cssPageIcon('Folder'), + cssPageLink( + cssPageIcon(iconName), cssEditorInput({ initialValue: ws.name || '', save: async (val) => (val !== ws.name) ? home.renameWorkspace(ws.id, val) : undefined, diff --git a/app/client/ui/LeftPanelCommon.ts b/app/client/ui/LeftPanelCommon.ts index 533fd9e8..01ae22e9 100644 --- a/app/client/ui/LeftPanelCommon.ts +++ b/app/client/ui/LeftPanelCommon.ts @@ -154,7 +154,10 @@ export const cssLinkText = styled('span', ` export const cssPageIcon = styled(icon, ` flex: none; + width: 24px; + height: 24px; margin-right: var(--page-icon-margin, 8px); + --icon-color: ${theme.lightText}; .${cssTools.className}-collapsed & { margin-right: 0; } diff --git a/app/client/ui/PinnedDocs.ts b/app/client/ui/PinnedDocs.ts index 7077749c..059ee336 100644 --- a/app/client/ui/PinnedDocs.ts +++ b/app/client/ui/PinnedDocs.ts @@ -45,7 +45,13 @@ export function buildPinnedDoc(home: HomeModel, doc: Document, workspace: Worksp cssImage({src: doc.options.icon}) : [docInitials(doc.name), pinnedDocThumbnail()] ), - (doc.public && !isExample ? cssPublicIcon('PublicFilled', testId('public')) : null), + (!isExample ? cssPublicIcon(doc.shareType === 'public' + ? 'FilePublic' + : doc.shareType === 'shared' + ? 'FileShared' + : 'FilePrivate', + cssPublicIcon.cls(doc.shareType === 'public' ? `-${doc.shareType}` : ''), + testId('public')) : null), pinnedDocPreview.cls('-with-icon', Boolean(doc.options?.icon)), ), pinnedDocFooter( @@ -274,5 +280,10 @@ const cssPublicIcon = styled(icon, ` position: absolute; top: 16px; left: 16px; - --icon-color: ${theme.accentIcon}; + width: 20px; + height: 20px; + --icon-color: ${theme.lightText}; + &-public { + --icon-color: ${colors.lightGreen}; + } `); diff --git a/app/client/ui2018/IconList.ts b/app/client/ui2018/IconList.ts index c9ab4e66..f1d2d8a4 100644 --- a/app/client/ui2018/IconList.ts +++ b/app/client/ui2018/IconList.ts @@ -68,11 +68,15 @@ export type IconName = "ChartArea" | "EyeHide" | "EyeShow" | "Feedback" | + "FilePrivate" | + "FilePublic" | + "FileShared" | "Filter" | "FilterSimple" | "Fireworks" | "Flag" | "Folder" | + "FolderPrivate" | "FontBold" | "FontItalic" | "FontStrikethrough" | @@ -231,11 +235,15 @@ export const IconList: IconName[] = ["ChartArea", "EyeHide", "EyeShow", "Feedback", + "FilePrivate", + "FilePublic", + "FileShared", "Filter", "FilterSimple", "Fireworks", "Flag", "Folder", + "FolderPrivate", "FontBold", "FontItalic", "FontStrikethrough", diff --git a/app/common/UserAPI.ts b/app/common/UserAPI.ts index efc08042..115bc47d 100644 --- a/app/common/UserAPI.ts +++ b/app/common/UserAPI.ts @@ -119,6 +119,7 @@ export interface Workspace extends WorkspaceProperties { org: Organization; orgDomain?: string; access: roles.Role; + shareType?: string; owner?: FullUser; // Set when workspaces are in the "docs" pseudo-organization, // assembled from multiple personal organizations. // Not set when workspaces are all from the same organization. @@ -161,6 +162,7 @@ export interface Document extends DocumentProperties { id: string; workspace: Workspace; access: roles.Role; + shareType?: string; trunkAccess?: roles.Role|null; forks?: Fork[]; } diff --git a/app/gen-server/lib/homedb/HomeDBManager.ts b/app/gen-server/lib/homedb/HomeDBManager.ts index 58e6a561..71cc70d8 100644 --- a/app/gen-server/lib/homedb/HomeDBManager.ts +++ b/app/gen-server/lib/homedb/HomeDBManager.ts @@ -697,6 +697,36 @@ export class HomeDBManager extends EventEmitter { ws.owner = o.owner; // Include the org's domain so that the UI can build doc URLs that include the org. ws.orgDomain = o.domain; + + // Include shareType based on users permissions to set icon color + const {maxInheritedRole, users } = this.unwrapQueryResult( + await this.getWorkspaceAccess({userId: scope.userId}, ws.id, true) + ); + const permissionDataUsers = users.filter((user) => { + // effectiveRole - Gives the effective role of the member on the resource, taking everything into account. + return !!roles.getStrongestRole(user.access, + roles.getWeakestRole(user.parentAccess, maxInheritedRole)); + }); + if (permissionDataUsers?.length > 1) { + ws.shareType = permissionDataUsers.find((user) => user.email === EVERYONE_EMAIL || user.email === ANONYMOUS_USER_EMAIL || user.id !== scope.userId) + ? 'public' + : 'private'; + + for(const doc of ws.docs) { + const permissionDataUsersDoc = this.unwrapQueryResult( + await this.getDocAccess({userId: scope.userId, urlId: doc.urlId}, { + flatten: true, excludeUsersWithoutAccess: true, realAccess: true + })).users; + if (permissionDataUsersDoc && permissionDataUsersDoc.length > 1) { + doc.shareType = permissionDataUsersDoc.find((user) => user.email === EVERYONE_EMAIL + || user.email === ANONYMOUS_USER_EMAIL) + ? 'public' + : permissionDataUsersDoc.find((user) => user.id !== scope.userId) + ? 'shared' + : 'private'; + } + } + } } } // For org-specific requests, we still have the org's workspaces, plus the Samples workspace @@ -2153,7 +2183,8 @@ export class HomeDBManager extends EventEmitter { // Returns UserAccessData for all users with any permissions on the ORG, as well as the // maxInheritedRole set on the workspace. Note that information for all users in the org // is given to indicate which users have access to the org but not to this particular workspace. - public async getWorkspaceAccess(scope: Scope, wsId: number): Promise> { + public async getWorkspaceAccess(scope: Scope, wsId: number, + realAccess?: boolean): Promise> { // Run the query for the workspace and org in a transaction. This brings some isolation protection // against changes to the workspace or org while we are querying. const { workspace, org, queryFailure } = await this._connection.transaction(async manager => { @@ -2199,7 +2230,7 @@ export class HomeDBManager extends EventEmitter { }; }); const maxInheritedRole = this._getMaxInheritedRole(workspace); - const personal = this._filterAccessData(scope, users, maxInheritedRole); + const personal = this._filterAccessData(scope, users, maxInheritedRole, realAccess); return { status: 200, data: { @@ -2230,6 +2261,7 @@ export class HomeDBManager extends EventEmitter { public async getDocAccess(scope: DocScope, options?: { flatten?: boolean, excludeUsersWithoutAccess?: boolean, + realAccess?: boolean }): Promise> { // Doc permissions of forks are based on the "trunk" document, so make sure // we look up permissions of trunk if we are on a fork (we'll fix the permissions @@ -2282,7 +2314,7 @@ export class HomeDBManager extends EventEmitter { maxInheritedRole = null; } - const personal = this._filterAccessData(scope, users, maxInheritedRole, doc.id); + const personal = this._filterAccessData(scope, users, maxInheritedRole, options?.realAccess, doc.id); // If we are on a fork, make any access changes needed. Assumes results // have been flattened. @@ -4356,6 +4388,7 @@ export class HomeDBManager extends EventEmitter { scope: Scope, users: UserAccessData[], maxInheritedRole: roles.BasicRole|null, + realAccess?: boolean, docId?: string ): {personal: true, public: boolean}|undefined { if (scope.userId === this._usersManager.getPreviewerUserId()) { return; } @@ -4366,15 +4399,15 @@ export class HomeDBManager extends EventEmitter { const thisUser = this._usersManager.getAnonymousUserId() === scope.userId ? null : users.find(user => user.id === scope.userId); - const realAccess = thisUser ? getRealAccess(thisUser, { maxInheritedRole, users }) : null; + const realAccessUser = thisUser ? getRealAccess(thisUser, { maxInheritedRole, users }) : null; // If we are an owner, don't filter user information. - if (thisUser && realAccess === 'owners') { return; } + if ((thisUser && realAccessUser === 'owners') || realAccess) { return; } // Limit user information returned to being about the current user. users.length = 0; if (thisUser) { users.push(thisUser); } - return { personal: true, public: !realAccess }; + return { personal: true, public: !realAccessUser }; } private _getWorkspaceWithACLRules(scope: Scope, wsId: number, options: Partial = {}) { diff --git a/static/icons/icons.css b/static/icons/icons.css index 99b4068e..fbf22b2b 100644 --- a/static/icons/icons.css +++ b/static/icons/icons.css @@ -33,6 +33,12 @@ --icon-FieldText: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcuNSwxMyBMNy41LDMgTDMsMyBMMyw0LjUgQzMsNC43NzYxNDIzNyAyLjc3NjE0MjM3LDUgMi41LDUgQzIuMjIzODU3NjMsNSAyLDQuNzc2MTQyMzcgMiw0LjUgTDIsMi41IEMyLDIuMjIzODU3NjMgMi4yMjM4NTc2MywyIDIuNSwyIEwxMy41LDIgQzEzLjc3NjE0MjQsMiAxNCwyLjIyMzg1NzYzIDE0LDIuNSBMMTQsNC41IEMxNCw0Ljc3NjE0MjM3IDEzLjc3NjE0MjQsNSAxMy41LDUgQzEzLjIyMzg1NzYsNSAxMyw0Ljc3NjE0MjM3IDEzLDQuNSBMMTMsMyBMOC41LDMgTDguNSwxMyBMMTAuNSwxMyBDMTAuNzc2MTQyNCwxMyAxMSwxMy4yMjM4NTc2IDExLDEzLjUgQzExLDEzLjc3NjE0MjQgMTAuNzc2MTQyNCwxNCAxMC41LDE0IEw1LjUsMTQgQzUuMjIzODU3NjMsMTQgNSwxMy43NzYxNDI0IDUsMTMuNSBDNSwxMy4yMjM4NTc2IDUuMjIzODU3NjMsMTMgNS41LDEzIEw3LjUsMTMgWiIgZmlsbD0iIzAwMCIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9zdmc+'); --icon-FieldTextbox: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIuNSwxMyBDMi4yMjM4NTc2MywxMyAyLDEyLjc3NjE0MjQgMiwxMi41IEMyLDEyLjIyMzg1NzYgMi4yMjM4NTc2MywxMiAyLjUsMTIgTDEzLjUsMTIgQzEzLjc3NjE0MjQsMTIgMTQsMTIuMjIzODU3NiAxNCwxMi41IEMxNCwxMi43NzYxNDI0IDEzLjc3NjE0MjQsMTMgMTMuNSwxMyBMMi41LDEzIFogTTIuNSw0IEMyLjIyMzg1NzYzLDQgMiwzLjc3NjE0MjM3IDIsMy41IEMyLDMuMjIzODU3NjMgMi4yMjM4NTc2MywzIDIuNSwzIEwxMy41LDMgQzEzLjc3NjE0MjQsMyAxNCwzLjIyMzg1NzYzIDE0LDMuNSBDMTQsMy43NzYxNDIzNyAxMy43NzYxNDI0LDQgMTMuNSw0IEwyLjUsNCBaIE0yLjUsOC41IEMyLjIyMzg1NzYzLDguNSAyLDguMjc2MTQyMzcgMiw4IEMyLDcuNzIzODU3NjMgMi4yMjM4NTc2Myw3LjUgMi41LDcuNSBMMTMuNSw3LjUgQzEzLjc3NjE0MjQsNy41IDE0LDcuNzIzODU3NjMgMTQsOCBDMTQsOC4yNzYxNDIzNyAxMy43NzYxNDI0LDguNSAxMy41LDguNSBMMi41LDguNSBaIiBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4='); --icon-FieldToggle: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTguNjQ1ODI0NCwxMSBMMTAsMTEgQzExLjY1Njg1NDIsMTEgMTMsOS42NTY4NTQyNSAxMyw4IEMxMyw2LjM0MzE0NTc1IDExLjY1Njg1NDIsNSAxMCw1IEw4LjY0NTgyNDQsNSBDOS40NzYyNDUxMSw1LjczMjk0NDQ1IDEwLDYuODA1MzA3NDcgMTAsOCBDMTAsOS4xOTQ2OTI1MyA5LjQ3NjI0NTExLDEwLjI2NzA1NTUgOC42NDU4MjQ0LDExIFogTTYsNCBMMTAsNCBDMTIuMjA5MTM5LDQgMTQsNS43OTA4NjEgMTQsOCBDMTQsMTAuMjA5MTM5IDEyLjIwOTEzOSwxMiAxMCwxMiBMNiwxMiBDMy43OTA4NjEsMTIgMiwxMC4yMDkxMzkgMiw4IEMyLDUuNzkwODYxIDMuNzkwODYxLDQgNiw0IFogTTYsMTEgQzcuNjU2ODU0MjUsMTEgOSw5LjY1Njg1NDI1IDksOCBDOSw2LjM0MzE0NTc1IDcuNjU2ODU0MjUsNSA2LDUgQzQuMzQzMTQ1NzUsNSAzLDYuMzQzMTQ1NzUgMyw4IEMzLDkuNjU2ODU0MjUgNC4zNDMxNDU3NSwxMSA2LDExIFoiIGZpbGw9IiMwMDAiIGZpbGwtcnVsZT0ibm9uemVybyIvPjwvc3ZnPg=='); + --icon-FieldUser: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDx0aXRsZT5JY29ucyAvIEZpZWxkcyAvIEZpZWxkVXNlcjwvdGl0bGU+CiAgICA8ZyBpZD0iSWNvbnMtLy1GaWVsZHMtLy1GaWVsZFVzZXIiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNOCAyQzYuMTM2MDQgMiA0LjYyNSAzLjUxMTA0IDQuNjI1IDUuMzc1QzQuNjI1IDcuMjM4OTYgNi4xMzYwNCA4Ljc1IDggOC43NUM5Ljg2Mzk2IDguNzUgMTEuMzc1IDcuMjM4OTYgMTEuMzc1IDUuMzc1QzExLjM3NSAzLjUxMTA0IDkuODYzOTYgMiA4IDJaTTUuMzc1IDUuMzc1QzUuMzc1IDMuOTI1MjUgNi41NTAyNSAyLjc1IDggMi43NUM5LjQ0OTc1IDIuNzUgMTAuNjI1IDMuOTI1MjUgMTAuNjI1IDUuMzc1QzEwLjYyNSA2LjgyNDc1IDkuNDQ5NzUgOCA4IDhDNi41NTAyNSA4IDUuMzc1IDYuODI0NzUgNS4zNzUgNS4zNzVaIiBmaWxsPSJibGFjayIvPgogICAgICAgIDxwYXRoIGQ9Ik0zLjc0MDM2IDEwLjc2OThDNC4yNzc0NyAxMC4zNjk3IDQuOTA3NCAxMC4wNjMxIDUuMzUwMzQgOS45MTgxNEM1LjY5NjgxIDEwLjA5NjYgNi41OTYwNCAxMC40NzI0IDcuOTk5ODYgMTAuNDcyNEM5LjQwMzc1IDEwLjQ3MjQgMTAuMzAzMSAxMC4wOTY1IDEwLjY0OTYgOS45MTgxM0MxMS4wOTI2IDEwLjA2MzEgMTEuNzIyNSAxMC4zNjk2IDEyLjI1OTcgMTAuNzY5OEMxMi42NzcxIDExLjA4MDggMTMuMjUgMTEuNTY1NSAxMy4yNSAxMi4xNDA2SDE0QzE0IDExLjMwNjggMTMuMzMxMyAxMC42MzI5IDEyLjcwNzcgMTAuMTY4NEMxMi4wNTgxIDkuNjg0MzUgMTEuMzIyNiA5LjMxOTI2IDEwLjU0MTEgOS4xMDc0M0M5LjgwMzIgOS41ODgyNCA4Ljg2MjE1IDkuNzIyNDMgNy45OTk4NiA5LjcyMjQzQzcuMTM4MDIgOS43MjI0MyA2LjE5NjI4IDkuNTg4NTYgNS40NTg4OSA5LjEwNzQyQzQuNjc3NDIgOS4zMTkyNyAzLjk0MTk1IDkuNjg0MzcgMy4yOTIyNyAxMC4xNjg0QzIuNjY4NzIgMTAuNjMzIDIgMTEuMzA2OSAyIDEyLjE0MDZDMiAxMy4yNzk5IDMuNDk5NTUgMTMuNjE0OSA0LjM2OTQ4IDEzLjc2NTZDNS41NTkwNyAxMy45NzE2IDYuOTkzOTEgMTQgOC4wMDEwNSAxNEM5LjAyMjcgMTQgOS45MDUzIDEzLjkzNDYgMTAuNTMzMiAxMy44NjkyQzEwLjg3MDYgMTMuODM0IDExLjIwODkgMTMuNzk1MiAxMS41NDMzIDEzLjczNjhDMTEuNTQzMyAxMy43MzY4IDExLjQyOTYgMTMuMDkxNCAxMS40MTMxIDEyLjk5ODJDMTEuMDk2IDEzLjA1MyAxMC43NzUzIDEzLjA4OTkgMTAuNDU1NCAxMy4xMjMyQzkuODQ3NjUgMTMuMTg2NiA4Ljk5MTU1IDEzLjI1IDguMDAxMDUgMTMuMjVDNi45OTYwMyAxMy4yNSA1LjYxNzg1IDEzLjIyMDYgNC40OTc0NSAxMy4wMjY2QzQuMDc4NSAxMi45NTQgMi43NSAxMi43NzQ5IDIuNzUgMTIuMTQwNkMyLjc1IDExLjU2NTUgMy4zMjI4OSAxMS4wODA4IDMuNzQwMzYgMTAuNzY5OFoiIGZpbGw9ImJsYWNrIi8+CiAgICAgICAgPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik04IDJDNi4xMzYwNCAyIDQuNjI1IDMuNTExMDQgNC42MjUgNS4zNzVDNC42MjUgNy4yMzg5NiA2LjEzNjA0IDguNzUgOCA4Ljc1QzkuODYzOTYgOC43NSAxMS4zNzUgNy4yMzg5NiAxMS4zNzUgNS4zNzVDMTEuMzc1IDMuNTExMDQgOS44NjM5NiAyIDggMlpNNS4zNzUgNS4zNzVDNS4zNzUgMy45MjUyNSA2LjU1MDI1IDIuNzUgOCAyLjc1QzkuNDQ5NzUgMi43NSAxMC42MjUgMy45MjUyNSAxMC42MjUgNS4zNzVDMTAuNjI1IDYuODI0NzUgOS40NDk3NSA4IDggOEM2LjU1MDI1IDggNS4zNzUgNi44MjQ3NSA1LjM3NSA1LjM3NVoiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMC4yIi8+CiAgICAgICAgPHBhdGggZD0iTTMuNzQwMzYgMTAuNzY5OEM0LjI3NzQ3IDEwLjM2OTcgNC45MDc0IDEwLjA2MzEgNS4zNTAzNCA5LjkxODE0QzUuNjk2ODEgMTAuMDk2NiA2LjU5NjA0IDEwLjQ3MjQgNy45OTk4NiAxMC40NzI0QzkuNDAzNzUgMTAuNDcyNCAxMC4zMDMxIDEwLjA5NjUgMTAuNjQ5NiA5LjkxODEzQzExLjA5MjYgMTAuMDYzMSAxMS43MjI1IDEwLjM2OTYgMTIuMjU5NyAxMC43Njk4QzEyLjY3NzEgMTEuMDgwOCAxMy4yNSAxMS41NjU1IDEzLjI1IDEyLjE0MDZIMTRDMTQgMTEuMzA2OCAxMy4zMzEzIDEwLjYzMjkgMTIuNzA3NyAxMC4xNjg0QzEyLjA1ODEgOS42ODQzNSAxMS4zMjI2IDkuMzE5MjYgMTAuNTQxMSA5LjEwNzQzQzkuODAzMiA5LjU4ODI0IDguODYyMTUgOS43MjI0MyA3Ljk5OTg2IDkuNzIyNDNDNy4xMzgwMiA5LjcyMjQzIDYuMTk2MjggOS41ODg1NiA1LjQ1ODg5IDkuMTA3NDJDNC42Nzc0MiA5LjMxOTI3IDMuOTQxOTUgOS42ODQzNyAzLjI5MjI3IDEwLjE2ODRDMi42Njg3MiAxMC42MzMgMiAxMS4zMDY5IDIgMTIuMTQwNkMyIDEzLjI3OTkgMy40OTk1NSAxMy42MTQ5IDQuMzY5NDggMTMuNzY1NkM1LjU1OTA3IDEzLjk3MTYgNi45OTM5MSAxNCA4LjAwMTA1IDE0QzkuMDIyNyAxNCA5LjkwNTMgMTMuOTM0NiAxMC41MzMyIDEzLjg2OTJDMTAuODcwNiAxMy44MzQgMTEuMjA4OSAxMy43OTUyIDExLjU0MzMgMTMuNzM2OEMxMS41NDMzIDEzLjczNjggMTEuNDI5NiAxMy4wOTE0IDExLjQxMzEgMTIuOTk4MkMxMS4wOTYgMTMuMDUzIDEwLjc3NTMgMTMuMDg5OSAxMC40NTU0IDEzLjEyMzJDOS44NDc2NSAxMy4xODY2IDguOTkxNTUgMTMuMjUgOC4wMDEwNSAxMy4yNUM2Ljk5NjAzIDEzLjI1IDUuNjE3ODUgMTMuMjIwNiA0LjQ5NzQ1IDEzLjAyNjZDNC4wNzg1IDEyLjk1NCAyLjc1IDEyLjc3NDkgMi43NSAxMi4xNDA2QzIuNzUgMTEuNTY1NSAzLjMyMjg5IDExLjA4MDggMy43NDAzNiAxMC43Njk4WiIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIwLjIiLz4KICAgIDwvZz4KPC9zdmc+'); + --icon-FilePrivate: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzY2OF8zNzk0OSkiPgo8cGF0aCBkPSJNMTQuMjM5OSA4LjI1MDU5VjYuODYzNkMxNC4yMzk5IDQuNjg4OTUgMTIuNDI3NyAyLjkxNjY5IDEwLjIwMzkgMi45MTY2OUM3Ljk4MDIgMi45MTY2OSA2LjE3NjcgNC42ODg5NSA2LjE3NjcgNi44NjM2VjguMjUwNTlDNS4yODM3IDguMzcwNDUgNC41ODMzMSA5LjExNTMyIDQuNTgzMzEgMTAuMDIyOVYxNC44NzczQzQuNTgzMzEgMTUuODYxOSA1LjQwNjI3IDE2LjY2NjcgNi40MTMwOCAxNi42NjY3SDE0LjAwMzVDMTUuMDEwNCAxNi42NjY3IDE1LjgzMzMgMTUuODYxOSAxNS44MzMzIDE0Ljg3NzNWMTAuMDIyOUMxNS44MzMzIDkuMTE1MzIgMTUuMTMyOSA4LjM3MDQ1IDE0LjIzOTkgOC4yNTA1OVpNNy4wOTU5NiA2Ljg2MzZDNy4wOTU5NiA1LjE4NTUyIDguNDk2NzQgMy44MTU2NiAxMC4yMTI3IDMuODE1NjZDMTEuOTI4NiAzLjgxNTY2IDEzLjMyOTQgNS4xODU1MiAxMy4zMjk0IDYuODYzNlY4LjIzMzQ3SDcuMDk1OTZWNi44NjM2Wk0xNC45MjI4IDE0Ljg3NzNDMTQuOTIyOCAxNS4zNzM5IDE0LjUxMTMgMTUuNzY3NyAxNC4wMTIzIDE1Ljc2NzdINi40MTMwOEM1LjkwNTMgMTUuNzY3NyA1LjUwMjU3IDE1LjM2NTMgNS41MDI1NyAxNC44NzczVjEwLjAyMjlDNS41MDI1NyA5LjUyNjI4IDUuOTE0MDUgOS4xMzI0NCA2LjQxMzA4IDkuMTMyNDRIMTQuMDAzNUMxNC41MTEzIDkuMTMyNDQgMTQuOTE0MSA5LjUzNDg0IDE0LjkxNDEgMTAuMDIyOVYxNC44NzczSDE0LjkyMjhaIiBmaWxsPSIjOTI5Mjk5Ii8+CjxwYXRoIGQ9Ik0xMC4yMTI3IDEwLjUxMDlDOS41ODIzMyAxMC41MTA5IDkuMDY1OCAxMS4wMTYgOS4wNjU4IDExLjYzMjRDOS4wNjU4IDEyLjA1MiA5LjMxMDkzIDEyLjQwMyA5LjY2MTEzIDEyLjU5OTlWMTMuOTUyNkM5LjY2MTEzIDE0LjI1MjMgOS45MDYyNiAxNC40OTIgMTAuMjEyNyAxNC40OTJDMTAuNTE5MSAxNC40OTIgMTAuNzY0MiAxNC4yNTIzIDEwLjc2NDIgMTMuOTUyNlYxMi41OTk5QzExLjExNDQgMTIuNDExNSAxMS4zNTk2IDEyLjA1MiAxMS4zNTk2IDExLjYzMjRDMTEuMzU5NiAxMS4wMTYgMTAuODQzIDEwLjUxMDkgMTAuMjEyNyAxMC41MTA5WiIgZmlsbD0iIzkyOTI5OSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzY2OF8zNzk0OSI+CjxyZWN0IHdpZHRoPSIxMS4yNSIgaGVpZ2h0PSIxMy43NSIgZmlsbD0id2hpdGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDQuNTgzMzEgMi45MTY2OSkiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K'); + --icon-FilePublic: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEwLjAwNCAzLjMzMzMxQzYuMzI3MDEgMy4zMzMzMSAzLjMzMzMxIDYuMzI3MDEgMy4zMzMzMSAxMC4wMDRDMy4zMzMzMSAxMy42ODExIDYuMzI3MDEgMTYuNjc0OCAxMC4wMDQgMTYuNjc0OEMxMy42ODExIDE2LjY3NDggMTYuNjc0OCAxMy42ODExIDE2LjY3NDggMTAuMDA0QzE2LjY3NDggNi4zMjcwMSAxMy42ODExIDMuMzMzMzEgMTAuMDA0IDMuMzMzMzFaTTExLjI2NSA0LjI0NDQ0QzEzLjEyNzkgNC42NTExOSAxNC42ODk4IDUuOTUyOCAxNS40MzAxIDcuNzA5OTdMMTUuNDc4OSA3LjgyMzg2SDEyLjA1NDFWNy43NTA2NEMxMS44ODMyIDYuMjg2MzMgMTEuNTgyMiA1LjExNDg5IDExLjE3NTUgNC4zNTgzM0wxMS4wOTQxIDQuMjAzNzZMMTEuMjY1IDQuMjQ0NDRaTTExLjQ0MzkgMTAuMDM2NkMxMS40NDM5IDEwLjQ5MjEgMTEuNDI3NyAxMC45NDc3IDExLjQwMzMgMTEuMzk1MVYxMS40Njg0SDguNjIxMDlWMTEuMzk1MUM4LjU4ODU1IDEwLjk1NTggOC41NzIyOCAxMC41MDAzIDguNTcyMjggMTAuMDM2NkM4LjU3MjI4IDkuNTcyODkgOC41ODg1NSA5LjEwOTE5IDguNjIxMDkgOC42MzczNlY4LjU2NDE0SDExLjM5NTFWOC42MzczNkMxMS40Mjc3IDkuMTE3MzMgMTEuNDQzOSA5LjU3Mjg5IDExLjQ0MzkgMTAuMDM2NlpNMTAuMDEyMiA0LjE2MzA5QzEwLjQzNTIgNC4xNjMwOSAxMS4wNTM1IDUuNTI5NzcgMTEuMzEzOCA3LjczNDM3VjcuODIzODZIOC42OTQzMVY3LjczNDM3QzguOTYyNzYgNS41Mjk3NyA5LjU4OTE2IDQuMTYzMDkgMTAuMDEyMiA0LjE2MzA5Wk00LjU2MTcgNy43MDk5N0M1LjAyNTQgNi42MDM2IDUuODE0NSA1LjY4NDM0IDYuNzk4ODQgNS4wNDk4MUM3LjM4NDU2IDQuNjY3NDYgOC4wNTE2NCA0LjM5MDg3IDguNzUxMjUgNC4yMzYzTDguOTIyMDkgNC4xOTU2M0w4Ljg0MDc0IDQuMzUwMTlDOC40MjU4NSA1LjEwNjc1IDguMTI0ODUgNi4yNzgyIDcuOTYyMTUgNy43NDI1MVY3LjgxNTcySDQuNTIxMDNMNC41Njk4NCA3LjcwMTgzTDQuNTYxNyA3LjcwOTk3Wk00LjI5MzI1IDExLjQwMzNDNC4xNzEyMiAxMC44OTg5IDQuMTA2MTQgMTAuNDQzMyA0LjEwNjE0IDkuOTk1OTFDNC4xMDYxNCA5LjU0ODQ4IDQuMTYzMDkgOS4xMDkxOSA0LjI4NTExIDguNjEyOTVMNC4zMDEzOCA4LjU0Nzg3SDcuODk3MDdWOC42MzczNkM3Ljg2NDUzIDkuMTAxMDYgNy44NDgyNiA5LjU3Mjg5IDcuODQ4MjYgMTAuMDI4NUM3Ljg0ODI2IDEwLjQ4NCA3Ljg2NDUzIDEwLjkxNTIgNy44ODg5NCAxMS4zNzg5VjExLjQ2ODRINC4zMDk1Mkw0LjI5MzI1IDExLjQwMzNaTTguNzEwNTggMTUuNzU1NUM2Ljg2MzkyIDE1LjM0MDYgNS4zMTgyNiAxNC4wNTUzIDQuNTY5ODQgMTIuMzE0NEw0LjUyMTAzIDEyLjIwMDVINy45NDU4OFYxMi4yNzM3QzguMTA4NTggMTMuNzEzNiA4LjQwMTQ0IDE0Ljg3NjkgOC44MDAwNiAxNS42NDE2TDguODgxNDEgMTUuNzk2Mkw4LjcxMDU4IDE1Ljc1NTVaTTEwLjAxMjIgMTUuOTAyQzkuNTgxMDIgMTUuOTAyIDguOTYyNzYgMTQuNTE5IDguNzAyNDQgMTIuMjlWMTIuMjAwNUgxMS4zMzAxVjEyLjI5QzExLjA2MTYgMTQuNTE5IDEwLjQ0MzMgMTUuOTAyIDEwLjAxMjIgMTUuOTAyWk0xNS40MzAxIDEyLjMxNDRDMTQuNjg5OCAxNC4wNDcyIDEzLjE1MjMgMTUuMzMyNSAxMS4zMTM4IDE1Ljc0NzRMMTEuMTQzIDE1Ljc4ODFMMTEuMjI0MyAxNS42MzM1QzExLjYyMjkgMTQuODY4OCAxMS45MTU4IDEzLjcwNTUgMTIuMDYyMiAxMi4yNzM3VjEyLjIwMDVIMTUuNDc4OUwxNS40MzAxIDEyLjMxNDRaTTE1LjcwNjcgMTEuNDY4NEgxMi4xMjczVjExLjM3ODlDMTIuMTU5OCAxMC45MTUyIDEyLjE3NjEgMTAuNDU5NiAxMi4xNzYxIDEwLjAyODVDMTIuMTc2MSA5LjU5NzI5IDEyLjE1OTggOS4xMTczMyAxMi4xMjczIDguNjM3MzZWOC41NDc4N0gxNS43MDY3TDE1LjcyMyA4LjYxMjk1QzE1LjgzNjkgOS4wNzY2NSAxNS44OTM4IDkuNTQwMzUgMTUuODkzOCA5Ljk5NTkxQzE1Ljg5MzggMTAuNDUxNSAxNS44MzY5IDEwLjkzMTQgMTUuNzE0OCAxMS40MDMzTDE1LjY5ODYgMTEuNDY4NEgxNS43MDY3WiIgZmlsbD0iIzE2QjM3OCIvPgo8L3N2Zz4K'); + --icon-FileShared: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02Ljg2MjQ0IDQuNzgwNTZDNy4yMjY3IDQuNjM5MzUgNy42MTU2MSA0LjU3Mjc3IDguMDA2MDkgNC41ODQ3NUw4LjAxNzA1IDQuNTg1MDhDOC43ODYzNCA0LjYyODk3IDkuNTA4ODkgNC45Njg2MSAxMC4wMzM3IDUuNTMyNzhDMTAuNTU3OCA2LjA5NjE0IDEwLjg0NDIgNi44Mzk5OSAxMC44MzMzIDcuNjA5MjdWOC43NTEyMkMxMC44MzI4IDkuMzA5NzkgMTAuNjcyIDkuODU2ODQgMTAuMzY5OSAxMC4zMjY3QzEwLjEyNTEgMTAuNzA3MyA5Ljc5NTkxIDExLjAyNDUgOS40MDk2IDExLjI1NDdMOS41NDA3NyAxMi4xNzhMMTEuNTkzMSAxMi43NjEzQzExLjg1NDEgMTIuODM1OSAxMi4wODQ0IDEyLjk5MzcgMTIuMjQ3OSAxMy4yMTA0QzEyLjQxMTQgMTMuNDI3MiAxMi40OTk5IDEzLjY5MTIgMTIuNSAxMy45NjI3VjE1LjgzNDVDMTIuNSAxNi4wNjQ3IDEyLjMxMzQgMTYuMjUxMiAxMi4wODMzIDE2LjI1MTJIMy43NDk5OEMzLjUxOTg2IDE2LjI1MTIgMy4zMzMzMSAxNi4wNjQ3IDMuMzMzMzEgMTUuODM0NVYxMy45NTk1QzMuMzMzNDMgMTMuNjg4MSAzLjQyMTkzIDEzLjQyMzggMy41ODU0NCAxMy4yMDcxQzMuNzQ4OTQgMTIuOTkwNCAzLjk3ODU1IDEyLjgzMjggNC4yMzk1NiAxMi43NTgxTDYuMjkyNTIgMTIuMTc0N0w2LjQyMzU5IDExLjI1NDZDNi4wMzczMiAxMS4wMjQ1IDUuNzA4MiAxMC43MDczIDUuNDYzNDQgMTAuMzI2N0M1LjE2MTMyIDkuODU2ODQgNS4wMDA0NSA5LjMxMDE1IDQuOTk5OTggOC43NTE1N0w0Ljk5OTk4IDcuNTAxNDFDNC45OTk5OCA3LjUwMTM1IDQuOTk5OTggNy41MDE0OCA0Ljk5OTk4IDcuNTAxNDFDNC45OTk4MiA3LjExMDgxIDUuMDc4MTIgNi43MjM5NiA1LjIzMDIzIDYuMzY0MkM1LjM4MjM3IDYuMDA0MzcgNS42MDUyNSA1LjY3ODc4IDUuODg1NjMgNS40MDY3NEM2LjE2NjAxIDUuMTM0NyA2LjQ5ODE5IDQuOTIxNzYgNi44NjI0NCA0Ljc4MDU2Wk03Ljk3NTA2IDUuNDE3NTNDNy42OTc5OSA1LjQwOTc1IDcuNDIyMTMgNS40NTczNSA3LjE2MzY0IDUuNTU3NTVDNi45MDM0NiA1LjY1ODQxIDYuNjY2MTkgNS44MTA1MSA2LjQ2NTkyIDYuMDA0ODNDNi4yNjU2NSA2LjE5OTE0IDYuMTA2NDUgNi40MzE3MSA1Ljk5Nzc4IDYuNjg4NzNDNS44ODkxMSA2Ljk0NTc0IDUuODMzMTggNy4yMjE5NyA1LjgzMzMxIDcuNTAxMDJMNS44MzMzMSA4Ljc1MDg2QzUuODMzMzEgOC43NTA5NCA1LjgzMzMxIDguNzUwNzkgNS44MzMzMSA4Ljc1MDg2QzUuODMzNjkgOS4xNDk3NyA1Ljk0ODU5IDkuNTQwNCA2LjE2NDM2IDkuODc1OTNDNi4zODAxNiAxMC4yMTE1IDYuNjg3NzkgMTAuNDc4MSA3LjA1MDY3IDEwLjY0MzlDNy4yMTg2MyAxMC43MjA3IDcuMzE2MDMgMTAuODk4OCA3LjI4OTk4IDExLjA4MTZMNy4xMTc0OCAxMi4yOTI1QzcuMDk0NjYgMTIuNDUxOCA3LjAyNjEyIDEyLjYwMTUgNi45MjAyNCAxMi43MjI4QzYuODE0MzUgMTIuODQ0IDYuNjc1NiAxMi45MzIgNi41MjA3NyAxMi45NzYxTDQuNDY4NzMgMTMuNTU5M0M0LjQ2ODY2IDEzLjU1OTMgNC40Njg4IDEzLjU1OTMgNC40Njg3MyAxMy41NTkzQzQuMzgxODIgMTMuNTg0MiA0LjMwNTE0IDEzLjYzNjggNC4yNTA2OSAxMy43MDlDNC4xOTYyMiAxMy43ODEyIDQuMTY2NzMgMTMuODY5MSA0LjE2NjY1IDEzLjk1OTVNNy45NzUwNiA1LjQxNzUzQzguNTI3NjUgNS40NTA0NiA5LjA0NjQyIDUuNjk0OTYgOS40MjM1NiA2LjEwMDM4QzkuODAxOTUgNi41MDcxMyAxMC4wMDg1IDcuMDQ0MzkgMTAgNy41OTk4N0w5Ljk5OTk4IDguNzUwODZDOS45OTk2NCA5LjE0OTg1IDkuODg0NzQgOS41NDAzNCA5LjY2ODk0IDkuODc1OTNDOS40NTMxMyAxMC4yMTE1IDkuMTQ1NSAxMC40NzgxIDguNzgyNjIgMTAuNjQzOUM4LjYxNDcyIDEwLjcyMDcgOC41MTczMiAxMC44OTg3IDguNTQzMjkgMTEuMDgxNUw4LjcxNTc5IDEyLjI5NTdDOC43Mzg2MSAxMi40NTUgOC44MDcxNyAxMi42MDQ4IDguOTEzMDYgMTIuNzI2MUM5LjAxODk0IDEyLjg0NzQgOS4xNTc2OSAxMi45MzU0IDkuMzEyNTIgMTIuOTc5NEwxMS4zNjQ2IDEzLjU2MjdDMTEuMzY0NSAxMy41NjI2IDExLjM2NDYgMTMuNTYyNyAxMS4zNjQ2IDEzLjU2MjdDMTEuNDUxNSAxMy41ODc2IDExLjUyODIgMTMuNjQwMSAxMS41ODI2IDEzLjcxMjNDMTEuNjM3MSAxMy43ODQ2IDExLjY2NjYgMTMuODcyNiAxMS42NjY2IDEzLjk2MzFWMTUuNDE3OUg0LjE2NjY1VjEzLjk1OTUiIGZpbGw9IiM5MjkyOTkiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMC4yMDg0IDQuMTQwMjlDMTAuNjc4MSAzLjg2OTI5IDExLjIxNDEgMy43MzQ2MSAxMS43NTYyIDMuNzUxNEwxMS43NjcgMy43NTE3M0MxMi41MzYzIDMuNzk1NjIgMTMuMjU4OSA0LjEzNTI2IDEzLjc4MzcgNC42OTk0M0MxNC4zMDc4IDUuMjYyNzkgMTQuNTk0MiA2LjAwNjY0IDE0LjU4MzMgNi43NzU5MlY3LjkxNzg2QzE0LjU4MjggOC40NzY0NCAxNC40MjE5IDkuMDIzNDkgMTQuMTE5OCA5LjQ5MzMxQzEzLjg3NTEgOS44NzM5MyAxMy41NDU5IDEwLjE5MTEgMTMuMTU5NiAxMC40MjEzTDEzLjI4OTEgMTEuMzMxN0wxNS43MjAxIDExLjkzOTVDMTUuOTkwNCAxMi4wMDcyIDE2LjIzMDYgMTIuMTYzMyAxNi40MDIgMTIuMzgzQzE2LjU3MzUgMTIuNjAyNyAxNi42NjY2IDEyLjg3MzQgMTYuNjY2NiAxMy4xNTJWMTUuODM0NUMxNi42NjY2IDE2LjA2NDcgMTYuNDgwMSAxNi4yNTEyIDE2LjI0OTkgMTYuMjUxMkgxMy43NDk5QzEzLjUxOTggMTYuMjUxMiAxMy4zMzMzIDE2LjA2NDcgMTMuMzMzMyAxNS44MzQ1QzEzLjMzMzMgMTUuNjA0NCAxMy41MTk4IDE1LjQxNzkgMTMuNzQ5OSAxNS40MTc5SDE1LjgzMzNWMTMuMTUyQzE1LjgzMzMgMTMuMDU5MiAxNS44MDIyIDEyLjk2ODkgMTUuNzQ1MSAxMi44OTU3QzE1LjY4NzkgMTIuODIyNSAxNS42MDggMTIuNzcwNCAxNS41MTc5IDEyLjc0NzlMMTMuMDg3NCAxMi4xNDA1QzEyLjkyNjUgMTIuMTAwMyAxMi43ODEyIDEyLjAxMyAxMi42NzAxIDExLjg4OThDMTIuNTU5MSAxMS43NjY3IDEyLjQ4NzQgMTEuNjEzMiAxMi40NjQxIDExLjQ0OUwxMi4yOTMzIDEwLjI0ODJDMTIuMjY3MyAxMC4wNjU0IDEyLjM2NDcgOS44ODczMSAxMi41MzI2IDkuODEwNTdDMTIuODk1NSA5LjY0NDcyIDEzLjIwMzEgOS4zNzgxNiAxMy40MTg5IDkuMDQyNThDMTMuNjM0NyA4LjcwNjk5IDEzLjc0OTYgOC4zMTY0OSAxMy43NDk5IDcuOTE3NTFWNi43NjY1MUMxMy43NTg0IDYuMjExMDMgMTMuNTUxOSA1LjY3Mzc4IDEzLjE3MzUgNS4yNjcwMkMxMi43OTY0IDQuODYxNiAxMi4yNzc2IDQuNjE3MDkgMTEuNzI1IDQuNTg0MTdDMTEuMzM5NiA0LjU3MzI0IDEwLjk1ODggNC42Njk0NCAxMC42MjQ4IDQuODYyMTFDMTAuNDI1NSA0Ljk3NzEgMTAuMTcwNyA0LjkwODc0IDEwLjA1NTcgNC43MDk0MUM5Ljk0MDcxIDQuNTEwMDkgMTAuMDA5MSA0LjI1NTI4IDEwLjIwODQgNC4xNDAyOVoiIGZpbGw9IiM5MjkyOTkiLz4KPC9zdmc+Cg=='); + --icon-Folder: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE4LjYgNi44OUgxMi4xN0wxMC4yOCA1SDQuNTZDMy43IDUgMyA1LjcgMyA2LjU2VjE3LjQ4QzMgMTguMzUgMy43IDE5LjA1IDQuNTcgMTkuMDVIMTguNkMxOS40NyAxOS4wNSAyMC4xNyAxOC4zNSAyMC4xNyAxNy40OFY4LjQ2QzIwLjE3IDcuNTkgMTkuNDcgNi44OSAxOC42IDYuODlaIiBmaWxsPSIjOTI5Mjk5Ii8+Cjwvc3ZnPgo='); + --icon-FolderPrivate: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzUwMF8zODkwOCkiPgo8cGF0aCBkPSJNMTEuOTMgMTkuMDNDMTEuOTMgMTkuMDMgMTEuOTggMTkuMTEgMTIgMTkuMTVDMTEuOTYgMTkuMDggMTEuOTIgMTkgMTEuOSAxOC45M0MxMS45MSAxOC45NiAxMS45MiAxOSAxMS45MyAxOS4wM1oiIGZpbGw9IiM5MjkyOTkiLz4KPHBhdGggZD0iTTEyLjIgMTEuMjdDMTIuMiA4LjczIDE0LjI3IDYuNjYgMTYuODEgNi42NkMxNy42OCA2LjY2IDE4LjQ4IDYuOTEgMTkuMTcgNy4zM1Y2LjQ2QzE5LjE3IDUuNTkgMTguNDcgNC44OSAxNy42IDQuODlIMTEuMTdMOS4yOCAzSDMuNTZDMi43IDMgMiAzLjcgMiA0LjU2VjE1LjQ4QzIgMTYuMzUgMi43IDE3LjA1IDMuNTcgMTcuMDVIMTAuODFWMTQuMDdDMTAuODEgMTMuNjIgMTAuOTMgMTMuMTggMTEuMTYgMTIuNzdDMTEuNDEgMTIuMzIgMTEuNzcgMTEuOTYgMTIuMiAxMS43MlYxMS4yNlYxMS4yN1oiIGZpbGw9IiM5MjkyOTkiLz4KPHBhdGggZD0iTTIxLjc1IDEzLjY3QzIxLjc1IDEzLjY3IDIxLjc1IDEzLjY0IDIxLjc0IDEzLjYyQzIxLjcgMTMuNDkgMjEuNjUgMTMuMzcgMjEuNTkgMTMuMjZDMjEuMzUgMTIuODMgMjAuOTMgMTIuNTEgMjAuNDIgMTIuNDFWMTEuMjZDMjAuNDIgMTAuMTcgMTkuOTMgOS4yMTAwMiAxOS4xNyA4LjU1MDAyQzE4LjU0IDguMDAwMDIgMTcuNzIgNy42NTAwMiAxNi44MSA3LjY1MDAyQzE0LjgyIDcuNjUwMDIgMTMuMiA5LjI3MDAyIDEzLjIgMTEuMjZWMTIuNDFDMTMuMDcgMTIuNDMgMTIuOTUgMTIuNDcgMTIuODQgMTIuNTJDMTIuNjEgMTIuNjIgMTIuNDEgMTIuNzcgMTIuMjUgMTIuOTVDMTIuMTcgMTMuMDQgMTIuMSAxMy4xNCAxMi4wNCAxMy4yNUMxMS45OCAxMy4zNiAxMS45MyAxMy40OCAxMS44OSAxMy42MUMxMS44OSAxMy42MyAxMS44OCAxMy42NCAxMS44OCAxMy42NkMxMS44NCAxMy43OSAxMS44MiAxMy45MyAxMS44MiAxNC4wN1YxOC4zOUMxMS44MiAxOC41MyAxMS44NSAxOC42NyAxMS44OCAxOC44MUMxMS44OCAxOC44NSAxMS45IDE4Ljg4IDExLjkxIDE4LjkyQzExLjk0IDE5IDExLjk4IDE5LjA3IDEyLjAxIDE5LjE0QzEyLjA1IDE5LjIyIDEyLjA5IDE5LjI5IDEyLjE0IDE5LjM2QzEyLjE5IDE5LjQzIDEyLjI0IDE5LjQ5IDEyLjMgMTkuNTVDMTIuMzUgMTkuNiAxMi40IDE5LjY1IDEyLjQ2IDE5LjdDMTIuNTMgMTkuNzYgMTIuNjEgMTkuODEgMTIuNjkgMTkuODVDMTIuNzYgMTkuODkgMTIuODIgMTkuOTIgMTIuOSAxOS45NUMxMi45NiAxOS45NyAxMy4wMSAxOS45OSAxMy4wNyAyMC4wMUMxMy4yMSAyMC4wNSAxMy4zNiAyMC4wOCAxMy41MSAyMC4wOEgyMC4xMkMyMC4yNyAyMC4wOCAyMC40MiAyMC4wNSAyMC41NiAyMC4wMUMyMC42MiAxOS45OSAyMC42NyAxOS45NyAyMC43MyAxOS45NUMyMC44IDE5LjkyIDIwLjg3IDE5Ljg5IDIwLjk0IDE5Ljg1QzIxLjAyIDE5LjggMjEuMSAxOS43NSAyMS4xNyAxOS43QzIxLjIzIDE5LjY1IDIxLjI4IDE5LjYgMjEuMzMgMTkuNTVDMjEuMzkgMTkuNDkgMjEuNDQgMTkuNDMgMjEuNDkgMTkuMzZDMjEuNTQgMTkuMjkgMjEuNTggMTkuMjIgMjEuNjIgMTkuMTRDMjEuNjQgMTkuMSAyMS42NyAxOS4wNiAyMS42OSAxOS4wMUMyMS43IDE4Ljk4IDIxLjcxIDE4Ljk0IDIxLjcyIDE4LjkxQzIxLjczIDE4Ljg3IDIxLjc0IDE4Ljg0IDIxLjc1IDE4LjhDMjEuNzkgMTguNjYgMjEuODEgMTguNTIgMjEuODEgMTguMzhWMTQuMDZDMjEuODEgMTMuOTIgMjEuNzkgMTMuNzggMjEuNzUgMTMuNjVWMTMuNjdaTTE0LjIgMTEuMjdDMTQuMiA5LjgzMDAyIDE1LjM3IDguNjYwMDIgMTYuODEgOC42NjAwMkMxNy44NiA4LjY2MDAyIDE4Ljc1IDkuMjgwMDIgMTkuMTcgMTAuMTdDMTkuMzMgMTAuNTEgMTkuNDIgMTAuODggMTkuNDIgMTEuMjdWMTIuMzlIMTQuMlYxMS4yN1pNMjAuODEgMTguNEMyMC44MSAxOC42OCAyMC42NCAxOC45MSAyMC40MSAxOS4wM0MyMC4zMiAxOS4wNyAyMC4yMiAxOS4xIDIwLjExIDE5LjFIMTMuNUMxMy4zOSAxOS4xIDEzLjMgMTkuMDcgMTMuMiAxOS4wM0MxMi45NiAxOC45MiAxMi44IDE4LjY4IDEyLjggMTguNFYxNC4wOEMxMi44IDEzLjcgMTMuMTEgMTMuMzggMTMuNSAxMy4zOEgyMC4xMUMyMC40OSAxMy4zOCAyMC44MSAxMy42OSAyMC44MSAxNC4wOFYxOC40WiIgZmlsbD0iIzkyOTI5OSIvPgo8cGF0aCBkPSJNMjAuODQgMTkuOTNDMjAuODQgMTkuOTMgMjAuOSAxOS44OSAyMC45MyAxOS44N0MyMC44NiAxOS45MSAyMC44IDE5Ljk0IDIwLjcyIDE5Ljk3QzIwLjc2IDE5Ljk2IDIwLjggMTkuOTUgMjAuODMgMTkuOTNIMjAuODRaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTIuNzggMTkuOTNDMTIuNzggMTkuOTMgMTIuODYgMTkuOTUgMTIuODkgMTkuOTdDMTIuODIgMTkuOTQgMTIuNzUgMTkuOTEgMTIuNjggMTkuODdDMTIuNzEgMTkuODkgMTIuNzQgMTkuOTIgMTIuNzcgMTkuOTNIMTIuNzhaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNMTYuODEgMTQuNTJDMTYuMjYgMTQuNTIgMTUuODEgMTQuOTcgMTUuODEgMTUuNTJDMTUuODEgMTUuODkgMTYuMDIgMTYuMjEgMTYuMzMgMTYuMzhWMTcuNThDMTYuMzMgMTcuODQgMTYuNTQgMTguMDYgMTYuODEgMTguMDZDMTcuMDggMTguMDYgMTcuMjkgMTcuODUgMTcuMjkgMTcuNThWMTYuMzhDMTcuNTkgMTYuMjEgMTcuODEgMTUuOSAxNy44MSAxNS41MkMxNy44MSAxNC45NyAxNy4zNiAxNC41MiAxNi44MSAxNC41MloiIGZpbGw9IiM5MjkyOTkiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF81MDBfMzg5MDgiPgo8cmVjdCB3aWR0aD0iMTkuODEiIGhlaWdodD0iMTcuMSIgZmlsbD0id2hpdGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIgMykiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K'); --icon-LoginStreamline: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEzNDlfNjg4NSkiIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNMzkuNTQwMiAwSDE4LjAwNDdDOC4wNjc1MiAwIDAgOC45Nzc0IDAgMjAuMDM1M1Y0MEgyMS43MDUxQzMxLjU0ODcgNDAgMzkuNTQwMiAzMS4xMDY4IDM5LjU0MDIgMjAuMTUzMVYwWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0yMy40OTE3IDI3LjkzMDZMMjkuNDUzIDE4LjgzMDdDMjkuNjUyIDE4LjUyNjggMjkuNTc3NiAxOC4xMTE5IDI5LjI4NjYgMTcuOTA0QzI5LjE4MDUgMTcuODI4MSAyOS4wNTQ4IDE3Ljc4NzUgMjguOTI2MiAxNy43ODc1SDI0LjI3OVYxMS45OTQ4QzI0LjI3OSAxMS42MjY2IDIzLjk5MzIgMTEuMzI4MSAyMy42NDA3IDExLjMyODFDMjMuNDMgMTEuMzI4MSAyMy4yMzI5IDExLjQzNjcgMjMuMTEzOSAxMS42MTgzTDE3LjE1MjYgMjAuNzE4M0MxNi45NTM1IDIxLjAyMjEgMTcuMDI4IDIxLjQzNyAxNy4zMTg5IDIxLjY0NDlDMTcuNDI1MSAyMS43MjA4IDE3LjU1MDcgMjEuNzYxNCAxNy42Nzk0IDIxLjc2MTRIMjIuMzI2NlYyNy41NTQyQzIyLjMyNjYgMjcuOTIyMyAyMi42MTIzIDI4LjIyMDggMjIuOTY0OSAyOC4yMjA4QzIzLjE3NTYgMjguMjIwOCAyMy4zNzI3IDI4LjExMjIgMjMuNDkxNyAyNy45MzA2WiIgZmlsbD0iI0Y5QUU0MSIvPjxwYXRoIG9wYWNpdHk9Ii40NCIgZD0iTTE3LjE0NTggMjQuNzQxOUMxNy44NTA4IDI0Ljc0MTkgMTguNDIyNCAyNS4zMzg4IDE4LjQyMjQgMjYuMDc1MlYyNi4zODg5QzE4LjQyMjQgMjcuMTI1MyAxNy44NTA4IDI3LjcyMjMgMTcuMTQ1OCAyNy43MjIzSDExLjg4OTJDMTEuMTg0MSAyNy43MjIzIDEwLjYxMjYgMjcuMTI1MyAxMC42MTI2IDI2LjM4ODlWMjYuMDc1MkMxMC42MTI2IDI1LjMzODggMTEuMTg0MSAyNC43NDE5IDExLjg4OTIgMjQuNzQxOUgxNy4xNDU4Wk0xNC4yMTcxIDE4Ljc4MTFDMTQuOTIyMSAxOC43ODExIDE1LjQ5MzcgMTkuMzc4MSAxNS40OTM3IDIwLjExNDRWMjAuNDI4MkMxNS40OTM3IDIxLjE2NDUgMTQuOTIyMSAyMS43NjE1IDE0LjIxNzEgMjEuNzYxNUg5LjkzNjc1QzkuMjMxNzEgMjEuNzYxNSA4LjY2MDE2IDIxLjE2NDUgOC42NjAxNiAyMC40MjgyVjIwLjExNDRDOC42NjAxNiAxOS4zNzgxIDkuMjMxNzEgMTguNzgxMSA5LjkzNjc1IDE4Ljc4MTFIMTQuMjE3MVpNMTcuMTQ1OCAxMi44MjAzQzE3Ljg1MDggMTIuODIwMyAxOC40MjI0IDEzLjQxNzMgMTguNDIyNCAxNC4xNTM2VjE0LjQ2NzRDMTguNDIyNCAxNS4yMDM4IDE3Ljg1MDggMTUuODAwNyAxNy4xNDU4IDE1LjgwMDdIMTEuODg5MkMxMS4xODQxIDE1LjgwMDcgMTAuNjEyNiAxNS4yMDM4IDEwLjYxMjYgMTQuNDY3NFYxNC4xNTM2QzEwLjYxMjYgMTMuNDE3MyAxMS4xODQxIDEyLjgyMDMgMTEuODg5MiAxMi44MjAzSDE3LjE0NThaIiBmaWxsPSIjRjlBRTQxIi8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDBfMTM0OV82ODg1Ij48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwSDQwVjQwSDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PC9zdmc+'); --icon-LoginUnify: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEzNDlfNjg3MSkiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMzkuNTQwMiAwSDE4LjAwNDdDOC4wNjc1MiAwIDAgOC45Nzc0IDAgMjAuMDM1M1Y0MEgyMS43MDUxQzMxLjU0ODcgNDAgMzkuNTQwMiAzMS4xMDY4IDM5LjU0MDIgMjAuMTUzMVYwWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIG9wYWNpdHk9Ii40NCIgZD0iTTEzLjgzMTIgMTYuNzc4NlYyMy4yMjNDMTMuODMxMiAyNS4wMDI2IDE1LjIxMjUgMjYuNDQ1MiAxNi45MTYzIDI2LjQ0NTJIMjMuMDg2NVYyNy4zMjRDMjMuMDg2NSAyOC44NDMxIDIyLjI5NzIgMjkuNjY3NSAyMC44NDI4IDI5LjY2NzVIMTIuOTg5OEMxMS41MzU0IDI5LjY2NzUgMTAuNzQ2MSAyOC44NDMxIDEwLjc0NjEgMjcuMzI0VjE5LjEyMkMxMC43NDYxIDE3LjYwMjkgMTEuNTM1NCAxNi43Nzg2IDEyLjk4OTggMTYuNzc4NkgxMy44MzEyWk0yNS45ODQ3IDExLjQwODJDMjcuNDM5MSAxMS40MDgyIDI4LjIyODQgMTIuMjMyNiAyOC4yMjg0IDEzLjc1MTZWMjEuOTUzN0MyOC4yMjg0IDIzLjQ3MjcgMjcuNDM5MSAyNC4yOTcxIDI1Ljk4NDcgMjQuMjk3MUgyNS4xNDMzVjE3Ljg1MjZDMjUuMTQzMyAxNi4wNzMxIDIzLjc2MiAxNC42MzA0IDIyLjA1ODIgMTQuNjMwNEgxNS44ODc5VjEzLjc1MTZDMTUuODg3OSAxMi4yMzI2IDE2LjY3NzIgMTEuNDA4MiAxOC4xMzE3IDExLjQwODJIMjUuOTg0N1oiIGZpbGw9IiM3MTQxRjkiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTE3LjE5NzUgMTYuNzc5M0gyMS43Nzg0QzIyLjYyNjggMTYuNzc5MyAyMy4wODczIDE3LjI2MDIgMjMuMDg3MyAxOC4xNDYzVjIyLjkzMDhDMjMuMDg3MyAyMy44MTY5IDIyLjYyNjggMjQuMjk3OCAyMS43Nzg0IDI0LjI5NzhIMTcuMTk3NUMxNi4zNDkxIDI0LjI5NzggMTUuODg4NyAyMy44MTY5IDE1Ljg4ODcgMjIuOTMwOFYxOC4xNDYzQzE1Ljg4ODcgMTcuMjYwMiAxNi4zNDkxIDE2Ljc3OTMgMTcuMTk3NSAxNi43NzkzWiIgZmlsbD0iIzcxNDFGOSIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImNsaXAwXzEzNDlfNjg3MSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMEg0MFY0MEgweiIvPjwvY2xpcFBhdGg+PC9kZWZzPjwvc3ZnPg=='); --icon-LoginVisualize: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEzNDlfNjg5OCkiPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMzkuNTQwMiAwSDE4LjAwNDdDOC4wNjc1MiAwIDAgOC45Nzc0IDAgMjAuMDM1M1Y0MEgyMS43MDUxQzMxLjU0ODcgNDAgMzkuNTQwMiAzMS4xMDY4IDM5LjU0MDIgMjAuMTUzMVYwWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIG9wYWNpdHk9Ii40NCIgZD0iTTIzLjk3MjkgMTIuOTk5NkMyMy45NzI5IDEyLjIyNjQgMjMuMzA2MSAxMS41OTk2IDIyLjQ4MzUgMTEuNTk5NkMyMS42NjEgMTEuNTk5NiAyMC45OTQxIDEyLjIyNjQgMjAuOTk0MSAxMi45OTk2VjI2LjA2NjNDMjAuOTk0MSAyNi44Mzk1IDIxLjY2MSAyNy40NjYzIDIyLjQ4MzUgMjcuNDY2M0MyMy4zMDYxIDI3LjQ2NjMgMjMuOTcyOSAyNi44Mzk1IDIzLjk3MjkgMjYuMDY2M1YxMi45OTk2WiIgZmlsbD0iIzE2QjM3OCIvPjxwYXRoIGQ9Ik0xOS4wMDggMTcuOTU3NkMxOS4wMDggMTcuMTg0NCAxOC4zNDEyIDE2LjU1NzYgMTcuNTE4NyAxNi41NTc2IDE2LjY5NjEgMTYuNTU3NiAxNi4wMjkzIDE3LjE4NDQgMTYuMDI5MyAxNy45NTc2VjI2LjA2NkMxNi4wMjkzIDI2LjgzOTEgMTYuNjk2MSAyNy40NjYgMTcuNTE4NyAyNy40NjYgMTguMzQxMiAyNy40NjYgMTkuMDA4IDI2LjgzOTEgMTkuMDA4IDI2LjA2NlYxNy45NTc2ek0yOC45MzU4IDE5Ljk0MUMyOC45MzU4IDE5LjE2NzggMjguMjY4OSAxOC41NDEgMjcuNDQ2NCAxOC41NDEgMjYuNjIzOCAxOC41NDEgMjUuOTU3IDE5LjE2NzggMjUuOTU3IDE5Ljk0MVYyNi4wNjZDMjUuOTU3IDI2LjgzOTIgMjYuNjIzOCAyNy40NjYgMjcuNDQ2NCAyNy40NjYgMjguMjY4OSAyNy40NjYgMjguOTM1OCAyNi44MzkyIDI4LjkzNTggMjYuMDY2VjE5Ljk0MXpNMTQuMDQzMiAyMS45MjU0QzE0LjA0MzIgMjEuMTUyMiAxMy4zNzY0IDIwLjUyNTQgMTIuNTUzOCAyMC41MjU0IDExLjczMTMgMjAuNTI1NCAxMS4wNjQ1IDIxLjE1MjIgMTEuMDY0NSAyMS45MjU0VjI2LjA2NzFDMTEuMDY0NSAyNi44NDAzIDExLjczMTMgMjcuNDY3MSAxMi41NTM4IDI3LjQ2NzEgMTMuMzc2NCAyNy40NjcxIDE0LjA0MzIgMjYuODQwMyAxNC4wNDMyIDI2LjA2NzFWMjEuOTI1NHoiIGZpbGw9IiMxNkIzNzgiLz48L2c+PGRlZnM+PGNsaXBQYXRoIGlkPSJjbGlwMF8xMzQ5XzY4OTgiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0wIDBINDBWNDBIMHoiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4='); @@ -73,7 +79,6 @@ --icon-FilterSimple: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkuOTUwODMzMzMsMC4yMiBDOS44NzgyODY2NywwLjA4NDQ5NzcxMDggOS43MzcwMzQsLTYuMTY5Njc5NTFlLTA1IDkuNTgzMzMzMzMsLTQuNjI1OTMyOGUtMTcgTDAuNDE2NjY2NjY3LC00LjYyNTkzMjhlLTE3IEMwLjI2MzEwMzQ1NCw3LjkzMjczNDM1ZS0wNSAwLjEyMjAzMTQsMC4wODQ2MTg0ODc1IDAuMDQ5NTQ5NDAxMiwwLjIxOTk5OTUyOSBDLTAuMDIyOTMyNTk3OCwwLjM1NTM4MDU3MSAtMC4wMTUwNzQwNTE3LDAuNTE5NjU2MDYyIDAuMDcsMC42NDc1IEwzLjMzMzMzMzMzLDUuNTQyNSBMMy4zMzMzMzMzMyw5LjU4MzMzMzMzIEMzLjMzMzMzMzMzLDkuODEzNDUyIDMuNTE5ODgxMzYsMTAgMy43NSwxMCBMNi4yNSwxMCBDNi40ODAxMTg2NCwxMCA2LjY2NjY2NjY3LDkuODEzNDUyIDYuNjY2NjY2NjcsOS41ODMzMzMzMyBMNi42NjY2NjY2Nyw1LjU0MjUgTDkuOTMsMC42NDc1IEMxMC4wMTUxOTU2LDAuNTE5NzI3OTkxIDEwLjAyMzIwMTMsMC4zNTU0NTA1NDcgOS45NTA4MzMzMywwLjIyIFoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMgMykiIGZpbGw9IiMwMDAiIGZpbGwtcnVsZT0ibm9uemVybyIvPjwvc3ZnPg=='); --icon-Fireworks: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTguNjY2NDcgMTUuMzMzM0g3LjMzMzE0QzcuMzMzMTQgOS44NDc5NyA0LjQ0NzggOC42MzA2MyA0LjQxODQ3IDguNjE5M0wzLjc5OTggOC4zNzEzIDQuMjk1MTQgNy4xMzMzIDQuOTE0NDcgNy4zODA2M0M1LjAyNTE0IDcuNDI1OTcgNi45NTE4IDguMjM1MyA3Ljk5OTggMTEuMTE0IDkuMDQ3OCA4LjIzNTk3IDEwLjk3NDUgNy40MjY2MyAxMS4wODUxIDcuMzgwNjNMMTEuNzA0NSA3LjEzMzMgMTIuMTk5OCA4LjM3MTMgMTEuNTg0NSA4LjYxNzNDMTEuNDM5OCA4LjY3OTk3IDguNjY2NDcgOS45NDE5NyA4LjY2NjQ3IDE1LjMzMzN6TTEwLjQ1MzEgMS43OTA1NEw4Ljc1NzcyIDEuNTQ0NTQgNy45OTk3Mi4wMDg1NDQ5MiA3LjI0MTcyIDEuNTQ0NTQgNS41NDYzOSAxLjc5MDU0IDYuNzczMDUgMi45ODY1NCA2LjQ4MzcyIDQuNjc1MjEgNy45OTk3MiAzLjg3Nzg4IDkuNTE1NzIgNC42NzUyMSA5LjIyNjM5IDIuOTg2NTQgMTAuNDUzMSAxLjc5MDU0ek01LjI5OTE3IDEyLjM1OEwzLjY5ODUgMTIuMTI1MyAyLjk4MzE3IDEwLjY3NTMgMi4yNjcxNyAxMi4xMjUzLjY2NjUwNCAxMi4zNTggMS44MjQ1IDEzLjQ4NjYgMS41NTExNyAxNS4wODA2IDIuOTgzMTcgMTQuMzI4NiA0LjQxNDUgMTUuMDgwNiA0LjE0MTE3IDEzLjQ4NjYgNS4yOTkxNyAxMi4zNTh6TTE1LjMzMzMgMTIuMzU4TDEzLjczMjcgMTIuMTI1MyAxMy4wMTY3IDEwLjY3NTMgMTIuMzAxMyAxMi4xMjUzIDEwLjcwMDcgMTIuMzU4IDExLjg1ODcgMTMuNDg2NiAxMS41ODUzIDE1LjA4MDYgMTMuMDE2NyAxNC4zMjg2IDE0LjQ0ODcgMTUuMDgwNiAxNC4xNzUzIDEzLjQ4NjYgMTUuMzMzMyAxMi4zNTh6IiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTguNjY2MzQgNy41MzMxM1Y1LjM0MThINy4zMzMwMVY3LjUyMDQ2QzcuNTc2MjEgNy43NjgxMSA3LjgwMjUgOC4wMzE4MSA4LjAxMDM0IDguMzA5OCA4LjIxMjIgOC4wMzcxNyA4LjQzMTMyIDcuNzc3NzUgOC42NjYzNCA3LjUzMzEzek0xLjY2NjUgNy4zMzMyNUMyLjIxODc5IDcuMzMzMjUgMi42NjY1IDYuODg1NTQgMi42NjY1IDYuMzMzMjUgMi42NjY1IDUuNzgwOTcgMi4yMTg3OSA1LjMzMzI1IDEuNjY2NSA1LjMzMzI1IDEuMTE0MjIgNS4zMzMyNS42NjY1MDQgNS43ODA5Ny42NjY1MDQgNi4zMzMyNS42NjY1MDQgNi44ODU1NCAxLjExNDIyIDcuMzMzMjUgMS42NjY1IDcuMzMzMjV6TTE0LjMzMyA3LjMzMzI1QzE0Ljg4NTMgNy4zMzMyNSAxNS4zMzMgNi44ODU1NCAxNS4zMzMgNi4zMzMyNSAxNS4zMzMgNS43ODA5NyAxNC44ODUzIDUuMzMzMjUgMTQuMzMzIDUuMzMzMjUgMTMuNzgwNyA1LjMzMzI1IDEzLjMzMyA1Ljc4MDk3IDEzLjMzMyA2LjMzMzI1IDEzLjMzMyA2Ljg4NTU0IDEzLjc4MDcgNy4zMzMyNSAxNC4zMzMgNy4zMzMyNXoiIGZpbGw9IiNmZmYiLz48L3N2Zz4='); --icon-Flag: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgY2xhc3M9ImZlYXRoZXIgZmVhdGhlci1mbGFnIj48cGF0aCBkPSJtMC40NzEzNiwxMC43MzIxMXMwLjk0MDU0LC0wLjc4Nzg3IDMuNzYyMTYsLTAuNzg3ODdzNC43MDI2OSwxLjU3NTc0IDcuNTI0MzIsMS41NzU3NHMzLjc2MjE2LC0wLjc4Nzg3IDMuNzYyMTYsLTAuNzg3ODdsMCwtOS40NTQ0OHMtMC45NDA1NCwwLjc4Nzg3IC0zLjc2MjE2LDAuNzg3ODdzLTQuNzAyNjksLTEuNTc1NzQgLTcuNTI0MzIsLTEuNTc1NzRzLTMuNzYyMTYsMC43ODc4NyAtMy43NjIxNiwwLjc4Nzg3bDAsOS40NTQ0OHoiIHN0cm9rZT0ibnVsbCIvPjwvc3ZnPg=='); - --icon-Folder: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTMsNSBMMTMsNSBDMTMuNTUyMjg0Nyw1IDE0LDUuNDQ3NzE1MjUgMTQsNiBMMTQsMTMgQzE0LDEzLjU1MjI4NDcgMTMuNTUyMjg0NywxNCAxMywxNCBMMywxNCBDMi40NDc3MTUyNSwxNCAyLDEzLjU1MjI4NDcgMiwxMyBMMiw2IEMyLDUuNDQ3NzE1MjUgMi40NDc3MTUyNSw1IDMsNSBaIE00LDIgTDEyLDIgTDEyLDQgTDQsNCBMNCwyIFoiIGZpbGw9IiMwMDAiIGZpbGwtcnVsZT0ibm9uemVybyIvPjwvc3ZnPg=='); --icon-FontBold: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PHBhdGggZD0iTTMuMTk1MDk4OCAxLjgzNTQxOTloNS42OTAzODE4Yy43NTQ1OTUyIDAgMS40NzgyNzI0LjI5OTc1NjcgMi4wMTE4NTM0LjgzMzMzNzUuNTMzNTgxLjUzMzU4MDguODMzMzM3IDEuMjU3MjU4Mi44MzMzMzcgMi4wMTE4NTM1IDAgLjc1NDU5NTItLjI5OTc1NiAxLjQ3ODI3MjctLjgzMzMzNyAyLjAxMTg1MzVDMTAuMzYzNzUzIDcuMjI2MDQ1MSA5LjY0MDA3NTggNy41MjU4MDE4IDguODg1NDgwNiA3LjUyNTgwMThINS4wOTE4OTI3TTUuMDkxODkyNyA3LjUyNTgwMThoNS4yMTYxODMzYy44ODAzNTIgMCAxLjcyNDY1My4zNDk3MTgyIDIuMzQ3MTY5Ljk3MjIyMDcuNjIyNTAyLjYyMjUxNTIuOTcyMjIgMS40NjY4MTYxLjk3MjIyIDIuMzQ3MTY4NXYwYzAgLjg4MDM1My0uMzQ5NzE4IDEuNzI0NjU0LS45NzIyMiAyLjM0NzIxOS0uNjIyNTE2LjYyMjQwMi0xLjQ2NjgxNy45NzIxNy0yLjM0NzE2OS45NzIxN0gzLjE5NTA5ODhNNS4wOTE4OTI3IDEuODM1NDE5OVYxNC4xNjQ1OCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMDMwMDAwIiBzdHJva2Utd2lkdGg9IjEuMjY1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4='); --icon-FontItalic: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PGRlZnM+PGNsaXBQYXRoIGlkPSJhIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMCAwSDEyVjEySDB6Ii8+PC9jbGlwUGF0aD48L2RlZnM+PGcgdHJhbnNmb3JtPSJtYXRyaXgoMS4xMzU2IDAgMCAxLjEzNTYgLjk4MyAxLjM5KSIgY2xpcC1wYXRoPSJ1cmwoI2EpIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9Im5vbmUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0ibSA0Ljg3NSwwLjM3NSBoIDQuNSIgc3Ryb2tlPSIjMDAwIi8+PHBhdGggZD0ibSAyLjYyNSwxMS42MjUgaCA0LjUiIHN0cm9rZT0iIzA2MDAwMCIvPjxwYXRoIGQ9Im0gNy4xMjUsMC4zNzUgLTIuMjUsMTEuMjUiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLW9wYWNpdHk9Ii45OSIvPjwvZz48L3N2Zz4='); --icon-FontStrikethrough: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PHBhdGggZD0iTSAxLjgwNTY1ODUsMy4zOTcxNzIgViAxLjczNTc0MzEgSCAxNC4xOTQzNDIgViAzLjM5NzE3MiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjOTI5Mjk5IiBzdHJva2Utd2lkdGg9IjEuMTQzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48cGF0aCBkPSJNIDcuOTk5OTk5OSwxMC4wNDI4ODcgViAxNC4xOTY0NiIgc3Ryb2tlPSIjOTI5Mjk5IiBzdHJva2Utd2lkdGg9IjEuMTQzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48cGF0aCBkPSJNIDcuOTk5OTk5OSwxLjczNTc0MzEgViA3LjU1MDc0NCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjOTI5Mjk5IiBzdHJva2Utd2lkdGg9IjEuMTQzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48cGF0aCBkPSJNNS4zNDUyODIyIDE0LjE5NjQ2SDEwLjY1NDcxOE0xLjgwNTY1ODUgNy41NTA3NDRIMTQuMTk0MzQyIiBzdHJva2U9IiM5MjkyOTkiIHN0cm9rZS13aWR0aD0iMS4xNDMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg=='); diff --git a/static/ui-icons/UI/FilePrivate.svg b/static/ui-icons/UI/FilePrivate.svg new file mode 100644 index 00000000..da63acd9 --- /dev/null +++ b/static/ui-icons/UI/FilePrivate.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/static/ui-icons/UI/FilePublic.svg b/static/ui-icons/UI/FilePublic.svg new file mode 100644 index 00000000..bd4e98a3 --- /dev/null +++ b/static/ui-icons/UI/FilePublic.svg @@ -0,0 +1,3 @@ + + + diff --git a/static/ui-icons/UI/FileShared.svg b/static/ui-icons/UI/FileShared.svg new file mode 100644 index 00000000..508637cb --- /dev/null +++ b/static/ui-icons/UI/FileShared.svg @@ -0,0 +1,4 @@ + + + + diff --git a/static/ui-icons/UI/Folder.svg b/static/ui-icons/UI/Folder.svg index f1e2660e..0f3643a7 100644 --- a/static/ui-icons/UI/Folder.svg +++ b/static/ui-icons/UI/Folder.svg @@ -1,9 +1,3 @@ - - - - Icons / UI / Folder - Created with Sketch. - - - - \ No newline at end of file + + + diff --git a/static/ui-icons/UI/FolderPrivate.svg b/static/ui-icons/UI/FolderPrivate.svg new file mode 100644 index 00000000..fc589723 --- /dev/null +++ b/static/ui-icons/UI/FolderPrivate.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + +