@conduction/nextcloud-vue 2.80.0 → 2.81.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/CnActionsBar/CnActionsBar.vue2.js.map +1 -1
- package/dist/esm/components/CnActionsBar/CnActionsBar.vue3.js +3 -3
- package/dist/esm/components/CnActionsBar/CnActionsBar.vue3.js.map +1 -1
- package/dist/esm/components/CnAppRoot/CnAppRoot.vue2.js +80 -4
- package/dist/esm/components/CnAppRoot/CnAppRoot.vue2.js.map +1 -1
- package/dist/esm/components/CnAppRoot/CnAppRoot.vue3.js +95 -91
- package/dist/esm/components/CnAppRoot/CnAppRoot.vue3.js.map +1 -1
- package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue2.js +140 -10
- package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue3.js +52 -16
- package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js +17 -3
- package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js.map +1 -1
- package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js +63 -52
- package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js.map +1 -1
- package/dist/esm/components/CnChipsFieldWidget/CnChipsFieldWidget.vue.js +10 -0
- package/dist/esm/components/CnChipsFieldWidget/CnChipsFieldWidget.vue.js.map +1 -0
- package/dist/esm/components/CnChipsFieldWidget/CnChipsFieldWidget.vue2.js +252 -0
- package/dist/esm/components/CnChipsFieldWidget/CnChipsFieldWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnChipsFieldWidget/CnChipsFieldWidget.vue3.js +140 -0
- package/dist/esm/components/CnChipsFieldWidget/CnChipsFieldWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnChipsFieldWidget/index.js +26 -0
- package/dist/esm/components/CnChipsFieldWidget/index.js.map +1 -0
- package/dist/esm/components/CnChoicePickerWidget/CnChoicePickerWidget.vue.js +10 -0
- package/dist/esm/components/CnChoicePickerWidget/CnChoicePickerWidget.vue.js.map +1 -0
- package/dist/esm/components/CnChoicePickerWidget/CnChoicePickerWidget.vue2.js +354 -0
- package/dist/esm/components/CnChoicePickerWidget/CnChoicePickerWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnChoicePickerWidget/CnChoicePickerWidget.vue3.js +172 -0
- package/dist/esm/components/CnChoicePickerWidget/CnChoicePickerWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnChoicePickerWidget/index.js +27 -0
- package/dist/esm/components/CnChoicePickerWidget/index.js.map +1 -0
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnDashboardGrid/CnDashboardGrid.vue2.js +2 -2
- package/dist/esm/components/CnDashboardGrid/CnDashboardGrid.vue2.js.map +1 -1
- package/dist/esm/components/CnDashboardGrid/CnDashboardGrid.vue3.js.map +1 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js +65 -5
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js +2 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js.map +1 -1
- package/dist/esm/components/CnDataTable/CnDataTable.vue2.js +19 -11
- package/dist/esm/components/CnDataTable/CnDataTable.vue2.js.map +1 -1
- package/dist/esm/components/CnDataTable/CnDataTable.vue3.js +3 -2
- package/dist/esm/components/CnDataTable/CnDataTable.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js +72 -0
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js +21 -4
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js.map +1 -1
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue2.js +1 -1
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnFacetSidebar/CnFacetSidebar.vue2.js +7 -7
- package/dist/esm/components/CnFacetSidebar/CnFacetSidebar.vue2.js.map +1 -1
- package/dist/esm/components/CnFacetSidebar/CnFacetSidebar.vue3.js.map +1 -1
- package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js +131 -0
- 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/CnFieldListWidget/CnFieldListWidget.vue2.js +80 -5
- package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue3.js +282 -69
- package/dist/esm/components/CnFieldListWidget/CnFieldListWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js +302 -4
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js.map +1 -1
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue3.js +417 -244
- package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue3.js.map +1 -1
- package/dist/esm/components/CnFilesBrowser/filesBrowser.js +101 -1
- package/dist/esm/components/CnFilesBrowser/filesBrowser.js.map +1 -1
- package/dist/esm/components/CnFilesBrowser/filesBrowserColumns.js +141 -1
- package/dist/esm/components/CnFilesBrowser/filesBrowserColumns.js.map +1 -1
- package/dist/esm/components/CnFormPage/CnFormPage.vue2.js +60 -0
- package/dist/esm/components/CnFormPage/CnFormPage.vue2.js.map +1 -1
- package/dist/esm/components/CnFormPage/CnFormPage.vue3.js +74 -49
- package/dist/esm/components/CnFormPage/CnFormPage.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +29 -2
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js +48 -4
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue2.js +7 -7
- package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue2.js.map +1 -1
- package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue3.js.map +1 -1
- package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue2.js +1 -1
- package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue2.js +65 -2
- package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue3.js +6 -2
- package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue2.js +63 -1
- package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue3.js +8 -1
- package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnNotesTab.vue2.js +14 -0
- package/dist/esm/components/CnObjectSidebar/CnNotesTab.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectSidebar/CnNotesTab.vue3.js +5 -1
- package/dist/esm/components/CnObjectSidebar/CnNotesTab.vue3.js.map +1 -1
- package/dist/esm/components/CnRadioCardsWidget/CnRadioCardsWidget.vue.js +10 -0
- package/dist/esm/components/CnRadioCardsWidget/CnRadioCardsWidget.vue.js.map +1 -0
- package/dist/esm/components/CnRadioCardsWidget/CnRadioCardsWidget.vue2.js +174 -0
- package/dist/esm/components/CnRadioCardsWidget/CnRadioCardsWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnRadioCardsWidget/CnRadioCardsWidget.vue3.js +75 -0
- package/dist/esm/components/CnRadioCardsWidget/CnRadioCardsWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnRadioCardsWidget/index.js +28 -0
- package/dist/esm/components/CnRadioCardsWidget/index.js.map +1 -0
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js +30 -6
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js +34 -25
- package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnSavedViewsWidget/CnSavedViewsWidget.vue.js +10 -0
- package/dist/esm/components/CnSavedViewsWidget/CnSavedViewsWidget.vue.js.map +1 -0
- package/dist/esm/components/CnSavedViewsWidget/CnSavedViewsWidget.vue2.js +222 -0
- package/dist/esm/components/CnSavedViewsWidget/CnSavedViewsWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnSavedViewsWidget/CnSavedViewsWidget.vue3.js +64 -0
- package/dist/esm/components/CnSavedViewsWidget/CnSavedViewsWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnSavedViewsWidget/index.js +30 -0
- package/dist/esm/components/CnSavedViewsWidget/index.js.map +1 -0
- package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue2.js.map +1 -1
- package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue3.js.map +1 -1
- package/dist/esm/components/CnSettingsFormWidget/CnSettingsFormWidget.vue.js +10 -0
- package/dist/esm/components/CnSettingsFormWidget/CnSettingsFormWidget.vue.js.map +1 -0
- package/dist/esm/components/CnSettingsFormWidget/CnSettingsFormWidget.vue2.js +347 -0
- package/dist/esm/components/CnSettingsFormWidget/CnSettingsFormWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnSettingsFormWidget/CnSettingsFormWidget.vue3.js +184 -0
- package/dist/esm/components/CnSettingsFormWidget/CnSettingsFormWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnSettingsFormWidget/index.js +27 -0
- package/dist/esm/components/CnSettingsFormWidget/index.js.map +1 -0
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue2.js +87 -6
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnStatsBlockWidget/CnStatsBlockWidget.vue2.js +84 -1
- package/dist/esm/components/CnStatsBlockWidget/CnStatsBlockWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnStatsBlockWidget/CnStatsBlockWidget.vue3.js +85 -41
- package/dist/esm/components/CnStatsBlockWidget/CnStatsBlockWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnSwitchRowsWidget/CnSwitchRowsWidget.vue.js +10 -0
- package/dist/esm/components/CnSwitchRowsWidget/CnSwitchRowsWidget.vue.js.map +1 -0
- package/dist/esm/components/CnSwitchRowsWidget/CnSwitchRowsWidget.vue2.js +159 -0
- package/dist/esm/components/CnSwitchRowsWidget/CnSwitchRowsWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnSwitchRowsWidget/CnSwitchRowsWidget.vue3.js +60 -0
- package/dist/esm/components/CnSwitchRowsWidget/CnSwitchRowsWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnSwitchRowsWidget/index.js +26 -0
- package/dist/esm/components/CnSwitchRowsWidget/index.js.map +1 -0
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js +47 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue3.js +16 -14
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnTasksWidget/CnTasksWidget.vue2.js +80 -1
- package/dist/esm/components/CnTasksWidget/CnTasksWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnTasksWidget/CnTasksWidget.vue3.js +75 -32
- package/dist/esm/components/CnTasksWidget/CnTasksWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue.js +10 -0
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue.js.map +1 -0
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue2.js +269 -0
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue3.js +106 -0
- package/dist/esm/components/CnToggleTableWidget/CnToggleTableWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnToggleTableWidget/index.js +27 -0
- package/dist/esm/components/CnToggleTableWidget/index.js.map +1 -0
- package/dist/esm/components/CnWidgetGrid/registerDashboardWidgets.js +7 -0
- package/dist/esm/components/CnWidgetGrid/registerDashboardWidgets.js.map +1 -1
- package/dist/esm/components/CnWidgetObjectTable/CnWidgetObjectTable.vue2.js +7 -2
- 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/CnWidgetObjectTable/dashboardRegistration.js +5 -0
- package/dist/esm/components/CnWidgetObjectTable/dashboardRegistration.js.map +1 -1
- package/dist/esm/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue2.js +197 -6
- package/dist/esm/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue3.js +96 -50
- package/dist/esm/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue3.js.map +1 -1
- package/dist/esm/composables/useListView.js +4 -4
- package/dist/esm/composables/useListView.js.map +1 -1
- package/dist/esm/index.js +17 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/l10n/en.json.js +9 -1
- package/dist/esm/l10n/en.json.js.map +1 -1
- package/dist/esm/l10n/nl.json.js +55 -1
- package/dist/esm/l10n/nl.json.js.map +1 -1
- package/dist/esm/nextcloud-vue.css +1041 -12
- package/dist/esm/utils/contentHeaderLink.js +51 -0
- package/dist/esm/utils/contentHeaderLink.js.map +1 -0
- package/dist/esm/utils/facets.js +75 -3
- package/dist/esm/utils/facets.js.map +1 -1
- package/dist/esm/utils/fetchFilterCounts.js +40 -5
- package/dist/esm/utils/fetchFilterCounts.js.map +1 -1
- package/dist/esm/utils/fillTemplate.js +7 -1
- package/dist/esm/utils/fillTemplate.js.map +1 -1
- package/dist/esm/utils/initials.js +32 -0
- package/dist/esm/utils/initials.js.map +1 -0
- package/dist/esm/utils/libraryWidgetKeys.js +7 -0
- package/dist/esm/utils/libraryWidgetKeys.js.map +1 -1
- package/dist/esm/utils/objectWrite.js +59 -0
- package/dist/esm/utils/objectWrite.js.map +1 -0
- package/dist/esm/utils/pageControls.js +81 -0
- package/dist/esm/utils/pageControls.js.map +1 -0
- package/dist/esm/utils/personalLenses.js +40 -3
- package/dist/esm/utils/personalLenses.js.map +1 -1
- package/dist/esm/utils/resolveFilterTokens.js +1 -1
- package/dist/esm/utils/resolveFilterTokens.js.map +1 -1
- package/dist/esm/utils/resolveManifestTokens.js +2 -0
- package/dist/esm/utils/resolveManifestTokens.js.map +1 -1
- package/dist/esm/utils/sentinelTokens.js +19 -1
- package/dist/esm/utils/sentinelTokens.js.map +1 -1
- package/dist/esm/utils/userGroupsPeek.js +91 -0
- package/dist/esm/utils/userGroupsPeek.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/visibleWhen.js +57 -5
- package/dist/esm/utils/visibleWhen.js.map +1 -1
- package/dist/esm/utils/widgetDispatch.js +1 -1
- package/dist/esm/utils/widgetDispatch.js.map +1 -1
- package/dist/esm/utils/widgetVisibility.js +4 -57
- package/dist/esm/utils/widgetVisibility.js.map +1 -1
- package/dist/nextcloud-vue.cjs.js +13589 -7833
- package/dist/nextcloud-vue.cjs.js.map +2 -2
- package/dist/nextcloud-vue.css +1041 -12
- package/l10n/en.json +9 -1
- package/l10n/nl.json +55 -1
- package/package.json +2 -1
- package/scripts/check-docs-mdx.mjs +108 -0
- package/src/components/CnActionsBar/CnActionsBar.vue +6 -1
- package/src/components/CnAppRoot/CnAppRoot.md +4 -2
- package/src/components/CnAppRoot/CnAppRoot.vue +151 -59
- package/src/components/CnBannerWidget/CnBannerWidget.vue +205 -20
- package/src/components/CnCellRenderer/CnCellRenderer.md +2 -0
- package/src/components/CnCellRenderer/CnCellRenderer.vue +47 -4
- package/src/components/CnChipsFieldWidget/CnChipsFieldWidget.vue +433 -0
- package/src/components/CnChipsFieldWidget/index.js +25 -0
- package/src/components/CnChoicePickerWidget/CnChoicePickerWidget.vue +556 -0
- package/src/components/CnChoicePickerWidget/index.js +26 -0
- package/src/components/CnConversationThread/CnConversationWidget.vue +1 -1
- package/src/components/CnDashboardGrid/CnDashboardGrid.vue +2 -2
- package/src/components/CnDashboardPage/CnDashboardPage.vue +78 -5
- package/src/components/CnDataTable/CnDataTable.vue +21 -12
- package/src/components/CnDetailPage/CnDetailPage.vue +89 -3
- package/src/components/CnDocumentReviewList/CnDocumentReviewWidget.vue +1 -1
- package/src/components/CnFacetSidebar/CnFacetSidebar.vue +7 -7
- package/src/components/CnFactsWidget/CnFactsWidget.vue +142 -2
- package/src/components/CnFieldListWidget/CnFieldListWidget.vue +268 -6
- package/src/components/CnFilesBrowser/CnFilesBrowser.vue +588 -117
- package/src/components/CnFilesBrowser/filesBrowser.js +100 -0
- package/src/components/CnFilesBrowser/filesBrowserColumns.js +140 -0
- package/src/components/CnFormPage/CnFormPage.vue +81 -0
- package/src/components/CnIndexPage/CnIndexPage.vue +56 -4
- package/src/components/CnIndexSidebar/CnIndexSidebar.vue +7 -7
- package/src/components/CnNextStepCard/CnNextStepWidget.vue +1 -1
- package/src/components/CnObjectListWidget/CnObjectListWidget.vue +69 -2
- package/src/components/CnObjectSidebar/CnFilesTab.vue +70 -1
- package/src/components/CnObjectSidebar/CnNotesTab.vue +16 -0
- package/src/components/CnRadioCardsWidget/CnRadioCardsWidget.vue +313 -0
- package/src/components/CnRadioCardsWidget/index.js +27 -0
- package/src/components/CnRecordListWidget/CnRecordListWidget.vue +55 -6
- package/src/components/CnSavedViewsWidget/CnSavedViewsWidget.vue +296 -0
- package/src/components/CnSavedViewsWidget/index.js +29 -0
- package/src/components/CnSegmentedControl/CnSegmentedControl.vue +13 -0
- package/src/components/CnSettingsFormWidget/CnSettingsFormWidget.vue +555 -0
- package/src/components/CnSettingsFormWidget/index.js +26 -0
- package/src/components/CnStatWidget/CnStatWidget.vue +87 -6
- package/src/components/CnStatsBlockWidget/CnStatsBlockWidget.vue +180 -3
- package/src/components/CnSwitchRowsWidget/CnSwitchRowsWidget.vue +226 -0
- package/src/components/CnSwitchRowsWidget/index.js +25 -0
- package/src/components/CnTabsWidget/CnTabsWidget.vue +82 -3
- package/src/components/CnTasksWidget/CnTasksWidget.vue +175 -15
- package/src/components/CnToggleTableWidget/CnToggleTableWidget.vue +386 -0
- package/src/components/CnToggleTableWidget/index.js +26 -0
- package/src/components/CnWidgetGrid/registerDashboardWidgets.js +7 -0
- package/src/components/CnWidgetObjectTable/CnWidgetObjectTable.vue +7 -2
- package/src/components/CnWidgetObjectTable/dashboardRegistration.js +5 -0
- package/src/components/CnWorkspaceFilterWidget/CnWorkspaceFilterWidget.vue +309 -11
- package/src/components/index.js +15 -0
- package/src/composables/useListView.js +4 -4
- package/src/css/look-board-detail.css +36 -2
- package/src/css/look-board-index.css +39 -8
- package/src/css/look-board.css +72 -0
- package/src/index.js +15 -0
- package/src/schemas/app-manifest-v2.schema.json +93 -9
- package/src/utils/contentHeaderLink.js +48 -0
- package/src/utils/facets.js +74 -2
- package/src/utils/fetchFilterCounts.js +39 -4
- package/src/utils/fillTemplate.js +7 -1
- package/src/utils/initials.js +29 -0
- package/src/utils/libraryWidgetKeys.js +7 -0
- package/src/utils/objectWrite.js +55 -0
- package/src/utils/pageControls.js +78 -0
- package/src/utils/personalLenses.js +39 -2
- package/src/utils/resolveFilterTokens.js +3 -1
- package/src/utils/resolveManifestTokens.js +2 -0
- package/src/utils/sentinelTokens.js +19 -1
- package/src/utils/userGroupsPeek.js +87 -0
- package/src/utils/validateManifestV2.compiled.js +3 -3
- package/src/utils/visibleWhen.js +56 -4
- package/src/utils/widgetDispatch.js +1 -1
- package/src/utils/widgetVisibility.js +7 -56
package/dist/nextcloud-vue.css
CHANGED
|
@@ -622,6 +622,78 @@
|
|
|
622
622
|
.cn-look-board .cn-cell-renderer__age:not(.cn-look-nextcloud *) {
|
|
623
623
|
font-weight: 600;
|
|
624
624
|
}
|
|
625
|
+
|
|
626
|
+
/* ---- Record list on a dashboard card (PtDashboard) ---------------------- */
|
|
627
|
+
/* The dashboard's card body is flush, so the rows carry their own inset: the
|
|
628
|
+
board's card pads 24px at the sides and each row 14px, a soft hairline
|
|
629
|
+
between rows, the title 15px weight 600 and the meta 13px muted. A row is a
|
|
630
|
+
link, but only the hover says so: no underline on any text run, however the
|
|
631
|
+
host styles its links (`!important`, because a host rule such as
|
|
632
|
+
`#content a` outranks any class). The pill and the date sit at the right. */
|
|
633
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list {
|
|
634
|
+
padding: 0 24px 10px;
|
|
635
|
+
}
|
|
636
|
+
|
|
637
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list--rows .cn-record-list__item + .cn-record-list__item {
|
|
638
|
+
border-top: 1px solid var(--color-border-dark, var(--color-border));
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row {
|
|
642
|
+
padding: 14px 0;
|
|
643
|
+
flex-wrap: wrap;
|
|
644
|
+
gap: 8px 16px;
|
|
645
|
+
}
|
|
646
|
+
|
|
647
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row,
|
|
648
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row:hover,
|
|
649
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row:focus-visible,
|
|
650
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row * {
|
|
651
|
+
color: inherit;
|
|
652
|
+
text-decoration: none !important;
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__title {
|
|
656
|
+
color: var(--color-main-text);
|
|
657
|
+
font-size: 15px;
|
|
658
|
+
font-weight: 600;
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__meta {
|
|
662
|
+
color: var(--color-text-maxcontrast);
|
|
663
|
+
font-size: 13px;
|
|
664
|
+
}
|
|
665
|
+
|
|
666
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__trailing {
|
|
667
|
+
color: var(--color-text-maxcontrast);
|
|
668
|
+
font-size: 13px;
|
|
669
|
+
font-weight: 600;
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
/* Hover: the whole row takes the hover ground, 8px beyond the text so the
|
|
673
|
+
text does not move. */
|
|
674
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row--link {
|
|
675
|
+
margin-inline: -8px;
|
|
676
|
+
padding-inline: 8px;
|
|
677
|
+
border-radius: 8px;
|
|
678
|
+
}
|
|
679
|
+
|
|
680
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row--link:hover,
|
|
681
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row--link:focus-visible {
|
|
682
|
+
background: var(--color-background-hover);
|
|
683
|
+
}
|
|
684
|
+
|
|
685
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__row--link:hover .cn-record-list__title {
|
|
686
|
+
text-decoration: none !important;
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__aside {
|
|
690
|
+
margin-inline-start: auto;
|
|
691
|
+
}
|
|
692
|
+
|
|
693
|
+
/* The board draws no chevron after the pill and date. */
|
|
694
|
+
.cn-look-board .cn-dashboard-page:not(.cn-look-nextcloud *) .cn-record-list__chevron {
|
|
695
|
+
display: none;
|
|
696
|
+
}
|
|
625
697
|
/*
|
|
626
698
|
* The board dialog (screens-dialog-parity, canon section 5).
|
|
627
699
|
*
|
|
@@ -1530,7 +1602,8 @@
|
|
|
1530
1602
|
}
|
|
1531
1603
|
|
|
1532
1604
|
/* Filter: a labelled secondary button, 36px, radius 8, with the active count. */
|
|
1533
|
-
.cn-look-board .cn-actions-bar__filter-button.button-vue
|
|
1605
|
+
.cn-look-board .cn-actions-bar__filter-button.button-vue,
|
|
1606
|
+
.cn-look-board .cn-actions-bar__filter-menu .button-vue {
|
|
1534
1607
|
min-height: 36px;
|
|
1535
1608
|
height: 36px;
|
|
1536
1609
|
border-radius: 8px;
|
|
@@ -1780,11 +1853,16 @@
|
|
|
1780
1853
|
max-width: calc(100% - 26px);
|
|
1781
1854
|
}
|
|
1782
1855
|
|
|
1783
|
-
/* The selection column:
|
|
1856
|
+
/* The selection column: 18px checkboxes, 28px of content after 16px of padding.
|
|
1857
|
+
The box model is set with `!important` and the widths include the padding:
|
|
1858
|
+
Nextcloud's server.css sets `box-sizing: border-box` on everything under
|
|
1859
|
+
`#content[class*="app-"]`, an id selector no class rule outranks, so a plain
|
|
1860
|
+
`content-box` here was ignored and the cell left 12px for the checkbox (the
|
|
1861
|
+
header's checkbox showed as a stray bracket). */
|
|
1784
1862
|
.cn-look-board .cn-table-container--board .cn-data-table .cn-table-col--checkbox {
|
|
1785
|
-
box-sizing:
|
|
1786
|
-
width:
|
|
1787
|
-
min-width:
|
|
1863
|
+
box-sizing: border-box !important;
|
|
1864
|
+
width: 44px;
|
|
1865
|
+
min-width: 44px;
|
|
1788
1866
|
padding-inline: 16px 0;
|
|
1789
1867
|
text-align: start;
|
|
1790
1868
|
}
|
|
@@ -1832,6 +1910,29 @@
|
|
|
1832
1910
|
font-size: 13px;
|
|
1833
1911
|
}
|
|
1834
1912
|
|
|
1913
|
+
/* An avatar in the title column (PtAccounts): a 32px chip circle, 10px before
|
|
1914
|
+
the name, the e-mail under the name beside it. The name keeps the title's
|
|
1915
|
+
weight and size, and its underline: an inline-flex box is atomic, so the
|
|
1916
|
+
cell's own underline does not reach it. */
|
|
1917
|
+
.cn-look-board .cn-table-container--board .cn-data-table .cn-cell-renderer__avatar {
|
|
1918
|
+
gap: 10px;
|
|
1919
|
+
}
|
|
1920
|
+
|
|
1921
|
+
.cn-look-board .cn-table-container--board .cn-data-table .cn-cell-renderer__avatar-initials {
|
|
1922
|
+
background: var(--color-background-dark);
|
|
1923
|
+
color: var(--color-main-text);
|
|
1924
|
+
font-size: 12px;
|
|
1925
|
+
}
|
|
1926
|
+
|
|
1927
|
+
.cn-look-board .cn-table-container--board .cn-data-table td.cn-table-col--title .cn-cell-renderer__avatar-name {
|
|
1928
|
+
text-decoration: underline;
|
|
1929
|
+
text-underline-offset: 2px;
|
|
1930
|
+
}
|
|
1931
|
+
|
|
1932
|
+
.cn-look-board .cn-table-container--board.cn-table-container--title-plain .cn-data-table td.cn-table-col--title .cn-cell-renderer__avatar-name {
|
|
1933
|
+
text-decoration: none;
|
|
1934
|
+
}
|
|
1935
|
+
|
|
1835
1936
|
/* A status pill: 3px 10px, radius 12, 13px weight 600. The colours stay the
|
|
1836
1937
|
status colour map's. */
|
|
1837
1938
|
.cn-look-board .cn-table-container--board .cn-data-table .cn-status-badge {
|
|
@@ -1842,10 +1943,12 @@
|
|
|
1842
1943
|
line-height: 1.4;
|
|
1843
1944
|
}
|
|
1844
1945
|
|
|
1845
|
-
/* The row menu column holds one 34px button
|
|
1946
|
+
/* The row menu column holds one 34px button between 16px of padding, so 66px
|
|
1947
|
+
border to border (see the selection column for why the box model is forced). */
|
|
1846
1948
|
.cn-look-board .cn-table-container--board .cn-data-table .cn-table-col--actions {
|
|
1847
|
-
|
|
1848
|
-
|
|
1949
|
+
box-sizing: border-box !important;
|
|
1950
|
+
width: 66px;
|
|
1951
|
+
min-width: 66px;
|
|
1849
1952
|
padding-inline: 16px;
|
|
1850
1953
|
text-align: end;
|
|
1851
1954
|
}
|
|
@@ -6196,6 +6299,15 @@ a.cn-kpi-card--board * {
|
|
|
6196
6299
|
gap: 4px;
|
|
6197
6300
|
}
|
|
6198
6301
|
|
|
6302
|
+
/* No inner scroller: tabs that do not fit the width wrap onto a second row
|
|
6303
|
+
instead of scrolling sideways (the library's default strip), so the strip
|
|
6304
|
+
has no scrollbar, no clipped tab and no fade or chevron to find the rest. */
|
|
6305
|
+
.cn-look-board .cn-tabs--board .cn-tabs__nav {
|
|
6306
|
+
flex-wrap: wrap;
|
|
6307
|
+
overflow: visible;
|
|
6308
|
+
row-gap: 4px;
|
|
6309
|
+
}
|
|
6310
|
+
|
|
6199
6311
|
.cn-look-board .cn-tabs--board .cn-tabs__nav-item {
|
|
6200
6312
|
background-color: var(--color-background-dark);
|
|
6201
6313
|
border: 1px solid var(--color-border-dark);
|
|
@@ -6341,12 +6453,28 @@ a.cn-kpi-card--board * {
|
|
|
6341
6453
|
padding: 0 0 10px;
|
|
6342
6454
|
}
|
|
6343
6455
|
|
|
6344
|
-
|
|
6345
|
-
|
|
6456
|
+
/* Outranks the component's own `.cn-object-data-widget__label[data-v-...]`
|
|
6457
|
+
(weight 500, 0.85em, which has the same specificity as the look's rule and
|
|
6458
|
+
wins on source order wherever a bundle, such as a companion app's, loads
|
|
6459
|
+
after this stylesheet), through the grid the labels sit in. Measured live:
|
|
6460
|
+
the labels read bold and dark where the boards (DqContact, PqKlant, ShKlant)
|
|
6461
|
+
draw them 13px, regular weight and light grey.
|
|
6462
|
+
|
|
6463
|
+
The colour carries `!important`: a theme (nldesign's element overrides) sets
|
|
6464
|
+
the ink of every `div` outside the header with a selector that has an id in
|
|
6465
|
+
its `:not()`, which no class rule outranks. */
|
|
6466
|
+
.cn-look-board .cn-object-data-widget__grid .cn-object-data-widget__label {
|
|
6467
|
+
color: var(--color-text-maxcontrast) !important;
|
|
6346
6468
|
font-size: 13px;
|
|
6347
6469
|
font-weight: 400;
|
|
6348
6470
|
}
|
|
6349
6471
|
|
|
6472
|
+
/* The facts card's labels: the same light grey, regular weight. */
|
|
6473
|
+
.cn-look-board .cn-facts-widget .cn-facts-widget__label {
|
|
6474
|
+
color: var(--color-text-maxcontrast);
|
|
6475
|
+
font-weight: 400;
|
|
6476
|
+
}
|
|
6477
|
+
|
|
6350
6478
|
.cn-look-board .cn-object-data-widget__value {
|
|
6351
6479
|
font-weight: 500;
|
|
6352
6480
|
}
|
|
@@ -6604,6 +6732,15 @@ a.cn-kpi-card--board * {
|
|
|
6604
6732
|
font-size: 13px;
|
|
6605
6733
|
margin: 2px 0 0;
|
|
6606
6734
|
}
|
|
6735
|
+
|
|
6736
|
+
/* The sidebar's own open toggle (NcAppSidebar's `.app-sidebar__toggle`, drawn
|
|
6737
|
+
when the sidebar is closed) is positioned over the content's top-right
|
|
6738
|
+
corner, which in this look is the header's last button: a stray square icon
|
|
6739
|
+
on "More". The board draws none, so it is hidden on a detail page and the
|
|
6740
|
+
header menu offers "Open sidebar" instead. */
|
|
6741
|
+
.cn-look-board:has(.cn-detail-page) > .app-sidebar__toggle {
|
|
6742
|
+
display: none;
|
|
6743
|
+
}
|
|
6607
6744
|
/* CnReferencePreview — a reference that shows what it points at. */
|
|
6608
6745
|
|
|
6609
6746
|
.cn-reference-preview {
|
|
@@ -9726,11 +9863,31 @@ svg.leaflet-image-layer.leaflet-interactive path {
|
|
|
9726
9863
|
font-weight: 700;
|
|
9727
9864
|
line-height: 1;
|
|
9728
9865
|
}
|
|
9866
|
+
.cn-cell-renderer__avatar-text[data-v-37d7b88f] {
|
|
9867
|
+
display: flex;
|
|
9868
|
+
flex-direction: column;
|
|
9869
|
+
min-width: 0;
|
|
9870
|
+
}
|
|
9729
9871
|
.cn-cell-renderer__avatar-name[data-v-37d7b88f] {
|
|
9730
9872
|
min-width: 0;
|
|
9731
9873
|
overflow: hidden;
|
|
9732
9874
|
text-overflow: ellipsis;
|
|
9733
9875
|
white-space: nowrap;
|
|
9876
|
+
/* The name is the cell's text: it keeps the weight, size and colour the
|
|
9877
|
+
cell sets, as a plain value does. */
|
|
9878
|
+
font: inherit;
|
|
9879
|
+
color: inherit;
|
|
9880
|
+
}
|
|
9881
|
+
.cn-cell-renderer__avatar-secondary[data-v-37d7b88f] {
|
|
9882
|
+
min-width: 0;
|
|
9883
|
+
overflow: hidden;
|
|
9884
|
+
color: var(--color-text-maxcontrast);
|
|
9885
|
+
font-size: 13px;
|
|
9886
|
+
font-weight: 400;
|
|
9887
|
+
line-height: 1.35;
|
|
9888
|
+
text-overflow: ellipsis;
|
|
9889
|
+
text-decoration: none;
|
|
9890
|
+
white-space: nowrap;
|
|
9734
9891
|
}
|
|
9735
9892
|
|
|
9736
9893
|
/* A date that matched a rule is also set in a heavier weight, so the signal
|
|
@@ -15273,6 +15430,70 @@ button.cn-files-card__open[data-v-46f7e3c9]:hover {
|
|
|
15273
15430
|
white-space: nowrap;
|
|
15274
15431
|
color: var(--color-text-maxcontrast);
|
|
15275
15432
|
}
|
|
15433
|
+
.cn-files-browser__col-select[data-v-f5bdd9e2] {
|
|
15434
|
+
width: 36px;
|
|
15435
|
+
text-align: center;
|
|
15436
|
+
}
|
|
15437
|
+
.cn-files-browser__select[data-v-f5bdd9e2] {
|
|
15438
|
+
width: 18px;
|
|
15439
|
+
height: 18px;
|
|
15440
|
+
margin: 0;
|
|
15441
|
+
accent-color: var(--color-primary-element);
|
|
15442
|
+
}
|
|
15443
|
+
.cn-files-browser__bulk-bar[data-v-f5bdd9e2] {
|
|
15444
|
+
display: flex;
|
|
15445
|
+
flex-wrap: wrap;
|
|
15446
|
+
align-items: center;
|
|
15447
|
+
gap: 8px;
|
|
15448
|
+
padding: 8px 12px;
|
|
15449
|
+
border-radius: var(--border-radius-large);
|
|
15450
|
+
background: var(--color-primary-element-light);
|
|
15451
|
+
}
|
|
15452
|
+
.cn-files-browser__bulk-count[data-v-f5bdd9e2] {
|
|
15453
|
+
font-weight: 600;
|
|
15454
|
+
margin-inline-end: 8px;
|
|
15455
|
+
}
|
|
15456
|
+
.cn-files-browser__facets[data-v-f5bdd9e2] {
|
|
15457
|
+
display: flex;
|
|
15458
|
+
flex-wrap: wrap;
|
|
15459
|
+
align-items: center;
|
|
15460
|
+
gap: 8px 16px;
|
|
15461
|
+
}
|
|
15462
|
+
.cn-files-browser__facet[data-v-f5bdd9e2] {
|
|
15463
|
+
display: flex;
|
|
15464
|
+
flex-wrap: wrap;
|
|
15465
|
+
gap: 6px;
|
|
15466
|
+
}
|
|
15467
|
+
.cn-files-browser__facet-chip[data-v-f5bdd9e2] {
|
|
15468
|
+
display: inline-flex;
|
|
15469
|
+
align-items: center;
|
|
15470
|
+
gap: 6px;
|
|
15471
|
+
min-height: 32px;
|
|
15472
|
+
padding: 0 12px;
|
|
15473
|
+
border: 1px solid var(--color-border-dark);
|
|
15474
|
+
border-radius: var(--border-radius-pill);
|
|
15475
|
+
background: var(--color-main-background);
|
|
15476
|
+
color: var(--color-main-text);
|
|
15477
|
+
cursor: pointer;
|
|
15478
|
+
}
|
|
15479
|
+
.cn-files-browser__facet-chip--active[data-v-f5bdd9e2] {
|
|
15480
|
+
border-color: var(--color-primary-element);
|
|
15481
|
+
background: var(--color-primary-element-light);
|
|
15482
|
+
}
|
|
15483
|
+
.cn-files-browser__group-heading[data-v-f5bdd9e2] {
|
|
15484
|
+
padding: 12px 8px 4px;
|
|
15485
|
+
text-align: start;
|
|
15486
|
+
font-weight: 700;
|
|
15487
|
+
}
|
|
15488
|
+
.cn-files-browser__group-count[data-v-f5bdd9e2] {
|
|
15489
|
+
margin-inline-start: 6px;
|
|
15490
|
+
font-weight: 400;
|
|
15491
|
+
color: var(--color-text-maxcontrast);
|
|
15492
|
+
}
|
|
15493
|
+
.cn-files-browser__no-match[data-v-f5bdd9e2] {
|
|
15494
|
+
padding: 16px 8px;
|
|
15495
|
+
color: var(--color-text-maxcontrast);
|
|
15496
|
+
}
|
|
15276
15497
|
.cn-files-browser__col-actions[data-v-f5bdd9e2] {
|
|
15277
15498
|
width: 48px;
|
|
15278
15499
|
}
|
|
@@ -21928,6 +22149,59 @@ a.cn-kpi-card--board * {
|
|
|
21928
22149
|
gap: var(--cn-kpi-stack-gap, 12px);
|
|
21929
22150
|
}
|
|
21930
22151
|
|
|
22152
|
+
/* Rows layout: the board's "label left, number right" card body. */
|
|
22153
|
+
.cn-stats-block-widget--rows[data-v-4f8583ef] {
|
|
22154
|
+
display: flex;
|
|
22155
|
+
flex-direction: column;
|
|
22156
|
+
gap: 12px;
|
|
22157
|
+
box-sizing: border-box;
|
|
22158
|
+
padding: 20px 22px;
|
|
22159
|
+
}
|
|
22160
|
+
.cn-stats-block-widget__rows-title[data-v-4f8583ef] {
|
|
22161
|
+
margin: 0;
|
|
22162
|
+
font-size: 15px;
|
|
22163
|
+
font-weight: 600;
|
|
22164
|
+
color: var(--color-text-maxcontrast);
|
|
22165
|
+
}
|
|
22166
|
+
.cn-stats-block-widget__rows[data-v-4f8583ef] {
|
|
22167
|
+
display: flex;
|
|
22168
|
+
flex-direction: column;
|
|
22169
|
+
gap: 8px;
|
|
22170
|
+
margin: 0;
|
|
22171
|
+
font-size: 14px;
|
|
22172
|
+
}
|
|
22173
|
+
.cn-stats-block-widget__row[data-v-4f8583ef] {
|
|
22174
|
+
display: flex;
|
|
22175
|
+
align-items: baseline;
|
|
22176
|
+
justify-content: space-between;
|
|
22177
|
+
gap: 16px;
|
|
22178
|
+
}
|
|
22179
|
+
.cn-stats-block-widget__row-label[data-v-4f8583ef] {
|
|
22180
|
+
min-width: 0;
|
|
22181
|
+
margin: 0;
|
|
22182
|
+
overflow: hidden;
|
|
22183
|
+
text-overflow: ellipsis;
|
|
22184
|
+
}
|
|
22185
|
+
.cn-stats-block-widget__row-value[data-v-4f8583ef] {
|
|
22186
|
+
flex: none;
|
|
22187
|
+
margin: 0;
|
|
22188
|
+
font-size: 17px;
|
|
22189
|
+
font-weight: 700;
|
|
22190
|
+
text-align: right;
|
|
22191
|
+
}
|
|
22192
|
+
.cn-stats-block-widget__row-value--success[data-v-4f8583ef] {
|
|
22193
|
+
color: var(--color-text-success, var(--color-success-text));
|
|
22194
|
+
}
|
|
22195
|
+
.cn-stats-block-widget__row-value--warning[data-v-4f8583ef] {
|
|
22196
|
+
color: var(--color-text-warning, var(--color-warning-text));
|
|
22197
|
+
}
|
|
22198
|
+
.cn-stats-block-widget__row-value--error[data-v-4f8583ef] {
|
|
22199
|
+
color: var(--color-text-error, var(--color-error-text));
|
|
22200
|
+
}
|
|
22201
|
+
.cn-stats-block-widget__row-value--primary[data-v-4f8583ef] {
|
|
22202
|
+
color: var(--color-primary-element);
|
|
22203
|
+
}
|
|
22204
|
+
|
|
21931
22205
|
|
|
21932
22206
|
.cn-stats-block-form[data-v-20f3b26f] {
|
|
21933
22207
|
display: flex;
|
|
@@ -22446,6 +22720,20 @@ to { background-position: -200% 0;
|
|
|
22446
22720
|
.cn-banner-widget__card[data-v-3531692f] {
|
|
22447
22721
|
margin: 0;
|
|
22448
22722
|
}
|
|
22723
|
+
.cn-banner-widget__line[data-v-3531692f] {
|
|
22724
|
+
display: flex;
|
|
22725
|
+
flex-wrap: wrap;
|
|
22726
|
+
align-items: baseline;
|
|
22727
|
+
gap: 4px 20px;
|
|
22728
|
+
}
|
|
22729
|
+
.cn-banner-widget__lead[data-v-3531692f] {
|
|
22730
|
+
font-weight: 700;
|
|
22731
|
+
}
|
|
22732
|
+
.cn-banner-widget__link[data-v-3531692f] {
|
|
22733
|
+
margin-inline-start: auto;
|
|
22734
|
+
font-size: 14px;
|
|
22735
|
+
font-weight: 600;
|
|
22736
|
+
}
|
|
22449
22737
|
.cn-banner-widget__text--clickable[data-v-3531692f] {
|
|
22450
22738
|
cursor: pointer;
|
|
22451
22739
|
text-decoration: underline;
|
|
@@ -22529,6 +22817,28 @@ to { background-position: -200% 0;
|
|
|
22529
22817
|
margin: 0;
|
|
22530
22818
|
color: var(--color-text-maxcontrast);
|
|
22531
22819
|
}
|
|
22820
|
+
|
|
22821
|
+
/* Stacked (PqMijnWerk "Begin hier"): the text, then the action under it. */
|
|
22822
|
+
.cn-banner-widget--stacked[data-v-3531692f] {
|
|
22823
|
+
flex-direction: column;
|
|
22824
|
+
align-items: flex-start;
|
|
22825
|
+
gap: 10px;
|
|
22826
|
+
}
|
|
22827
|
+
.cn-banner-widget--stacked .cn-banner-widget__body[data-v-3531692f] {
|
|
22828
|
+
flex: 0 0 auto;
|
|
22829
|
+
gap: 10px;
|
|
22830
|
+
}
|
|
22831
|
+
.cn-banner-widget--stacked .cn-banner-widget__title[data-v-3531692f] {
|
|
22832
|
+
font-size: 16px;
|
|
22833
|
+
line-height: 1.4;
|
|
22834
|
+
}
|
|
22835
|
+
.cn-banner-widget--stacked .cn-banner-widget__reason[data-v-3531692f] {
|
|
22836
|
+
font-size: 14px;
|
|
22837
|
+
}
|
|
22838
|
+
.cn-banner-widget--stacked .cn-banner-widget__action[data-v-3531692f] {
|
|
22839
|
+
min-height: var(--cn-board-control-height, 40px);
|
|
22840
|
+
font-size: 14px;
|
|
22841
|
+
}
|
|
22532
22842
|
.cn-banner-widget__actions[data-v-3531692f] {
|
|
22533
22843
|
display: flex;
|
|
22534
22844
|
flex-wrap: wrap;
|
|
@@ -22700,6 +23010,18 @@ to { background-position: -200% 0;
|
|
|
22700
23010
|
box-shadow: 0 1px 2px var(--color-box-shadow);
|
|
22701
23011
|
}
|
|
22702
23012
|
|
|
23013
|
+
/* On a phone (screens-dashboard-phone) the compact group's segments are 44px
|
|
23014
|
+
high touch targets, and the group wraps onto a second row instead of
|
|
23015
|
+
running off the screen. */
|
|
23016
|
+
@media (max-width: 640px) {
|
|
23017
|
+
.cn-segmented-control.cn-segmented-control--compact[data-v-7b344b4f] {
|
|
23018
|
+
flex-wrap: wrap;
|
|
23019
|
+
}
|
|
23020
|
+
.cn-segmented-control.cn-segmented-control--compact .cn-segmented-control__option[data-v-7b344b4f] {
|
|
23021
|
+
min-height: 44px;
|
|
23022
|
+
}
|
|
23023
|
+
}
|
|
23024
|
+
|
|
22703
23025
|
|
|
22704
23026
|
.cn-header-widget[data-v-1b97430f] {
|
|
22705
23027
|
width: 100%;
|
|
@@ -23524,6 +23846,13 @@ button.cn-stepper__step[data-v-19697746] {
|
|
|
23524
23846
|
}
|
|
23525
23847
|
|
|
23526
23848
|
|
|
23849
|
+
.cn-form-page__honeypot {
|
|
23850
|
+
position: absolute;
|
|
23851
|
+
left: -10000px;
|
|
23852
|
+
width: 1px;
|
|
23853
|
+
height: 1px;
|
|
23854
|
+
overflow: hidden;
|
|
23855
|
+
}
|
|
23527
23856
|
.cn-form-page {
|
|
23528
23857
|
display: flex;
|
|
23529
23858
|
flex-direction: column;
|
|
@@ -23977,6 +24306,26 @@ button.cn-stepper__step[data-v-19697746] {
|
|
|
23977
24306
|
gap: 20px;
|
|
23978
24307
|
}
|
|
23979
24308
|
|
|
24309
|
+
/* A gridded stack (`columns` / `layout` on the tab): 12 columns, widgets wrap
|
|
24310
|
+
onto the next row, a row's cards as tall as the tallest. Narrow, it is the
|
|
24311
|
+
plain stack again. */
|
|
24312
|
+
.cn-tabs-widget__stack--grid[data-v-1dbd6122] {
|
|
24313
|
+
display: grid;
|
|
24314
|
+
grid-template-columns: repeat(12, minmax(0, 1fr));
|
|
24315
|
+
align-items: stretch;
|
|
24316
|
+
}
|
|
24317
|
+
.cn-tabs-widget__stack--grid[data-v-1dbd6122] > * {
|
|
24318
|
+
min-width: 0;
|
|
24319
|
+
}
|
|
24320
|
+
@media (max-width: 700px) {
|
|
24321
|
+
.cn-tabs-widget__stack--grid[data-v-1dbd6122] {
|
|
24322
|
+
grid-template-columns: minmax(0, 1fr);
|
|
24323
|
+
}
|
|
24324
|
+
.cn-tabs-widget__stack--grid[data-v-1dbd6122] > * {
|
|
24325
|
+
grid-column: auto !important;
|
|
24326
|
+
}
|
|
24327
|
+
}
|
|
24328
|
+
|
|
23980
24329
|
/* The panel is the card; the strip is not inside it. There is no title bar
|
|
23981
24330
|
above the tabs either: the open tab names the panel, so a title row would
|
|
23982
24331
|
say the same thing twice and cost a row of height on a card that is mostly
|
|
@@ -24093,6 +24442,14 @@ button.cn-stepper__step[data-v-19697746] {
|
|
|
24093
24442
|
.cn-tabs-widget__tabs[data-v-1dbd6122] .cn-tab {
|
|
24094
24443
|
height: 100%;
|
|
24095
24444
|
}
|
|
24445
|
+
|
|
24446
|
+
/* A list widget's footer Add bleeds through its card's 16px content padding
|
|
24447
|
+
(margin 0 -16px -16px). The panel of a tab pads 12px, so on a tab that
|
|
24448
|
+
holds the list directly the footer stuck out 4px on the right and at the
|
|
24449
|
+
bottom and made the panel scroll. It bleeds exactly the panel's padding. */
|
|
24450
|
+
.cn-tabs-widget__tabs[data-v-1dbd6122] .cn-tabs__content > .cn-tab > .cn-detail-widget-host--bare .cn-object-list-widget__add {
|
|
24451
|
+
margin: auto -12px -12px;
|
|
24452
|
+
}
|
|
24096
24453
|
.cn-tabs-widget__title[data-v-1dbd6122] {
|
|
24097
24454
|
align-items: center;
|
|
24098
24455
|
display: inline-flex;
|
|
@@ -28048,6 +28405,50 @@ a.cn-flow-runs-widget__row-content:hover .cn-flow-runs-widget__name[data-v-75628
|
|
|
28048
28405
|
font-variant-numeric: tabular-nums;
|
|
28049
28406
|
}
|
|
28050
28407
|
|
|
28408
|
+
/* List variant, after the dashboard board's My tasks card: a checkbox, the
|
|
28409
|
+
title, the subject on a muted second line and the due date at its right. */
|
|
28410
|
+
.cn-tasks-widget--list .cn-tasks-widget__row[data-v-ff399342] {
|
|
28411
|
+
align-items: flex-start;
|
|
28412
|
+
gap: 12px;
|
|
28413
|
+
padding: 12px 0;
|
|
28414
|
+
}
|
|
28415
|
+
.cn-tasks-widget--list .cn-tasks-widget__name[data-v-ff399342] {
|
|
28416
|
+
font-weight: 400;
|
|
28417
|
+
font-size: 15px;
|
|
28418
|
+
line-height: 1.35;
|
|
28419
|
+
color: var(--color-main-text);
|
|
28420
|
+
}
|
|
28421
|
+
.cn-tasks-widget__check[data-v-ff399342],
|
|
28422
|
+
.cn-tasks-widget__check-spacer[data-v-ff399342] {
|
|
28423
|
+
flex: none;
|
|
28424
|
+
width: 20px;
|
|
28425
|
+
height: 20px;
|
|
28426
|
+
margin: 1px 0 0;
|
|
28427
|
+
}
|
|
28428
|
+
.cn-tasks-widget__check[data-v-ff399342] {
|
|
28429
|
+
accent-color: var(--color-primary-element);
|
|
28430
|
+
cursor: pointer;
|
|
28431
|
+
}
|
|
28432
|
+
.cn-tasks-widget__meta--split[data-v-ff399342] {
|
|
28433
|
+
display: flex;
|
|
28434
|
+
justify-content: space-between;
|
|
28435
|
+
gap: 8px;
|
|
28436
|
+
font-size: 13px;
|
|
28437
|
+
overflow: visible;
|
|
28438
|
+
}
|
|
28439
|
+
.cn-tasks-widget__subject[data-v-ff399342] {
|
|
28440
|
+
min-width: 0;
|
|
28441
|
+
overflow: hidden;
|
|
28442
|
+
text-overflow: ellipsis;
|
|
28443
|
+
}
|
|
28444
|
+
.cn-tasks-widget--list .cn-tasks-widget__due[data-v-ff399342] {
|
|
28445
|
+
font-size: 13px;
|
|
28446
|
+
font-weight: 500;
|
|
28447
|
+
}
|
|
28448
|
+
.cn-tasks-widget--list .cn-tasks-widget__due--overdue[data-v-ff399342] {
|
|
28449
|
+
font-weight: 600;
|
|
28450
|
+
}
|
|
28451
|
+
|
|
28051
28452
|
/* Overdue: weight AND colour on top of the wording, which already says
|
|
28052
28453
|
"Overdue by N days" — the signal survives monochrome. */
|
|
28053
28454
|
.cn-tasks-widget__due--overdue[data-v-ff399342] {
|
|
@@ -28146,11 +28547,21 @@ a.cn-flow-runs-widget__row-content:hover .cn-flow-runs-widget__name[data-v-75628
|
|
|
28146
28547
|
.cn-facts-widget__row[data-v-2ca63011] {
|
|
28147
28548
|
display: contents;
|
|
28148
28549
|
}
|
|
28149
|
-
|
|
28550
|
+
|
|
28551
|
+
/* Nextcloud core styles `dt` and `dd` (text-align end, 12px padding), which
|
|
28552
|
+
pushed the label to the right of its column and added 12px around both. The
|
|
28553
|
+
class is doubled so these resets outrank that rule, and a dossiq-style
|
|
28554
|
+
`:deep()` override in an app is not needed. */
|
|
28555
|
+
.cn-facts-widget__label.cn-facts-widget__label[data-v-2ca63011] {
|
|
28556
|
+
margin: 0;
|
|
28557
|
+
padding: 0;
|
|
28558
|
+
text-align: start;
|
|
28150
28559
|
color: var(--color-text-maxcontrast);
|
|
28151
28560
|
}
|
|
28152
|
-
.cn-facts-widget__value[data-v-2ca63011] {
|
|
28561
|
+
.cn-facts-widget__value.cn-facts-widget__value[data-v-2ca63011] {
|
|
28153
28562
|
margin: 0;
|
|
28563
|
+
padding: 0;
|
|
28564
|
+
text-align: start;
|
|
28154
28565
|
font-weight: 500;
|
|
28155
28566
|
min-width: 0;
|
|
28156
28567
|
overflow-wrap: anywhere;
|
|
@@ -28370,6 +28781,496 @@ a.cn-flow-runs-widget__row-content:hover .cn-flow-runs-widget__name[data-v-75628
|
|
|
28370
28781
|
.cn-field-list-widget__add > button[data-v-0f29a833] {
|
|
28371
28782
|
flex: 0 0 auto;
|
|
28372
28783
|
}
|
|
28784
|
+
.cn-field-list-widget__toolbar[data-v-0f29a833] {
|
|
28785
|
+
display: flex;
|
|
28786
|
+
justify-content: flex-end;
|
|
28787
|
+
}
|
|
28788
|
+
.cn-field-list-widget__table-wrap[data-v-0f29a833] {
|
|
28789
|
+
display: flex;
|
|
28790
|
+
flex-direction: column;
|
|
28791
|
+
gap: 12px;
|
|
28792
|
+
overflow-x: auto;
|
|
28793
|
+
}
|
|
28794
|
+
.cn-field-list-widget__table[data-v-0f29a833] {
|
|
28795
|
+
width: 100%;
|
|
28796
|
+
border-collapse: collapse;
|
|
28797
|
+
}
|
|
28798
|
+
.cn-field-list-widget__th[data-v-0f29a833] {
|
|
28799
|
+
padding: 8px 12px;
|
|
28800
|
+
text-align: start;
|
|
28801
|
+
font-size: 13px;
|
|
28802
|
+
font-weight: 600;
|
|
28803
|
+
white-space: nowrap;
|
|
28804
|
+
color: var(--color-text-maxcontrast);
|
|
28805
|
+
background: var(--color-background-hover);
|
|
28806
|
+
}
|
|
28807
|
+
.cn-field-list-widget__th--menu[data-v-0f29a833],
|
|
28808
|
+
.cn-field-list-widget__td--menu[data-v-0f29a833] {
|
|
28809
|
+
width: 1%;
|
|
28810
|
+
text-align: end;
|
|
28811
|
+
}
|
|
28812
|
+
.cn-field-list-widget__tr[data-v-0f29a833] {
|
|
28813
|
+
border-top: 1px solid var(--cn-board-hairline, var(--color-border));
|
|
28814
|
+
}
|
|
28815
|
+
.cn-field-list-widget__td[data-v-0f29a833] {
|
|
28816
|
+
padding: 10px 12px;
|
|
28817
|
+
vertical-align: middle;
|
|
28818
|
+
overflow-wrap: anywhere;
|
|
28819
|
+
}
|
|
28820
|
+
.cn-field-list-widget__sr[data-v-0f29a833] {
|
|
28821
|
+
position: absolute;
|
|
28822
|
+
width: 1px;
|
|
28823
|
+
height: 1px;
|
|
28824
|
+
overflow: hidden;
|
|
28825
|
+
clip-path: inset(50%);
|
|
28826
|
+
}
|
|
28827
|
+
.cn-field-list-widget__band[data-v-0f29a833] {
|
|
28828
|
+
display: flex;
|
|
28829
|
+
flex-wrap: wrap;
|
|
28830
|
+
align-items: center;
|
|
28831
|
+
justify-content: space-between;
|
|
28832
|
+
gap: 8px 12px;
|
|
28833
|
+
padding: 12px 14px;
|
|
28834
|
+
border: 1px solid var(--color-warning);
|
|
28835
|
+
border-radius: 10px;
|
|
28836
|
+
background: color-mix(in srgb, var(--color-warning) 14%, var(--color-main-background));
|
|
28837
|
+
font-size: 14px;
|
|
28838
|
+
}
|
|
28839
|
+
|
|
28840
|
+
|
|
28841
|
+
.cn-settings-form[data-v-731c450f] {
|
|
28842
|
+
display: flex;
|
|
28843
|
+
flex-direction: column;
|
|
28844
|
+
gap: 14px;
|
|
28845
|
+
min-width: 0;
|
|
28846
|
+
}
|
|
28847
|
+
.cn-settings-form__grid[data-v-731c450f] {
|
|
28848
|
+
display: grid;
|
|
28849
|
+
gap: 14px 16px;
|
|
28850
|
+
grid-template-columns: minmax(0, 1fr);
|
|
28851
|
+
}
|
|
28852
|
+
.cn-settings-form__grid--2[data-v-731c450f] {
|
|
28853
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
28854
|
+
}
|
|
28855
|
+
.cn-settings-form__field[data-v-731c450f] {
|
|
28856
|
+
display: flex;
|
|
28857
|
+
flex-direction: column;
|
|
28858
|
+
gap: 4px;
|
|
28859
|
+
min-width: 0;
|
|
28860
|
+
}
|
|
28861
|
+
.cn-settings-form__field--wide[data-v-731c450f] {
|
|
28862
|
+
grid-column: 1 / -1;
|
|
28863
|
+
}
|
|
28864
|
+
.cn-settings-form__label[data-v-731c450f] {
|
|
28865
|
+
font-size: 13px;
|
|
28866
|
+
font-weight: 600;
|
|
28867
|
+
color: var(--color-main-text);
|
|
28868
|
+
}
|
|
28869
|
+
.cn-settings-form__control[data-v-731c450f] {
|
|
28870
|
+
width: 100%;
|
|
28871
|
+
box-sizing: border-box;
|
|
28872
|
+
height: var(--cn-board-control-height, 40px);
|
|
28873
|
+
padding: 0 12px;
|
|
28874
|
+
border: 1px solid var(--color-border-maxcontrast);
|
|
28875
|
+
border-radius: var(--cn-board-control-radius, 8px);
|
|
28876
|
+
background: var(--color-main-background);
|
|
28877
|
+
color: var(--color-main-text);
|
|
28878
|
+
font: inherit;
|
|
28879
|
+
}
|
|
28880
|
+
.cn-settings-form__file[data-v-731c450f] {
|
|
28881
|
+
display: flex;
|
|
28882
|
+
flex-wrap: wrap;
|
|
28883
|
+
align-items: center;
|
|
28884
|
+
gap: 8px;
|
|
28885
|
+
}
|
|
28886
|
+
.cn-settings-form__control--file[data-v-731c450f] {
|
|
28887
|
+
display: inline-flex;
|
|
28888
|
+
align-items: center;
|
|
28889
|
+
width: auto;
|
|
28890
|
+
min-width: 120px;
|
|
28891
|
+
flex: 0 1 auto;
|
|
28892
|
+
overflow-wrap: anywhere;
|
|
28893
|
+
}
|
|
28894
|
+
.cn-settings-form__control--placeholder[data-v-731c450f] {
|
|
28895
|
+
color: var(--color-text-maxcontrast);
|
|
28896
|
+
}
|
|
28897
|
+
.cn-settings-form__control--area[data-v-731c450f] {
|
|
28898
|
+
height: auto;
|
|
28899
|
+
padding: 10px 12px;
|
|
28900
|
+
resize: vertical;
|
|
28901
|
+
}
|
|
28902
|
+
.cn-settings-form__control[data-v-731c450f]:focus-visible {
|
|
28903
|
+
outline: 2px solid var(--color-primary-element);
|
|
28904
|
+
outline-offset: 1px;
|
|
28905
|
+
}
|
|
28906
|
+
.cn-settings-form__hint[data-v-731c450f],
|
|
28907
|
+
.cn-settings-form__error[data-v-731c450f] {
|
|
28908
|
+
margin: 0;
|
|
28909
|
+
font-size: 12px;
|
|
28910
|
+
color: var(--color-text-maxcontrast);
|
|
28911
|
+
}
|
|
28912
|
+
.cn-settings-form__error[data-v-731c450f] {
|
|
28913
|
+
color: var(--color-error-text);
|
|
28914
|
+
}
|
|
28915
|
+
.cn-settings-form__actions[data-v-731c450f] {
|
|
28916
|
+
display: flex;
|
|
28917
|
+
justify-content: flex-start;
|
|
28918
|
+
}
|
|
28919
|
+
@media (max-width: 640px) {
|
|
28920
|
+
.cn-settings-form__grid--2[data-v-731c450f] {
|
|
28921
|
+
grid-template-columns: minmax(0, 1fr);
|
|
28922
|
+
}
|
|
28923
|
+
}
|
|
28924
|
+
|
|
28925
|
+
|
|
28926
|
+
.cn-switch-rows[data-v-9dd5b4e2] {
|
|
28927
|
+
display: flex;
|
|
28928
|
+
flex-direction: column;
|
|
28929
|
+
gap: 8px;
|
|
28930
|
+
min-width: 0;
|
|
28931
|
+
}
|
|
28932
|
+
.cn-switch-rows__list[data-v-9dd5b4e2] {
|
|
28933
|
+
list-style: none;
|
|
28934
|
+
margin: 0;
|
|
28935
|
+
padding: 0;
|
|
28936
|
+
display: flex;
|
|
28937
|
+
flex-direction: column;
|
|
28938
|
+
}
|
|
28939
|
+
.cn-switch-rows__row[data-v-9dd5b4e2] {
|
|
28940
|
+
padding: 10px 0;
|
|
28941
|
+
border-top: 1px solid var(--cn-board-hairline, var(--color-border));
|
|
28942
|
+
}
|
|
28943
|
+
.cn-switch-rows__row[data-v-9dd5b4e2]:first-child {
|
|
28944
|
+
border-top: none;
|
|
28945
|
+
padding-top: 0;
|
|
28946
|
+
}
|
|
28947
|
+
.cn-switch-rows__label[data-v-9dd5b4e2] {
|
|
28948
|
+
display: block;
|
|
28949
|
+
font-weight: 600;
|
|
28950
|
+
}
|
|
28951
|
+
.cn-switch-rows__hint[data-v-9dd5b4e2] {
|
|
28952
|
+
display: block;
|
|
28953
|
+
font-size: 12px;
|
|
28954
|
+
font-weight: 400;
|
|
28955
|
+
color: var(--color-text-maxcontrast);
|
|
28956
|
+
}
|
|
28957
|
+
|
|
28958
|
+
|
|
28959
|
+
.cn-radio-cards[data-v-8aefa4a2] {
|
|
28960
|
+
display: flex;
|
|
28961
|
+
flex-direction: column;
|
|
28962
|
+
gap: 8px;
|
|
28963
|
+
min-width: 0;
|
|
28964
|
+
margin: 0;
|
|
28965
|
+
padding: 0;
|
|
28966
|
+
border: 0;
|
|
28967
|
+
}
|
|
28968
|
+
.cn-radio-cards__legend[data-v-8aefa4a2] {
|
|
28969
|
+
padding: 0;
|
|
28970
|
+
margin-bottom: 6px;
|
|
28971
|
+
font-weight: 600;
|
|
28972
|
+
}
|
|
28973
|
+
.cn-radio-cards__grid[data-v-8aefa4a2] {
|
|
28974
|
+
display: grid;
|
|
28975
|
+
gap: 10px;
|
|
28976
|
+
grid-template-columns: minmax(0, 1fr);
|
|
28977
|
+
}
|
|
28978
|
+
.cn-radio-cards__grid--2[data-v-8aefa4a2] {
|
|
28979
|
+
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
28980
|
+
}
|
|
28981
|
+
.cn-radio-cards__grid--3[data-v-8aefa4a2] {
|
|
28982
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
28983
|
+
}
|
|
28984
|
+
.cn-radio-cards__card[data-v-8aefa4a2] {
|
|
28985
|
+
position: relative;
|
|
28986
|
+
display: flex;
|
|
28987
|
+
align-items: flex-start;
|
|
28988
|
+
gap: 10px;
|
|
28989
|
+
padding: 12px 14px;
|
|
28990
|
+
border: 1px solid var(--color-border-maxcontrast);
|
|
28991
|
+
border-radius: var(--cn-board-control-radius, 8px);
|
|
28992
|
+
background: var(--color-main-background);
|
|
28993
|
+
cursor: pointer;
|
|
28994
|
+
}
|
|
28995
|
+
.cn-radio-cards__card--selected[data-v-8aefa4a2] {
|
|
28996
|
+
border-color: var(--color-primary-element);
|
|
28997
|
+
background: var(--color-primary-element-light);
|
|
28998
|
+
box-shadow: 0 0 0 1px var(--color-primary-element);
|
|
28999
|
+
}
|
|
29000
|
+
.cn-radio-cards__card[data-v-8aefa4a2]:focus-within {
|
|
29001
|
+
outline: 2px solid var(--color-primary-element);
|
|
29002
|
+
outline-offset: 2px;
|
|
29003
|
+
}
|
|
29004
|
+
|
|
29005
|
+
/* The real input stays in the DOM and in the accessibility tree; the dot is its picture. */
|
|
29006
|
+
.cn-radio-cards__input[data-v-8aefa4a2] {
|
|
29007
|
+
position: absolute;
|
|
29008
|
+
opacity: 0;
|
|
29009
|
+
inset: 0;
|
|
29010
|
+
margin: 0;
|
|
29011
|
+
cursor: pointer;
|
|
29012
|
+
}
|
|
29013
|
+
.cn-radio-cards__dot[data-v-8aefa4a2] {
|
|
29014
|
+
flex: 0 0 auto;
|
|
29015
|
+
width: 14px;
|
|
29016
|
+
height: 14px;
|
|
29017
|
+
margin-top: 3px;
|
|
29018
|
+
box-sizing: border-box;
|
|
29019
|
+
border: 1px solid var(--color-border-maxcontrast);
|
|
29020
|
+
border-radius: 50%;
|
|
29021
|
+
background: var(--color-main-background);
|
|
29022
|
+
}
|
|
29023
|
+
.cn-radio-cards__card--selected .cn-radio-cards__dot[data-v-8aefa4a2] {
|
|
29024
|
+
border: 4px solid var(--color-primary-element);
|
|
29025
|
+
}
|
|
29026
|
+
.cn-radio-cards__text[data-v-8aefa4a2] {
|
|
29027
|
+
display: flex;
|
|
29028
|
+
flex-direction: column;
|
|
29029
|
+
gap: 2px;
|
|
29030
|
+
min-width: 0;
|
|
29031
|
+
}
|
|
29032
|
+
.cn-radio-cards__title[data-v-8aefa4a2] {
|
|
29033
|
+
font-weight: 600;
|
|
29034
|
+
}
|
|
29035
|
+
.cn-radio-cards__description[data-v-8aefa4a2] {
|
|
29036
|
+
font-size: 12px;
|
|
29037
|
+
color: var(--color-text-maxcontrast);
|
|
29038
|
+
}
|
|
29039
|
+
@media (max-width: 640px) {
|
|
29040
|
+
.cn-radio-cards__grid--2[data-v-8aefa4a2],
|
|
29041
|
+
.cn-radio-cards__grid--3[data-v-8aefa4a2] {
|
|
29042
|
+
grid-template-columns: minmax(0, 1fr);
|
|
29043
|
+
}
|
|
29044
|
+
}
|
|
29045
|
+
|
|
29046
|
+
|
|
29047
|
+
.cn-chips-field[data-v-43e5bfcf] {
|
|
29048
|
+
display: flex;
|
|
29049
|
+
flex-direction: column;
|
|
29050
|
+
gap: 6px;
|
|
29051
|
+
min-width: 0;
|
|
29052
|
+
}
|
|
29053
|
+
.cn-chips-field__label[data-v-43e5bfcf] {
|
|
29054
|
+
margin: 0;
|
|
29055
|
+
font-size: 13px;
|
|
29056
|
+
font-weight: 600;
|
|
29057
|
+
}
|
|
29058
|
+
.cn-chips-field__chips[data-v-43e5bfcf] {
|
|
29059
|
+
list-style: none;
|
|
29060
|
+
margin: 0;
|
|
29061
|
+
padding: 0;
|
|
29062
|
+
display: flex;
|
|
29063
|
+
flex-wrap: wrap;
|
|
29064
|
+
align-items: center;
|
|
29065
|
+
gap: 8px;
|
|
29066
|
+
}
|
|
29067
|
+
.cn-chips-field__chip[data-v-43e5bfcf] {
|
|
29068
|
+
display: inline-flex;
|
|
29069
|
+
align-items: center;
|
|
29070
|
+
gap: 6px;
|
|
29071
|
+
padding: 4px 6px 4px 12px;
|
|
29072
|
+
border-radius: 999px;
|
|
29073
|
+
background: var(--color-primary-element-light);
|
|
29074
|
+
color: var(--color-primary-element-light-text, var(--color-main-text));
|
|
29075
|
+
font-weight: 600;
|
|
29076
|
+
overflow-wrap: anywhere;
|
|
29077
|
+
}
|
|
29078
|
+
.cn-chips-field__remove[data-v-43e5bfcf] {
|
|
29079
|
+
display: inline-flex;
|
|
29080
|
+
align-items: center;
|
|
29081
|
+
justify-content: center;
|
|
29082
|
+
width: 20px;
|
|
29083
|
+
height: 20px;
|
|
29084
|
+
padding: 0;
|
|
29085
|
+
border: 0;
|
|
29086
|
+
border-radius: 50%;
|
|
29087
|
+
background: transparent;
|
|
29088
|
+
color: inherit;
|
|
29089
|
+
font-size: 16px;
|
|
29090
|
+
line-height: 1;
|
|
29091
|
+
cursor: pointer;
|
|
29092
|
+
}
|
|
29093
|
+
.cn-chips-field__remove[data-v-43e5bfcf]:hover:not(:disabled),
|
|
29094
|
+
.cn-chips-field__remove[data-v-43e5bfcf]:focus-visible {
|
|
29095
|
+
background: var(--color-primary-element-light-hover, var(--color-background-hover));
|
|
29096
|
+
}
|
|
29097
|
+
.cn-chips-field__add[data-v-43e5bfcf] {
|
|
29098
|
+
padding: 4px 12px;
|
|
29099
|
+
border: 1px dashed var(--color-border-maxcontrast);
|
|
29100
|
+
border-radius: 999px;
|
|
29101
|
+
background: transparent;
|
|
29102
|
+
color: var(--color-main-text);
|
|
29103
|
+
font-weight: 600;
|
|
29104
|
+
cursor: pointer;
|
|
29105
|
+
}
|
|
29106
|
+
.cn-chips-field__add[data-v-43e5bfcf]:hover:not(:disabled) {
|
|
29107
|
+
background: var(--color-background-hover);
|
|
29108
|
+
}
|
|
29109
|
+
.cn-chips-field__form[data-v-43e5bfcf] {
|
|
29110
|
+
display: flex;
|
|
29111
|
+
align-items: center;
|
|
29112
|
+
gap: 8px;
|
|
29113
|
+
}
|
|
29114
|
+
.cn-chips-field__input[data-v-43e5bfcf] {
|
|
29115
|
+
height: var(--cn-board-control-height, 40px);
|
|
29116
|
+
box-sizing: border-box;
|
|
29117
|
+
padding: 0 12px;
|
|
29118
|
+
border: 1px solid var(--color-border-maxcontrast);
|
|
29119
|
+
border-radius: var(--cn-board-control-radius, 8px);
|
|
29120
|
+
background: var(--color-main-background);
|
|
29121
|
+
color: var(--color-main-text);
|
|
29122
|
+
font: inherit;
|
|
29123
|
+
}
|
|
29124
|
+
.cn-chips-field__hint[data-v-43e5bfcf],
|
|
29125
|
+
.cn-chips-field__error[data-v-43e5bfcf] {
|
|
29126
|
+
margin: 0;
|
|
29127
|
+
font-size: 12px;
|
|
29128
|
+
color: var(--color-text-maxcontrast);
|
|
29129
|
+
}
|
|
29130
|
+
.cn-chips-field__error[data-v-43e5bfcf] {
|
|
29131
|
+
color: var(--color-error-text);
|
|
29132
|
+
}
|
|
29133
|
+
|
|
29134
|
+
|
|
29135
|
+
.cn-toggle-table[data-v-53a57112] {
|
|
29136
|
+
display: flex;
|
|
29137
|
+
flex-direction: column;
|
|
29138
|
+
gap: 8px;
|
|
29139
|
+
min-width: 0;
|
|
29140
|
+
}
|
|
29141
|
+
.cn-toggle-table__table[data-v-53a57112] {
|
|
29142
|
+
width: 100%;
|
|
29143
|
+
border-collapse: collapse;
|
|
29144
|
+
}
|
|
29145
|
+
.cn-toggle-table__head[data-v-53a57112] {
|
|
29146
|
+
padding: 8px 12px;
|
|
29147
|
+
text-align: start;
|
|
29148
|
+
font-size: 13px;
|
|
29149
|
+
font-weight: 600;
|
|
29150
|
+
color: var(--color-text-maxcontrast);
|
|
29151
|
+
background: var(--color-background-hover);
|
|
29152
|
+
}
|
|
29153
|
+
.cn-toggle-table__head--toggle[data-v-53a57112],
|
|
29154
|
+
.cn-toggle-table__cell--toggle[data-v-53a57112] {
|
|
29155
|
+
width: 1%;
|
|
29156
|
+
white-space: nowrap;
|
|
29157
|
+
text-align: end;
|
|
29158
|
+
}
|
|
29159
|
+
.cn-toggle-table__row[data-v-53a57112] {
|
|
29160
|
+
border-top: 1px solid var(--cn-board-hairline, var(--color-border));
|
|
29161
|
+
}
|
|
29162
|
+
.cn-toggle-table__cell[data-v-53a57112] {
|
|
29163
|
+
padding: 10px 12px;
|
|
29164
|
+
vertical-align: middle;
|
|
29165
|
+
overflow-wrap: anywhere;
|
|
29166
|
+
}
|
|
29167
|
+
.cn-toggle-table__title[data-v-53a57112] {
|
|
29168
|
+
display: block;
|
|
29169
|
+
font-weight: 600;
|
|
29170
|
+
}
|
|
29171
|
+
.cn-toggle-table__hint[data-v-53a57112] {
|
|
29172
|
+
display: block;
|
|
29173
|
+
font-size: 12px;
|
|
29174
|
+
color: var(--color-text-maxcontrast);
|
|
29175
|
+
}
|
|
29176
|
+
.cn-toggle-table__empty[data-v-53a57112] {
|
|
29177
|
+
margin: 0;
|
|
29178
|
+
color: var(--color-text-maxcontrast);
|
|
29179
|
+
}
|
|
29180
|
+
|
|
29181
|
+
|
|
29182
|
+
.cn-choice-picker[data-v-7075cbe2] {
|
|
29183
|
+
display: flex;
|
|
29184
|
+
flex-direction: column;
|
|
29185
|
+
gap: 12px;
|
|
29186
|
+
min-width: 0;
|
|
29187
|
+
}
|
|
29188
|
+
.cn-choice-picker__cards[data-v-7075cbe2] {
|
|
29189
|
+
display: flex;
|
|
29190
|
+
flex-wrap: wrap;
|
|
29191
|
+
gap: 10px;
|
|
29192
|
+
margin: 0;
|
|
29193
|
+
padding: 0;
|
|
29194
|
+
border: 0;
|
|
29195
|
+
}
|
|
29196
|
+
.cn-choice-picker__legend[data-v-7075cbe2] {
|
|
29197
|
+
position: absolute;
|
|
29198
|
+
width: 1px;
|
|
29199
|
+
height: 1px;
|
|
29200
|
+
overflow: hidden;
|
|
29201
|
+
clip-path: inset(50%);
|
|
29202
|
+
}
|
|
29203
|
+
.cn-choice-picker__card[data-v-7075cbe2] {
|
|
29204
|
+
position: relative;
|
|
29205
|
+
display: flex;
|
|
29206
|
+
flex: 1 1 220px;
|
|
29207
|
+
align-items: center;
|
|
29208
|
+
gap: 12px;
|
|
29209
|
+
padding: 10px 12px;
|
|
29210
|
+
border: 1px solid var(--cn-board-hairline, var(--color-border));
|
|
29211
|
+
border-radius: 10px;
|
|
29212
|
+
background: var(--color-main-background);
|
|
29213
|
+
cursor: pointer;
|
|
29214
|
+
}
|
|
29215
|
+
.cn-choice-picker__card--selected[data-v-7075cbe2] {
|
|
29216
|
+
padding: 9px 11px;
|
|
29217
|
+
border: 2px solid var(--color-primary-element);
|
|
29218
|
+
}
|
|
29219
|
+
.cn-choice-picker__card--refused[data-v-7075cbe2] {
|
|
29220
|
+
cursor: not-allowed;
|
|
29221
|
+
opacity: 0.7;
|
|
29222
|
+
}
|
|
29223
|
+
.cn-choice-picker__card[data-v-7075cbe2]:focus-within {
|
|
29224
|
+
outline: 2px solid var(--color-primary-element);
|
|
29225
|
+
outline-offset: 2px;
|
|
29226
|
+
}
|
|
29227
|
+
.cn-choice-picker__input[data-v-7075cbe2] {
|
|
29228
|
+
flex: 0 0 auto;
|
|
29229
|
+
width: 18px;
|
|
29230
|
+
height: 18px;
|
|
29231
|
+
margin: 0;
|
|
29232
|
+
accent-color: var(--color-primary-element);
|
|
29233
|
+
}
|
|
29234
|
+
.cn-choice-picker__swatches[data-v-7075cbe2] {
|
|
29235
|
+
display: flex;
|
|
29236
|
+
gap: 4px;
|
|
29237
|
+
}
|
|
29238
|
+
.cn-choice-picker__swatch[data-v-7075cbe2] {
|
|
29239
|
+
width: 18px;
|
|
29240
|
+
height: 18px;
|
|
29241
|
+
box-sizing: border-box;
|
|
29242
|
+
border: 1px solid var(--color-border);
|
|
29243
|
+
border-radius: 4px;
|
|
29244
|
+
}
|
|
29245
|
+
.cn-choice-picker__text[data-v-7075cbe2] {
|
|
29246
|
+
display: flex;
|
|
29247
|
+
flex: 1 1 auto;
|
|
29248
|
+
flex-direction: column;
|
|
29249
|
+
gap: 2px;
|
|
29250
|
+
min-width: 0;
|
|
29251
|
+
}
|
|
29252
|
+
.cn-choice-picker__title[data-v-7075cbe2] {
|
|
29253
|
+
font-size: 15px;
|
|
29254
|
+
}
|
|
29255
|
+
.cn-choice-picker__refusal[data-v-7075cbe2],
|
|
29256
|
+
.cn-choice-picker__hint[data-v-7075cbe2],
|
|
29257
|
+
.cn-choice-picker__note[data-v-7075cbe2] {
|
|
29258
|
+
margin: 0;
|
|
29259
|
+
font-size: 13px;
|
|
29260
|
+
color: var(--color-text-maxcontrast);
|
|
29261
|
+
}
|
|
29262
|
+
.cn-choice-picker__warning-intro[data-v-7075cbe2] {
|
|
29263
|
+
margin: 0 0 4px;
|
|
29264
|
+
}
|
|
29265
|
+
.cn-choice-picker__warning-list[data-v-7075cbe2] {
|
|
29266
|
+
margin: 0;
|
|
29267
|
+
padding-inline-start: 18px;
|
|
29268
|
+
}
|
|
29269
|
+
.cn-choice-picker__actions[data-v-7075cbe2] {
|
|
29270
|
+
display: flex;
|
|
29271
|
+
flex-wrap: wrap;
|
|
29272
|
+
gap: 8px;
|
|
29273
|
+
}
|
|
28373
29274
|
|
|
28374
29275
|
|
|
28375
29276
|
.cn-record-list__list[data-v-7073b362] {
|
|
@@ -28404,6 +29305,19 @@ a.cn-flow-runs-widget__row-content:hover .cn-flow-runs-widget__name[data-v-75628
|
|
|
28404
29305
|
.cn-record-list__row--link:focus-visible .cn-record-list__title[data-v-7073b362] {
|
|
28405
29306
|
text-decoration: underline;
|
|
28406
29307
|
}
|
|
29308
|
+
.cn-record-list__avatar[data-v-7073b362] {
|
|
29309
|
+
align-items: center;
|
|
29310
|
+
background: var(--color-background-hover);
|
|
29311
|
+
border-radius: 50%;
|
|
29312
|
+
color: var(--color-main-text);
|
|
29313
|
+
display: flex;
|
|
29314
|
+
flex: none;
|
|
29315
|
+
font-size: 12px;
|
|
29316
|
+
font-weight: 700;
|
|
29317
|
+
height: 36px;
|
|
29318
|
+
justify-content: center;
|
|
29319
|
+
width: 36px;
|
|
29320
|
+
}
|
|
28407
29321
|
.cn-record-list__main[data-v-7073b362] {
|
|
28408
29322
|
display: flex;
|
|
28409
29323
|
flex: 1 1 auto;
|
|
@@ -28493,6 +29407,53 @@ a.cn-record-list__inline-title[data-v-7073b362] {
|
|
|
28493
29407
|
display: none;
|
|
28494
29408
|
}
|
|
28495
29409
|
|
|
29410
|
+
/* A row is a touch target of at least 44px on a phone. */
|
|
29411
|
+
@media (max-width: 640px) {
|
|
29412
|
+
.cn-record-list__row {
|
|
29413
|
+
min-height: 44px;
|
|
29414
|
+
}
|
|
29415
|
+
}
|
|
29416
|
+
|
|
29417
|
+
|
|
29418
|
+
.cn-saved-views-widget__list[data-v-8ca66162] {
|
|
29419
|
+
display: flex;
|
|
29420
|
+
flex-direction: column;
|
|
29421
|
+
gap: 10px;
|
|
29422
|
+
list-style: none;
|
|
29423
|
+
margin: 0;
|
|
29424
|
+
padding: 0;
|
|
29425
|
+
}
|
|
29426
|
+
.cn-saved-views-widget__link[data-v-8ca66162] {
|
|
29427
|
+
color: var(--color-primary-element);
|
|
29428
|
+
display: inline-block;
|
|
29429
|
+
font-size: 14px;
|
|
29430
|
+
font-weight: 600;
|
|
29431
|
+
min-height: 24px;
|
|
29432
|
+
text-decoration: none;
|
|
29433
|
+
}
|
|
29434
|
+
.cn-saved-views-widget__link[data-v-8ca66162]:hover,
|
|
29435
|
+
.cn-saved-views-widget__link[data-v-8ca66162]:focus-visible {
|
|
29436
|
+
text-decoration: underline;
|
|
29437
|
+
}
|
|
29438
|
+
.cn-saved-views-widget__note[data-v-8ca66162] {
|
|
29439
|
+
color: var(--color-text-maxcontrast);
|
|
29440
|
+
margin: 0;
|
|
29441
|
+
}
|
|
29442
|
+
.cn-saved-views-widget__loading[data-v-8ca66162] {
|
|
29443
|
+
display: flex;
|
|
29444
|
+
justify-content: center;
|
|
29445
|
+
padding: 8px 0;
|
|
29446
|
+
}
|
|
29447
|
+
|
|
29448
|
+
/* A phone: each link is a 44px touch target. */
|
|
29449
|
+
@media (max-width: 640px) {
|
|
29450
|
+
.cn-saved-views-widget__link[data-v-8ca66162] {
|
|
29451
|
+
align-items: center;
|
|
29452
|
+
display: inline-flex;
|
|
29453
|
+
min-height: 44px;
|
|
29454
|
+
}
|
|
29455
|
+
}
|
|
29456
|
+
|
|
28496
29457
|
|
|
28497
29458
|
.cn-notepad-widget-form[data-v-c752df66] {
|
|
28498
29459
|
display: flex;
|
|
@@ -28805,6 +29766,42 @@ a.cn-record-list__inline-title[data-v-7073b362] {
|
|
|
28805
29766
|
gap: 2px;
|
|
28806
29767
|
}
|
|
28807
29768
|
|
|
29769
|
+
/* The chips: the compact segmented group, left, in the card the grid draws. */
|
|
29770
|
+
.cn-workspace-filter-widget--chips[data-v-f0d5c1c6] {
|
|
29771
|
+
flex-direction: row;
|
|
29772
|
+
flex-wrap: wrap;
|
|
29773
|
+
align-items: center;
|
|
29774
|
+
}
|
|
29775
|
+
|
|
29776
|
+
/* A bar: its controls in one row, an `align: "end"` control pushed right. */
|
|
29777
|
+
.cn-workspace-filter-widget--bar[data-v-f0d5c1c6] {
|
|
29778
|
+
flex-direction: row;
|
|
29779
|
+
flex-wrap: wrap;
|
|
29780
|
+
align-items: center;
|
|
29781
|
+
gap: 12px 16px;
|
|
29782
|
+
}
|
|
29783
|
+
|
|
29784
|
+
/* An inline control sits in a bar: label left of the control, width to its content. */
|
|
29785
|
+
.cn-workspace-filter-widget--inline[data-v-f0d5c1c6] {
|
|
29786
|
+
flex-direction: row;
|
|
29787
|
+
align-items: center;
|
|
29788
|
+
gap: 8px;
|
|
29789
|
+
width: auto;
|
|
29790
|
+
}
|
|
29791
|
+
.cn-workspace-filter-widget--inline .cn-workspace-filter-widget__label[data-v-f0d5c1c6] {
|
|
29792
|
+
font-weight: 400;
|
|
29793
|
+
color: var(--color-text-maxcontrast);
|
|
29794
|
+
}
|
|
29795
|
+
.cn-workspace-filter-widget--end[data-v-f0d5c1c6] {
|
|
29796
|
+
margin-inline-start: auto;
|
|
29797
|
+
}
|
|
29798
|
+
.cn-workspace-filter-widget--end ~ .cn-workspace-filter-widget--end[data-v-f0d5c1c6] {
|
|
29799
|
+
margin-inline-start: 0;
|
|
29800
|
+
}
|
|
29801
|
+
.cn-workspace-filter-widget__toggle[data-v-f0d5c1c6] {
|
|
29802
|
+
font-weight: 600;
|
|
29803
|
+
}
|
|
29804
|
+
|
|
28808
29805
|
/* The start card: text left, control (and link) right, as PqDashboard's "Contact starten". */
|
|
28809
29806
|
.cn-workspace-filter-widget--start[data-v-f0d5c1c6] {
|
|
28810
29807
|
flex-direction: row;
|
|
@@ -28847,6 +29844,27 @@ a.cn-record-list__inline-title[data-v-7073b362] {
|
|
|
28847
29844
|
font-size: 0.85em;
|
|
28848
29845
|
}
|
|
28849
29846
|
|
|
29847
|
+
/* On a phone the bar's controls take a row each (the chips already wrap), and
|
|
29848
|
+
a switch and a select are 44px touch targets. */
|
|
29849
|
+
@media (max-width: 640px) {
|
|
29850
|
+
.cn-workspace-filter-widget--bar > .cn-workspace-filter-widget--inline[data-v-f0d5c1c6] {
|
|
29851
|
+
flex: 1 1 100%;
|
|
29852
|
+
}
|
|
29853
|
+
.cn-workspace-filter-widget--bar > .cn-workspace-filter-widget--end[data-v-f0d5c1c6] {
|
|
29854
|
+
margin-inline-start: 0;
|
|
29855
|
+
}
|
|
29856
|
+
.cn-workspace-filter-widget--inline .cn-workspace-filter-widget__toggle[data-v-f0d5c1c6] {
|
|
29857
|
+
min-height: 44px;
|
|
29858
|
+
}
|
|
29859
|
+
.cn-workspace-filter-widget--inline[data-v-f0d5c1c6] .v-select {
|
|
29860
|
+
flex: 1 1 auto;
|
|
29861
|
+
min-width: 0;
|
|
29862
|
+
}
|
|
29863
|
+
.cn-workspace-filter-widget--inline[data-v-f0d5c1c6] .vs__dropdown-toggle {
|
|
29864
|
+
min-height: 44px;
|
|
29865
|
+
}
|
|
29866
|
+
}
|
|
29867
|
+
|
|
28850
29868
|
|
|
28851
29869
|
.cn-data-matrix[data-v-6e3e1a0f] {
|
|
28852
29870
|
display: flex;
|
|
@@ -36476,6 +37494,17 @@ button.cn-object-calendar__overflow[data-v-bea31862] {
|
|
|
36476
37494
|
.cn-dashboard-page__content-item[data-v-824052fe] {
|
|
36477
37495
|
width: 100%;
|
|
36478
37496
|
}
|
|
37497
|
+
/* On a phone (screens-dashboard-phone) the touch targets of a board dashboard
|
|
37498
|
+
are 44px: the widget Actions menu and the KPI tiles. */
|
|
37499
|
+
@media (max-width: 640px) {
|
|
37500
|
+
.cn-dashboard-page--board[data-v-824052fe] .cn-widget-wrapper__actions .action-item__menutoggle,
|
|
37501
|
+
.cn-dashboard-page--board[data-v-824052fe] .cn-widget-wrapper__actions .button-vue {
|
|
37502
|
+
min-height: 44px;
|
|
37503
|
+
}
|
|
37504
|
+
.cn-dashboard-page--board .cn-dashboard-page__kpi-cell[data-v-824052fe] {
|
|
37505
|
+
min-height: 44px;
|
|
37506
|
+
}
|
|
37507
|
+
}
|
|
36479
37508
|
|
|
36480
37509
|
|
|
36481
37510
|
/* Trigger: strip NcActions' default button chrome down to just the chip span. */
|