Merge branch 'master' into patch-1

This commit is contained in:
Jérôme Herbinet
2022-09-26 09:03:14 +02:00
committed by GitHub
37 changed files with 177 additions and 82 deletions

View File

@@ -41,7 +41,7 @@
</NcModal>
</template>
<script>
import NcModal from '@nextcloud/vue/dist/Components/NcModal'
import { NcModal } from '@nextcloud/vue'
import axios from '@nextcloud/axios'
import { generateUrl } from '@nextcloud/router'

View File

@@ -92,9 +92,7 @@
<script>
import { generateUrl } from '@nextcloud/router'
import NcModal from '@nextcloud/vue/dist/Components/NcModal.js'
import NcMultiselect from '@nextcloud/vue/dist/Components/NcMultiselect.js'
import NcEmptyContent from '@nextcloud/vue/dist/Components/NcEmptyContent.js'
import { NcModal, NcMultiselect, NcEmptyContent } from '@nextcloud/vue'
import axios from '@nextcloud/axios'
import { CardApi } from './services/CardApi.js'

View File

@@ -62,8 +62,7 @@
<script>
import { generateUrl } from '@nextcloud/router'
import NcModal from '@nextcloud/vue/dist/Components/NcModal'
import NcMultiselect from '@nextcloud/vue/dist/Components/NcMultiselect'
import { NcModal, NcMultiselect } from '@nextcloud/vue'
import axios from '@nextcloud/axios'
export default {

View File

@@ -41,9 +41,9 @@
<span v-if="acl.type===7">{{ t('deck', '(Circle)') }}</span>
</span>
<ActionCheckbox v-if="!(isCurrentUser(acl.participant.uid) && acl.type === 0) && (canManage || (canEdit && canShare))" :checked="acl.permissionEdit" @change="clickEditAcl(acl)">
<NcActionCheckbox v-if="!(isCurrentUser(acl.participant.uid) && acl.type === 0) && (canManage || (canEdit && canShare))" :checked="acl.permissionEdit" @change="clickEditAcl(acl)">
{{ t('deck', 'Can edit') }}
</ActionCheckbox>
</NcActionCheckbox>
<NcActions v-if="!(isCurrentUser(acl.participant.uid) && acl.type === 0)" :force-menu="true">
<ActionCheckbox v-if="canManage || canShare" :checked="acl.permissionShare" @change="clickShareAcl(acl)">
{{ t('deck', 'Can share') }}
@@ -73,7 +73,7 @@
</template>
<script>
import { NcAvatar, NcMultiselect, NcActions, NcActionButton, ActionCheckbox, NcRelatedResourcesPanel } from '@nextcloud/vue'
import { NcAvatar, NcMultiselect, NcActions, NcActionButton, NcActionCheckbox, NcRelatedResourcesPanel } from '@nextcloud/vue'
import { CollectionList } from 'nextcloud-vue-collections'
import { mapGetters, mapState } from 'vuex'
import { getCurrentUser } from '@nextcloud/auth'
@@ -87,7 +87,7 @@ export default {
NcAvatar,
NcActions,
NcActionButton,
ActionCheckbox,
NcActionCheckbox,
NcMultiselect,
CollectionList,
NcRelatedResourcesPanel,

View File

@@ -76,15 +76,15 @@
</NcActionButton>
</NcActions>
<NcActions v-if="removable && !isReadOnly" :force-menu="true">
<ActionLink v-if="attachment.extendedData.fileid" icon="icon-folder" :href="internalLink(attachment)">
<NcActionLink v-if="attachment.extendedData.fileid" icon="icon-folder" :href="internalLink(attachment)">
{{ t('deck', 'Show in Files') }}
</ActionLink>
<ActionLink v-if="attachment.extendedData.fileid"
</NcActionLink>
<NcActionLink v-if="attachment.extendedData.fileid"
icon="icon-download"
:href="downloadLink(attachment)"
download>
{{ t('deck', 'Download') }}
</ActionLink>
</NcActionLink>
<NcActionButton v-if="attachment.extendedData.fileid && !isReadOnly" icon="icon-delete" @click="unshareAttachment(attachment)">
{{ t('deck', 'Remove attachment') }}
</NcActionButton>
@@ -103,7 +103,7 @@
<script>
import axios from '@nextcloud/axios'
import { NcActions, NcActionButton, ActionLink } from '@nextcloud/vue'
import { NcActions, NcActionButton, NcActionLink } from '@nextcloud/vue'
import AttachmentDragAndDrop from '../AttachmentDragAndDrop.vue'
import relativeDate from '../../mixins/relativeDate.js'
import { formatFileSize } from '@nextcloud/files'
@@ -127,7 +127,7 @@ export default {
components: {
NcActions,
NcActionButton,
ActionLink,
NcActionLink,
AttachmentDragAndDrop,
},
mixins: [relativeDate, attachmentUpload],

View File

@@ -20,7 +20,7 @@
*/
import { registerWidget } from '@nextcloud/vue-richtext'
import Tooltip from '@nextcloud/vue/dist/Directives/Tooltip.js'
import { Tooltip } from '@nextcloud/vue'
import Vue from 'vue'
import CardReferenceWidget from './views/CardReferenceWidget.vue'
@@ -36,7 +36,6 @@ registerWidget('deck-card', (el, { richObjectType, richObject, accessible }) =>
// trick to change the wrapper element size, otherwise it always is 100%
// which is not very nice with a simple card
el.parentNode.style['max-width'] = '400px'
el.parentNode.style['min-width'] = '200px'
el.parentNode.style['margin-left'] = '0'
el.parentNode.style['margin-right'] = '0'

View File

@@ -62,9 +62,14 @@
<div class="line description-assignees">
<TextIcon v-if="card.description" :size="20" class="icon" />
<div v-if="card.description"
class="description"
:title="card.description">
{{ card.description }}
:class="{
'description': true,
'short-description': shortDescription,
}">
<RichText v-tooltip.top="{ content: shortDescription ? t('deck', 'Click to expand description') : undefined }"
:text="card.description"
:use-markdown="true"
@click.native="shortDescription = !shortDescription" />
</div>
<div v-if="card.assignedUsers .length > 0"
class="spacer" />
@@ -83,6 +88,7 @@ import DeckIcon from '../components/icons/DeckIcon.vue'
import AvatarList from '../components/cards/AvatarList.vue'
import labelStyle from '../mixins/labelStyle.js'
import { RichText } from '@nextcloud/vue-richtext'
import moment from '@nextcloud/moment'
import { generateUrl } from '@nextcloud/router'
@@ -94,6 +100,7 @@ export default {
DeckIcon,
CalendarBlankIcon,
TextIcon,
RichText,
},
mixins: [labelStyle],
@@ -115,6 +122,7 @@ export default {
data() {
return {
shortDescription: true,
}
},
@@ -171,11 +179,17 @@ export default {
.deck-card-reference {
width: 100%;
// needed for the specific case of Text
.editor__content & {
width: calc(100% - 24px);
}
white-space: normal;
padding: 12px;
.link {
text-decoration: underline;
color: var(--color-main-text) !important;
padding: 0 !important;
}
.line {
@@ -201,13 +215,22 @@ export default {
.description-assignees {
width: 100%;
display: flex;
align-items: center;
align-items: start;
.icon {
align-self: start;
margin-top: 8px;
}
.description {
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
margin-right: 8px;
padding-top: 6px;
max-height: 250px;
overflow: scroll;
&.short-description {
max-height: 25px;
overflow: hidden;
}
}
.card-assignees {

View File

@@ -61,13 +61,12 @@
<script>
import PlusIcon from 'vue-material-design-icons/Plus.vue'
import { NcDashboardWidget } from '@nextcloud/vue'
import { NcButton, NcDashboardWidget } from '@nextcloud/vue'
import { mapGetters } from 'vuex'
import labelStyle from './../mixins/labelStyle.js'
import DueDate from '../components/cards/badges/DueDate.vue'
import { generateUrl } from '@nextcloud/router'
import CardCreateDialog from '../CardCreateDialog.vue'
import NcButton from '@nextcloud/vue/dist/Components/NcButton.js'
export default {
name: 'Dashboard',