@conduction/nextcloud-vue 2.56.0-beta.36 → 2.56.0-beta.38
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/CnAdminSettingsShell/CnAdminSettingsShell.vue.js +1 -1
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue2.js +131 -3
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue2.js.map +1 -1
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue3.js +54 -18
- package/dist/esm/components/CnAdminSettingsShell/CnAdminSettingsShell.vue3.js.map +1 -1
- package/dist/esm/components/CnAdvancedFormDialog/CnMetadataTab.vue.js +1 -1
- package/dist/esm/components/CnAdvancedFormDialog/CnMetadataTab.vue2.js +3 -2
- package/dist/esm/components/CnAdvancedFormDialog/CnMetadataTab.vue2.js.map +1 -1
- package/dist/esm/components/CnAdvancedFormDialog/CnMetadataTab.vue3.js.map +1 -1
- package/dist/esm/components/CnAdvancedFormDialog/CnPropertyValueCell.vue.js +1 -1
- package/dist/esm/components/CnAdvancedFormDialog/CnPropertyValueCell.vue2.js +5 -4
- package/dist/esm/components/CnAdvancedFormDialog/CnPropertyValueCell.vue2.js.map +1 -1
- package/dist/esm/components/CnAdvancedFormDialog/CnPropertyValueCell.vue3.js.map +1 -1
- package/dist/esm/components/CnAnalyticsReportPicker/CnAnalyticsReportPicker.vue.js +1 -1
- package/dist/esm/components/CnAnalyticsReportPicker/CnAnalyticsReportPicker.vue2.js +2 -1
- package/dist/esm/components/CnAnalyticsReportPicker/CnAnalyticsReportPicker.vue2.js.map +1 -1
- package/dist/esm/components/CnAnalyticsReportPicker/CnAnalyticsReportPicker.vue3.js.map +1 -1
- package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue.js +1 -1
- package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue2.js +2 -1
- package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue2.js.map +1 -1
- package/dist/esm/components/CnAuditTrailCard/CnAuditTrailCard.vue3.js.map +1 -1
- package/dist/esm/components/CnBoardView/CnBoardView.vue.js +1 -1
- package/dist/esm/components/CnBoardView/CnBoardView.vue2.js +376 -6
- package/dist/esm/components/CnBoardView/CnBoardView.vue2.js.map +1 -1
- package/dist/esm/components/CnBoardView/CnBoardView.vue3.js +146 -71
- package/dist/esm/components/CnBoardView/CnBoardView.vue3.js.map +1 -1
- package/dist/esm/components/CnCalendarEventPicker/CnCalendarEventPicker.vue.js +1 -1
- package/dist/esm/components/CnCalendarEventPicker/CnCalendarEventPicker.vue2.js +2 -1
- package/dist/esm/components/CnCalendarEventPicker/CnCalendarEventPicker.vue2.js.map +1 -1
- package/dist/esm/components/CnCalendarEventPicker/CnCalendarEventPicker.vue3.js.map +1 -1
- package/dist/esm/components/CnCalendarWidget/CnCalendarWidget.vue.js +1 -1
- package/dist/esm/components/CnCalendarWidget/CnCalendarWidget.vue2.js +2 -1
- package/dist/esm/components/CnCalendarWidget/CnCalendarWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnCalendarWidget/CnCalendarWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnChartWidget/CnChartWidget.vue.js +1 -1
- package/dist/esm/components/CnChartWidget/CnChartWidget.vue2.js +6 -5
- package/dist/esm/components/CnChartWidget/CnChartWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnChartWidget/CnChartWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnCollectivePagePicker/CnCollectivePagePicker.vue.js +1 -1
- package/dist/esm/components/CnCollectivePagePicker/CnCollectivePagePicker.vue2.js +2 -1
- package/dist/esm/components/CnCollectivePagePicker/CnCollectivePagePicker.vue2.js.map +1 -1
- package/dist/esm/components/CnCollectivePagePicker/CnCollectivePagePicker.vue3.js.map +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue.js +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue2.js +2 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue2.js.map +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue3.js.map +1 -1
- package/dist/esm/components/CnCountdownWidget/CnCountdownWidget.vue.js +1 -1
- package/dist/esm/components/CnCountdownWidget/CnCountdownWidget.vue2.js +2 -1
- package/dist/esm/components/CnCountdownWidget/CnCountdownWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnCountdownWidget/CnCountdownWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue.js +1 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js +47 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js +22 -12
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js.map +1 -1
- package/dist/esm/components/CnDataMatrix/CnDataMatrix.vue.js +1 -1
- package/dist/esm/components/CnDataMatrix/CnDataMatrix.vue2.js +3 -1
- package/dist/esm/components/CnDataMatrix/CnDataMatrix.vue2.js.map +1 -1
- package/dist/esm/components/CnDataMatrix/CnDataMatrix.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailHeaderChips.vue2.js +2 -1
- package/dist/esm/components/CnDetailPage/CnDetailHeaderChips.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailHeaderChips.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js +23 -4
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js.map +1 -1
- 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 +3 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue3.js.map +1 -1
- package/dist/esm/components/CnEmailPicker/CnEmailPicker.vue.js +1 -1
- package/dist/esm/components/CnEmailPicker/CnEmailPicker.vue2.js +2 -1
- package/dist/esm/components/CnEmailPicker/CnEmailPicker.vue2.js.map +1 -1
- package/dist/esm/components/CnEmailPicker/CnEmailPicker.vue3.js.map +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue.js +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js +18 -5
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnFederationStatus/CnFederationStatus.vue.js +1 -1
- package/dist/esm/components/CnFederationStatus/CnFederationStatus.vue2.js +3 -1
- package/dist/esm/components/CnFederationStatus/CnFederationStatus.vue2.js.map +1 -1
- package/dist/esm/components/CnFederationStatus/CnFederationStatus.vue3.js.map +1 -1
- package/dist/esm/components/CnFileManager/CnFileManager.vue.js +1 -1
- package/dist/esm/components/CnFileManager/CnFileManager.vue2.js +3 -1
- package/dist/esm/components/CnFileManager/CnFileManager.vue2.js.map +1 -1
- package/dist/esm/components/CnFileManager/CnFileManager.vue3.js.map +1 -1
- package/dist/esm/components/CnFilePreview/CnFilePreview.vue.js +1 -1
- package/dist/esm/components/CnFilePreview/CnFilePreview.vue2.js +2 -1
- package/dist/esm/components/CnFilePreview/CnFilePreview.vue2.js.map +1 -1
- package/dist/esm/components/CnFilePreview/CnFilePreview.vue3.js.map +1 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue.js +1 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js +49 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js.map +1 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue3.js +3 -3
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue3.js.map +1 -1
- package/dist/esm/components/CnFollowToggle/CnFollowToggle.vue.js +1 -1
- package/dist/esm/components/CnFollowToggle/CnFollowToggle.vue2.js +2 -1
- package/dist/esm/components/CnFollowToggle/CnFollowToggle.vue2.js.map +1 -1
- package/dist/esm/components/CnFollowToggle/CnFollowToggle.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +571 -77
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js +191 -82
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexPage/useSelfFetchList.js +11 -2
- package/dist/esm/components/CnIndexPage/useSelfFetchList.js.map +1 -1
- package/dist/esm/components/CnNotesCard/CnNotesCard.vue.js +1 -1
- package/dist/esm/components/CnNotesCard/CnNotesCard.vue2.js +2 -1
- package/dist/esm/components/CnNotesCard/CnNotesCard.vue2.js.map +1 -1
- package/dist/esm/components/CnNotesCard/CnNotesCard.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectCalendar/CnObjectCalendar.vue.js +1 -1
- package/dist/esm/components/CnObjectCalendar/CnObjectCalendar.vue2.js +3 -2
- package/dist/esm/components/CnObjectCalendar/CnObjectCalendar.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectCalendar/CnObjectCalendar.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue.js +1 -1
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js +28 -0
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue3.js +82 -75
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectMetadataWidget/CnObjectMetadataWidget.vue.js +1 -1
- package/dist/esm/components/CnObjectMetadataWidget/CnObjectMetadataWidget.vue2.js +5 -4
- package/dist/esm/components/CnObjectMetadataWidget/CnObjectMetadataWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectMetadataWidget/CnObjectMetadataWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnAuditTrailTab.vue.js +1 -1
- package/dist/esm/components/CnObjectSidebar/CnAuditTrailTab.vue2.js +2 -1
- package/dist/esm/components/CnObjectSidebar/CnAuditTrailTab.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnAuditTrailTab.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnFlowTasksPanel.vue.js +1 -1
- package/dist/esm/components/CnObjectSidebar/CnFlowTasksPanel.vue2.js +2 -1
- package/dist/esm/components/CnObjectSidebar/CnFlowTasksPanel.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnFlowTasksPanel.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnNotesTab.vue.js +1 -1
- package/dist/esm/components/CnObjectSidebar/CnNotesTab.vue2.js +2 -1
- package/dist/esm/components/CnObjectSidebar/CnNotesTab.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnNotesTab.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnTasksTab.vue.js +1 -1
- package/dist/esm/components/CnObjectSidebar/CnTasksTab.vue2.js +2 -1
- package/dist/esm/components/CnObjectSidebar/CnTasksTab.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnTasksTab.vue3.js.map +1 -1
- package/dist/esm/components/CnPropertySourceField/CnPropertySourceField.vue.js +1 -1
- package/dist/esm/components/CnPropertySourceField/CnPropertySourceField.vue2.js +2 -1
- package/dist/esm/components/CnPropertySourceField/CnPropertySourceField.vue2.js.map +1 -1
- package/dist/esm/components/CnPropertySourceField/CnPropertySourceField.vue3.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue.js +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js +70 -2
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue.js +1 -1
- package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue2.js +67 -5
- package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue2.js.map +1 -1
- package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue3.js +181 -124
- package/dist/esm/components/CnRegisterMapping/CnRegisterMapping.vue3.js.map +1 -1
- package/dist/esm/components/CnRoadmapItem/CnRoadmapItem.vue.js +1 -1
- package/dist/esm/components/CnRoadmapItem/CnRoadmapItem.vue2.js +2 -1
- package/dist/esm/components/CnRoadmapItem/CnRoadmapItem.vue2.js.map +1 -1
- package/dist/esm/components/CnRoadmapItem/CnRoadmapItem.vue3.js.map +1 -1
- package/dist/esm/components/CnSchemaFormDialog/CnSchemaFormDialog.vue2.js +2 -0
- package/dist/esm/components/CnSchemaFormDialog/CnSchemaFormDialog.vue2.js.map +1 -1
- package/dist/esm/components/CnSchemaFormDialog/CnSchemaFormDialog.vue3.js +2 -2
- package/dist/esm/components/CnSchemaFormDialog/CnSchemaFormDialog.vue3.js.map +1 -1
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue.js +1 -1
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue2.js +5 -1
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue2.js.map +1 -1
- package/dist/esm/components/CnSettingsPage/CnSettingsPage.vue3.js.map +1 -1
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue.js +1 -1
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue2.js +134 -10
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue3.js +6 -2
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnStatsBlock/CnStatsBlock.vue.js +1 -1
- package/dist/esm/components/CnStatsBlock/CnStatsBlock.vue2.js +2 -1
- package/dist/esm/components/CnStatsBlock/CnStatsBlock.vue2.js.map +1 -1
- package/dist/esm/components/CnStatsBlock/CnStatsBlock.vue3.js.map +1 -1
- package/dist/esm/components/CnSummaryAggregates/CnSummaryAggregates.vue.js +1 -1
- package/dist/esm/components/CnSummaryAggregates/CnSummaryAggregates.vue2.js +2 -1
- package/dist/esm/components/CnSummaryAggregates/CnSummaryAggregates.vue2.js.map +1 -1
- package/dist/esm/components/CnSummaryAggregates/CnSummaryAggregates.vue3.js.map +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue.js +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js +6 -3
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnTasksCard/CnTasksCard.vue.js +1 -1
- package/dist/esm/components/CnTasksCard/CnTasksCard.vue2.js +2 -1
- package/dist/esm/components/CnTasksCard/CnTasksCard.vue2.js.map +1 -1
- package/dist/esm/components/CnTasksCard/CnTasksCard.vue3.js.map +1 -1
- package/dist/esm/components/CnTimelineWidget/CnTimelineWidget.vue.js +1 -1
- package/dist/esm/components/CnTimelineWidget/CnTimelineWidget.vue2.js +2 -1
- package/dist/esm/components/CnTimelineWidget/CnTimelineWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnTimelineWidget/CnTimelineWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue.js +1 -1
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue2.js +140 -7
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnTranslatedBadge/CnTranslatedBadge.vue.js +1 -1
- package/dist/esm/components/CnTranslatedBadge/CnTranslatedBadge.vue2.js +2 -1
- package/dist/esm/components/CnTranslatedBadge/CnTranslatedBadge.vue2.js.map +1 -1
- package/dist/esm/components/CnVersionHistory/CnVersionHistory.vue.js +1 -1
- package/dist/esm/components/CnVersionHistory/CnVersionHistory.vue2.js +2 -1
- package/dist/esm/components/CnVersionHistory/CnVersionHistory.vue2.js.map +1 -1
- package/dist/esm/components/CnVersionHistory/CnVersionHistory.vue3.js.map +1 -1
- package/dist/esm/components/CnVersionInfoCard/CnVersionInfoCard.vue.js +1 -1
- package/dist/esm/components/CnVersionInfoCard/CnVersionInfoCard.vue2.js +37 -9
- package/dist/esm/components/CnVersionInfoCard/CnVersionInfoCard.vue2.js.map +1 -1
- package/dist/esm/components/CnVersionInfoCard/CnVersionInfoCard.vue3.js +6 -5
- package/dist/esm/components/CnVersionInfoCard/CnVersionInfoCard.vue3.js.map +1 -1
- package/dist/esm/components/CnWidgetCardGrid/CnWidgetCardGrid.vue2.js +53 -1
- package/dist/esm/components/CnWidgetCardGrid/CnWidgetCardGrid.vue2.js.map +1 -1
- package/dist/esm/components/CnWidgetCardGrid/CnWidgetCardGrid.vue3.js +3 -2
- package/dist/esm/components/CnWidgetCardGrid/CnWidgetCardGrid.vue3.js.map +1 -1
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue.js +1 -1
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue2.js +135 -0
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue2.js.map +1 -1
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue3.js.map +1 -1
- package/dist/esm/components/CnWidgetWrapper/CnWidgetWrapper.vue.js +1 -1
- package/dist/esm/components/CnWidgetWrapper/CnWidgetWrapper.vue2.js +19 -0
- package/dist/esm/components/CnWidgetWrapper/CnWidgetWrapper.vue2.js.map +1 -1
- package/dist/esm/components/CnWidgetWrapper/CnWidgetWrapper.vue3.js +37 -19
- package/dist/esm/components/CnWidgetWrapper/CnWidgetWrapper.vue3.js.map +1 -1
- package/dist/esm/composables/useListView.js +21 -0
- package/dist/esm/composables/useListView.js.map +1 -1
- package/dist/esm/dialogs/CnNoteHistoryDialog.vue.js +1 -1
- package/dist/esm/dialogs/CnNoteHistoryDialog.vue2.js +2 -1
- package/dist/esm/dialogs/CnNoteHistoryDialog.vue2.js.map +1 -1
- package/dist/esm/dialogs/CnNoteHistoryDialog.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/activity/CnActivityCard.vue.js +1 -1
- package/dist/esm/integrations/builtin/activity/CnActivityCard.vue2.js +3 -2
- package/dist/esm/integrations/builtin/activity/CnActivityCard.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/activity/CnActivityCard.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/activity/CnActivityTab.vue.js +1 -1
- package/dist/esm/integrations/builtin/activity/CnActivityTab.vue2.js +4 -3
- package/dist/esm/integrations/builtin/activity/CnActivityTab.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/activity/CnActivityTab.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/analytics/CnAnalyticsTab.vue.js +1 -1
- package/dist/esm/integrations/builtin/analytics/CnAnalyticsTab.vue2.js +3 -2
- package/dist/esm/integrations/builtin/analytics/CnAnalyticsTab.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/analytics/CnAnalyticsTab.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/calendar/CnCalendarCard.vue.js +1 -1
- package/dist/esm/integrations/builtin/calendar/CnCalendarCard.vue2.js +2 -1
- package/dist/esm/integrations/builtin/calendar/CnCalendarCard.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/calendar/CnCalendarCard.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/calendar/CnCalendarTab.vue.js +1 -1
- package/dist/esm/integrations/builtin/calendar/CnCalendarTab.vue2.js +6 -5
- package/dist/esm/integrations/builtin/calendar/CnCalendarTab.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/calendar/CnCalendarTab.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/contactmoment/CnContactmomentCard.vue.js +1 -1
- package/dist/esm/integrations/builtin/contactmoment/CnContactmomentCard.vue2.js +2 -1
- package/dist/esm/integrations/builtin/contactmoment/CnContactmomentCard.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/contactmoment/CnContactmomentCard.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/cospend/CnCospendTab.vue.js +1 -1
- package/dist/esm/integrations/builtin/cospend/CnCospendTab.vue2.js +2 -1
- package/dist/esm/integrations/builtin/cospend/CnCospendTab.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/cospend/CnCospendTab.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/deck/CnDeckTab.vue.js +1 -1
- package/dist/esm/integrations/builtin/deck/CnDeckTab.vue2.js +2 -1
- package/dist/esm/integrations/builtin/deck/CnDeckTab.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/deck/CnDeckTab.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/email/CnEmailCard.vue.js +1 -1
- package/dist/esm/integrations/builtin/email/CnEmailCard.vue2.js +2 -1
- package/dist/esm/integrations/builtin/email/CnEmailCard.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/email/CnEmailCard.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/field-inspection/CnFieldInspectionCard.vue.js +1 -1
- package/dist/esm/integrations/builtin/field-inspection/CnFieldInspectionCard.vue2.js +2 -1
- package/dist/esm/integrations/builtin/field-inspection/CnFieldInspectionCard.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/field-inspection/CnFieldInspectionCard.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/field-inspection/CnFieldInspectionTab.vue.js +1 -1
- package/dist/esm/integrations/builtin/field-inspection/CnFieldInspectionTab.vue2.js +2 -1
- package/dist/esm/integrations/builtin/field-inspection/CnFieldInspectionTab.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/field-inspection/CnFieldInspectionTab.vue3.js.map +1 -1
- package/dist/esm/integrations/builtin/photos/CnPhotosTab.vue.js +1 -1
- package/dist/esm/integrations/builtin/photos/CnPhotosTab.vue2.js +2 -1
- package/dist/esm/integrations/builtin/photos/CnPhotosTab.vue2.js.map +1 -1
- package/dist/esm/integrations/builtin/photos/CnPhotosTab.vue3.js.map +1 -1
- package/dist/esm/l10n/en.json.js +57 -2
- package/dist/esm/l10n/en.json.js.map +1 -1
- package/dist/esm/l10n/nl.json.js +78 -2
- package/dist/esm/l10n/nl.json.js.map +1 -1
- package/dist/esm/library-style.js +1 -1
- package/dist/esm/nextcloud-vue.css +1541 -1166
- package/dist/esm/store/useObjectStore.js +23 -4
- package/dist/esm/store/useObjectStore.js.map +1 -1
- package/dist/esm/utils/boardColumns.js +58 -2
- package/dist/esm/utils/boardColumns.js.map +1 -1
- package/dist/esm/utils/boardReferenceColumns.js +330 -0
- package/dist/esm/utils/boardReferenceColumns.js.map +1 -0
- package/dist/esm/utils/buildManifest.js +4 -1
- package/dist/esm/utils/buildManifest.js.map +1 -1
- package/dist/esm/utils/schema.js +5 -4
- package/dist/esm/utils/schema.js.map +1 -1
- package/dist/esm/utils/userLocale.js +30 -0
- package/dist/esm/utils/userLocale.js.map +1 -0
- package/dist/esm/utils/validateManifestV2.compiled.js +3 -3
- package/dist/esm/utils/validateManifestV2.compiled.js.map +1 -1
- package/dist/esm/utils/widgetDispatch.js +8 -2
- package/dist/esm/utils/widgetDispatch.js.map +1 -1
- package/dist/nextcloud-vue.cjs.js +30291 -27618
- package/dist/nextcloud-vue.cjs.js.map +2 -2
- package/dist/nextcloud-vue.css +1541 -1166
- package/l10n/en.json +57 -2
- package/l10n/nl.json +78 -2
- package/package.json +1 -1
- package/src/components/CnAdminSettingsShell/CnAdminSettingsShell.vue +160 -8
- package/src/components/CnAdvancedFormDialog/CnMetadataTab.vue +3 -2
- package/src/components/CnAdvancedFormDialog/CnPropertyValueCell.vue +5 -4
- package/src/components/CnAnalyticsReportPicker/CnAnalyticsReportPicker.vue +2 -1
- package/src/components/CnAuditTrailCard/CnAuditTrailCard.vue +2 -1
- package/src/components/CnBoardView/CnBoardView.vue +433 -12
- package/src/components/CnCalendarEventPicker/CnCalendarEventPicker.vue +2 -1
- package/src/components/CnCalendarWidget/CnCalendarWidget.vue +2 -1
- package/src/components/CnChartWidget/CnChartWidget.vue +6 -5
- package/src/components/CnCollectivePagePicker/CnCollectivePagePicker.vue +2 -1
- package/src/components/CnConversationThread/CnConversationThread.vue +2 -1
- package/src/components/CnCountdownWidget/CnCountdownWidget.vue +2 -1
- package/src/components/CnDashboardPage/CnDashboardPage.vue +59 -3
- package/src/components/CnDataMatrix/CnDataMatrix.vue +2 -1
- package/src/components/CnDetailPage/CnDetailHeaderChips.vue +2 -1
- package/src/components/CnDetailPage/CnDetailPage.md +1 -1
- package/src/components/CnDetailPage/CnDetailPage.vue +23 -4
- package/src/components/CnDetailWidgetHost/CnDetailWidgetHost.vue +3 -1
- package/src/components/CnEmailPicker/CnEmailPicker.vue +2 -1
- package/src/components/CnFactsWidget/CnFactsWidget.vue +18 -5
- package/src/components/CnFederationStatus/CnFederationStatus.vue +3 -1
- package/src/components/CnFileManager/CnFileManager.vue +2 -1
- package/src/components/CnFilePreview/CnFilePreview.vue +2 -1
- package/src/components/CnFilesBrowser/CnFilesBrowser.vue +54 -6
- package/src/components/CnFollowToggle/CnFollowToggle.vue +2 -1
- package/src/components/CnIndexPage/CnIndexPage.vue +610 -25
- package/src/components/CnIndexPage/useSelfFetchList.js +10 -1
- package/src/components/CnNotesCard/CnNotesCard.vue +2 -1
- package/src/components/CnObjectCalendar/CnObjectCalendar.vue +3 -2
- package/src/components/CnObjectDataWidget/CnObjectDataWidget.vue +36 -0
- package/src/components/CnObjectMetadataWidget/CnObjectMetadataWidget.vue +5 -4
- package/src/components/CnObjectSidebar/CnAuditTrailTab.vue +2 -1
- package/src/components/CnObjectSidebar/CnFlowTasksPanel.vue +2 -1
- package/src/components/CnObjectSidebar/CnNotesTab.vue +2 -1
- package/src/components/CnObjectSidebar/CnTasksTab.vue +2 -1
- package/src/components/CnPropertySourceField/CnPropertySourceField.vue +2 -1
- package/src/components/CnRecordListWidget/CnRecordListWidget.vue +70 -2
- package/src/components/CnRegisterMapping/CnRegisterMapping.md +5 -0
- package/src/components/CnRegisterMapping/CnRegisterMapping.vue +231 -96
- package/src/components/CnRoadmapItem/CnRoadmapItem.vue +2 -1
- package/src/components/CnSchemaFormDialog/CnSchemaFormDialog.vue +4 -2
- package/src/components/CnSettingsPage/CnSettingsPage.vue +5 -1
- package/src/components/CnStatWidget/CnStatWidget.vue +136 -11
- package/src/components/CnStatsBlock/CnStatsBlock.vue +2 -1
- package/src/components/CnSummaryAggregates/CnSummaryAggregates.vue +2 -1
- package/src/components/CnTabsWidget/CnTabsWidget.vue +6 -3
- package/src/components/CnTasksCard/CnTasksCard.vue +2 -1
- package/src/components/CnTimelineWidget/CnTimelineWidget.vue +2 -1
- package/src/components/CnToggleTableWidget/CnToggleTableWidget.vue +140 -7
- package/src/components/CnTranslatedBadge/CnTranslatedBadge.vue +2 -1
- package/src/components/CnVersionHistory/CnVersionHistory.vue +2 -1
- package/src/components/CnVersionInfoCard/CnVersionInfoCard.md +2 -1
- package/src/components/CnVersionInfoCard/CnVersionInfoCard.vue +42 -13
- package/src/components/CnWidgetCardGrid/CnWidgetCardGrid.vue +55 -2
- package/src/components/CnWidgetObjectTable/CnWidgetObjectTable.vue +135 -0
- package/src/components/CnWidgetWrapper/CnWidgetWrapper.md +10 -0
- package/src/components/CnWidgetWrapper/CnWidgetWrapper.vue +44 -1
- package/src/composables/useListView.js +21 -0
- package/src/css/board.css +105 -4
- package/src/css/dialog.css +4 -2
- package/src/css/index-page.css +49 -0
- package/src/css/look-board.css +77 -7
- package/src/dialogs/CnNoteHistoryDialog.vue +2 -1
- package/src/integrations/builtin/activity/CnActivityCard.vue +3 -2
- package/src/integrations/builtin/activity/CnActivityTab.vue +4 -3
- package/src/integrations/builtin/analytics/CnAnalyticsTab.vue +3 -2
- package/src/integrations/builtin/calendar/CnCalendarCard.vue +2 -1
- package/src/integrations/builtin/calendar/CnCalendarTab.vue +6 -5
- package/src/integrations/builtin/contactmoment/CnContactmomentCard.vue +2 -1
- package/src/integrations/builtin/cospend/CnCospendTab.vue +2 -1
- package/src/integrations/builtin/deck/CnDeckTab.vue +2 -1
- package/src/integrations/builtin/email/CnEmailCard.vue +2 -1
- package/src/integrations/builtin/field-inspection/CnFieldInspectionCard.vue +2 -1
- package/src/integrations/builtin/field-inspection/CnFieldInspectionTab.vue +2 -1
- package/src/integrations/builtin/photos/CnPhotosTab.vue +2 -1
- package/src/schemas/app-manifest-v2.schema.json +116 -5
- package/src/store/useObjectStore.js +23 -4
- package/src/utils/boardColumns.js +57 -1
- package/src/utils/boardReferenceColumns.js +326 -0
- package/src/utils/buildManifest.js +4 -1
- package/src/utils/schema.js +5 -4
- package/src/utils/userLocale.js +26 -0
- package/src/utils/validateManifestV2.compiled.js +3 -3
- package/src/utils/widgetDispatch.js +8 -2
package/l10n/en.json
CHANGED
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"Could not change the favourite.": "Could not change the favourite.",
|
|
74
74
|
"Follow": "Follow",
|
|
75
75
|
"Following": "Following",
|
|
76
|
-
"Loading
|
|
76
|
+
"Loading …": "Loading …",
|
|
77
77
|
"Add a colleague": "Add a colleague",
|
|
78
78
|
"{count} followers": "{count} followers",
|
|
79
79
|
"Follow this record to get its updates": "Follow this record to get its updates",
|
|
@@ -1418,7 +1418,62 @@
|
|
|
1418
1418
|
"No value ({count})": "No value ({count})",
|
|
1419
1419
|
"{start} to {end}": "{start} to {end}",
|
|
1420
1420
|
"Breadcrumb": "Breadcrumb",
|
|
1421
|
-
"Moving to {stage}": "Moving to {stage}"
|
|
1421
|
+
"Moving to {stage}": "Moving to {stage}",
|
|
1422
|
+
"Application name": "Application name",
|
|
1423
|
+
"Configured version": "Configured version",
|
|
1424
|
+
"Updating…": "Updating…",
|
|
1425
|
+
"Up to date": "Up to date",
|
|
1426
|
+
"Loading version information…": "Loading version information…",
|
|
1427
|
+
"Configuration re-imported successfully": "Configuration re-imported successfully",
|
|
1428
|
+
"Configure your {app} installation": "Configure your {app} installation",
|
|
1429
|
+
"For support, contact us at": "For support, contact us at",
|
|
1430
|
+
"For a Service Level Agreement (SLA), contact": "For a Service Level Agreement (SLA), contact",
|
|
1431
|
+
"Help us": "Help us",
|
|
1432
|
+
"Importing…": "Importing…",
|
|
1433
|
+
"Information about the current {app} installation": "Information about the current {app} installation",
|
|
1434
|
+
"Re-import failed": "Re-import failed",
|
|
1435
|
+
"Run setup wizard": "Run setup wizard",
|
|
1436
|
+
"Support": "Support",
|
|
1437
|
+
"{app} Settings": "{app} Settings",
|
|
1438
|
+
"Loading registers…": "Loading registers…",
|
|
1439
|
+
"Object type": "Object type",
|
|
1440
|
+
"Register {id}": "Register {id}",
|
|
1441
|
+
"Schema {id}": "Schema {id}",
|
|
1442
|
+
"The registers could not be loaded: {reason}": "The registers could not be loaded: {reason}",
|
|
1443
|
+
"no connection": "no connection",
|
|
1444
|
+
"Confirm action": "Confirm action",
|
|
1445
|
+
"Are you sure you want to continue?": "Are you sure you want to continue?",
|
|
1446
|
+
"Confirm": "Confirm",
|
|
1447
|
+
"Action failed.": "Action failed.",
|
|
1448
|
+
"Could not open the form.": "Could not open the form.",
|
|
1449
|
+
"Could not open this action.": "Could not open this action.",
|
|
1450
|
+
"Saved.": "Saved.",
|
|
1451
|
+
"Save failed.": "Save failed.",
|
|
1452
|
+
"Action completed.": "Action completed.",
|
|
1453
|
+
"Run queued": "Run queued",
|
|
1454
|
+
"Agent runtime unavailable": "Agent runtime unavailable",
|
|
1455
|
+
"Run completed.": "Run completed.",
|
|
1456
|
+
"Edit with Buildiq": "Edit with Buildiq",
|
|
1457
|
+
"Save page": "Save page",
|
|
1458
|
+
"Edit page": "Edit page",
|
|
1459
|
+
"Add widget…": "Add widget…",
|
|
1460
|
+
"Edit pages…": "Edit pages…",
|
|
1461
|
+
"Edit menu…": "Edit menu…",
|
|
1462
|
+
"Edit sidebar…": "Edit sidebar…",
|
|
1463
|
+
"Edit actions…": "Edit actions…",
|
|
1464
|
+
"Edit data…": "Edit data…",
|
|
1465
|
+
"Edit flows…": "Edit flows…",
|
|
1466
|
+
"This value was not accepted.": "This value was not accepted.",
|
|
1467
|
+
"Provide details": "Provide details",
|
|
1468
|
+
"This field is required.": "This field is required.",
|
|
1469
|
+
"This action does not accept the field \"{field}\".": "This action does not accept the field \"{field}\".",
|
|
1470
|
+
"Are you sure?": "Are you sure?",
|
|
1471
|
+
"Loading": "Loading",
|
|
1472
|
+
"Configure widget": "Configure widget",
|
|
1473
|
+
"Link related object": "Link related object",
|
|
1474
|
+
"{type} parts": "{type} parts",
|
|
1475
|
+
"Cannot save: this record has no id, so the edit would create a duplicate instead of updating it.": "Cannot save: this record has no id, so the edit would create a duplicate instead of updating it.",
|
|
1476
|
+
"Save failed": "Save failed"
|
|
1422
1477
|
},
|
|
1423
1478
|
"plurals": {
|
|
1424
1479
|
"{count} selected": [
|
package/l10n/nl.json
CHANGED
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"Could not change the favourite.": "De favoriet kon niet worden gewijzigd.",
|
|
74
74
|
"Follow": "Volgen",
|
|
75
75
|
"Following": "Volgend",
|
|
76
|
-
"Loading
|
|
76
|
+
"Loading …": "Laden …",
|
|
77
77
|
"Add a colleague": "Collega toevoegen",
|
|
78
78
|
"{count} followers": "{count} volgers",
|
|
79
79
|
"Follow this record to get its updates": "Volg dit dossier om de wijzigingen te ontvangen",
|
|
@@ -1584,7 +1584,83 @@
|
|
|
1584
1584
|
"Transition failed": "De overgang is mislukt",
|
|
1585
1585
|
"Closed": "Afgesloten",
|
|
1586
1586
|
"Skip to {action}": "Ga naar {action}",
|
|
1587
|
-
"Moving to {stage}": "Bezig met verplaatsen naar {stage}"
|
|
1587
|
+
"Moving to {stage}": "Bezig met verplaatsen naar {stage}",
|
|
1588
|
+
"Due {date}": "Termijn {date}",
|
|
1589
|
+
"Overdue {date}": "Over tijd sinds {date}",
|
|
1590
|
+
"Elsewhere": "Elders",
|
|
1591
|
+
"Move to": "Verplaatsen naar",
|
|
1592
|
+
"Nothing here": "Niets in deze kolom",
|
|
1593
|
+
"Open in new tab": "Openen in nieuw tabblad",
|
|
1594
|
+
"Show {count} more": "Toon {count} meer",
|
|
1595
|
+
"Somebody else moved this card. It is shown where it is now.": "Iemand anders heeft deze kaart al verplaatst. Je ziet hem nu op zijn nieuwe plek.",
|
|
1596
|
+
"That move was refused.": "Die verplaatsing is geweigerd.",
|
|
1597
|
+
"This list has no status field with stages, so it cannot be shown as a board.": "Deze lijst heeft geen statusveld met fases, dus er is geen bord van te maken.",
|
|
1598
|
+
"not allowed": "niet toegestaan",
|
|
1599
|
+
"on this page": "op deze pagina",
|
|
1600
|
+
"{count} on this page": "{count} op deze pagina",
|
|
1601
|
+
"{name} cannot move to {column}.": "{name} kan niet naar {column}.",
|
|
1602
|
+
"{name}, in {column}": "{name}, in {column}",
|
|
1603
|
+
"full": "vol",
|
|
1604
|
+
"{count} / {capacity}": "{count} / {capacity}",
|
|
1605
|
+
"{column} is full: {count} of {capacity}.": "{column} is vol: {count} van {capacity}.",
|
|
1606
|
+
"This card cannot move to that column.": "Deze kaart kan niet naar die kolom.",
|
|
1607
|
+
"Nobody": "Niemand",
|
|
1608
|
+
"{label}:": "{label}:",
|
|
1609
|
+
"Application name": "Naam van de app",
|
|
1610
|
+
"Configured version": "Ingestelde versie",
|
|
1611
|
+
"Updating…": "Bijwerken…",
|
|
1612
|
+
"Up to date": "Bijgewerkt",
|
|
1613
|
+
"Loading version information…": "Versie-informatie laden…",
|
|
1614
|
+
"Configuration re-imported successfully": "De configuratie is opnieuw geïmporteerd",
|
|
1615
|
+
"Configure your {app} installation": "Stel je {app}-installatie in",
|
|
1616
|
+
"For support, contact us at": "Voor ondersteuning mail je naar",
|
|
1617
|
+
"For a Service Level Agreement (SLA), contact": "Voor een Service Level Agreement (SLA) mail je naar",
|
|
1618
|
+
"Help us": "Help ons",
|
|
1619
|
+
"Importing…": "Importeren…",
|
|
1620
|
+
"Information about the current {app} installation": "Informatie over de huidige {app}-installatie",
|
|
1621
|
+
"Re-import failed": "Opnieuw importeren is mislukt",
|
|
1622
|
+
"Run setup wizard": "Installatiehulp starten",
|
|
1623
|
+
"Support": "Ondersteuning",
|
|
1624
|
+
"{app} Settings": "{app}-instellingen",
|
|
1625
|
+
"Loading registers…": "Registers laden…",
|
|
1626
|
+
"Object type": "Soort object",
|
|
1627
|
+
"Register {id}": "Register {id}",
|
|
1628
|
+
"Schema {id}": "Schema {id}",
|
|
1629
|
+
"The registers could not be loaded: {reason}": "De registers konden niet worden geladen: {reason}",
|
|
1630
|
+
"no connection": "geen verbinding",
|
|
1631
|
+
"Confirm action": "Actie bevestigen",
|
|
1632
|
+
"Are you sure you want to continue?": "Weet je zeker dat je wilt doorgaan?",
|
|
1633
|
+
"Confirm": "Bevestigen",
|
|
1634
|
+
"Action failed.": "De actie is mislukt.",
|
|
1635
|
+
"Could not open the form.": "Het formulier kon niet worden geopend.",
|
|
1636
|
+
"Could not open this action.": "Deze actie kon niet worden geopend.",
|
|
1637
|
+
"Saved.": "Opgeslagen.",
|
|
1638
|
+
"Save failed.": "Opslaan is mislukt.",
|
|
1639
|
+
"Action completed.": "Actie uitgevoerd.",
|
|
1640
|
+
"Run queued": "Run staat in de wachtrij",
|
|
1641
|
+
"Agent runtime unavailable": "De agent-runtime is niet beschikbaar",
|
|
1642
|
+
"Run completed.": "Run voltooid.",
|
|
1643
|
+
"Edit with Buildiq": "Bewerken met Buildiq",
|
|
1644
|
+
"Save page": "Pagina opslaan",
|
|
1645
|
+
"Edit page": "Pagina bewerken",
|
|
1646
|
+
"Add widget…": "Widget toevoegen…",
|
|
1647
|
+
"Edit pages…": "Pagina's bewerken…",
|
|
1648
|
+
"Edit menu…": "Menu bewerken…",
|
|
1649
|
+
"Edit sidebar…": "Zijbalk bewerken…",
|
|
1650
|
+
"Edit actions…": "Acties bewerken…",
|
|
1651
|
+
"Edit data…": "Gegevens bewerken…",
|
|
1652
|
+
"Edit flows…": "Flows bewerken…",
|
|
1653
|
+
"This value was not accepted.": "Deze waarde is niet geaccepteerd.",
|
|
1654
|
+
"Provide details": "Geef de details op",
|
|
1655
|
+
"This field is required.": "Dit veld is verplicht.",
|
|
1656
|
+
"This action does not accept the field \"{field}\".": "Deze actie accepteert het veld \"{field}\" niet.",
|
|
1657
|
+
"Are you sure?": "Weet je het zeker?",
|
|
1658
|
+
"Loading": "Laden",
|
|
1659
|
+
"Configure widget": "Widget instellen",
|
|
1660
|
+
"Link related object": "Gerelateerd object koppelen",
|
|
1661
|
+
"{type} parts": "Onderdelen van {type}",
|
|
1662
|
+
"Cannot save: this record has no id, so the edit would create a duplicate instead of updating it.": "Opslaan kan niet: dit record heeft geen id, dus de wijziging zou een kopie maken in plaats van het record bij te werken.",
|
|
1663
|
+
"Save failed": "Opslaan is mislukt"
|
|
1588
1664
|
},
|
|
1589
1665
|
"plurals": {
|
|
1590
1666
|
"{count} selected": [
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@conduction/nextcloud-vue",
|
|
3
|
-
"version": "2.56.0-beta.
|
|
3
|
+
"version": "2.56.0-beta.38",
|
|
4
4
|
"description": "Shared Vue component library for Conduction Nextcloud apps — complements @nextcloud/vue with higher-level components, OpenRegister integration, and NL Design System support",
|
|
5
5
|
"homepage": "https://github.com/ConductionNL/nextcloud-vue#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -56,14 +56,38 @@
|
|
|
56
56
|
</div>
|
|
57
57
|
</div>
|
|
58
58
|
|
|
59
|
+
<!-- `tabs`: a strip under the header (boards ShInstellingen,
|
|
60
|
+
LpBeheerAlgemeen). Each tab's panel holds the `tab-<id>` slot; the
|
|
61
|
+
version card, the credential broker and the default slot below
|
|
62
|
+
belong to the first tab and show only while it is open. -->
|
|
63
|
+
<CnTabs
|
|
64
|
+
v-if="tabItems.length > 0"
|
|
65
|
+
class="cn-admin-settings-shell__tabs"
|
|
66
|
+
:look="isBoard ? 'board' : 'nextcloud'"
|
|
67
|
+
:ariaLabel="resolvedTitle"
|
|
68
|
+
data-testid="cn-admin-settings-tabs"
|
|
69
|
+
@update:activeIndex="onTabIndex">
|
|
70
|
+
<CnTab
|
|
71
|
+
v-for="tab in tabItems"
|
|
72
|
+
:key="tab.id"
|
|
73
|
+
:title="tab.label"
|
|
74
|
+
:count="tab.count"
|
|
75
|
+
:active="tab.id === activeTabId">
|
|
76
|
+
<div class="cn-admin-settings-shell__panel" :data-tab="tab.id">
|
|
77
|
+
<!-- @slot tab-<id> The panel of the tab with that `id` in `tabs`. -->
|
|
78
|
+
<slot :name="`tab-${tab.id}`" />
|
|
79
|
+
</div>
|
|
80
|
+
</CnTab>
|
|
81
|
+
</CnTabs>
|
|
82
|
+
|
|
59
83
|
<!-- `versionCardPosition: "end"`: the app's sections come first, and the
|
|
60
84
|
version card and the credential broker follow them (board DcBeheer
|
|
61
85
|
starts with the app's own card). The same slot, rendered once. -->
|
|
62
|
-
<slot v-if="versionCardAtEnd" />
|
|
86
|
+
<slot v-if="versionCardAtEnd && onFirstTab" />
|
|
63
87
|
|
|
64
88
|
<!-- Version information card (version, up-to-date check, re-import, support footer) -->
|
|
65
89
|
<CnVersionInfoCard
|
|
66
|
-
v-if="showVersionCard"
|
|
90
|
+
v-if="showVersionCard && onFirstTab"
|
|
67
91
|
:appName="appName"
|
|
68
92
|
:appVersion="resolvedVersion"
|
|
69
93
|
:configuredVersion="resolvedConfiguredVersion"
|
|
@@ -72,6 +96,7 @@
|
|
|
72
96
|
:updating="updating"
|
|
73
97
|
:title="versionTitle"
|
|
74
98
|
:description="resolvedVersionDescription"
|
|
99
|
+
:wide="versionCardWide"
|
|
75
100
|
@update="onUpdate">
|
|
76
101
|
<template #actions>
|
|
77
102
|
<!-- Canonical "Re-import configuration" action (POST /apps/<appId>/api/settings/load) -->
|
|
@@ -149,15 +174,15 @@
|
|
|
149
174
|
informational "apps requesting credentials" list inside.
|
|
150
175
|
-->
|
|
151
176
|
<CnCredentials
|
|
152
|
-
v-if="showOrganisationCredentials"
|
|
177
|
+
v-if="showOrganisationCredentials && onFirstTab"
|
|
153
178
|
scope="organisation"
|
|
154
179
|
:appId="appId"
|
|
155
180
|
:appName="appName"
|
|
156
181
|
:appCredentials="appCredentials"
|
|
157
182
|
data-testid="cn-admin-organisation-credentials" />
|
|
158
183
|
|
|
159
|
-
<!-- @slot default The app's own settings sections, rendered below the version card, or above it with `versionCardPosition: "end"`. -->
|
|
160
|
-
<slot v-if="!versionCardAtEnd" />
|
|
184
|
+
<!-- @slot default The app's own settings sections, rendered below the version card, or above it with `versionCardPosition: "end"`. With `tabs`, only while the first tab is open. -->
|
|
185
|
+
<slot v-if="!versionCardAtEnd && onFirstTab" />
|
|
161
186
|
|
|
162
187
|
<!-- First-time setup wizard, opened from the admin page (ADR-042). -->
|
|
163
188
|
<CnSetupWizard
|
|
@@ -176,7 +201,7 @@ import { loadState } from '@nextcloud/initial-state'
|
|
|
176
201
|
import { translate as t } from '@nextcloud/l10n'
|
|
177
202
|
import { generateUrl } from '@nextcloud/router'
|
|
178
203
|
import { NcButton, NcLoadingIcon, NcSettingsSection } from '@nextcloud/vue'
|
|
179
|
-
import { computed } from 'vue'
|
|
204
|
+
import { computed, provide } from 'vue'
|
|
180
205
|
import AutoFix from 'vue-material-design-icons/AutoFix.vue'
|
|
181
206
|
import BookOpenVariant from 'vue-material-design-icons/BookOpenVariant.vue'
|
|
182
207
|
import HelpCircleOutline from 'vue-material-design-icons/HelpCircleOutline.vue'
|
|
@@ -189,8 +214,38 @@ import { useEnvironment } from '../../composables/useEnvironment.js'
|
|
|
189
214
|
import { normalizeLook, useLook } from '../../composables/useLook.js'
|
|
190
215
|
import { buildFeatureRequestUrl } from '../../utils/forge.js'
|
|
191
216
|
import { prefixUrl } from '../../utils/headers.js'
|
|
217
|
+
import { CnTab, CnTabs } from '../CnTabs/index.js'
|
|
192
218
|
import { CnVersionInfoCard } from '../CnVersionInfoCard/index.js'
|
|
193
219
|
|
|
220
|
+
/**
|
|
221
|
+
* The tab the address names.
|
|
222
|
+
*
|
|
223
|
+
* @param {string} key The query parameter.
|
|
224
|
+
* @return {string} Its value, or ''.
|
|
225
|
+
*/
|
|
226
|
+
function readTabFromAddress(key) {
|
|
227
|
+
if (typeof window === 'undefined' || !key) {
|
|
228
|
+
return ''
|
|
229
|
+
}
|
|
230
|
+
return new URLSearchParams(window.location.search).get(key) || ''
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
/**
|
|
234
|
+
* Put the open tab in the address without a new history entry.
|
|
235
|
+
*
|
|
236
|
+
* @param {string} key The query parameter.
|
|
237
|
+
* @param {string} id The tab's id.
|
|
238
|
+
* @return {void}
|
|
239
|
+
*/
|
|
240
|
+
function writeTabToAddress(key, id) {
|
|
241
|
+
if (typeof window === 'undefined' || !key || !window.history?.replaceState) {
|
|
242
|
+
return
|
|
243
|
+
}
|
|
244
|
+
const url = new URL(window.location.href)
|
|
245
|
+
url.searchParams.set(key, id)
|
|
246
|
+
window.history.replaceState(window.history.state, '', url.toString())
|
|
247
|
+
}
|
|
248
|
+
|
|
194
249
|
/**
|
|
195
250
|
* CnAdminSettingsShell — the canonical chrome for a Conduction app's Nextcloud
|
|
196
251
|
* admin settings page.
|
|
@@ -235,6 +290,8 @@ export default {
|
|
|
235
290
|
CnCredentials,
|
|
236
291
|
CnVersionInfoCard,
|
|
237
292
|
CnSetupWizard,
|
|
293
|
+
CnTab,
|
|
294
|
+
CnTabs,
|
|
238
295
|
NcButton,
|
|
239
296
|
NcLoadingIcon,
|
|
240
297
|
Refresh,
|
|
@@ -357,12 +414,49 @@ export default {
|
|
|
357
414
|
default: '',
|
|
358
415
|
},
|
|
359
416
|
|
|
417
|
+
/**
|
|
418
|
+
* A tab strip under the header, as `[{ id, label, count? }]`. Each
|
|
419
|
+
* tab's panel is the `tab-<id>` slot; the version card, the credential
|
|
420
|
+
* broker and the default slot show only on the first tab. The open tab
|
|
421
|
+
* is in the address (`?<tabQueryKey>=<id>`), so a link opens it and a
|
|
422
|
+
* reload keeps it. The strip is keyboard operable (arrow keys, Home,
|
|
423
|
+
* End). Empty draws no strip.
|
|
424
|
+
*
|
|
425
|
+
* @type {Array<{id: string, label: string, count?: number}>}
|
|
426
|
+
* @spec openspec/changes/admin-settings-tabs/specs/settings-board-look/spec.md#requirement-the-admin-shell-can-draw-a-tab-strip
|
|
427
|
+
*/
|
|
428
|
+
tabs: {
|
|
429
|
+
type: Array,
|
|
430
|
+
default: () => [],
|
|
431
|
+
},
|
|
432
|
+
|
|
433
|
+
/**
|
|
434
|
+
* The query parameter that holds the open tab's `id`.
|
|
435
|
+
*
|
|
436
|
+
* @spec openspec/changes/admin-settings-tabs/specs/settings-board-look/spec.md#requirement-the-admin-shell-can-draw-a-tab-strip
|
|
437
|
+
*/
|
|
438
|
+
tabQueryKey: {
|
|
439
|
+
type: String,
|
|
440
|
+
default: 'tab',
|
|
441
|
+
},
|
|
442
|
+
|
|
360
443
|
/** Whether to render the version card. */
|
|
361
444
|
showVersionCard: {
|
|
362
445
|
type: Boolean,
|
|
363
446
|
default: true,
|
|
364
447
|
},
|
|
365
448
|
|
|
449
|
+
/**
|
|
450
|
+
* Under the board look the version card spans the whole settings grid.
|
|
451
|
+
* Set to `false` to keep it one card in the grid.
|
|
452
|
+
*
|
|
453
|
+
* @spec openspec/changes/board-version-card-full-width/specs/settings-board-look/spec.md#requirement-the-board-version-card-spans-the-settings-grid
|
|
454
|
+
*/
|
|
455
|
+
versionCardWide: {
|
|
456
|
+
type: Boolean,
|
|
457
|
+
default: true,
|
|
458
|
+
},
|
|
459
|
+
|
|
366
460
|
/**
|
|
367
461
|
* Where the version card (and the organisation credential broker) sits:
|
|
368
462
|
* `start`, above the app's sections (the default), or `end`, after them,
|
|
@@ -481,15 +575,18 @@ export default {
|
|
|
481
575
|
},
|
|
482
576
|
},
|
|
483
577
|
|
|
484
|
-
emits: ['update', 'reimported', 'reimport-error'],
|
|
578
|
+
emits: ['update', 'reimported', 'reimport-error', 'tab-change'],
|
|
485
579
|
|
|
486
580
|
setup(props) {
|
|
487
581
|
// The app's own `environment` setting, else the active organisation's.
|
|
488
582
|
const { environment: environmentName } = useEnvironment({ environment: () => props.environment })
|
|
489
|
-
const { isBoard } = useLook(props)
|
|
583
|
+
const { look, isBoard } = useLook(props)
|
|
490
584
|
// A shell told `look: "board"` itself draws the board look also on an
|
|
491
585
|
// admin page that no CnAppRoot wraps, as Nextcloud's settings pages are.
|
|
492
586
|
const ownLookClass = computed(() => (normalizeLook(props.look) === 'board' ? 'cn-look-board' : ''))
|
|
587
|
+
// Everything inside the shell, its own version card and the app's
|
|
588
|
+
// sections alike, follows the shell's look without the app providing it.
|
|
589
|
+
provide('cnLook', look)
|
|
493
590
|
return { environmentName, isBoard, ownLookClass }
|
|
494
591
|
},
|
|
495
592
|
|
|
@@ -497,10 +594,44 @@ export default {
|
|
|
497
594
|
return {
|
|
498
595
|
reimporting: false,
|
|
499
596
|
setupWizardOpen: false,
|
|
597
|
+
// The open tab's id; empty until a tab is picked or the address names one.
|
|
598
|
+
chosenTabId: readTabFromAddress(this.tabQueryKey),
|
|
500
599
|
}
|
|
501
600
|
},
|
|
502
601
|
|
|
503
602
|
computed: {
|
|
603
|
+
/**
|
|
604
|
+
* The tabs that have an id and a label.
|
|
605
|
+
*
|
|
606
|
+
* @return {Array<{id: string, label: string, count: number|null}>}
|
|
607
|
+
* @spec openspec/changes/admin-settings-tabs/specs/settings-board-look/spec.md#requirement-the-admin-shell-can-draw-a-tab-strip
|
|
608
|
+
*/
|
|
609
|
+
tabItems() {
|
|
610
|
+
return (Array.isArray(this.tabs) ? this.tabs : [])
|
|
611
|
+
.filter((tab) => tab && typeof tab.id === 'string' && tab.id !== '' && typeof tab.label === 'string' && tab.label !== '')
|
|
612
|
+
.map((tab) => ({ id: tab.id, label: tab.label, count: tab.count ?? null }))
|
|
613
|
+
},
|
|
614
|
+
|
|
615
|
+
/**
|
|
616
|
+
* The open tab: the one picked or named in the address, else the first.
|
|
617
|
+
*
|
|
618
|
+
* @return {string} Its id, or '' without tabs.
|
|
619
|
+
*/
|
|
620
|
+
activeTabId() {
|
|
621
|
+
const ids = this.tabItems.map((tab) => tab.id)
|
|
622
|
+
return ids.includes(this.chosenTabId) ? this.chosenTabId : (ids[0] || '')
|
|
623
|
+
},
|
|
624
|
+
|
|
625
|
+
/**
|
|
626
|
+
* Whether the shell's own content shows: always without tabs, else on
|
|
627
|
+
* the first tab.
|
|
628
|
+
*
|
|
629
|
+
* @return {boolean}
|
|
630
|
+
*/
|
|
631
|
+
onFirstTab() {
|
|
632
|
+
return this.tabItems.length === 0 || this.activeTabId === this.tabItems[0].id
|
|
633
|
+
},
|
|
634
|
+
|
|
504
635
|
/**
|
|
505
636
|
* Whether the app's sections come before the version card.
|
|
506
637
|
*
|
|
@@ -625,6 +756,27 @@ export default {
|
|
|
625
756
|
},
|
|
626
757
|
|
|
627
758
|
methods: {
|
|
759
|
+
/**
|
|
760
|
+
* A tab was picked in the strip: remember it, put it in the address
|
|
761
|
+
* (replacing the entry, so Back leaves the page) and tell the app.
|
|
762
|
+
*
|
|
763
|
+
* @param {number} index The picked tab's index.
|
|
764
|
+
* @return {void}
|
|
765
|
+
* @spec openspec/changes/admin-settings-tabs/specs/settings-board-look/spec.md#requirement-the-admin-shell-can-draw-a-tab-strip
|
|
766
|
+
*/
|
|
767
|
+
onTabIndex(index) {
|
|
768
|
+
const tab = this.tabItems[index]
|
|
769
|
+
if (!tab || tab.id === this.chosenTabId) {
|
|
770
|
+
return
|
|
771
|
+
}
|
|
772
|
+
this.chosenTabId = tab.id
|
|
773
|
+
writeTabToAddress(this.tabQueryKey, tab.id)
|
|
774
|
+
/**
|
|
775
|
+
* @event tab-change Emitted when the reader opens another tab. Payload: its `id`.
|
|
776
|
+
*/
|
|
777
|
+
this.$emit('tab-change', tab.id)
|
|
778
|
+
},
|
|
779
|
+
|
|
628
780
|
/** Forward the version card's update-button click to the parent. */
|
|
629
781
|
onUpdate() {
|
|
630
782
|
/**
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
|
|
31
31
|
<script>
|
|
32
32
|
import { translate as t } from '@nextcloud/l10n'
|
|
33
|
+
import { userLocale } from '../../utils/userLocale.js'
|
|
33
34
|
|
|
34
35
|
export default {
|
|
35
36
|
name: 'CnMetadataTab',
|
|
@@ -62,13 +63,13 @@ export default {
|
|
|
62
63
|
metadataCreated() {
|
|
63
64
|
const o = this.item?.['@self']
|
|
64
65
|
const v = o?.created
|
|
65
|
-
return v ? new Date(v).toLocaleString() : '—'
|
|
66
|
+
return v ? new Date(v).toLocaleString(userLocale()) : '—'
|
|
66
67
|
},
|
|
67
68
|
|
|
68
69
|
metadataUpdated() {
|
|
69
70
|
const o = this.item?.['@self']
|
|
70
71
|
const v = o?.updated
|
|
71
|
-
return v ? new Date(v).toLocaleString() : '—'
|
|
72
|
+
return v ? new Date(v).toLocaleString(userLocale()) : '—'
|
|
72
73
|
},
|
|
73
74
|
|
|
74
75
|
defaultRows() {
|
|
@@ -186,6 +186,7 @@ import Plus from 'vue-material-design-icons/Plus.vue'
|
|
|
186
186
|
import CnColorPicker from '../CnColorPicker/CnColorPicker.vue'
|
|
187
187
|
import CnJsonViewer from '../CnJsonViewer/CnJsonViewer.vue'
|
|
188
188
|
import { formatValue, validateValue } from '../../utils/schema.js'
|
|
189
|
+
import { userLocale } from '../../utils/userLocale.js'
|
|
189
190
|
|
|
190
191
|
const SUPPORTED_WIDGETS = ['text', 'number', 'boolean', 'datetime', 'textarea', 'array', 'select', 'object', 'objectArray', 'color']
|
|
191
192
|
|
|
@@ -729,19 +730,19 @@ export default {
|
|
|
729
730
|
// Same local-midnight parse as datetimeValue to avoid UTC-shift in display.
|
|
730
731
|
if (fmt === 'date' && typeof v === 'string' && /^\d{4}-\d{2}-\d{2}$/.test(v)) {
|
|
731
732
|
const [year, month, day] = v.split('-').map(Number)
|
|
732
|
-
return new Date(year, month - 1, day).toLocaleDateString()
|
|
733
|
+
return new Date(year, month - 1, day).toLocaleDateString(userLocale())
|
|
733
734
|
}
|
|
734
735
|
const d = new Date(v)
|
|
735
736
|
if (Number.isNaN(d.getTime())) {
|
|
736
737
|
return String(v)
|
|
737
738
|
}
|
|
738
739
|
if (fmt === 'date') {
|
|
739
|
-
return d.toLocaleDateString()
|
|
740
|
+
return d.toLocaleDateString(userLocale())
|
|
740
741
|
}
|
|
741
742
|
if (fmt === 'time') {
|
|
742
|
-
return d.toLocaleTimeString()
|
|
743
|
+
return d.toLocaleTimeString(userLocale())
|
|
743
744
|
}
|
|
744
|
-
return d.toLocaleString()
|
|
745
|
+
return d.toLocaleString(userLocale())
|
|
745
746
|
},
|
|
746
747
|
},
|
|
747
748
|
|
|
@@ -101,6 +101,7 @@ import { translate as t } from '@nextcloud/l10n'
|
|
|
101
101
|
import { NcButton, NcDialog, NcEmptyContent, NcLoadingIcon, NcNoteCard, NcTextField } from '@nextcloud/vue'
|
|
102
102
|
import ChartBar from 'vue-material-design-icons/ChartBar.vue'
|
|
103
103
|
import { buildHeaders, prefixUrl } from '../../utils/index.js'
|
|
104
|
+
import { userLocale } from '../../utils/userLocale.js'
|
|
104
105
|
|
|
105
106
|
export default {
|
|
106
107
|
name: 'CnAnalyticsReportPicker',
|
|
@@ -247,7 +248,7 @@ export default {
|
|
|
247
248
|
if (Number.isNaN(d.getTime())) {
|
|
248
249
|
return ''
|
|
249
250
|
}
|
|
250
|
-
return d.toLocaleDateString(
|
|
251
|
+
return d.toLocaleDateString(userLocale(), { dateStyle: 'medium' })
|
|
251
252
|
} catch {
|
|
252
253
|
return ''
|
|
253
254
|
}
|
|
@@ -49,6 +49,7 @@ import { markRaw } from 'vue'
|
|
|
49
49
|
import History from 'vue-material-design-icons/History.vue'
|
|
50
50
|
import CnDetailCard from '../CnDetailCard/CnDetailCard.vue'
|
|
51
51
|
import { buildHeaders, prefixUrl } from '../../utils/index.js'
|
|
52
|
+
import { userLocale } from '../../utils/userLocale.js'
|
|
52
53
|
|
|
53
54
|
/**
|
|
54
55
|
* CnAuditTrailCard — compact audit-trail widget rendered by the
|
|
@@ -214,7 +215,7 @@ export default {
|
|
|
214
215
|
if (Number.isNaN(d.getTime()) === true) {
|
|
215
216
|
return String(raw)
|
|
216
217
|
}
|
|
217
|
-
return d.toLocaleString()
|
|
218
|
+
return d.toLocaleString(userLocale())
|
|
218
219
|
},
|
|
219
220
|
},
|
|
220
221
|
}
|