- mail_settings_controller for setting smtp settings - added view ror rjecting dataset for editor - added new model AppConfig for stroing appwide config values - better validate_chesum.ts command with process chunking - added vue3 apps 'BasicSettings' like email, profile settings - started with 2 multilingual capabilities - npm updates
This commit is contained in:
parent
010bead723
commit
b06ccae603
67 changed files with 7820 additions and 1463 deletions
147
resources/js/Components/NcSettingsSection.vue
Normal file
147
resources/js/Components/NcSettingsSection.vue
Normal file
|
@ -0,0 +1,147 @@
|
|||
|
||||
<template>
|
||||
<!-- <div class="settings-section" :class="{'settings-section--limit-width': forceLimitWidth}"> -->
|
||||
<div class="settings-section" v-bind:class="containerMaxW">
|
||||
<h2 class="settings-section__name">
|
||||
{{ name }}
|
||||
<a v-if="hasDocUrl"
|
||||
:href="docUrl"
|
||||
class="settings-section__info"
|
||||
:title="docNameTranslated"
|
||||
:aria-label="docNameTranslated"
|
||||
target="_blank"
|
||||
rel="noreferrer nofollow">
|
||||
<HelpCircle :size="20" />
|
||||
</a>
|
||||
</h2>
|
||||
<p v-if="hasDescription"
|
||||
class="settings-section__desc">
|
||||
{{ description }}
|
||||
</p>
|
||||
<slot />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
// import { t } from '../../l10n.js'
|
||||
// import { translate as t } from '@nextcloud/l10n'
|
||||
import { translate as t } from '@/utils/tethyscloud-l10n';
|
||||
|
||||
import HelpCircle from './Icons/HelpCircle.vue';
|
||||
import { containerMaxW } from '@/config';
|
||||
|
||||
export default {
|
||||
name: 'NcSettingsSection',
|
||||
|
||||
components: {
|
||||
HelpCircle,
|
||||
},
|
||||
|
||||
props: {
|
||||
name: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
description: {
|
||||
type: String,
|
||||
default: '',
|
||||
},
|
||||
docUrl: {
|
||||
type: String,
|
||||
default: '',
|
||||
},
|
||||
/**
|
||||
* Limit the width of the setting's content
|
||||
*
|
||||
* Setting this to false allows unrestricted (width) settings content.
|
||||
* Note that the name and description have always a width limit.
|
||||
* @deprecated Will be removed with next version and will not be used on Nextcloud 30+ (always forced to true)
|
||||
*/
|
||||
limitWidth: {
|
||||
type: Boolean,
|
||||
default: true,
|
||||
},
|
||||
},
|
||||
|
||||
data() {
|
||||
return {
|
||||
docNameTranslated: t('External documentation for {name}', {
|
||||
name: this.name,
|
||||
}),
|
||||
containerMaxW: containerMaxW,
|
||||
}
|
||||
},
|
||||
|
||||
computed: {
|
||||
forceLimitWidth() {
|
||||
// if (this.limitWidth) {
|
||||
// return true
|
||||
// }
|
||||
// // Overwrite this on Nextcloud 30+ to always limit the width
|
||||
// const [major] = window._oc_config?.version.split('.', 2) ?? []
|
||||
// return major && Number.parseInt(major) >= 30
|
||||
return true;
|
||||
},
|
||||
|
||||
hasDescription() {
|
||||
return this.description.length > 0
|
||||
},
|
||||
hasDocUrl() {
|
||||
return this.docUrl.length > 0
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="css" scoped>
|
||||
/* $maxWidth: 900px; */
|
||||
|
||||
.settings-section {
|
||||
display: block;
|
||||
margin-bottom: auto;
|
||||
padding: 30px;
|
||||
|
||||
&:not(:last-child) {
|
||||
border-bottom: 1px solid var(--color-border);
|
||||
}
|
||||
|
||||
&--limit-width > * {
|
||||
max-width: 900px;
|
||||
}
|
||||
|
||||
&__name {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
max-width: 900px;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
&__info {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: var(--default-clickable-area);
|
||||
height: var(--default-clickable-area);
|
||||
|
||||
/* margin: calc($icon-margin * -1); */
|
||||
margin-left: 0;
|
||||
color: var(--color-text-maxcontrast);
|
||||
|
||||
&:hover, &:focus, &:active {
|
||||
color: var(--color-main-text);
|
||||
}
|
||||
}
|
||||
|
||||
&__desc {
|
||||
margin-top: -.2em;
|
||||
margin-bottom: 1em;
|
||||
color: var(--color-text-maxcontrast);
|
||||
max-width: 900px;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
Loading…
Add table
editor.link_modal.header
Reference in a new issue