@conduction/nextcloud-vue 2.64.0 → 2.65.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/CnAppNav/CnAppNav.vue2.js +99 -3
- package/dist/esm/components/CnAppNav/CnAppNav.vue2.js.map +1 -1
- package/dist/esm/components/CnAppNav/CnAppNav.vue3.js +23 -7
- package/dist/esm/components/CnAppNav/CnAppNav.vue3.js.map +1 -1
- package/dist/esm/components/CnBreadcrumbs/CnBreadcrumbs.vue2.js +13 -0
- package/dist/esm/components/CnBreadcrumbs/CnBreadcrumbs.vue2.js.map +1 -1
- package/dist/esm/components/CnBreadcrumbs/CnBreadcrumbs.vue3.js +2 -1
- package/dist/esm/components/CnBreadcrumbs/CnBreadcrumbs.vue3.js.map +1 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js +26 -2
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js +6 -3
- package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js +64 -5
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js +66 -28
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js.map +1 -1
- package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue2.js +22 -5
- package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue3.js +1 -1
- package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnStagesWidget/CnStagesWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnStagesWidget/CnStagesWidget.vue3.js.map +1 -1
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue2.js +22 -3
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue2.js.map +1 -1
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue3.js +10 -3
- package/dist/esm/components/CnStatWidget/CnStatWidget.vue3.js.map +1 -1
- package/dist/esm/nextcloud-vue.css +164 -0
- package/dist/esm/store/useObjectStore.js +118 -33
- package/dist/esm/store/useObjectStore.js.map +1 -1
- package/dist/esm/utils/actionsDispatcher.js +14 -0
- package/dist/esm/utils/actionsDispatcher.js.map +1 -1
- 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 +488 -96
- package/dist/nextcloud-vue.cjs.js.map +2 -2
- package/dist/nextcloud-vue.css +164 -0
- package/package.json +1 -1
- package/src/components/CnAppNav/CnAppNav.vue +148 -7
- package/src/components/CnBreadcrumbs/CnBreadcrumbs.vue +14 -0
- package/src/components/CnDashboardPage/CnDashboardPage.vue +29 -2
- package/src/components/CnDetailPage/CnDetailPage.md +5 -1
- package/src/components/CnDetailPage/CnDetailPage.vue +114 -6
- package/src/components/CnHeaderWidget/CnHeaderWidget.vue +34 -6
- package/src/components/CnStagesWidget/CnStagesWidget.vue +9 -0
- package/src/components/CnStatWidget/CnStatWidget.vue +33 -5
- package/src/css/detail-page.css +22 -0
- package/src/css/kpi-card.css +47 -0
- package/src/schemas/app-manifest-v2.schema.json +23 -2
- package/src/store/useObjectStore.js +118 -33
- package/src/utils/actionsDispatcher.js +14 -0
- package/src/utils/validateManifestV2.compiled.js +2 -2
|
@@ -540,17 +540,113 @@ var script = {
|
|
|
540
540
|
* Documentation, Features & Roadmap, About.
|
|
541
541
|
*/
|
|
542
542
|
footerItems() {
|
|
543
|
-
|
|
543
|
+
const footer = this.visibleItems.filter((item) => item.section === 'footer');
|
|
544
|
+
const declared = this.declaredFooter;
|
|
545
|
+
if (declared === null) {
|
|
546
|
+
return footer
|
|
547
|
+
}
|
|
548
|
+
// A declared footer (`nav.footer`) keeps only the entries it names,
|
|
549
|
+
// in the order it names them.
|
|
550
|
+
return declared
|
|
551
|
+
.map((id) => footer.find((item) => item.id === id))
|
|
552
|
+
.filter(Boolean)
|
|
553
|
+
},
|
|
554
|
+
|
|
555
|
+
/**
|
|
556
|
+
* The footer the manifest declares (`nav.footer`): an ordered list of
|
|
557
|
+
* menu entry ids plus the reserved ids `help` (the `nav.help` entry)
|
|
558
|
+
* and `settings` (the settings foldout). Null when the manifest
|
|
559
|
+
* declares none, which keeps today's footer: the help entry, then
|
|
560
|
+
* every `section: "footer"` entry, then the foldout.
|
|
561
|
+
*
|
|
562
|
+
* @spec openspec/changes/zuiddrecht-pixel-gaps-2/specs/zuiddrecht-pixel-gaps-2/spec.md#requirement-the-navigation-footer-can-be-declared
|
|
563
|
+
* @return {Array<string>|null}
|
|
564
|
+
*/
|
|
565
|
+
declaredFooter() {
|
|
566
|
+
const declared = this.effectiveManifest?.nav?.footer;
|
|
567
|
+
if (!Array.isArray(declared)) {
|
|
568
|
+
return null
|
|
569
|
+
}
|
|
570
|
+
return declared.filter((id) => typeof id === 'string' && id !== '')
|
|
571
|
+
},
|
|
572
|
+
|
|
573
|
+
/**
|
|
574
|
+
* Footer-section entries a declared footer leaves out. They move into
|
|
575
|
+
* the settings foldout rather than disappearing, so a page such as
|
|
576
|
+
* Store or Reports stays reachable. Empty without `nav.footer`.
|
|
577
|
+
*
|
|
578
|
+
* @spec openspec/changes/zuiddrecht-pixel-gaps-2/specs/zuiddrecht-pixel-gaps-2/spec.md#requirement-the-navigation-footer-can-be-declared
|
|
579
|
+
* @return {Array<object>}
|
|
580
|
+
*/
|
|
581
|
+
undeclaredFooterItems() {
|
|
582
|
+
const declared = this.declaredFooter;
|
|
583
|
+
if (declared === null) {
|
|
584
|
+
return []
|
|
585
|
+
}
|
|
586
|
+
return this.visibleItems.filter((item) => item.section === 'footer' && !declared.includes(item.id))
|
|
587
|
+
},
|
|
588
|
+
|
|
589
|
+
/**
|
|
590
|
+
* Whether the help entry renders: whenever it resolves, unless a
|
|
591
|
+
* declared footer leaves `help` out.
|
|
592
|
+
*
|
|
593
|
+
* @spec openspec/changes/zuiddrecht-pixel-gaps-2/specs/zuiddrecht-pixel-gaps-2/spec.md#requirement-the-navigation-footer-can-be-declared
|
|
594
|
+
* @return {boolean}
|
|
595
|
+
*/
|
|
596
|
+
showsHelp() {
|
|
597
|
+
if (!this.resolvedHelp) {
|
|
598
|
+
return false
|
|
599
|
+
}
|
|
600
|
+
return this.declaredFooter === null || this.declaredFooter.includes('help')
|
|
601
|
+
},
|
|
602
|
+
|
|
603
|
+
/**
|
|
604
|
+
* Whether the help entry goes AFTER the footer entries. Only a declared
|
|
605
|
+
* footer that names an entry before `help` puts it there; by default
|
|
606
|
+
* it leads the list.
|
|
607
|
+
*
|
|
608
|
+
* @spec openspec/changes/zuiddrecht-pixel-gaps-2/specs/zuiddrecht-pixel-gaps-2/spec.md#requirement-the-navigation-footer-can-be-declared
|
|
609
|
+
* @return {boolean}
|
|
610
|
+
*/
|
|
611
|
+
helpAfterItems() {
|
|
612
|
+
const declared = this.declaredFooter;
|
|
613
|
+
if (declared === null) {
|
|
614
|
+
return false
|
|
615
|
+
}
|
|
616
|
+
const help = declared.indexOf('help');
|
|
617
|
+
return this.footerItems.some((item) => declared.indexOf(item.id) < help)
|
|
618
|
+
},
|
|
619
|
+
|
|
620
|
+
/**
|
|
621
|
+
* Whether the settings foldout goes ABOVE the footer list: only when a
|
|
622
|
+
* declared footer names `settings` before every other entry
|
|
623
|
+
* (`["settings", "help"]`, the board's "Instellingen" then "Hulp en
|
|
624
|
+
* uitleg"). Done with CSS `order` on the two siblings, so the markup
|
|
625
|
+
* of both stays as it is.
|
|
626
|
+
*
|
|
627
|
+
* @spec openspec/changes/zuiddrecht-pixel-gaps-2/specs/zuiddrecht-pixel-gaps-2/spec.md#requirement-the-navigation-footer-can-be-declared
|
|
628
|
+
* @return {boolean}
|
|
629
|
+
*/
|
|
630
|
+
settingsFirst() {
|
|
631
|
+
const declared = this.declaredFooter;
|
|
632
|
+
return declared !== null && declared.indexOf('settings') === 0
|
|
544
633
|
},
|
|
545
634
|
|
|
546
635
|
/**
|
|
547
636
|
* Items that render INSIDE the NcAppNavigationSettings foldout
|
|
548
637
|
* (section: "settings"). The foldout is the NC-native gear-icon
|
|
549
638
|
* button that slides a panel open; these entries are app-level
|
|
550
|
-
* configuration pages (Forms, Pipelines, Automations, …).
|
|
639
|
+
* configuration pages (Forms, Pipelines, Automations, …). A declared
|
|
640
|
+
* footer (`nav.footer`) adds the footer entries it leaves out.
|
|
641
|
+
*
|
|
642
|
+
* @spec openspec/changes/zuiddrecht-pixel-gaps-2/specs/zuiddrecht-pixel-gaps-2/spec.md#requirement-the-navigation-footer-can-be-declared
|
|
643
|
+
* @return {Array<object>}
|
|
551
644
|
*/
|
|
552
645
|
settingsItems() {
|
|
553
|
-
return
|
|
646
|
+
return [
|
|
647
|
+
...this.visibleItems.filter((item) => item.section === 'settings'),
|
|
648
|
+
...this.undeclaredFooterItems,
|
|
649
|
+
]
|
|
554
650
|
},
|
|
555
651
|
|
|
556
652
|
/**
|