@conduction/nextcloud-vue 2.98.0 → 2.100.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue2.js +12 -0
- package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue2.js.map +1 -1
- package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue3.js +11 -2
- package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue3.js.map +1 -1
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue.js +1 -1
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue2.js +6 -1
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue2.js.map +1 -1
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue3.js +2 -1
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue3.js.map +1 -1
- package/dist/esm/components/CnBreadcrumbs/CnBreadcrumbs.vue.js +1 -1
- package/dist/esm/components/CnBreadcrumbs/CnBreadcrumbs.vue2.js.map +1 -1
- package/dist/esm/components/CnBreadcrumbs/CnBreadcrumbs.vue3.js +1 -1
- package/dist/esm/components/CnBreadcrumbs/CnBreadcrumbs.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js +25 -8
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js +7 -4
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue.js +1 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue2.js +11 -8
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue3.js +13 -4
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue3.js.map +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue.js +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js +54 -3
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js +16 -2
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnFlowsPage/CnFlowBoard.vue.js +1 -1
- package/dist/esm/components/CnFlowsPage/CnFlowBoard.vue2.js +42 -7
- package/dist/esm/components/CnFlowsPage/CnFlowBoard.vue2.js.map +1 -1
- package/dist/esm/components/CnFlowsPage/CnFlowBoard.vue3.js +121 -57
- package/dist/esm/components/CnFlowsPage/CnFlowBoard.vue3.js.map +1 -1
- package/dist/esm/components/CnFlowsPage/CnFlowEditorPage.vue2.js +10 -0
- package/dist/esm/components/CnFlowsPage/CnFlowEditorPage.vue2.js.map +1 -1
- package/dist/esm/components/CnFlowsPage/CnFlowEditorPage.vue3.js +2 -1
- package/dist/esm/components/CnFlowsPage/CnFlowEditorPage.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +136 -7
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
- package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue.js +1 -1
- package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue2.js +26 -7
- package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue2.js.map +1 -1
- package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue3.js +78 -17
- package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue3.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue.js +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js +68 -7
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js +256 -240
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue.js +9 -0
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue.js.map +1 -0
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue2.js +265 -0
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue2.js.map +1 -0
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue3.js +191 -0
- package/dist/esm/components/CnSettingsField/CnSettingsField.vue3.js.map +1 -0
- package/dist/esm/components/CnSettingsFieldsSection/CnSettingsFieldsSection.vue.js +9 -0
- package/dist/esm/components/CnSettingsFieldsSection/CnSettingsFieldsSection.vue.js.map +1 -0
- package/dist/esm/components/CnSettingsFieldsSection/CnSettingsFieldsSection.vue2.js +537 -0
- package/dist/esm/components/CnSettingsFieldsSection/CnSettingsFieldsSection.vue2.js.map +1 -0
- package/dist/esm/components/CnSettingsFieldsSection/CnSettingsFieldsSection.vue3.js +99 -0
- package/dist/esm/components/CnSettingsFieldsSection/CnSettingsFieldsSection.vue3.js.map +1 -0
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue.js +1 -1
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue2.js +18 -70
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue2.js.map +1 -1
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue3.js +6 -44
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue3.js.map +1 -1
- package/dist/esm/components/CnSetupWizard/CnSetupWizard.vue.js +1 -1
- package/dist/esm/components/CnSetupWizard/CnSetupWizard.vue2.js +16 -2
- package/dist/esm/components/CnSetupWizard/CnSetupWizard.vue2.js.map +1 -1
- package/dist/esm/components/CnSetupWizard/CnSetupWizard.vue3.js +40 -25
- package/dist/esm/components/CnSetupWizard/CnSetupWizard.vue3.js.map +1 -1
- package/dist/esm/components/CnWidgetGrid/registerDashboardWidgets.js +1 -0
- package/dist/esm/components/CnWidgetGrid/registerDashboardWidgets.js.map +1 -1
- package/dist/esm/components/CnWizardDialog/CnWizardDialog.vue.js +1 -1
- package/dist/esm/components/CnWizardDialog/CnWizardDialog.vue2.js +7 -7
- package/dist/esm/components/CnWizardDialog/CnWizardDialog.vue2.js.map +1 -1
- package/dist/esm/components/CnWizardDialog/CnWizardDialog.vue3.js.map +1 -1
- package/dist/esm/components/CnWorkingCalendarWidget/CnWorkingCalendarWidget.vue.js +9 -0
- package/dist/esm/components/CnWorkingCalendarWidget/CnWorkingCalendarWidget.vue.js.map +1 -0
- package/dist/esm/components/CnWorkingCalendarWidget/CnWorkingCalendarWidget.vue2.js +472 -0
- package/dist/esm/components/CnWorkingCalendarWidget/CnWorkingCalendarWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnWorkingCalendarWidget/CnWorkingCalendarWidget.vue3.js +231 -0
- package/dist/esm/components/CnWorkingCalendarWidget/CnWorkingCalendarWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnWorkingCalendarWidget/index.js +27 -0
- package/dist/esm/components/CnWorkingCalendarWidget/index.js.map +1 -0
- package/dist/esm/composables/useFlowStore.js +2 -1
- package/dist/esm/composables/useFlowStore.js.map +1 -1
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/l10n/en.json.js +101 -1
- package/dist/esm/l10n/en.json.js.map +1 -1
- package/dist/esm/l10n/nl.json.js +115 -1
- package/dist/esm/l10n/nl.json.js.map +1 -1
- package/dist/esm/library-style.js +1 -1
- package/dist/esm/nextcloud-vue.css +999 -233
- package/dist/esm/utils/libraryWidgetKeys.js +1 -0
- package/dist/esm/utils/libraryWidgetKeys.js.map +1 -1
- package/dist/esm/utils/validateManifestV2.compiled.js +3 -3
- package/dist/esm/utils/validateManifestV2.compiled.js.map +1 -1
- package/dist/esm/utils/workingCalendarMonth.js +85 -0
- package/dist/esm/utils/workingCalendarMonth.js.map +1 -0
- package/dist/nextcloud-vue.cjs.js +10314 -7778
- package/dist/nextcloud-vue.cjs.js.map +2 -2
- package/dist/nextcloud-vue.css +999 -233
- package/l10n/en.json +101 -1
- package/l10n/nl.json +115 -1
- package/package.json +1 -1
- package/src/components/CnActionsMenu/CnActionsMenu.vue +14 -1
- package/src/components/CnAdminSettingsShell/CnAdminSettingsShell.vue +7 -1
- package/src/components/CnBreadcrumbs/CnBreadcrumbs.vue +1 -0
- package/src/components/CnDetailPage/CnDetailPage.vue +29 -9
- package/src/components/CnDetailWidgetHost/CnDetailWidgetHost.vue +13 -4
- package/src/components/CnFactsWidget/CnFactsWidget.vue +65 -3
- package/src/components/CnFlowsPage/CnFlowBoard.vue +77 -2
- package/src/components/CnFlowsPage/CnFlowEditorPage.vue +11 -0
- package/src/components/CnIndexPage/CnIndexPage.vue +136 -7
- package/src/components/CnOrderedListField/CnOrderedListField.vue +81 -9
- package/src/components/CnRecordListWidget/CnRecordListWidget.vue +114 -7
- package/src/components/CnSettingsField/CnSettingsField.vue +449 -0
- package/src/components/CnSettingsField/index.js +4 -0
- package/src/components/CnSettingsFieldsSection/CnSettingsFieldsSection.vue +642 -0
- package/src/components/CnSettingsFieldsSection/index.js +4 -0
- package/src/components/CnSettingsPage/CnSettingsPage.vue +6 -86
- package/src/components/CnSetupWizard/CnSetupWizard.vue +37 -3
- package/src/components/CnWidgetGrid/registerDashboardWidgets.js +1 -0
- package/src/components/CnWizardDialog/CnWizardDialog.vue +7 -7
- package/src/components/CnWorkingCalendarWidget/CnWorkingCalendarWidget.vue +725 -0
- package/src/components/CnWorkingCalendarWidget/index.js +26 -0
- package/src/components/index.js +3 -0
- package/src/composables/useFlowStore.js +2 -1
- package/src/css/badge.css +32 -16
- package/src/css/detail-page.css +15 -0
- package/src/css/dialog.css +48 -0
- package/src/css/look-board-detail.css +80 -8
- package/src/css/look-board-index.css +52 -8
- package/src/css/look-board.css +301 -1
- package/src/index.js +3 -0
- package/src/schemas/app-manifest-v2.schema.json +25 -1
- package/src/utils/libraryWidgetKeys.js +1 -0
- package/src/utils/validateManifestV2.compiled.js +3 -3
- package/src/utils/workingCalendarMonth.js +82 -0
|
@@ -172,34 +172,9 @@
|
|
|
172
172
|
:field="field"
|
|
173
173
|
:value="formData[field.key]"
|
|
174
174
|
:onInput="(v) => updateField(field.key, v)">
|
|
175
|
-
<
|
|
176
|
-
|
|
177
|
-
:modelValue="
|
|
178
|
-
@update:modelValue="updateField(field.key, $event)">
|
|
179
|
-
{{ resolveLabel(field.label) }}
|
|
180
|
-
</NcCheckboxRadioSwitch>
|
|
181
|
-
<NcTextField
|
|
182
|
-
v-else-if="field.type === 'number'"
|
|
183
|
-
:label="resolveLabel(field.label)"
|
|
184
|
-
type="number"
|
|
185
|
-
:modelValue="String(fieldValue(field.key, ''))"
|
|
186
|
-
@update:modelValue="updateField(field.key, $event === '' ? null : Number($event))" />
|
|
187
|
-
<NcTextField
|
|
188
|
-
v-else-if="field.type === 'password'"
|
|
189
|
-
:label="resolveLabel(field.label)"
|
|
190
|
-
type="password"
|
|
191
|
-
:modelValue="fieldValue(field.key, '')"
|
|
192
|
-
@update:modelValue="updateField(field.key, $event)" />
|
|
193
|
-
<NcSelect
|
|
194
|
-
v-else-if="field.type === 'enum' && Array.isArray(field.options)"
|
|
195
|
-
:modelValue="selectedOption(field)"
|
|
196
|
-
:options="field.options"
|
|
197
|
-
:inputLabel="resolveLabel(field.label)"
|
|
198
|
-
@update:modelValue="updateField(field.key, optionValue($event))" />
|
|
199
|
-
<NcTextField
|
|
200
|
-
v-else
|
|
201
|
-
:label="resolveLabel(field.label)"
|
|
202
|
-
:modelValue="fieldValue(field.key, '')"
|
|
175
|
+
<CnSettingsField
|
|
176
|
+
:field="{ ...field, label: resolveLabel(field.label) }"
|
|
177
|
+
:modelValue="formData[field.key]"
|
|
203
178
|
@update:modelValue="updateField(field.key, $event)" />
|
|
204
179
|
</slot>
|
|
205
180
|
<small
|
|
@@ -297,14 +272,12 @@ import axios from '@nextcloud/axios'
|
|
|
297
272
|
import { translate as t } from '@nextcloud/l10n'
|
|
298
273
|
import {
|
|
299
274
|
NcButton,
|
|
300
|
-
NcCheckboxRadioSwitch,
|
|
301
275
|
NcLoadingIcon,
|
|
302
|
-
NcSelect,
|
|
303
|
-
NcTextField,
|
|
304
276
|
} from '@nextcloud/vue'
|
|
305
277
|
import ContentSave from 'vue-material-design-icons/ContentSave.vue'
|
|
306
278
|
import CnBuildiqEditButton from '../CnBuildiqEditButton/CnBuildiqEditButton.vue'
|
|
307
279
|
import CnRegisterMapping from '../CnRegisterMapping/CnRegisterMapping.vue'
|
|
280
|
+
import CnSettingsField from '../CnSettingsField/CnSettingsField.vue'
|
|
308
281
|
import CnToggleTableWidget from '../CnToggleTableWidget/CnToggleTableWidget.vue'
|
|
309
282
|
import CnVersionInfoCard from '../CnVersionInfoCard/CnVersionInfoCard.vue'
|
|
310
283
|
import { useLook } from '../../composables/useLook.js'
|
|
@@ -356,7 +329,7 @@ const BUILTIN_SETTINGS_WIDGETS = Object.freeze({
|
|
|
356
329
|
* three body kinds:
|
|
357
330
|
*
|
|
358
331
|
* - `fields[]` — flat form fields (back-compat default).
|
|
359
|
-
* Each field's `type` controls which input renders:
|
|
332
|
+
* Each field's `type` controls which input CnSettingsField renders:
|
|
360
333
|
* - `boolean` → NcCheckboxRadioSwitch
|
|
361
334
|
* - `number` → NcTextField (type=number)
|
|
362
335
|
* - `string` → NcTextField (default)
|
|
@@ -409,11 +382,9 @@ export default {
|
|
|
409
382
|
|
|
410
383
|
components: {
|
|
411
384
|
NcButton,
|
|
412
|
-
NcCheckboxRadioSwitch,
|
|
413
385
|
NcLoadingIcon,
|
|
414
|
-
NcSelect,
|
|
415
|
-
NcTextField,
|
|
416
386
|
ContentSave,
|
|
387
|
+
CnSettingsField,
|
|
417
388
|
CnBuildiqEditButton,
|
|
418
389
|
CnSettingsCard,
|
|
419
390
|
CnSettingsSection,
|
|
@@ -823,57 +794,6 @@ export default {
|
|
|
823
794
|
},
|
|
824
795
|
|
|
825
796
|
methods: {
|
|
826
|
-
// Coalesce a field value to a fallback when null / undefined.
|
|
827
|
-
// Used in template bindings instead of `formData[key] ?? ''` because
|
|
828
|
-
// vue-template-es2015-compiler (the Rollup VuePlugin's parser) does
|
|
829
|
-
// not accept ES2020 nullish-coalescing inside template expressions.
|
|
830
|
-
fieldValue(key, fallback) {
|
|
831
|
-
const v = this.formData[key]
|
|
832
|
-
return (v === null || v === undefined) ? fallback : v
|
|
833
|
-
},
|
|
834
|
-
|
|
835
|
-
// Resolve the currently-selected option for an enum field.
|
|
836
|
-
// `field.options` may be an array of strings/numbers OR an array
|
|
837
|
-
// of `{ label, value }`-shaped objects. NcSelect needs the actual
|
|
838
|
-
// option entry (not the bare value) to render the selection
|
|
839
|
-
// correctly, so this resolver looks up the matching object form
|
|
840
|
-
// when a primitive value is stored. Returns `null` when nothing
|
|
841
|
-
// is selected so NcSelect renders the empty state instead of
|
|
842
|
-
// emitting a Vue warning about an undefined `value` prop.
|
|
843
|
-
selectedOption(field) {
|
|
844
|
-
const v = this.formData[field.key]
|
|
845
|
-
if (v === null || v === undefined) {
|
|
846
|
-
return null
|
|
847
|
-
}
|
|
848
|
-
if (!Array.isArray(field.options)) {
|
|
849
|
-
return v
|
|
850
|
-
}
|
|
851
|
-
for (const opt of field.options) {
|
|
852
|
-
if (opt && typeof opt === 'object') {
|
|
853
|
-
if (opt.value === v) {
|
|
854
|
-
return opt
|
|
855
|
-
}
|
|
856
|
-
} else if (opt === v) {
|
|
857
|
-
return opt
|
|
858
|
-
}
|
|
859
|
-
}
|
|
860
|
-
return v
|
|
861
|
-
},
|
|
862
|
-
|
|
863
|
-
// Inverse of `selectedOption` — extract the storable value from
|
|
864
|
-
// whatever NcSelect emits. NcSelect emits the full option entry
|
|
865
|
-
// when options are objects, the primitive when options are
|
|
866
|
-
// primitives, or `null` on clear.
|
|
867
|
-
optionValue(emitted) {
|
|
868
|
-
if (emitted === null || emitted === undefined) {
|
|
869
|
-
return null
|
|
870
|
-
}
|
|
871
|
-
if (typeof emitted === 'object' && 'value' in emitted) {
|
|
872
|
-
return emitted.value
|
|
873
|
-
}
|
|
874
|
-
return emitted
|
|
875
|
-
},
|
|
876
|
-
|
|
877
797
|
cloneInitial() {
|
|
878
798
|
const merged = { ...(this.initialValues || {}) }
|
|
879
799
|
// Collect every section across both modes (flat
|
|
@@ -69,7 +69,12 @@
|
|
|
69
69
|
|
|
70
70
|
<!-- choice -->
|
|
71
71
|
<template v-else-if="step.type === 'choice'">
|
|
72
|
-
|
|
72
|
+
<!-- The board sets the intro as a plain paragraph above the
|
|
73
|
+
cards (DqInstellen); the Nextcloud look keeps the note. -->
|
|
74
|
+
<p v-if="step.body && isBoard" class="cn-setup-step__intro" data-testid="cn-setup-step-intro">
|
|
75
|
+
{{ stepBody(step) }}
|
|
76
|
+
</p>
|
|
77
|
+
<NcNoteCard v-else-if="step.body" type="info">
|
|
73
78
|
{{ stepBody(step) }}
|
|
74
79
|
</NcNoteCard>
|
|
75
80
|
<CnChoiceCards
|
|
@@ -119,6 +124,9 @@
|
|
|
119
124
|
<NcNoteCard v-if="isChoiceDisabled(step)" type="warning">
|
|
120
125
|
{{ dependsOnHint(step) }}
|
|
121
126
|
</NcNoteCard>
|
|
127
|
+
<p v-if="stepNote(step)" class="cn-setup-step__note" data-testid="cn-setup-step-note">
|
|
128
|
+
{{ stepNote(step) }}
|
|
129
|
+
</p>
|
|
122
130
|
</template>
|
|
123
131
|
|
|
124
132
|
<!-- config-fields -->
|
|
@@ -212,6 +220,7 @@ import CnChoiceCards from '../CnChoiceCards/CnChoiceCards.vue'
|
|
|
212
220
|
import CnLeafDependencySettings from '../CnLeafDependencySettings/CnLeafDependencySettings.vue'
|
|
213
221
|
import CnWizardDialog from '../CnWizardDialog/CnWizardDialog.vue'
|
|
214
222
|
import { checkDependencies, isDependencyResolved, missingRequiredApps, readServerAppStatuses } from '../../composables/useDependencyCheck.js'
|
|
223
|
+
import { useLook } from '../../composables/useLook.js'
|
|
215
224
|
import { useSetupStatus } from '../../composables/useSetupStatus.js'
|
|
216
225
|
import { fieldsFromSchema } from '../../utils/schema.js'
|
|
217
226
|
|
|
@@ -428,12 +437,13 @@ export default {
|
|
|
428
437
|
* @return {object} `setupStatus` / `setupStatusLoading` for the option resolver.
|
|
429
438
|
*/
|
|
430
439
|
setup(props) {
|
|
440
|
+
const { isBoard } = useLook()
|
|
431
441
|
const wantsSource = (props.steps || []).some((s) => s && s.optionsSource)
|
|
432
442
|
if (!wantsSource) {
|
|
433
|
-
return {}
|
|
443
|
+
return { isBoard }
|
|
434
444
|
}
|
|
435
445
|
const { status, loading } = useSetupStatus(props.appId, { setup: { steps: props.steps } })
|
|
436
|
-
return { setupStatus: status, setupStatusLoading: loading }
|
|
446
|
+
return { isBoard, setupStatus: status, setupStatusLoading: loading }
|
|
437
447
|
},
|
|
438
448
|
|
|
439
449
|
data() {
|
|
@@ -793,6 +803,18 @@ export default {
|
|
|
793
803
|
return raw === '' ? '' : this.cnTranslate(raw)
|
|
794
804
|
},
|
|
795
805
|
|
|
806
|
+
/**
|
|
807
|
+
* The footnote under a choice step's options, from the step's `note`
|
|
808
|
+
* (or `footnote`), translated like the body.
|
|
809
|
+
*
|
|
810
|
+
* @param {object} step The step declaration.
|
|
811
|
+
* @return {string} The translated footnote, or ''.
|
|
812
|
+
*/
|
|
813
|
+
stepNote(step) {
|
|
814
|
+
const raw = (step && (step.note || step.footnote)) || ''
|
|
815
|
+
return raw === '' ? '' : this.cnTranslate(raw)
|
|
816
|
+
},
|
|
817
|
+
|
|
796
818
|
stepSlot(step) {
|
|
797
819
|
return 'step-' + step.id
|
|
798
820
|
},
|
|
@@ -1338,6 +1360,18 @@ export default {
|
|
|
1338
1360
|
gap: 12px;
|
|
1339
1361
|
}
|
|
1340
1362
|
|
|
1363
|
+
.cn-setup-step__intro {
|
|
1364
|
+
margin: 0;
|
|
1365
|
+
font-size: 15px;
|
|
1366
|
+
line-height: 1.5;
|
|
1367
|
+
}
|
|
1368
|
+
|
|
1369
|
+
.cn-setup-step__note {
|
|
1370
|
+
margin: 0;
|
|
1371
|
+
font-size: 13px;
|
|
1372
|
+
color: var(--color-text-maxcontrast);
|
|
1373
|
+
}
|
|
1374
|
+
|
|
1341
1375
|
.cn-setup-step__nav {
|
|
1342
1376
|
display: flex;
|
|
1343
1377
|
justify-content: flex-end;
|
|
@@ -76,6 +76,7 @@ import '../CnSectionsWidget/index.js'
|
|
|
76
76
|
import '../CnFactsWidget/index.js'
|
|
77
77
|
import '../CnDeviceFramesWidget/index.js'
|
|
78
78
|
import '../CnChecklistRunWidget/index.js'
|
|
79
|
+
import '../CnWorkingCalendarWidget/index.js'
|
|
79
80
|
import '../CnPartyActionsWidget/index.js'
|
|
80
81
|
import '../CnFieldListWidget/index.js'
|
|
81
82
|
import '../CnSettingsFormWidget/index.js'
|
|
@@ -208,7 +208,7 @@ export default {
|
|
|
208
208
|
*/
|
|
209
209
|
dialogTitle: {
|
|
210
210
|
type: String,
|
|
211
|
-
default: 'Wizard',
|
|
211
|
+
default: () => t('nextcloud-vue', 'Wizard'),
|
|
212
212
|
},
|
|
213
213
|
|
|
214
214
|
/**
|
|
@@ -279,17 +279,17 @@ export default {
|
|
|
279
279
|
submitIcon: { type: [Object, Function], default: null },
|
|
280
280
|
|
|
281
281
|
/** Cancel-button label (wizard phase). */
|
|
282
|
-
cancelLabel: { type: String, default: 'Cancel' },
|
|
282
|
+
cancelLabel: { type: String, default: () => t('nextcloud-vue', 'Cancel') },
|
|
283
283
|
/** Back-button label. */
|
|
284
|
-
backLabel: { type: String, default: 'Back' },
|
|
284
|
+
backLabel: { type: String, default: () => t('nextcloud-vue', 'Back') },
|
|
285
285
|
/** Next-button label (intermediate steps). */
|
|
286
|
-
nextLabel: { type: String, default: 'Next' },
|
|
286
|
+
nextLabel: { type: String, default: () => t('nextcloud-vue', 'Next') },
|
|
287
287
|
/** Submit-button label (last step). */
|
|
288
|
-
submitLabel: { type: String, default: 'Submit' },
|
|
288
|
+
submitLabel: { type: String, default: () => t('nextcloud-vue', 'Submit') },
|
|
289
289
|
/** Close-button label (result phase). */
|
|
290
|
-
closeLabel: { type: String, default: 'Close' },
|
|
290
|
+
closeLabel: { type: String, default: () => t('nextcloud-vue', 'Close') },
|
|
291
291
|
/** Success banner default text when result.message is empty. */
|
|
292
|
-
successText: { type: String, default: 'Done.' },
|
|
292
|
+
successText: { type: String, default: () => t('nextcloud-vue', 'Done.') },
|
|
293
293
|
/**
|
|
294
294
|
* Whether the dialog can be dismissed (Cancel button, ESC, backdrop
|
|
295
295
|
* click) before reaching the result phase. `false` hides Cancel and
|