@conduction/nextcloud-vue 2.56.0-beta.6 → 2.56.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue2.js +14 -1
- package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue2.js.map +1 -1
- package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue3.js.map +1 -1
- package/dist/esm/components/CnAppNav/CnAppNav.vue2.js +80 -1
- package/dist/esm/components/CnAppNav/CnAppNav.vue2.js.map +1 -1
- package/dist/esm/components/CnAppNav/CnAppNav.vue3.js +46 -4
- package/dist/esm/components/CnAppNav/CnAppNav.vue3.js.map +1 -1
- package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue2.js +232 -10
- package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue3.js +79 -25
- package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnBannerWidgetForm/CnBannerWidgetForm.vue2.js +42 -3
- package/dist/esm/components/CnBannerWidgetForm/CnBannerWidgetForm.vue2.js.map +1 -1
- package/dist/esm/components/CnBannerWidgetForm/CnBannerWidgetForm.vue3.js +39 -6
- package/dist/esm/components/CnBannerWidgetForm/CnBannerWidgetForm.vue3.js.map +1 -1
- package/dist/esm/components/CnBoardView/CnBoardView.vue2.js +46 -0
- package/dist/esm/components/CnBoardView/CnBoardView.vue2.js.map +1 -1
- package/dist/esm/components/CnBoardView/CnBoardView.vue3.js +11 -4
- package/dist/esm/components/CnBoardView/CnBoardView.vue3.js.map +1 -1
- package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue.js +10 -0
- package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue.js.map +1 -0
- package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue2.js +39 -0
- package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue2.js.map +1 -0
- package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue3.js +16 -0
- package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue3.js.map +1 -0
- package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js +117 -1
- package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js.map +1 -1
- package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js +147 -89
- package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js.map +1 -1
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue.js +10 -0
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue.js.map +1 -0
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue2.js +259 -0
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue2.js.map +1 -0
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue3.js +131 -0
- package/dist/esm/components/CnConversationThread/CnConversationThread.vue3.js.map +1 -0
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue.js +10 -0
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue.js.map +1 -0
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js +116 -0
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue3.js +24 -0
- package/dist/esm/components/CnConversationThread/CnConversationWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js +10 -2
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js +503 -28
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js +303 -144
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js.map +1 -1
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue.js +10 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue.js.map +1 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue2.js +237 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue2.js.map +1 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue3.js +120 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue3.js.map +1 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue.js +10 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue.js.map +1 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue2.js +77 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue3.js +27 -0
- package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue2.js +171 -12
- package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue3.js +15 -7
- package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue2.js +37 -3
- package/dist/esm/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue2.js.map +1 -1
- package/dist/esm/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue3.js +44 -16
- package/dist/esm/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +132 -3
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js +6 -3
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
- package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue.js +10 -0
- package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue.js.map +1 -0
- package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue2.js +316 -0
- package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue2.js.map +1 -0
- package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue3.js +105 -0
- package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue3.js.map +1 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue.js +10 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue.js.map +1 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue2.js +150 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue2.js.map +1 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue3.js +106 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue3.js.map +1 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue.js +9 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue.js.map +1 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue2.js +47 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue3.js +17 -0
- package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js +49 -0
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectDataWidgetForm/CnObjectDataWidgetForm.vue2.js +6 -0
- package/dist/esm/components/CnObjectDataWidgetForm/CnObjectDataWidgetForm.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectDataWidgetForm/CnObjectDataWidgetForm.vue3.js.map +1 -1
- package/dist/esm/components/CnObjectKanban/CnObjectKanban.vue2.js +46 -0
- package/dist/esm/components/CnObjectKanban/CnObjectKanban.vue2.js.map +1 -1
- package/dist/esm/components/CnObjectKanban/CnObjectKanban.vue3.js +15 -3
- package/dist/esm/components/CnObjectKanban/CnObjectKanban.vue3.js.map +1 -1
- package/dist/esm/components/CnPageRenderer/pageTypes.js +1 -0
- package/dist/esm/components/CnPageRenderer/pageTypes.js.map +1 -1
- package/dist/esm/components/CnQuickFilterBar/CnQuickFilterBar.vue2.js +37 -1
- package/dist/esm/components/CnQuickFilterBar/CnQuickFilterBar.vue2.js.map +1 -1
- package/dist/esm/components/CnQuickFilterBar/CnQuickFilterBar.vue3.js +29 -13
- package/dist/esm/components/CnQuickFilterBar/CnQuickFilterBar.vue3.js.map +1 -1
- package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue2.js +50 -3
- package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue2.js.map +1 -1
- package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue3.js.map +1 -1
- package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue.js +10 -0
- package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue.js.map +1 -0
- package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue2.js +186 -0
- package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue2.js.map +1 -0
- package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue3.js +46 -0
- package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue3.js.map +1 -0
- package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue.js +11 -0
- package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue.js.map +1 -0
- package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue2.js +298 -0
- package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue3.js +77 -0
- package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue.js +10 -0
- package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue.js.map +1 -0
- package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue2.js +169 -0
- package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue2.js.map +1 -0
- package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue3.js +48 -0
- package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue3.js.map +1 -0
- package/dist/esm/components/CnTabs/CnTab.vue2.js +35 -0
- package/dist/esm/components/CnTabs/CnTab.vue2.js.map +1 -1
- package/dist/esm/components/CnTabs/CnTab.vue3.js.map +1 -1
- package/dist/esm/components/CnTabs/CnTabs.vue2.js +120 -7
- package/dist/esm/components/CnTabs/CnTabs.vue2.js.map +1 -1
- package/dist/esm/components/CnTabs/CnTabs.vue3.js +57 -5
- package/dist/esm/components/CnTabs/CnTabs.vue3.js.map +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js +59 -4
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue3.js +6 -2
- package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue.js +10 -0
- package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue.js.map +1 -0
- package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue2.js +484 -0
- package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue2.js.map +1 -0
- package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue3.js +115 -0
- package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue3.js.map +1 -0
- package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue.js +10 -0
- package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue.js.map +1 -0
- package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue2.js +189 -0
- package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue2.js.map +1 -0
- package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue3.js +74 -0
- package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue3.js.map +1 -0
- package/dist/esm/components/CnWidgetGrid/registerDashboardWidgets.js +82 -8
- package/dist/esm/components/CnWidgetGrid/registerDashboardWidgets.js.map +1 -1
- package/dist/esm/index.js +16 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/l10n/en.json.js +55 -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 +1036 -19
- package/dist/esm/utils/dateVariant.js +124 -0
- package/dist/esm/utils/dateVariant.js.map +1 -0
- package/dist/esm/utils/detailActionModel.js +260 -0
- package/dist/esm/utils/detailActionModel.js.map +1 -0
- package/dist/esm/utils/dueRule.js +84 -0
- package/dist/esm/utils/dueRule.js.map +1 -0
- package/dist/esm/utils/fetchAggregate.js +37 -1
- package/dist/esm/utils/fetchAggregate.js.map +1 -1
- package/dist/esm/utils/fetchFilterCounts.js +186 -0
- package/dist/esm/utils/fetchFilterCounts.js.map +1 -0
- package/dist/esm/utils/headers.js +28 -2
- package/dist/esm/utils/headers.js.map +1 -1
- package/dist/esm/utils/libraryWidgetKeys.js +5 -0
- package/dist/esm/utils/libraryWidgetKeys.js.map +1 -1
- package/dist/esm/utils/readPath.js +30 -0
- package/dist/esm/utils/readPath.js.map +1 -0
- package/dist/esm/utils/validateManifestV2.compiled.js +2 -2
- package/dist/esm/utils/validateManifestV2.compiled.js.map +1 -1
- package/dist/nextcloud-vue.cjs.js +16019 -9528
- package/dist/nextcloud-vue.cjs.js.map +2 -2
- package/dist/nextcloud-vue.css +1036 -19
- package/l10n/en.json +55 -1
- package/l10n/nl.json +55 -1
- package/package.json +1 -1
- package/scripts/.jsdoc-baselines.json +4 -0
- package/src/components/CnActionsMenu/CnActionsMenu.vue +14 -1
- package/src/components/CnAppNav/CnAppNav.md +26 -0
- package/src/components/CnAppNav/CnAppNav.vue +145 -2
- package/src/components/CnBannerWidget/CnBannerWidget.vue +373 -11
- package/src/components/CnBannerWidgetForm/CnBannerWidgetForm.vue +65 -3
- package/src/components/CnBoardView/CnBoardView.vue +77 -0
- package/src/components/CnBrandStripe/CnBrandStripe.md +22 -0
- package/src/components/CnBrandStripe/CnBrandStripe.vue +100 -0
- package/src/components/CnBrandStripe/index.js +4 -0
- package/src/components/CnCellRenderer/CnCellRenderer.vue +207 -1
- package/src/components/CnConversationThread/CnConversationThread.md +51 -0
- package/src/components/CnConversationThread/CnConversationThread.vue +457 -0
- package/src/components/CnConversationThread/CnConversationWidget.vue +144 -0
- package/src/components/CnConversationThread/index.js +4 -0
- package/src/components/CnDashboardPage/CnDashboardPage.vue +10 -2
- package/src/components/CnDetailPage/CnDetailPage.md +16 -0
- package/src/components/CnDetailPage/CnDetailPage.vue +687 -49
- package/src/components/CnDocumentReviewList/CnDocumentReviewList.md +55 -0
- package/src/components/CnDocumentReviewList/CnDocumentReviewList.vue +384 -0
- package/src/components/CnDocumentReviewList/CnDocumentReviewWidget.vue +108 -0
- package/src/components/CnDocumentReviewList/index.js +4 -0
- package/src/components/CnHeaderWidget/CnHeaderWidget.vue +191 -14
- package/src/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue +53 -3
- package/src/components/CnIndexPage/CnIndexPage.vue +135 -3
- package/src/components/CnLinkCardsPage/CnLinkCardsPage.vue +484 -0
- package/src/components/CnLinkCardsPage/index.js +4 -0
- package/src/components/CnNextStepCard/CnNextStepCard.md +40 -0
- package/src/components/CnNextStepCard/CnNextStepCard.vue +319 -0
- package/src/components/CnNextStepCard/CnNextStepWidget.vue +59 -0
- package/src/components/CnNextStepCard/index.js +4 -0
- package/src/components/CnObjectDataWidget/CnObjectDataWidget.vue +49 -0
- package/src/components/CnObjectDataWidgetForm/CnObjectDataWidgetForm.vue +6 -0
- package/src/components/CnObjectKanban/CnObjectKanban.vue +86 -2
- package/src/components/CnPageRenderer/pageTypes.js +1 -0
- package/src/components/CnQuickFilterBar/CnQuickFilterBar.md +3 -0
- package/src/components/CnQuickFilterBar/CnQuickFilterBar.vue +60 -1
- package/src/components/CnSavedViewsControl/CnSavedViewsControl.vue +50 -3
- package/src/components/CnSegmentedControl/CnSegmentedControl.md +46 -0
- package/src/components/CnSegmentedControl/CnSegmentedControl.vue +291 -0
- package/src/components/CnSegmentedControl/index.js +4 -0
- package/src/components/CnStackedBarWidget/CnStackedBarWidget.md +15 -0
- package/src/components/CnStackedBarWidget/CnStackedBarWidget.vue +414 -0
- package/src/components/CnStackedBarWidget/index.js +14 -0
- package/src/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue +224 -0
- package/src/components/CnStackedBarWidgetForm/index.js +4 -0
- package/src/components/CnTabs/CnTab.vue +35 -0
- package/src/components/CnTabs/CnTabs.vue +244 -10
- package/src/components/CnTabsWidget/CnTabsWidget.vue +63 -4
- package/src/components/CnWeekStripWidget/CnWeekStripWidget.md +31 -0
- package/src/components/CnWeekStripWidget/CnWeekStripWidget.vue +668 -0
- package/src/components/CnWeekStripWidget/index.js +14 -0
- package/src/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue +265 -0
- package/src/components/CnWeekStripWidgetForm/index.js +4 -0
- package/src/components/CnWidgetGrid/registerDashboardWidgets.js +74 -0
- package/src/components/index.js +12 -0
- package/src/css/detail-page.css +57 -2
- package/src/index.js +16 -0
- package/src/schemas/app-manifest-v2.schema.json +433 -3
- package/src/schemas/app-manifest.schema.json +2 -1
- package/src/types/manifest.d.ts +1 -1
- package/src/utils/dateVariant.js +120 -0
- package/src/utils/detailActionModel.js +256 -0
- package/src/utils/dueRule.js +94 -0
- package/src/utils/fetchAggregate.js +36 -0
- package/src/utils/fetchFilterCounts.js +182 -0
- package/src/utils/headers.js +28 -2
- package/src/utils/index.js +1 -0
- package/src/utils/libraryWidgetKeys.js +5 -0
- package/src/utils/readPath.js +27 -0
- package/src/utils/validateManifestV2.compiled.js +2 -2
package/l10n/en.json
CHANGED
|
@@ -294,6 +294,26 @@
|
|
|
294
294
|
"JSON pointer": "JSON pointer",
|
|
295
295
|
"Last": "Last",
|
|
296
296
|
"Load more": "Load more",
|
|
297
|
+
"Nothing to open here.": "Nothing to open here.",
|
|
298
|
+
"To do": "To do",
|
|
299
|
+
"Next step": "Next step",
|
|
300
|
+
"Review": "Review",
|
|
301
|
+
"No documents to review.": "No documents to review.",
|
|
302
|
+
"Partly public": "Partly public",
|
|
303
|
+
"To review": "To review",
|
|
304
|
+
"{reviewed} of {total} reviewed": "{reviewed} of {total} reviewed",
|
|
305
|
+
"Documents to review": "Documents to review",
|
|
306
|
+
"Reply": "Reply",
|
|
307
|
+
"Send": "Send",
|
|
308
|
+
"You": "You",
|
|
309
|
+
"No messages yet.": "No messages yet.",
|
|
310
|
+
"Conversation": "Conversation",
|
|
311
|
+
"The message could not be sent. Try again.": "The message could not be sent. Try again.",
|
|
312
|
+
"More": "More",
|
|
313
|
+
"More tabs": "More tabs",
|
|
314
|
+
"Due soon": "Due soon",
|
|
315
|
+
"Administration": "Administration",
|
|
316
|
+
"Details": "Details",
|
|
297
317
|
"Actor": "Actor",
|
|
298
318
|
"All types": "All types",
|
|
299
319
|
"All actors": "All actors",
|
|
@@ -993,7 +1013,41 @@
|
|
|
993
1013
|
"Capabilities in {group}, rated per system.": "Capabilities in {group}, rated per system.",
|
|
994
1014
|
"Yes": "Yes",
|
|
995
1015
|
"Partial": "Partial",
|
|
996
|
-
"No": "No"
|
|
1016
|
+
"No": "No",
|
|
1017
|
+
"Nothing planned": "Nothing planned",
|
|
1018
|
+
"today": "today",
|
|
1019
|
+
"Late": "Late",
|
|
1020
|
+
"This week, day by day": "This week, day by day",
|
|
1021
|
+
"The items for this week could not be loaded.": "The items for this week could not be loaded.",
|
|
1022
|
+
"Nothing to show yet": "Nothing to show yet",
|
|
1023
|
+
"The numbers could not be loaded.": "The numbers could not be loaded.",
|
|
1024
|
+
"Date field": "Date field",
|
|
1025
|
+
"Title field": "Title field",
|
|
1026
|
+
"Extra fields under the title (comma separated)": "Extra fields under the title (comma separated)",
|
|
1027
|
+
"Days shown": "Days shown",
|
|
1028
|
+
"Page an item opens (page id, optional)": "Page an item opens (page id, optional)",
|
|
1029
|
+
"Text for a day without items": "Text for a day without items",
|
|
1030
|
+
"A date field is required": "A date field is required",
|
|
1031
|
+
"Field to group by": "Field to group by",
|
|
1032
|
+
"Order of the segments (values, comma separated)": "Order of the segments (values, comma separated)",
|
|
1033
|
+
"Text when there is nothing to count": "Text when there is nothing to count",
|
|
1034
|
+
"A field to group by is required": "A field to group by is required",
|
|
1035
|
+
"Layout": "Layout",
|
|
1036
|
+
"Label above the title": "Label above the title",
|
|
1037
|
+
"Reason (why this needs attention)": "Reason (why this needs attention)",
|
|
1038
|
+
"The actions of an attention card are declared in the manifest.": "The actions of an attention card are declared in the manifest.",
|
|
1039
|
+
"An attention card needs a title": "An attention card needs a title",
|
|
1040
|
+
"Good morning, {name}": "Good morning, {name}",
|
|
1041
|
+
"Good morning": "Good morning",
|
|
1042
|
+
"Good afternoon, {name}": "Good afternoon, {name}",
|
|
1043
|
+
"Good afternoon": "Good afternoon",
|
|
1044
|
+
"Good evening, {name}": "Good evening, {name}",
|
|
1045
|
+
"Good evening": "Good evening",
|
|
1046
|
+
"Greet the user by name instead of showing the title": "Greet the user by name instead of showing the title",
|
|
1047
|
+
"Show the date of today above the heading": "Show the date of today above the heading",
|
|
1048
|
+
"Plain header without a coloured background": "Plain header without a coloured background",
|
|
1049
|
+
"Loading…": "Loading…",
|
|
1050
|
+
"A register and schema are required": "A register and schema are required"
|
|
997
1051
|
},
|
|
998
1052
|
"plurals": {
|
|
999
1053
|
"%n year": ["%n year", "%n years"],
|
package/l10n/nl.json
CHANGED
|
@@ -294,6 +294,26 @@
|
|
|
294
294
|
"JSON pointer": "JSON-aanwijzer",
|
|
295
295
|
"Last": "Laatste",
|
|
296
296
|
"Load more": "Meer laden",
|
|
297
|
+
"Nothing to open here.": "Hier is niets te openen.",
|
|
298
|
+
"To do": "Nog doen",
|
|
299
|
+
"Next step": "Volgende stap",
|
|
300
|
+
"Review": "Beoordelen",
|
|
301
|
+
"No documents to review.": "Geen documenten om te beoordelen.",
|
|
302
|
+
"Partly public": "Deels openbaar",
|
|
303
|
+
"To review": "Nog beoordelen",
|
|
304
|
+
"{reviewed} of {total} reviewed": "{reviewed} van {total} beoordeeld",
|
|
305
|
+
"Documents to review": "Documenten om te beoordelen",
|
|
306
|
+
"Reply": "Antwoord",
|
|
307
|
+
"Send": "Versturen",
|
|
308
|
+
"You": "U",
|
|
309
|
+
"No messages yet.": "Nog geen berichten.",
|
|
310
|
+
"Conversation": "Gesprek",
|
|
311
|
+
"The message could not be sent. Try again.": "Het bericht is niet verstuurd. Probeer het opnieuw.",
|
|
312
|
+
"More": "Meer",
|
|
313
|
+
"More tabs": "Meer tabbladen",
|
|
314
|
+
"Due soon": "Bijna te laat",
|
|
315
|
+
"Administration": "Beheer",
|
|
316
|
+
"Details": "Details",
|
|
297
317
|
"Actor": "Actor",
|
|
298
318
|
"All types": "Alle typen",
|
|
299
319
|
"All actors": "Alle actoren",
|
|
@@ -1037,7 +1057,41 @@
|
|
|
1037
1057
|
"Capabilities in {group}, rated per system.": "Functionaliteiten in {group}, beoordeeld per systeem.",
|
|
1038
1058
|
"Yes": "Ja",
|
|
1039
1059
|
"Partial": "Gedeeltelijk",
|
|
1040
|
-
"No": "Nee"
|
|
1060
|
+
"No": "Nee",
|
|
1061
|
+
"Nothing planned": "Niets gepland",
|
|
1062
|
+
"today": "vandaag",
|
|
1063
|
+
"Late": "Te laat",
|
|
1064
|
+
"This week, day by day": "Deze week, dag voor dag",
|
|
1065
|
+
"The items for this week could not be loaded.": "De items van deze week konden niet worden geladen.",
|
|
1066
|
+
"Nothing to show yet": "Nog niets te tonen",
|
|
1067
|
+
"The numbers could not be loaded.": "De aantallen konden niet worden geladen.",
|
|
1068
|
+
"Date field": "Datumveld",
|
|
1069
|
+
"Title field": "Titelveld",
|
|
1070
|
+
"Extra fields under the title (comma separated)": "Extra velden onder de titel (gescheiden door komma's)",
|
|
1071
|
+
"Days shown": "Aantal dagen",
|
|
1072
|
+
"Page an item opens (page id, optional)": "Pagina die een item opent (pagina-id, optioneel)",
|
|
1073
|
+
"Text for a day without items": "Tekst voor een dag zonder items",
|
|
1074
|
+
"A date field is required": "Een datumveld is verplicht",
|
|
1075
|
+
"Field to group by": "Veld om op te groeperen",
|
|
1076
|
+
"Order of the segments (values, comma separated)": "Volgorde van de segmenten (waarden, gescheiden door komma's)",
|
|
1077
|
+
"Text when there is nothing to count": "Tekst als er niets te tellen is",
|
|
1078
|
+
"A field to group by is required": "Een veld om op te groeperen is verplicht",
|
|
1079
|
+
"Layout": "Opmaak",
|
|
1080
|
+
"Label above the title": "Label boven de titel",
|
|
1081
|
+
"Reason (why this needs attention)": "Reden (waarom dit aandacht vraagt)",
|
|
1082
|
+
"The actions of an attention card are declared in the manifest.": "De acties van een aandachtskaart staan in het manifest.",
|
|
1083
|
+
"An attention card needs a title": "Een aandachtskaart heeft een titel nodig",
|
|
1084
|
+
"Good morning, {name}": "Goedemorgen, {name}",
|
|
1085
|
+
"Good morning": "Goedemorgen",
|
|
1086
|
+
"Good afternoon, {name}": "Goedemiddag, {name}",
|
|
1087
|
+
"Good afternoon": "Goedemiddag",
|
|
1088
|
+
"Good evening, {name}": "Goedenavond, {name}",
|
|
1089
|
+
"Good evening": "Goedenavond",
|
|
1090
|
+
"Greet the user by name instead of showing the title": "Begroet de gebruiker bij naam in plaats van de titel te tonen",
|
|
1091
|
+
"Show the date of today above the heading": "Toon de datum van vandaag boven de kop",
|
|
1092
|
+
"Plain header without a coloured background": "Eenvoudige kop zonder gekleurde achtergrond",
|
|
1093
|
+
"Loading…": "Laden…",
|
|
1094
|
+
"A register and schema are required": "Een register en schema zijn verplicht"
|
|
1041
1095
|
},
|
|
1042
1096
|
"plurals": {
|
|
1043
1097
|
"%n year": ["%n jaar", "%n jaar"],
|
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.8",
|
|
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": {
|
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
"CnContainerWidget": 1,
|
|
42
42
|
"CnContainerWidgetForm": 1,
|
|
43
43
|
"CnContextMenu": 1,
|
|
44
|
+
"CnConversationThread": 1,
|
|
44
45
|
"CnCopyDialog": 0.82,
|
|
45
46
|
"CnCospendCreate": 1,
|
|
46
47
|
"CnCospendPicker": 1,
|
|
@@ -67,6 +68,7 @@
|
|
|
67
68
|
"CnDetailWidgetHost": 1,
|
|
68
69
|
"CnDividerWidget": 1,
|
|
69
70
|
"CnDividerWidgetForm": 1,
|
|
71
|
+
"CnDocumentReviewList": 1,
|
|
70
72
|
"CnEmailPicker": 1,
|
|
71
73
|
"CnExportWizard": 1,
|
|
72
74
|
"CnFacetSidebar": 0.78,
|
|
@@ -128,6 +130,7 @@
|
|
|
128
130
|
"CnLifecycleActions": 1,
|
|
129
131
|
"CnLinkButtonWidget": 1,
|
|
130
132
|
"CnLinkButtonWidgetForm": 1,
|
|
133
|
+
"CnLinkCardsPage": 1,
|
|
131
134
|
"CnLinksWidget": 1,
|
|
132
135
|
"CnLinksWidgetForm": 1,
|
|
133
136
|
"CnLockedBanner": 1,
|
|
@@ -152,6 +155,7 @@
|
|
|
152
155
|
"CnNcDashboardWidgetForm": 1,
|
|
153
156
|
"CnNcWidgetGridPicker": 1,
|
|
154
157
|
"CnNcWidgetWidget": 1,
|
|
158
|
+
"CnNextStepCard": 1,
|
|
155
159
|
"CnNoteCard": 0.67,
|
|
156
160
|
"CnNotesCard": 0.81,
|
|
157
161
|
"CnNotificationPreferences": 1,
|
|
@@ -490,6 +490,19 @@ export default {
|
|
|
490
490
|
default: () => t('nextcloud-vue', 'Actions'),
|
|
491
491
|
},
|
|
492
492
|
|
|
493
|
+
/**
|
|
494
|
+
* Tell the menu that `#primary-items` has content. Only needed by a
|
|
495
|
+
* host that switches every built-in item off: the menu decides whether
|
|
496
|
+
* to render at all in a computed, and a slot that fills in later (a
|
|
497
|
+
* page's actions arrive after mount) is not something a computed
|
|
498
|
+
* notices. With any built-in item showing, the menu renders anyway
|
|
499
|
+
* and this changes nothing.
|
|
500
|
+
*/
|
|
501
|
+
hasPrimaryItems: {
|
|
502
|
+
type: Boolean,
|
|
503
|
+
default: false,
|
|
504
|
+
},
|
|
505
|
+
|
|
493
506
|
/**
|
|
494
507
|
* Prefix for the `data-testid`s emitted on the menu container and
|
|
495
508
|
* its items: `<base>-actions` (container), `<base>-action-refresh`,
|
|
@@ -542,7 +555,7 @@ export default {
|
|
|
542
555
|
if (this.showRequestFeature) {
|
|
543
556
|
return true
|
|
544
557
|
}
|
|
545
|
-
if (this.$slots['primary-items']) {
|
|
558
|
+
if (this.hasPrimaryItems || this.$slots['primary-items']) {
|
|
546
559
|
return true
|
|
547
560
|
}
|
|
548
561
|
return Boolean(this.$slots['action-items']) || Boolean(this.$slots && this.$slots['action-items'])
|
|
@@ -159,3 +159,29 @@ export default {
|
|
|
159
159
|
}
|
|
160
160
|
</script>
|
|
161
161
|
```
|
|
162
|
+
|
|
163
|
+
A brand block at the top. The `brand` prop takes a logo, a name and a caption, and the manifest's `nav.brand` is the fallback. Use the `#brand` slot to draw the block yourself:
|
|
164
|
+
|
|
165
|
+
```vue {static}
|
|
166
|
+
<template>
|
|
167
|
+
<div style="height: 240px; width: 260px; background: var(--color-main-background); border: 1px solid var(--color-border); border-radius: 8px; overflow: hidden;">
|
|
168
|
+
<CnAppNav
|
|
169
|
+
:manifest="manifest"
|
|
170
|
+
:brand="{ name: 'dossiq', caption: 'Gemeente Zuiddrecht' }"
|
|
171
|
+
:translate="(key) => key" />
|
|
172
|
+
</div>
|
|
173
|
+
</template>
|
|
174
|
+
<script>
|
|
175
|
+
export default {
|
|
176
|
+
data() {
|
|
177
|
+
return {
|
|
178
|
+
manifest: {
|
|
179
|
+
menu: [
|
|
180
|
+
{ id: 'cases', label: 'All cases', icon: 'icon-folder', route: 'cases', order: 1 },
|
|
181
|
+
],
|
|
182
|
+
},
|
|
183
|
+
}
|
|
184
|
+
},
|
|
185
|
+
}
|
|
186
|
+
</script>
|
|
187
|
+
```
|
|
@@ -75,7 +75,34 @@
|
|
|
75
75
|
-->
|
|
76
76
|
<template>
|
|
77
77
|
<NcAppNavigation :aria-label="ariaLabel" data-testid="cn-nav">
|
|
78
|
-
<template v-if="$slots.search || $slots.
|
|
78
|
+
<template v-if="$slots.search || $slots.brand || resolvedBrand" #search>
|
|
79
|
+
<!--
|
|
80
|
+
@slot brand
|
|
81
|
+
@description Replace the brand block at the very top of the
|
|
82
|
+
navigation. Default content: the logo, name and caption from
|
|
83
|
+
the `brand` prop or the manifest's `nav.brand`. Renders
|
|
84
|
+
nothing when neither is set.
|
|
85
|
+
@binding {object|null} brand The resolved brand (`{ logo, name, caption, alt }`), or null.
|
|
86
|
+
-->
|
|
87
|
+
<slot name="brand" :brand="resolvedBrand">
|
|
88
|
+
<div
|
|
89
|
+
v-if="resolvedBrand"
|
|
90
|
+
class="cn-app-nav__brand"
|
|
91
|
+
data-testid="cn-nav-brand">
|
|
92
|
+
<!-- Decorative beside a name: the name already says whose
|
|
93
|
+
app this is, and an alt text would say it twice. A logo
|
|
94
|
+
on its own carries the name as its alt text. -->
|
|
95
|
+
<img
|
|
96
|
+
v-if="resolvedBrand.logo"
|
|
97
|
+
class="cn-app-nav__brand-logo"
|
|
98
|
+
:src="resolvedBrand.logo"
|
|
99
|
+
:alt="resolvedBrand.name ? '' : resolvedBrand.alt">
|
|
100
|
+
<span v-if="resolvedBrand.name || resolvedBrand.caption" class="cn-app-nav__brand-text">
|
|
101
|
+
<strong v-if="resolvedBrand.name" class="cn-app-nav__brand-name">{{ resolvedBrand.name }}</strong>
|
|
102
|
+
<span v-if="resolvedBrand.caption" class="cn-app-nav__brand-caption">{{ resolvedBrand.caption }}</span>
|
|
103
|
+
</span>
|
|
104
|
+
</div>
|
|
105
|
+
</slot>
|
|
79
106
|
<!--
|
|
80
107
|
@slot search
|
|
81
108
|
@description Forwarded into NcAppNavigation's #search slot.
|
|
@@ -531,6 +558,20 @@ export default {
|
|
|
531
558
|
type: String,
|
|
532
559
|
default: () => t('nextcloud-vue', 'Main navigation'),
|
|
533
560
|
},
|
|
561
|
+
|
|
562
|
+
/**
|
|
563
|
+
* The brand block at the top of the navigation:
|
|
564
|
+
* `{ logo?, name?, caption?, alt? }`. `logo` is an image URL, `name`
|
|
565
|
+
* the app or organisation name, `caption` a line under it. Falls back
|
|
566
|
+
* to the manifest's `nav.brand`. `null` (the default) with no manifest
|
|
567
|
+
* brand renders nothing.
|
|
568
|
+
*
|
|
569
|
+
* @type {{logo?: string, name?: string, caption?: string, alt?: string}|null}
|
|
570
|
+
*/
|
|
571
|
+
brand: {
|
|
572
|
+
type: Object,
|
|
573
|
+
default: null,
|
|
574
|
+
},
|
|
534
575
|
},
|
|
535
576
|
|
|
536
577
|
emits: ['primary-action', 'primary-action-click'],
|
|
@@ -560,6 +601,31 @@ export default {
|
|
|
560
601
|
return this.translate ?? this.cnTranslate
|
|
561
602
|
},
|
|
562
603
|
|
|
604
|
+
/**
|
|
605
|
+
* The brand to draw: the `brand` prop, else the manifest's
|
|
606
|
+
* `nav.brand`. Name and caption go through the translate function,
|
|
607
|
+
* like every other manifest label. Null when there is nothing to
|
|
608
|
+
* show, which is what keeps the block out of a navigation that
|
|
609
|
+
* declares no brand.
|
|
610
|
+
*
|
|
611
|
+
* @return {{logo: string, name: string, caption: string, alt: string}|null} The brand, or null.
|
|
612
|
+
* @spec openspec/changes/detail-action-model-and-case-surfaces/specs/detail-action-model/spec.md#requirement-navigation-brand
|
|
613
|
+
*/
|
|
614
|
+
resolvedBrand() {
|
|
615
|
+
const declared = this.brand ?? this.effectiveManifest?.nav?.brand
|
|
616
|
+
if (!declared || typeof declared !== 'object') {
|
|
617
|
+
return null
|
|
618
|
+
}
|
|
619
|
+
const text = (value) => (typeof value === 'string' && value !== '' ? this.effectiveTranslate(value) : '')
|
|
620
|
+
const brand = {
|
|
621
|
+
logo: typeof declared.logo === 'string' ? declared.logo : '',
|
|
622
|
+
name: text(declared.name),
|
|
623
|
+
caption: text(declared.caption),
|
|
624
|
+
alt: text(declared.alt),
|
|
625
|
+
}
|
|
626
|
+
return (brand.logo || brand.name || brand.caption) ? brand : null
|
|
627
|
+
},
|
|
628
|
+
|
|
563
629
|
/**
|
|
564
630
|
* Manifest-declared root-level primary action (`nav.primaryAction`)
|
|
565
631
|
* — retained for backwards compatibility with code that reads this
|
|
@@ -1118,11 +1184,51 @@ export default {
|
|
|
1118
1184
|
return this.effectiveTranslate(item.label)
|
|
1119
1185
|
},
|
|
1120
1186
|
|
|
1187
|
+
/**
|
|
1188
|
+
* Whether a menu entry is the page the reader is on.
|
|
1189
|
+
*
|
|
1190
|
+
* Two entries may share a route and differ only in `query` ("My
|
|
1191
|
+
* work" and "Queue" on one list). The route name alone lit both. An
|
|
1192
|
+
* entry with a `query` is active only when the address carries that
|
|
1193
|
+
* query; an entry without one steps back when a sibling's query
|
|
1194
|
+
* matches, so exactly one of them is marked.
|
|
1195
|
+
*
|
|
1196
|
+
* @param {object} item Menu entry.
|
|
1197
|
+
* @return {boolean} True when the entry is the current page.
|
|
1198
|
+
* @spec openspec/changes/link-cards-page/specs/link-cards-page/spec.md#requirement-menu-entries-that-differ-in-query
|
|
1199
|
+
*/
|
|
1121
1200
|
isActive(item) {
|
|
1122
1201
|
if (item.href || !item.route) {
|
|
1123
1202
|
return false
|
|
1124
1203
|
}
|
|
1125
|
-
|
|
1204
|
+
if (item.route !== this.activeRouteName) {
|
|
1205
|
+
return false
|
|
1206
|
+
}
|
|
1207
|
+
if (item.query && typeof item.query === 'object') {
|
|
1208
|
+
return this.queryMatches(item)
|
|
1209
|
+
}
|
|
1210
|
+
const siblings = []
|
|
1211
|
+
for (const entry of this.visibleItems) {
|
|
1212
|
+
siblings.push(entry, ...this.visibleChildren(entry))
|
|
1213
|
+
}
|
|
1214
|
+
return !siblings.some((entry) => entry !== item
|
|
1215
|
+
&& entry.route === item.route
|
|
1216
|
+
&& entry.query && typeof entry.query === 'object'
|
|
1217
|
+
&& this.queryMatches(entry))
|
|
1218
|
+
},
|
|
1219
|
+
|
|
1220
|
+
/**
|
|
1221
|
+
* Whether the address carries every key of an entry's `query`.
|
|
1222
|
+
* Values are compared as strings, since an address has no numbers.
|
|
1223
|
+
*
|
|
1224
|
+
* @param {object} item Menu entry with a `query`.
|
|
1225
|
+
* @return {boolean} True when every declared key matches.
|
|
1226
|
+
* @spec openspec/changes/link-cards-page/specs/link-cards-page/spec.md#requirement-menu-entries-that-differ-in-query
|
|
1227
|
+
*/
|
|
1228
|
+
queryMatches(item) {
|
|
1229
|
+
const current = this.$route?.query ?? {}
|
|
1230
|
+
const keys = Object.keys(item.query)
|
|
1231
|
+
return keys.length > 0 && keys.every((key) => String(current[key] ?? '') === String(item.query[key]))
|
|
1126
1232
|
},
|
|
1127
1233
|
|
|
1128
1234
|
/**
|
|
@@ -1479,6 +1585,43 @@ export default {
|
|
|
1479
1585
|
</script>
|
|
1480
1586
|
|
|
1481
1587
|
<style>
|
|
1588
|
+
/* The brand block at the top of the navigation. */
|
|
1589
|
+
.cn-app-nav__brand {
|
|
1590
|
+
align-items: center;
|
|
1591
|
+
display: flex;
|
|
1592
|
+
gap: calc(2.5 * var(--default-grid-baseline));
|
|
1593
|
+
min-width: 0;
|
|
1594
|
+
padding: calc(2 * var(--default-grid-baseline)) calc(2 * var(--default-grid-baseline)) calc(3 * var(--default-grid-baseline));
|
|
1595
|
+
}
|
|
1596
|
+
|
|
1597
|
+
.cn-app-nav__brand-logo {
|
|
1598
|
+
flex: none;
|
|
1599
|
+
height: 34px;
|
|
1600
|
+
max-width: 50%;
|
|
1601
|
+
object-fit: contain;
|
|
1602
|
+
width: auto;
|
|
1603
|
+
}
|
|
1604
|
+
|
|
1605
|
+
.cn-app-nav__brand-text {
|
|
1606
|
+
display: flex;
|
|
1607
|
+
flex-direction: column;
|
|
1608
|
+
line-height: 1.15;
|
|
1609
|
+
min-width: 0;
|
|
1610
|
+
}
|
|
1611
|
+
|
|
1612
|
+
.cn-app-nav__brand-name {
|
|
1613
|
+
color: var(--color-main-text);
|
|
1614
|
+
font-size: 1.2em;
|
|
1615
|
+
font-weight: 700;
|
|
1616
|
+
overflow-wrap: anywhere;
|
|
1617
|
+
}
|
|
1618
|
+
|
|
1619
|
+
.cn-app-nav__brand-caption {
|
|
1620
|
+
color: var(--color-text-maxcontrast);
|
|
1621
|
+
font-size: 0.85em;
|
|
1622
|
+
overflow-wrap: anywhere;
|
|
1623
|
+
}
|
|
1624
|
+
|
|
1482
1625
|
/*
|
|
1483
1626
|
* The legacy `icon-*` classes in Nextcloud render a background-image
|
|
1484
1627
|
* with a hardcoded dark fill, so they stay grey when an entry becomes
|