|
|
@ -10,7 +10,7 @@ |
|
|
|
class="primary nc-project-title theme--dark" |
|
|
|
class="primary nc-project-title theme--dark" |
|
|
|
:class="{ shared: sharedBase }" |
|
|
|
:class="{ shared: sharedBase }" |
|
|
|
> |
|
|
|
> |
|
|
|
<img v-if="sharedBase" src="favicon-32.png" height="18" class="ml-2" /> |
|
|
|
<img v-if="sharedBase" src="favicon-32.png" height="18" class="ml-2"> |
|
|
|
<h3 |
|
|
|
<h3 |
|
|
|
v-if="sharedBase" |
|
|
|
v-if="sharedBase" |
|
|
|
class="nc-project-title white--text text-capitalize" |
|
|
|
class="nc-project-title white--text text-capitalize" |
|
|
@ -43,7 +43,9 @@ |
|
|
|
class="elevation-0 mr-2 pl-3 pr-1 caption nc-table-list-filter" |
|
|
|
class="elevation-0 mr-2 pl-3 pr-1 caption nc-table-list-filter" |
|
|
|
> |
|
|
|
> |
|
|
|
<template #prepend-inner> |
|
|
|
<template #prepend-inner> |
|
|
|
<v-icon small class="mt-2 ml-2 mr-1"> mdi-magnify </v-icon> |
|
|
|
<v-icon small class="mt-2 ml-2 mr-1"> |
|
|
|
|
|
|
|
mdi-magnify |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<template #append> |
|
|
|
<template #append> |
|
|
|
<v-icon |
|
|
|
<v-icon |
|
|
@ -91,7 +93,9 @@ |
|
|
|
@click.stop="addTab({ ...item }, open, leaf)" |
|
|
|
@click.stop="addTab({ ...item }, open, leaf)" |
|
|
|
> |
|
|
|
> |
|
|
|
<template v-if="item._nodes.type === 'db'"> |
|
|
|
<template v-if="item._nodes.type === 'db'"> |
|
|
|
<v-icon size="16"> mdi-database </v-icon> |
|
|
|
<v-icon size="16"> |
|
|
|
|
|
|
|
mdi-database |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
<!-- <img--> |
|
|
|
<!-- <img--> |
|
|
|
<!-- class="grey lighten-3"--> |
|
|
|
<!-- class="grey lighten-3"--> |
|
|
|
<!-- :width="16" :src="`/db-icons/${dbIcons[item._nodes.dbConnection.client]}`"/>--> |
|
|
|
<!-- :width="16" :src="`/db-icons/${dbIcons[item._nodes.dbConnection.client]}`"/>--> |
|
|
@ -120,8 +124,7 @@ |
|
|
|
icons[item._nodes.type].class, |
|
|
|
icons[item._nodes.type].class, |
|
|
|
item.active ? 'font-weight-bold' : '', |
|
|
|
item.active ? 'font-weight-bold' : '', |
|
|
|
]" |
|
|
|
]" |
|
|
|
>{{ item.name }}</span |
|
|
|
>{{ item.name }}</span> |
|
|
|
> |
|
|
|
|
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<span>{{ item.tooltip || item.name }}</span> |
|
|
|
<span>{{ item.tooltip || item.name }}</span> |
|
|
@ -149,7 +152,9 @@ |
|
|
|
@contextmenu.prevent="showCTXMenu($event, item, true, false)" |
|
|
|
@contextmenu.prevent="showCTXMenu($event, item, true, false)" |
|
|
|
> |
|
|
|
> |
|
|
|
<template #appendIcon> |
|
|
|
<template #appendIcon> |
|
|
|
<v-icon small color="grey"> mdi-chevron-down </v-icon> |
|
|
|
<v-icon small color="grey"> |
|
|
|
|
|
|
|
mdi-chevron-down |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<template #activator> |
|
|
|
<template #activator> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-list-item-icon> |
|
|
@ -190,16 +195,13 @@ |
|
|
|
.toLowerCase() |
|
|
|
.toLowerCase() |
|
|
|
.includes(search.toLowerCase()) |
|
|
|
.includes(search.toLowerCase()) |
|
|
|
).length |
|
|
|
).length |
|
|
|
}})</template |
|
|
|
}})</template></span> |
|
|
|
></span |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<span |
|
|
|
<span |
|
|
|
v-else |
|
|
|
v-else |
|
|
|
class="body-2 font-weight-medium" |
|
|
|
class="body-2 font-weight-medium" |
|
|
|
v-on="on" |
|
|
|
v-on="on" |
|
|
|
> |
|
|
|
> |
|
|
|
{{ item.name }}</span |
|
|
|
{{ item.name }}</span> |
|
|
|
> |
|
|
|
|
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<span class="caption">Only visible to Creator</span> |
|
|
|
<span class="caption">Only visible to Creator</span> |
|
|
|
</v-tooltip> |
|
|
|
</v-tooltip> |
|
|
@ -220,12 +222,9 @@ |
|
|
|
.toLowerCase() |
|
|
|
.toLowerCase() |
|
|
|
.includes(search.toLowerCase()) |
|
|
|
.includes(search.toLowerCase()) |
|
|
|
).length |
|
|
|
).length |
|
|
|
}})</template |
|
|
|
}})</template></span> |
|
|
|
></span |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<span v-else class="caption font-weight-regular"> |
|
|
|
<span v-else class="caption font-weight-regular"> |
|
|
|
{{ item.name }}</span |
|
|
|
{{ item.name }}</span> |
|
|
|
> |
|
|
|
|
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</v-list-item-title> |
|
|
|
</v-list-item-title> |
|
|
|
|
|
|
|
|
|
|
@ -236,7 +235,7 @@ |
|
|
|
<x-icon |
|
|
|
<x-icon |
|
|
|
v-if=" |
|
|
|
v-if=" |
|
|
|
_isUIAllowed('treeview-add-button') && |
|
|
|
_isUIAllowed('treeview-add-button') && |
|
|
|
item.type !== 'viewDir' |
|
|
|
item.type !== 'viewDir' |
|
|
|
" |
|
|
|
" |
|
|
|
:color="['x-active', 'grey']" |
|
|
|
:color="['x-active', 'grey']" |
|
|
|
small |
|
|
|
small |
|
|
@ -248,12 +247,12 @@ |
|
|
|
mdi-plus-circle-outline |
|
|
|
mdi-plus-circle-outline |
|
|
|
</x-icon> |
|
|
|
</x-icon> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<span class="caption" |
|
|
|
<span |
|
|
|
>Add new |
|
|
|
class="caption" |
|
|
|
|
|
|
|
>Add new |
|
|
|
<span class="text-capitalize">{{ |
|
|
|
<span class="text-capitalize">{{ |
|
|
|
item.type.slice(0, -3) |
|
|
|
item.type.slice(0, -3) |
|
|
|
}}</span></span |
|
|
|
}}</span></span> |
|
|
|
> |
|
|
|
|
|
|
|
</v-tooltip> |
|
|
|
</v-tooltip> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
|
@ -277,9 +276,9 @@ |
|
|
|
v-for="child in item.children || []" |
|
|
|
v-for="child in item.children || []" |
|
|
|
v-show=" |
|
|
|
v-show=" |
|
|
|
!search || |
|
|
|
!search || |
|
|
|
child.name |
|
|
|
child.name |
|
|
|
.toLowerCase() |
|
|
|
.toLowerCase() |
|
|
|
.includes(search.toLowerCase()) |
|
|
|
.includes(search.toLowerCase()) |
|
|
|
" |
|
|
|
" |
|
|
|
:key="child.key" |
|
|
|
:key="child.key" |
|
|
|
v-t="['a:table:open']" |
|
|
|
v-t="['a:table:open']" |
|
|
@ -327,7 +326,7 @@ |
|
|
|
<v-tooltip |
|
|
|
<v-tooltip |
|
|
|
v-if=" |
|
|
|
v-if=" |
|
|
|
_isUIAllowed('creator_tooltip') && |
|
|
|
_isUIAllowed('creator_tooltip') && |
|
|
|
child.creator_tooltip |
|
|
|
child.creator_tooltip |
|
|
|
" |
|
|
|
" |
|
|
|
bottom |
|
|
|
bottom |
|
|
|
> |
|
|
|
> |
|
|
@ -354,7 +353,7 @@ |
|
|
|
<v-icon |
|
|
|
<v-icon |
|
|
|
v-if=" |
|
|
|
v-if=" |
|
|
|
_isUIAllowed('treeview-rename-button') || |
|
|
|
_isUIAllowed('treeview-rename-button') || |
|
|
|
_isUIAllowed('ui-acl') |
|
|
|
_isUIAllowed('ui-acl') |
|
|
|
" |
|
|
|
" |
|
|
|
small |
|
|
|
small |
|
|
|
v-on="on" |
|
|
|
v-on="on" |
|
|
@ -422,7 +421,7 @@ |
|
|
|
<v-list-item |
|
|
|
<v-list-item |
|
|
|
v-else-if=" |
|
|
|
v-else-if=" |
|
|
|
(item.type !== 'sqlClientDir' || showSqlClient) && |
|
|
|
(item.type !== 'sqlClientDir' || showSqlClient) && |
|
|
|
(item.type !== 'migrationsDir' || _isUIAllowed('audit')) |
|
|
|
(item.type !== 'migrationsDir' || _isUIAllowed('audit')) |
|
|
|
" |
|
|
|
" |
|
|
|
:key="item.key" |
|
|
|
:key="item.key" |
|
|
|
:selectable="false" |
|
|
|
:selectable="false" |
|
|
@ -458,8 +457,7 @@ |
|
|
|
class="caption font-weight-regular" |
|
|
|
class="caption font-weight-regular" |
|
|
|
v-on="on" |
|
|
|
v-on="on" |
|
|
|
@dblclick="showSqlClient = true" |
|
|
|
@dblclick="showSqlClient = true" |
|
|
|
>{{ item.name }}</span |
|
|
|
>{{ item.name }}</span> |
|
|
|
> |
|
|
|
|
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<span class="caption">Only visible to Creator</span> |
|
|
|
<span class="caption">Only visible to Creator</span> |
|
|
|
</v-tooltip> |
|
|
|
</v-tooltip> |
|
|
@ -467,8 +465,7 @@ |
|
|
|
v-else |
|
|
|
v-else |
|
|
|
class="caption font-weight-regular" |
|
|
|
class="caption font-weight-regular" |
|
|
|
@dblclick="showSqlClient = true" |
|
|
|
@dblclick="showSqlClient = true" |
|
|
|
>{{ item.name }}</span |
|
|
|
>{{ item.name }}</span> |
|
|
|
> |
|
|
|
|
|
|
|
</v-list-item-title> |
|
|
|
</v-list-item-title> |
|
|
|
</v-list-item> |
|
|
|
</v-list-item> |
|
|
|
</template> |
|
|
|
</template> |
|
|
@ -528,7 +525,9 @@ |
|
|
|
v-on="on" |
|
|
|
v-on="on" |
|
|
|
> |
|
|
|
> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-icon x-small> mdi-storefront-outline </v-icon> |
|
|
|
<v-icon x-small> |
|
|
|
|
|
|
|
mdi-storefront-outline |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
</v-list-item-icon> |
|
|
|
</v-list-item-icon> |
|
|
|
<!-- App Store --> |
|
|
|
<!-- App Store --> |
|
|
|
<v-list-item-title> |
|
|
|
<v-list-item-title> |
|
|
@ -552,7 +551,9 @@ |
|
|
|
v-on="on" |
|
|
|
v-on="on" |
|
|
|
> |
|
|
|
> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-icon x-small> mdi-account-group </v-icon> |
|
|
|
<v-icon x-small> |
|
|
|
|
|
|
|
mdi-account-group |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
</v-list-item-icon> |
|
|
|
</v-list-item-icon> |
|
|
|
<!-- Team & Auth --> |
|
|
|
<!-- Team & Auth --> |
|
|
|
<v-list-item-title> |
|
|
|
<v-list-item-title> |
|
|
@ -575,7 +576,9 @@ |
|
|
|
v-on="on" |
|
|
|
v-on="on" |
|
|
|
> |
|
|
|
> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-icon x-small> mdi-table-multiple </v-icon> |
|
|
|
<v-icon x-small> |
|
|
|
|
|
|
|
mdi-table-multiple |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
</v-list-item-icon> |
|
|
|
</v-list-item-icon> |
|
|
|
<!-- Project Metadata --> |
|
|
|
<!-- Project Metadata --> |
|
|
|
<v-list-item-title> |
|
|
|
<v-list-item-title> |
|
|
@ -599,7 +602,9 @@ |
|
|
|
v-on="on" |
|
|
|
v-on="on" |
|
|
|
> |
|
|
|
> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-list-item-icon> |
|
|
|
<v-icon x-small> mdi-notebook-outline </v-icon> |
|
|
|
<v-icon x-small> |
|
|
|
|
|
|
|
mdi-notebook-outline |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
</v-list-item-icon> |
|
|
|
</v-list-item-icon> |
|
|
|
<!-- Project Metadata --> |
|
|
|
<!-- Project Metadata --> |
|
|
|
<v-list-item-title> |
|
|
|
<v-list-item-title> |
|
|
@ -622,7 +627,9 @@ |
|
|
|
<span class="body-2 font-weight-medium">{{ |
|
|
|
<span class="body-2 font-weight-medium">{{ |
|
|
|
$t("activity.previewAs") |
|
|
|
$t("activity.previewAs") |
|
|
|
}}</span> |
|
|
|
}}</span> |
|
|
|
<v-icon small class="ml-1"> mdi-drama-masks </v-icon> |
|
|
|
<v-icon small class="ml-1"> |
|
|
|
|
|
|
|
mdi-drama-masks |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
</v-list-item> |
|
|
|
</v-list-item> |
|
|
|
|
|
|
|
|
|
|
|
<v-list dense> |
|
|
|
<v-list dense> |
|
|
@ -649,15 +656,16 @@ |
|
|
|
<span |
|
|
|
<span |
|
|
|
class="caption text-capitalize" |
|
|
|
class="caption text-capitalize" |
|
|
|
:class="{ 'x-active--text': role.title === previewAs }" |
|
|
|
:class="{ 'x-active--text': role.title === previewAs }" |
|
|
|
>{{ role.title }}</span |
|
|
|
>{{ role.title }}</span> |
|
|
|
> |
|
|
|
|
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<template v-if="previewAs"> |
|
|
|
<template v-if="previewAs"> |
|
|
|
<!-- <v-divider></v-divider>--> |
|
|
|
<!-- <v-divider></v-divider>--> |
|
|
|
<v-list-item @click="setPreviewUSer(null)"> |
|
|
|
<v-list-item @click="setPreviewUSer(null)"> |
|
|
|
<v-icon small class="mr-1"> mdi-close </v-icon> |
|
|
|
<v-icon small class="mr-1"> |
|
|
|
|
|
|
|
mdi-close |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
<!-- Reset Preview --> |
|
|
|
<!-- Reset Preview --> |
|
|
|
<span class="caption nc-preview-reset">{{ |
|
|
|
<span class="caption nc-preview-reset">{{ |
|
|
|
$t("activity.resetReview") |
|
|
|
$t("activity.resetReview") |
|
|
@ -679,8 +687,10 @@ |
|
|
|
class="caption pointer nc-team-settings" |
|
|
|
class="caption pointer nc-team-settings" |
|
|
|
@click="click" |
|
|
|
@click="click" |
|
|
|
> |
|
|
|
> |
|
|
|
<v-icon color="brown" small class="mr-1"> mdi-cog </v-icon> |
|
|
|
<v-icon color="brown" small class="mr-1"> |
|
|
|
Team & Settings |
|
|
|
mdi-cog |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
|
|
|
|
{{ $t('title.team&settings') }} |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</settings-modal> |
|
|
|
</settings-modal> |
|
|
@ -692,8 +702,10 @@ |
|
|
|
class="caption pointer nc-docs pb-3 pl-5 pr-3 pt-2 d-flex align-center" |
|
|
|
class="caption pointer nc-docs pb-3 pl-5 pr-3 pt-2 d-flex align-center" |
|
|
|
@click="openLink('https://apis.nocodb.com')" |
|
|
|
@click="openLink('https://apis.nocodb.com')" |
|
|
|
> |
|
|
|
> |
|
|
|
<v-icon small class="mr-2"> mdi-api </v-icon> |
|
|
|
<v-icon small class="mr-2"> |
|
|
|
API Docs |
|
|
|
mdi-api |
|
|
|
|
|
|
|
</v-icon> |
|
|
|
|
|
|
|
{{ $t('title.apiDocs') }} |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<v-divider /> |
|
|
|
<v-divider /> |
|
|
|
<extras class="pl-1" /> |
|
|
|
<extras class="pl-1" /> |
|
|
|