@conduction/nextcloud-vue 2.59.0 → 2.61.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.
Files changed (254) hide show
  1. package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue2.js +14 -1
  2. package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue2.js.map +1 -1
  3. package/dist/esm/components/CnActionsMenu/CnActionsMenu.vue3.js.map +1 -1
  4. package/dist/esm/components/CnAppNav/CnAppNav.vue2.js +80 -1
  5. package/dist/esm/components/CnAppNav/CnAppNav.vue2.js.map +1 -1
  6. package/dist/esm/components/CnAppNav/CnAppNav.vue3.js +46 -4
  7. package/dist/esm/components/CnAppNav/CnAppNav.vue3.js.map +1 -1
  8. package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue2.js +232 -10
  9. package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue2.js.map +1 -1
  10. package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue3.js +79 -25
  11. package/dist/esm/components/CnBannerWidget/CnBannerWidget.vue3.js.map +1 -1
  12. package/dist/esm/components/CnBannerWidgetForm/CnBannerWidgetForm.vue2.js +42 -3
  13. package/dist/esm/components/CnBannerWidgetForm/CnBannerWidgetForm.vue2.js.map +1 -1
  14. package/dist/esm/components/CnBannerWidgetForm/CnBannerWidgetForm.vue3.js +39 -6
  15. package/dist/esm/components/CnBannerWidgetForm/CnBannerWidgetForm.vue3.js.map +1 -1
  16. package/dist/esm/components/CnBoardView/CnBoardView.vue2.js +46 -0
  17. package/dist/esm/components/CnBoardView/CnBoardView.vue2.js.map +1 -1
  18. package/dist/esm/components/CnBoardView/CnBoardView.vue3.js +11 -4
  19. package/dist/esm/components/CnBoardView/CnBoardView.vue3.js.map +1 -1
  20. package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue.js +10 -0
  21. package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue.js.map +1 -0
  22. package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue2.js +39 -0
  23. package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue2.js.map +1 -0
  24. package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue3.js +16 -0
  25. package/dist/esm/components/CnBrandStripe/CnBrandStripe.vue3.js.map +1 -0
  26. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js +117 -1
  27. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js.map +1 -1
  28. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js +147 -89
  29. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js.map +1 -1
  30. package/dist/esm/components/CnConversationThread/CnConversationThread.vue.js +10 -0
  31. package/dist/esm/components/CnConversationThread/CnConversationThread.vue.js.map +1 -0
  32. package/dist/esm/components/CnConversationThread/CnConversationThread.vue2.js +259 -0
  33. package/dist/esm/components/CnConversationThread/CnConversationThread.vue2.js.map +1 -0
  34. package/dist/esm/components/CnConversationThread/CnConversationThread.vue3.js +131 -0
  35. package/dist/esm/components/CnConversationThread/CnConversationThread.vue3.js.map +1 -0
  36. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue.js +10 -0
  37. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue.js.map +1 -0
  38. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js +116 -0
  39. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js.map +1 -0
  40. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue3.js +24 -0
  41. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue3.js.map +1 -0
  42. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js +10 -2
  43. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js.map +1 -1
  44. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js.map +1 -1
  45. package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js +503 -28
  46. package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js.map +1 -1
  47. package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js +303 -144
  48. package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js.map +1 -1
  49. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue.js +10 -0
  50. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue.js.map +1 -0
  51. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue2.js +237 -0
  52. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue2.js.map +1 -0
  53. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue3.js +120 -0
  54. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewList.vue3.js.map +1 -0
  55. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue.js +10 -0
  56. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue.js.map +1 -0
  57. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue2.js +77 -0
  58. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue2.js.map +1 -0
  59. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue3.js +27 -0
  60. package/dist/esm/components/CnDocumentReviewList/CnDocumentReviewWidget.vue3.js.map +1 -0
  61. package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue2.js +171 -12
  62. package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue2.js.map +1 -1
  63. package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue3.js +15 -7
  64. package/dist/esm/components/CnHeaderWidget/CnHeaderWidget.vue3.js.map +1 -1
  65. package/dist/esm/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue2.js +37 -3
  66. package/dist/esm/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue2.js.map +1 -1
  67. package/dist/esm/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue3.js +44 -16
  68. package/dist/esm/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue3.js.map +1 -1
  69. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +132 -3
  70. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
  71. package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js +6 -3
  72. package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
  73. package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue.js +10 -0
  74. package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue.js.map +1 -0
  75. package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue2.js +316 -0
  76. package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue2.js.map +1 -0
  77. package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue3.js +105 -0
  78. package/dist/esm/components/CnLinkCardsPage/CnLinkCardsPage.vue3.js.map +1 -0
  79. package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue.js +10 -0
  80. package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue.js.map +1 -0
  81. package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue2.js +150 -0
  82. package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue2.js.map +1 -0
  83. package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue3.js +106 -0
  84. package/dist/esm/components/CnNextStepCard/CnNextStepCard.vue3.js.map +1 -0
  85. package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue.js +9 -0
  86. package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue.js.map +1 -0
  87. package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue2.js +47 -0
  88. package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue2.js.map +1 -0
  89. package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue3.js +17 -0
  90. package/dist/esm/components/CnNextStepCard/CnNextStepWidget.vue3.js.map +1 -0
  91. package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js +49 -0
  92. package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js.map +1 -1
  93. package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue3.js.map +1 -1
  94. package/dist/esm/components/CnObjectDataWidgetForm/CnObjectDataWidgetForm.vue2.js +6 -0
  95. package/dist/esm/components/CnObjectDataWidgetForm/CnObjectDataWidgetForm.vue2.js.map +1 -1
  96. package/dist/esm/components/CnObjectDataWidgetForm/CnObjectDataWidgetForm.vue3.js.map +1 -1
  97. package/dist/esm/components/CnObjectKanban/CnObjectKanban.vue2.js +46 -0
  98. package/dist/esm/components/CnObjectKanban/CnObjectKanban.vue2.js.map +1 -1
  99. package/dist/esm/components/CnObjectKanban/CnObjectKanban.vue3.js +15 -3
  100. package/dist/esm/components/CnObjectKanban/CnObjectKanban.vue3.js.map +1 -1
  101. package/dist/esm/components/CnPageRenderer/pageTypes.js +1 -0
  102. package/dist/esm/components/CnPageRenderer/pageTypes.js.map +1 -1
  103. package/dist/esm/components/CnQuickFilterBar/CnQuickFilterBar.vue2.js +37 -1
  104. package/dist/esm/components/CnQuickFilterBar/CnQuickFilterBar.vue2.js.map +1 -1
  105. package/dist/esm/components/CnQuickFilterBar/CnQuickFilterBar.vue3.js +29 -13
  106. package/dist/esm/components/CnQuickFilterBar/CnQuickFilterBar.vue3.js.map +1 -1
  107. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue2.js +50 -3
  108. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue2.js.map +1 -1
  109. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue3.js.map +1 -1
  110. package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue.js +10 -0
  111. package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue.js.map +1 -0
  112. package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue2.js +186 -0
  113. package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue2.js.map +1 -0
  114. package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue3.js +46 -0
  115. package/dist/esm/components/CnSegmentedControl/CnSegmentedControl.vue3.js.map +1 -0
  116. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue.js +11 -0
  117. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue.js.map +1 -0
  118. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue2.js +298 -0
  119. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue2.js.map +1 -0
  120. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue3.js +77 -0
  121. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue3.js.map +1 -0
  122. package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue.js +10 -0
  123. package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue.js.map +1 -0
  124. package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue2.js +169 -0
  125. package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue2.js.map +1 -0
  126. package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue3.js +48 -0
  127. package/dist/esm/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue3.js.map +1 -0
  128. package/dist/esm/components/CnTabs/CnTab.vue2.js +35 -0
  129. package/dist/esm/components/CnTabs/CnTab.vue2.js.map +1 -1
  130. package/dist/esm/components/CnTabs/CnTab.vue3.js.map +1 -1
  131. package/dist/esm/components/CnTabs/CnTabs.vue2.js +120 -7
  132. package/dist/esm/components/CnTabs/CnTabs.vue2.js.map +1 -1
  133. package/dist/esm/components/CnTabs/CnTabs.vue3.js +57 -5
  134. package/dist/esm/components/CnTabs/CnTabs.vue3.js.map +1 -1
  135. package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js +59 -4
  136. package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue2.js.map +1 -1
  137. package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue3.js +6 -2
  138. package/dist/esm/components/CnTabsWidget/CnTabsWidget.vue3.js.map +1 -1
  139. package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue.js +10 -0
  140. package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue.js.map +1 -0
  141. package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue2.js +484 -0
  142. package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue2.js.map +1 -0
  143. package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue3.js +115 -0
  144. package/dist/esm/components/CnWeekStripWidget/CnWeekStripWidget.vue3.js.map +1 -0
  145. package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue.js +10 -0
  146. package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue.js.map +1 -0
  147. package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue2.js +189 -0
  148. package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue2.js.map +1 -0
  149. package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue3.js +74 -0
  150. package/dist/esm/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue3.js.map +1 -0
  151. package/dist/esm/components/CnWidgetGrid/registerDashboardWidgets.js +82 -8
  152. package/dist/esm/components/CnWidgetGrid/registerDashboardWidgets.js.map +1 -1
  153. package/dist/esm/index.js +16 -0
  154. package/dist/esm/index.js.map +1 -1
  155. package/dist/esm/l10n/en.json.js +55 -1
  156. package/dist/esm/l10n/en.json.js.map +1 -1
  157. package/dist/esm/l10n/nl.json.js +55 -1
  158. package/dist/esm/l10n/nl.json.js.map +1 -1
  159. package/dist/esm/nextcloud-vue.css +1036 -19
  160. package/dist/esm/utils/dateVariant.js +124 -0
  161. package/dist/esm/utils/dateVariant.js.map +1 -0
  162. package/dist/esm/utils/detailActionModel.js +260 -0
  163. package/dist/esm/utils/detailActionModel.js.map +1 -0
  164. package/dist/esm/utils/dueRule.js +84 -0
  165. package/dist/esm/utils/dueRule.js.map +1 -0
  166. package/dist/esm/utils/fetchAggregate.js +37 -1
  167. package/dist/esm/utils/fetchAggregate.js.map +1 -1
  168. package/dist/esm/utils/fetchFilterCounts.js +186 -0
  169. package/dist/esm/utils/fetchFilterCounts.js.map +1 -0
  170. package/dist/esm/utils/headers.js +28 -2
  171. package/dist/esm/utils/headers.js.map +1 -1
  172. package/dist/esm/utils/libraryWidgetKeys.js +5 -0
  173. package/dist/esm/utils/libraryWidgetKeys.js.map +1 -1
  174. package/dist/esm/utils/readPath.js +30 -0
  175. package/dist/esm/utils/readPath.js.map +1 -0
  176. package/dist/esm/utils/validateManifestV2.compiled.js +2 -2
  177. package/dist/esm/utils/validateManifestV2.compiled.js.map +1 -1
  178. package/dist/nextcloud-vue.cjs.js +16019 -9528
  179. package/dist/nextcloud-vue.cjs.js.map +2 -2
  180. package/dist/nextcloud-vue.css +1036 -19
  181. package/l10n/en.json +55 -1
  182. package/l10n/nl.json +55 -1
  183. package/package.json +1 -1
  184. package/scripts/.jsdoc-baselines.json +4 -0
  185. package/src/components/CnActionsMenu/CnActionsMenu.vue +14 -1
  186. package/src/components/CnAppNav/CnAppNav.md +26 -0
  187. package/src/components/CnAppNav/CnAppNav.vue +145 -2
  188. package/src/components/CnBannerWidget/CnBannerWidget.vue +373 -11
  189. package/src/components/CnBannerWidgetForm/CnBannerWidgetForm.vue +65 -3
  190. package/src/components/CnBoardView/CnBoardView.vue +77 -0
  191. package/src/components/CnBrandStripe/CnBrandStripe.md +22 -0
  192. package/src/components/CnBrandStripe/CnBrandStripe.vue +100 -0
  193. package/src/components/CnBrandStripe/index.js +4 -0
  194. package/src/components/CnCellRenderer/CnCellRenderer.vue +207 -1
  195. package/src/components/CnConversationThread/CnConversationThread.md +51 -0
  196. package/src/components/CnConversationThread/CnConversationThread.vue +457 -0
  197. package/src/components/CnConversationThread/CnConversationWidget.vue +144 -0
  198. package/src/components/CnConversationThread/index.js +4 -0
  199. package/src/components/CnDashboardPage/CnDashboardPage.vue +10 -2
  200. package/src/components/CnDetailPage/CnDetailPage.md +16 -0
  201. package/src/components/CnDetailPage/CnDetailPage.vue +687 -49
  202. package/src/components/CnDocumentReviewList/CnDocumentReviewList.md +55 -0
  203. package/src/components/CnDocumentReviewList/CnDocumentReviewList.vue +384 -0
  204. package/src/components/CnDocumentReviewList/CnDocumentReviewWidget.vue +108 -0
  205. package/src/components/CnDocumentReviewList/index.js +4 -0
  206. package/src/components/CnHeaderWidget/CnHeaderWidget.vue +191 -14
  207. package/src/components/CnHeaderWidgetForm/CnHeaderWidgetForm.vue +53 -3
  208. package/src/components/CnIndexPage/CnIndexPage.vue +135 -3
  209. package/src/components/CnLinkCardsPage/CnLinkCardsPage.vue +484 -0
  210. package/src/components/CnLinkCardsPage/index.js +4 -0
  211. package/src/components/CnNextStepCard/CnNextStepCard.md +40 -0
  212. package/src/components/CnNextStepCard/CnNextStepCard.vue +319 -0
  213. package/src/components/CnNextStepCard/CnNextStepWidget.vue +59 -0
  214. package/src/components/CnNextStepCard/index.js +4 -0
  215. package/src/components/CnObjectDataWidget/CnObjectDataWidget.vue +49 -0
  216. package/src/components/CnObjectDataWidgetForm/CnObjectDataWidgetForm.vue +6 -0
  217. package/src/components/CnObjectKanban/CnObjectKanban.vue +86 -2
  218. package/src/components/CnPageRenderer/pageTypes.js +1 -0
  219. package/src/components/CnQuickFilterBar/CnQuickFilterBar.md +3 -0
  220. package/src/components/CnQuickFilterBar/CnQuickFilterBar.vue +60 -1
  221. package/src/components/CnSavedViewsControl/CnSavedViewsControl.vue +50 -3
  222. package/src/components/CnSegmentedControl/CnSegmentedControl.md +46 -0
  223. package/src/components/CnSegmentedControl/CnSegmentedControl.vue +291 -0
  224. package/src/components/CnSegmentedControl/index.js +4 -0
  225. package/src/components/CnStackedBarWidget/CnStackedBarWidget.md +15 -0
  226. package/src/components/CnStackedBarWidget/CnStackedBarWidget.vue +414 -0
  227. package/src/components/CnStackedBarWidget/index.js +14 -0
  228. package/src/components/CnStackedBarWidgetForm/CnStackedBarWidgetForm.vue +224 -0
  229. package/src/components/CnStackedBarWidgetForm/index.js +4 -0
  230. package/src/components/CnTabs/CnTab.vue +35 -0
  231. package/src/components/CnTabs/CnTabs.vue +244 -10
  232. package/src/components/CnTabsWidget/CnTabsWidget.vue +63 -4
  233. package/src/components/CnWeekStripWidget/CnWeekStripWidget.md +31 -0
  234. package/src/components/CnWeekStripWidget/CnWeekStripWidget.vue +668 -0
  235. package/src/components/CnWeekStripWidget/index.js +14 -0
  236. package/src/components/CnWeekStripWidgetForm/CnWeekStripWidgetForm.vue +265 -0
  237. package/src/components/CnWeekStripWidgetForm/index.js +4 -0
  238. package/src/components/CnWidgetGrid/registerDashboardWidgets.js +74 -0
  239. package/src/components/index.js +12 -0
  240. package/src/css/detail-page.css +57 -2
  241. package/src/index.js +16 -0
  242. package/src/schemas/app-manifest-v2.schema.json +433 -3
  243. package/src/schemas/app-manifest.schema.json +2 -1
  244. package/src/types/manifest.d.ts +1 -1
  245. package/src/utils/dateVariant.js +120 -0
  246. package/src/utils/detailActionModel.js +256 -0
  247. package/src/utils/dueRule.js +94 -0
  248. package/src/utils/fetchAggregate.js +36 -0
  249. package/src/utils/fetchFilterCounts.js +182 -0
  250. package/src/utils/headers.js +28 -2
  251. package/src/utils/index.js +1 -0
  252. package/src/utils/libraryWidgetKeys.js +5 -0
  253. package/src/utils/readPath.js +27 -0
  254. package/src/utils/validateManifestV2.compiled.js +2 -2
@@ -1,4 +1,4 @@
1
- import { resolveComponent, openBlock, createElementBlock, normalizeStyle, toDisplayString, createCommentVNode, renderSlot, createElementVNode, createBlock, createVNode, withCtx, createTextVNode, createSlots, Fragment, renderList, normalizeClass } from 'vue';
1
+ import { resolveComponent, openBlock, createElementBlock, normalizeClass, normalizeStyle, toDisplayString, createCommentVNode, renderSlot, createElementVNode, createBlock, Fragment, renderList, createVNode, withCtx, createTextVNode, createSlots } from 'vue';
2
2
 
3
3
  const _hoisted_1 = ["href"];
4
4
  const _hoisted_2 = {
@@ -10,101 +10,106 @@ const _hoisted_3 = { class: "cn-detail-page__header-left" };
10
10
  const _hoisted_4 = { class: "cn-detail-page__header-text" };
11
11
  const _hoisted_5 = {
12
12
  key: 0,
13
- class: "cn-detail-page__type-eyebrow",
14
- "data-testid": "cn-detail-page-type-eyebrow"
13
+ class: "cn-detail-page__pills",
14
+ "data-testid": "cn-detail-page-pills"
15
15
  };
16
16
  const _hoisted_6 = {
17
17
  key: 1,
18
- class: "cn-detail-page__title"
18
+ class: "cn-detail-page__type-eyebrow",
19
+ "data-testid": "cn-detail-page-type-eyebrow"
19
20
  };
20
- const _hoisted_7 = {
21
- key: 2,
21
+ const _hoisted_7 = ["title"];
22
+ const _hoisted_8 = {
23
+ key: 3,
22
24
  class: "cn-detail-page__description"
23
25
  };
24
- const _hoisted_8 = { class: "cn-detail-page__header-actions" };
25
- const _hoisted_9 = {
26
+ const _hoisted_9 = { class: "cn-detail-page__header-actions" };
27
+ const _hoisted_10 = {
26
28
  key: 0,
27
29
  class: "cn-detail-page__list-nav",
28
30
  "data-testid": "cn-detail-page-list-nav"
29
31
  };
30
- const _hoisted_10 = {
32
+ const _hoisted_11 = {
31
33
  class: "cn-detail-page__list-nav-position",
32
34
  "data-testid": "cn-detail-page-list-position"
33
35
  };
34
- const _hoisted_11 = {
36
+ const _hoisted_12 = {
35
37
  key: 3,
36
38
  class: "cn-detail-page__lock-refusal",
37
39
  role: "alert",
38
40
  "data-testid": "cn-detail-page-lock-refusal"
39
41
  };
40
- const _hoisted_12 = {
41
- key: 4,
42
- class: "cn-detail-page__not-found",
43
- "data-testid": "cn-detail-page-not-found"
44
- };
45
42
  const _hoisted_13 = {
46
43
  key: 5,
47
- class: "cn-detail-page__loading"
44
+ class: "cn-detail-page__not-found",
45
+ "data-testid": "cn-detail-page-not-found"
48
46
  };
49
47
  const _hoisted_14 = {
50
48
  key: 6,
51
- class: "cn-detail-page__error"
49
+ class: "cn-detail-page__loading"
52
50
  };
53
51
  const _hoisted_15 = {
54
52
  key: 7,
55
- class: "cn-detail-page__empty"
53
+ class: "cn-detail-page__error"
56
54
  };
57
55
  const _hoisted_16 = {
58
56
  key: 8,
59
- class: "cn-detail-page__body"
57
+ class: "cn-detail-page__empty"
60
58
  };
61
59
  const _hoisted_17 = {
60
+ key: 9,
61
+ class: "cn-detail-page__body"
62
+ };
63
+ const _hoisted_18 = {
62
64
  key: 0,
63
65
  class: "cn-detail-page__before-body"
64
66
  };
65
- const _hoisted_18 = ["aria-labelledby"];
66
- const _hoisted_19 = {
67
+ const _hoisted_19 = ["aria-labelledby"];
68
+ const _hoisted_20 = {
67
69
  key: 0,
68
70
  class: "cn-detail-page__widget-edit"
69
71
  };
70
- const _hoisted_20 = ["id"];
71
- const _hoisted_21 = {
72
+ const _hoisted_21 = ["id"];
73
+ const _hoisted_22 = {
72
74
  key: 3,
73
75
  class: "cn-detail-page__stats"
74
76
  };
75
- const _hoisted_22 = {
77
+ const _hoisted_23 = {
76
78
  key: 0,
77
79
  class: "cn-detail-page__section-title"
78
80
  };
79
- const _hoisted_23 = { class: "cn-detail-page__stats-table" };
80
- const _hoisted_24 = { key: 0 };
81
- const _hoisted_25 = {
81
+ const _hoisted_24 = { class: "cn-detail-page__stats-table" };
82
+ const _hoisted_25 = { key: 0 };
83
+ const _hoisted_26 = {
82
84
  key: 4,
83
85
  class: "cn-detail-page__content"
84
86
  };
85
- const _hoisted_26 = {
87
+ const _hoisted_27 = {
86
88
  key: 0,
87
89
  class: "cn-detail-page__content"
88
90
  };
89
- const _hoisted_27 = {
91
+ const _hoisted_28 = {
90
92
  key: 1,
91
93
  class: "cn-detail-page__sections"
92
94
  };
93
- const _hoisted_28 = {
95
+ const _hoisted_29 = {
94
96
  key: 6,
95
97
  class: "cn-detail-page__related-collections"
96
98
  };
97
- const _hoisted_29 = {
99
+ const _hoisted_30 = {
98
100
  key: 0,
99
101
  class: "cn-detail-page__relation-links"
100
102
  };
101
- const _hoisted_30 = {
103
+ const _hoisted_31 = {
102
104
  key: 9,
103
105
  class: "cn-detail-page__footer"
104
106
  };
107
+ const _hoisted_32 = ["aria-label"];
108
+ const _hoisted_33 = ["data-testid"];
105
109
 
106
110
  function render(_ctx, _cache, $props, $setup, $data, $options) {
107
111
  const _component_CnIcon = resolveComponent("CnIcon");
112
+ const _component_CnStatusBadge = resolveComponent("CnStatusBadge");
108
113
  const _component_CnTranslatedBadge = resolveComponent("CnTranslatedBadge");
109
114
  const _component_CnSummaryAggregates = resolveComponent("CnSummaryAggregates");
110
115
  const _component_ChevronLeft = resolveComponent("ChevronLeft");
@@ -114,11 +119,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
114
119
  const _component_CnActionButtons = resolveComponent("CnActionButtons");
115
120
  const _component_Pencil = resolveComponent("Pencil");
116
121
  const _component_CnBuildiqEditButton = resolveComponent("CnBuildiqEditButton");
122
+ const _component_NcActionSeparator = resolveComponent("NcActionSeparator");
123
+ const _component_NcActionCaption = resolveComponent("NcActionCaption");
117
124
  const _component_NcActionLink = resolveComponent("NcActionLink");
118
125
  const _component_NcActionButton = resolveComponent("NcActionButton");
119
- const _component_NcActionSeparator = resolveComponent("NcActionSeparator");
120
126
  const _component_CnActionsMenu = resolveComponent("CnActionsMenu");
121
127
  const _component_CnLockedBanner = resolveComponent("CnLockedBanner");
128
+ const _component_CnNextStepCard = resolveComponent("CnNextStepCard");
122
129
  const _component_FileQuestionOutline = resolveComponent("FileQuestionOutline");
123
130
  const _component_ArrowLeft = resolveComponent("ArrowLeft");
124
131
  const _component_NcEmptyContent = resolveComponent("NcEmptyContent");
@@ -137,11 +144,11 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
137
144
  const _component_CnRelationLinkModal = resolveComponent("CnRelationLinkModal");
138
145
 
139
146
  return (openBlock(), createElementBlock("div", {
140
- class: "cn-detail-page",
147
+ class: normalizeClass(["cn-detail-page", { 'cn-detail-page--with-side': $options.showsSideColumn }]),
141
148
  "data-testid": "cn-detail-page",
142
149
  style: normalizeStyle({ maxWidth: $props.maxWidth })
143
150
  }, [
144
- ($options.primaryActionLabel && !$data.objectNotFound)
151
+ ($options.effectivePrimaryLabel && !$data.objectNotFound)
145
152
  ? (openBlock(), createElementBlock("a", {
146
153
  key: 0,
147
154
  href: `#${$options.primaryActionAnchorId}`,
@@ -170,11 +177,29 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
170
177
  : createCommentVNode("v-if", true)
171
178
  ]),
172
179
  createElementVNode("div", _hoisted_4, [
180
+ ($options.headerPills.length > 0)
181
+ ? (openBlock(), createElementBlock("div", _hoisted_5, [
182
+ (openBlock(true), createElementBlock(Fragment, null, renderList($options.headerPills, (pill) => {
183
+ return (openBlock(), createBlock(_component_CnStatusBadge, {
184
+ key: pill.key,
185
+ label: pill.label,
186
+ colorKey: pill.colorKey,
187
+ colorMap: pill.colorMap,
188
+ variant: pill.variant,
189
+ "data-testid": `cn-detail-page-pill-${pill.key}`
190
+ }, null, 8 /* PROPS */, ["label", "colorKey", "colorMap", "variant", "data-testid"]))
191
+ }), 128 /* KEYED_FRAGMENT */))
192
+ ]))
193
+ : createCommentVNode("v-if", true),
173
194
  ($options.typeEyebrow)
174
- ? (openBlock(), createElementBlock("p", _hoisted_5, toDisplayString($options.typeEyebrow), 1 /* TEXT */))
195
+ ? (openBlock(), createElementBlock("p", _hoisted_6, toDisplayString($options.typeEyebrow), 1 /* TEXT */))
175
196
  : createCommentVNode("v-if", true),
176
197
  ($options.displayTitle)
177
- ? (openBlock(), createElementBlock("h2", _hoisted_6, toDisplayString($options.displayTitle), 1 /* TEXT */))
198
+ ? (openBlock(), createElementBlock("h2", {
199
+ key: 2,
200
+ class: "cn-detail-page__title",
201
+ title: $options.displayTitle
202
+ }, toDisplayString($options.displayTitle), 9 /* TEXT, PROPS */, _hoisted_7))
178
203
  : createCommentVNode("v-if", true),
179
204
  renderSlot(_ctx.$slots, "translation-badge", { object: $options.resolvedObject }, () => [
180
205
  ($options.resolvedObject)
@@ -185,20 +210,20 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
185
210
  : createCommentVNode("v-if", true)
186
211
  ]),
187
212
  ($props.description)
188
- ? (openBlock(), createElementBlock("p", _hoisted_7, toDisplayString($options.resolvedDescription), 1 /* TEXT */))
213
+ ? (openBlock(), createElementBlock("p", _hoisted_8, toDisplayString($options.resolvedDescription), 1 /* TEXT */))
189
214
  : createCommentVNode("v-if", true),
190
215
  ($props.summaryAggregates && $props.summaryAggregates.length > 0)
191
216
  ? (openBlock(), createBlock(_component_CnSummaryAggregates, {
192
- key: 3,
217
+ key: 4,
193
218
  aggregates: $props.summaryAggregates
194
219
  }, null, 8 /* PROPS */, ["aggregates"]))
195
220
  : createCommentVNode("v-if", true)
196
221
  ])
197
222
  ])
198
223
  ]),
199
- createElementVNode("div", _hoisted_8, [
224
+ createElementVNode("div", _hoisted_9, [
200
225
  ($props.listNavigation && $props.listNavigation.available)
201
- ? (openBlock(), createElementBlock("div", _hoisted_9, [
226
+ ? (openBlock(), createElementBlock("div", _hoisted_10, [
202
227
  createVNode(_component_NcButton, {
203
228
  variant: "tertiary",
204
229
  disabled: $props.listNavigation.isFirst,
@@ -213,7 +238,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
213
238
  ]),
214
239
  _: 1 /* STABLE */
215
240
  }, 8 /* PROPS */, ["disabled", "to", "aria-label", "title"]),
216
- createElementVNode("span", _hoisted_10, toDisplayString($options.listPositionLabel), 1 /* TEXT */),
241
+ createElementVNode("span", _hoisted_11, toDisplayString($options.listPositionLabel), 1 /* TEXT */),
217
242
  createVNode(_component_NcButton, {
218
243
  variant: "tertiary",
219
244
  disabled: $props.listNavigation.isLast,
@@ -230,21 +255,53 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
230
255
  }, 8 /* PROPS */, ["disabled", "to", "aria-label", "title"])
231
256
  ]))
232
257
  : createCommentVNode("v-if", true),
233
- ($options.primaryActionLabel)
258
+ ($options.effectivePrimaryLabel && !$options.showsNextStepCard)
234
259
  ? (openBlock(), createBlock(_component_NcButton, {
235
260
  key: 1,
236
261
  id: $options.primaryActionAnchorId,
237
262
  ref: "primaryActionButton",
238
263
  variant: "primary",
264
+ href: $options.primaryActionHref || undefined,
265
+ target: $options.primaryActionHref ? $options.primaryActionTarget : undefined,
266
+ disabled: $options.primaryActionDisabled,
239
267
  "data-testid": "cn-detail-page-primary-action",
240
- onClick: _cache[3] || (_cache[3] = $event => (_ctx.$emit('primary-action', $props.primaryAction)))
268
+ onClick: $options.onPrimaryActionClick
241
269
  }, {
242
270
  default: withCtx(() => [
243
- createTextVNode(toDisplayString($options.primaryActionLabel), 1 /* TEXT */)
271
+ createTextVNode(toDisplayString($options.effectivePrimaryLabel), 1 /* TEXT */)
244
272
  ]),
245
273
  _: 1 /* STABLE */
246
- }, 8 /* PROPS */, ["id"]))
274
+ }, 8 /* PROPS */, ["id", "href", "target", "disabled", "onClick"]))
247
275
  : createCommentVNode("v-if", true),
276
+ (openBlock(true), createElementBlock(Fragment, null, renderList($options.quickActionEntries, (entry) => {
277
+ return (openBlock(), createBlock(_component_NcButton, {
278
+ key: `quick-${entry.id}`,
279
+ variant: "secondary",
280
+ href: entry.href || undefined,
281
+ target: entry.href ? (entry.linkTarget || undefined) : undefined,
282
+ disabled: entry.disabled,
283
+ "data-testid": `cn-detail-page-quick-${entry.id}`,
284
+ onClick: $event => ($options.onPinnedActionClick(entry))
285
+ }, createSlots({
286
+ default: withCtx(() => [
287
+ createTextVNode(" " + toDisplayString(entry.label), 1 /* TEXT */)
288
+ ]),
289
+ _: 2 /* DYNAMIC */
290
+ }, [
291
+ (entry.iconName)
292
+ ? {
293
+ name: "icon",
294
+ fn: withCtx(() => [
295
+ createVNode(_component_CnIcon, {
296
+ name: entry.iconName,
297
+ size: 20
298
+ }, null, 8 /* PROPS */, ["name"])
299
+ ]),
300
+ key: "0"
301
+ }
302
+ : undefined
303
+ ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["href", "target", "disabled", "data-testid", "onClick"]))
304
+ }), 128 /* KEYED_FRAGMENT */)),
248
305
  ($options.showsLifecycleActions)
249
306
  ? (openBlock(), createBlock(_component_CnLifecycleActions, {
250
307
  key: 2,
@@ -253,7 +310,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
253
310
  config: $props.lifecycleActions,
254
311
  schema: $options.currentSchema,
255
312
  display: "menu",
256
- onEntries: _cache[4] || (_cache[4] = $event => ($data.lifecycleMenuEntries = $event)),
313
+ onEntries: _cache[3] || (_cache[3] = $event => ($data.lifecycleMenuEntries = $event)),
257
314
  onTransitioned: $options.onTransitioned,
258
315
  onReload: $options.onLifecycleReload
259
316
  }, null, 8 /* PROPS */, ["objectId", "object", "config", "schema", "onTransitioned", "onReload"]))
@@ -264,7 +321,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
264
321
  actions: $options.effectiveHeaderActions,
265
322
  display: "menu",
266
323
  "data-testid": "cn-detail-page-header-actions",
267
- onEntries: _cache[5] || (_cache[5] = $event => ($data.menuHeaderActions = $event)),
324
+ onEntries: _cache[4] || (_cache[4] = $event => ($data.menuHeaderActions = $event)),
268
325
  onCreated: $options.onLifecycleReload
269
326
  }, null, 8 /* PROPS */, ["actions", "onCreated"]))
270
327
  : createCommentVNode("v-if", true),
@@ -296,11 +353,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
296
353
  : createCommentVNode("v-if", true),
297
354
  createVNode(_component_CnBuildiqEditButton),
298
355
  createVNode(_component_CnActionsMenu, {
299
- showRefresh: $options.effectiveHeaderShowRefresh,
356
+ showRefresh: $options.menuShowsRefresh,
300
357
  refreshing: $options.effectiveRefreshing,
301
- showRequestFeature: $props.showRequestFeature,
302
- showReportBug: $props.showReportBug,
303
- showDocumentation: $props.showDocumentation,
358
+ showRequestFeature: $props.showRequestFeature && $options.menuShowsHelpLinks,
359
+ showReportBug: $props.showReportBug && $options.menuShowsHelpLinks,
360
+ showDocumentation: $props.showDocumentation && $options.menuShowsHelpLinks,
361
+ actionsMenuLabel: $options.actionsMenuName,
362
+ hasPrimaryItems: $options.headerMenuGroups.length > 0,
304
363
  documentationUrl: $props.documentationUrl,
305
364
  docsAnchor: $options.resolvedPageId,
306
365
  documentationLabel: $props.documentationLabel || undefined,
@@ -312,83 +371,101 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
312
371
  onRefresh: $options.onHeaderRefresh,
313
372
  onRequestFeature: $options.onHeaderRequestFeature
314
373
  }, createSlots({ _: 2 /* DYNAMIC */ }, [
315
- ($options.headerMenuEntries.length)
374
+ ($options.headerMenuGroups.length)
316
375
  ? {
317
376
  name: "primary-items",
318
377
  fn: withCtx(() => [
319
- (openBlock(true), createElementBlock(Fragment, null, renderList($options.headerMenuEntries, (entry) => {
378
+ (openBlock(true), createElementBlock(Fragment, null, renderList($options.headerMenuGroups, (group, groupIndex) => {
320
379
  return (openBlock(), createElementBlock(Fragment, null, [
321
- (entry.href)
322
- ? (openBlock(), createBlock(_component_NcActionLink, {
323
- key: `${entry.id}-link`,
324
- href: entry.href,
325
- target: entry.linkTarget || undefined,
326
- "data-testid": entry.testid
327
- }, createSlots({
328
- default: withCtx(() => [
329
- createTextVNode(" " + toDisplayString(entry.label), 1 /* TEXT */)
330
- ]),
331
- _: 2 /* DYNAMIC */
332
- }, [
333
- (entry.iconName || entry.iconClass)
334
- ? {
335
- name: "icon",
336
- fn: withCtx(() => [
337
- (entry.iconName)
338
- ? (openBlock(), createBlock(_component_CnIcon, {
339
- key: 0,
340
- name: entry.iconName,
341
- size: 20
342
- }, null, 8 /* PROPS */, ["name"]))
343
- : (openBlock(), createElementBlock("span", {
344
- key: 1,
345
- class: normalizeClass(entry.iconClass)
346
- }, null, 2 /* CLASS */))
347
- ]),
348
- key: "0"
349
- }
350
- : undefined
351
- ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["href", "target", "data-testid"]))
352
- : (openBlock(), createBlock(_component_NcActionButton, {
353
- key: entry.id,
354
- "data-testid": entry.testid,
355
- disabled: entry.disabled,
356
- "aria-pressed": entry.pressed === null ? null : String(entry.pressed),
357
- closeAfterClick: true,
358
- onClick: $event => (entry.run())
359
- }, createSlots({
360
- default: withCtx(() => [
361
- createTextVNode(" " + toDisplayString(entry.label), 1 /* TEXT */)
362
- ]),
363
- _: 2 /* DYNAMIC */
364
- }, [
365
- (entry.iconName || entry.iconClass)
366
- ? {
367
- name: "icon",
368
- fn: withCtx(() => [
369
- (entry.iconName)
370
- ? (openBlock(), createBlock(_component_CnIcon, {
371
- key: 0,
372
- name: entry.iconName,
373
- size: 20
374
- }, null, 8 /* PROPS */, ["name"]))
375
- : (openBlock(), createElementBlock("span", {
376
- key: 1,
377
- class: normalizeClass(entry.iconClass)
378
- }, null, 2 /* CLASS */))
379
- ]),
380
- key: "0"
381
- }
382
- : undefined
383
- ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["data-testid", "disabled", "aria-pressed", "onClick"]))
380
+ (groupIndex > 0)
381
+ ? (openBlock(), createBlock(_component_NcActionSeparator, {
382
+ key: `${group.key}-separator`
383
+ }))
384
+ : createCommentVNode("v-if", true),
385
+ (group.label)
386
+ ? (openBlock(), createBlock(_component_NcActionCaption, {
387
+ key: `${group.key}-caption`,
388
+ name: group.label,
389
+ "data-testid": `cn-detail-page-action-group-${group.key}`
390
+ }, null, 8 /* PROPS */, ["name", "data-testid"]))
391
+ : createCommentVNode("v-if", true),
392
+ (openBlock(true), createElementBlock(Fragment, null, renderList(group.entries, (entry) => {
393
+ return (openBlock(), createElementBlock(Fragment, null, [
394
+ (entry.href)
395
+ ? (openBlock(), createBlock(_component_NcActionLink, {
396
+ key: `${entry.id}-link`,
397
+ href: entry.href,
398
+ target: entry.linkTarget || undefined,
399
+ "data-testid": entry.testid
400
+ }, createSlots({
401
+ default: withCtx(() => [
402
+ createTextVNode(" " + toDisplayString(entry.label), 1 /* TEXT */)
403
+ ]),
404
+ _: 2 /* DYNAMIC */
405
+ }, [
406
+ (entry.iconName || entry.iconClass)
407
+ ? {
408
+ name: "icon",
409
+ fn: withCtx(() => [
410
+ (entry.iconName)
411
+ ? (openBlock(), createBlock(_component_CnIcon, {
412
+ key: 0,
413
+ name: entry.iconName,
414
+ size: 20
415
+ }, null, 8 /* PROPS */, ["name"]))
416
+ : (openBlock(), createElementBlock("span", {
417
+ key: 1,
418
+ class: normalizeClass(entry.iconClass)
419
+ }, null, 2 /* CLASS */))
420
+ ]),
421
+ key: "0"
422
+ }
423
+ : undefined
424
+ ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["href", "target", "data-testid"]))
425
+ : (openBlock(), createBlock(_component_NcActionButton, {
426
+ key: entry.id,
427
+ "data-testid": entry.testid,
428
+ disabled: entry.disabled,
429
+ "aria-pressed": entry.pressed === null ? null : String(entry.pressed),
430
+ closeAfterClick: true,
431
+ onClick: $event => (entry.run())
432
+ }, createSlots({
433
+ default: withCtx(() => [
434
+ createTextVNode(" " + toDisplayString(entry.label), 1 /* TEXT */)
435
+ ]),
436
+ _: 2 /* DYNAMIC */
437
+ }, [
438
+ (entry.iconName || entry.iconClass)
439
+ ? {
440
+ name: "icon",
441
+ fn: withCtx(() => [
442
+ (entry.iconName)
443
+ ? (openBlock(), createBlock(_component_CnIcon, {
444
+ key: 0,
445
+ name: entry.iconName,
446
+ size: 20
447
+ }, null, 8 /* PROPS */, ["name"]))
448
+ : (openBlock(), createElementBlock("span", {
449
+ key: 1,
450
+ class: normalizeClass(entry.iconClass)
451
+ }, null, 2 /* CLASS */))
452
+ ]),
453
+ key: "0"
454
+ }
455
+ : undefined
456
+ ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["data-testid", "disabled", "aria-pressed", "onClick"]))
457
+ ], 64 /* STABLE_FRAGMENT */))
458
+ }), 256 /* UNKEYED_FRAGMENT */))
384
459
  ], 64 /* STABLE_FRAGMENT */))
385
460
  }), 256 /* UNKEYED_FRAGMENT */)),
386
- createVNode(_component_NcActionSeparator)
461
+ ($options.menuShowsHelpLinks)
462
+ ? (openBlock(), createBlock(_component_NcActionSeparator, { key: 0 }))
463
+ : createCommentVNode("v-if", true)
387
464
  ]),
388
465
  key: "0"
389
466
  }
390
467
  : undefined
391
- ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["showRefresh", "refreshing", "showRequestFeature", "showReportBug", "showDocumentation", "documentationUrl", "docsAnchor", "documentationLabel", "widgetId", "title", "surface", "onRefresh", "onRequestFeature"])
468
+ ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["showRefresh", "refreshing", "showRequestFeature", "showReportBug", "showDocumentation", "actionsMenuLabel", "hasPrimaryItems", "documentationUrl", "docsAnchor", "documentationLabel", "widgetId", "title", "surface", "onRefresh", "onRequestFeature"])
392
469
  ])
393
470
  ]))
394
471
  : createCommentVNode("v-if", true),
@@ -403,10 +480,45 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
403
480
  }, null, 8 /* PROPS */, ["lockedBy", "lockedByMe", "expiresAt", "unlocking", "onUnlock"]))
404
481
  : createCommentVNode("v-if", true),
405
482
  ($data.editLockRefusal)
406
- ? (openBlock(), createElementBlock("p", _hoisted_11, toDisplayString($data.editLockRefusal), 1 /* TEXT */))
483
+ ? (openBlock(), createElementBlock("p", _hoisted_12, toDisplayString($data.editLockRefusal), 1 /* TEXT */))
484
+ : createCommentVNode("v-if", true),
485
+ ($options.showsNextStepCard)
486
+ ? (openBlock(), createBlock(_component_CnNextStepCard, {
487
+ key: 4,
488
+ class: "cn-detail-page__next-step",
489
+ title: $options.nextStepCard.title,
490
+ titleTag: "h3",
491
+ items: $options.nextStepCard.items,
492
+ after: $options.nextStepCard.after,
493
+ "data-testid": "cn-detail-page-next-step"
494
+ }, createSlots({ _: 2 /* DYNAMIC */ }, [
495
+ ($options.effectivePrimaryLabel)
496
+ ? {
497
+ name: "action",
498
+ fn: withCtx(() => [
499
+ createVNode(_component_NcButton, {
500
+ id: $options.primaryActionAnchorId,
501
+ ref: "primaryActionButton",
502
+ variant: "primary",
503
+ href: $options.primaryActionHref || undefined,
504
+ target: $options.primaryActionHref ? $options.primaryActionTarget : undefined,
505
+ disabled: $options.primaryActionDisabled,
506
+ "data-testid": "cn-detail-page-primary-action",
507
+ onClick: $options.onPrimaryActionClick
508
+ }, {
509
+ default: withCtx(() => [
510
+ createTextVNode(toDisplayString($options.effectivePrimaryLabel), 1 /* TEXT */)
511
+ ]),
512
+ _: 1 /* STABLE */
513
+ }, 8 /* PROPS */, ["id", "href", "target", "disabled", "onClick"])
514
+ ]),
515
+ key: "0"
516
+ }
517
+ : undefined
518
+ ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["title", "items", "after"]))
407
519
  : createCommentVNode("v-if", true),
408
520
  ($data.objectNotFound)
409
- ? (openBlock(), createElementBlock("div", _hoisted_12, [
521
+ ? (openBlock(), createElementBlock("div", _hoisted_13, [
410
522
  renderSlot(_ctx.$slots, "not-found", { target: $options.notFoundTarget }, () => [
411
523
  createVNode(_component_NcEmptyContent, {
412
524
  name: $options.notFoundLabels.name,
@@ -442,12 +554,12 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
442
554
  ])
443
555
  ]))
444
556
  : ($options.showLoadingState)
445
- ? (openBlock(), createElementBlock("div", _hoisted_13, [
557
+ ? (openBlock(), createElementBlock("div", _hoisted_14, [
446
558
  createVNode(_component_NcLoadingIcon, { size: 32 }),
447
559
  createElementVNode("span", null, toDisplayString($props.loadingLabel), 1 /* TEXT */)
448
560
  ]))
449
561
  : ($props.error)
450
- ? (openBlock(), createElementBlock("div", _hoisted_14, [
562
+ ? (openBlock(), createElementBlock("div", _hoisted_15, [
451
563
  renderSlot(_ctx.$slots, "error", {}, () => [
452
564
  createVNode(_component_NcEmptyContent, { name: $props.errorMessage }, {
453
565
  icon: withCtx(() => [
@@ -476,7 +588,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
476
588
  ])
477
589
  ]))
478
590
  : ($props.empty)
479
- ? (openBlock(), createElementBlock("div", _hoisted_15, [
591
+ ? (openBlock(), createElementBlock("div", _hoisted_16, [
480
592
  renderSlot(_ctx.$slots, "empty", {}, () => [
481
593
  createVNode(_component_NcEmptyContent, { name: $props.emptyLabel }, {
482
594
  icon: withCtx(() => [
@@ -489,9 +601,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
489
601
  }, 8 /* PROPS */, ["name"])
490
602
  ])
491
603
  ]))
492
- : (openBlock(), createElementBlock("div", _hoisted_16, [
604
+ : (openBlock(), createElementBlock("div", _hoisted_17, [
493
605
  (_ctx.$slots['before-body'] || _ctx.$slots['before-body'])
494
- ? (openBlock(), createElementBlock("div", _hoisted_17, [
606
+ ? (openBlock(), createElementBlock("div", _hoisted_18, [
495
607
  renderSlot(_ctx.$slots, "before-body", {
496
608
  object: $options.resolvedObject,
497
609
  schema: $options.currentSchema,
@@ -526,7 +638,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
526
638
  "aria-labelledby": $options.showGridTitle(item) ? `widget-title-${item.id}` : undefined
527
639
  }, [
528
640
  ($options.showsCog(item))
529
- ? (openBlock(), createElementBlock("div", _hoisted_19, [
641
+ ? (openBlock(), createElementBlock("div", _hoisted_20, [
530
642
  createVNode(_component_NcButton, {
531
643
  variant: "tertiary",
532
644
  "aria-label": _ctx.t('nextcloud-vue', 'Configure widget'),
@@ -544,7 +656,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
544
656
  key: 1,
545
657
  id: `widget-title-${item.id}`,
546
658
  class: "cn-detail-page__widget-title"
547
- }, toDisplayString($options.gridTitle(item)), 9 /* TEXT, PROPS */, _hoisted_20))
659
+ }, toDisplayString($options.gridTitle(item)), 9 /* TEXT, PROPS */, _hoisted_21))
548
660
  : createCommentVNode("v-if", true),
549
661
  renderSlot(_ctx.$slots, `widget-${item.widgetId}`, {
550
662
  item: item,
@@ -576,21 +688,21 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
576
688
  onOpenIntegration: $options.onAutoBodyOpenIntegration
577
689
  }, null, 8 /* PROPS */, ["widget", "showCardTitle", "objectId", "object", "objectType", "schemaObject", "register", "schema", "store", "surface", "integrationContext", "hideEmpty", "cnRegistry", "availableWidgets", "onGeoSaved", "onOpenIntegration"])
578
690
  ])
579
- ], 10 /* CLASS, PROPS */, _hoisted_18)
691
+ ], 10 /* CLASS, PROPS */, _hoisted_19)
580
692
  ]),
581
693
  _: 3 /* FORWARDED */
582
694
  }, 8 /* PROPS */, ["layout", "editable", "columnOpts", "onLayoutChange"]))
583
695
  : createCommentVNode("v-if", true),
584
696
  ($options.hasStats)
585
- ? (openBlock(), createElementBlock("div", _hoisted_21, [
697
+ ? (openBlock(), createElementBlock("div", _hoisted_22, [
586
698
  renderSlot(_ctx.$slots, "stats-header", {}, () => [
587
699
  ($props.statsTitle)
588
- ? (openBlock(), createElementBlock("h3", _hoisted_22, toDisplayString($options.resolvedStatsTitle), 1 /* TEXT */))
700
+ ? (openBlock(), createElementBlock("h3", _hoisted_23, toDisplayString($options.resolvedStatsTitle), 1 /* TEXT */))
589
701
  : createCommentVNode("v-if", true)
590
702
  ]),
591
- createElementVNode("table", _hoisted_23, [
703
+ createElementVNode("table", _hoisted_24, [
592
704
  ($props.statsColumns.length > 0)
593
- ? (openBlock(), createElementBlock("thead", _hoisted_24, [
705
+ ? (openBlock(), createElementBlock("thead", _hoisted_25, [
594
706
  createElementVNode("tr", null, [
595
707
  (openBlock(true), createElementBlock(Fragment, null, renderList($props.statsColumns, (col) => {
596
708
  return (openBlock(), createElementBlock("th", {
@@ -621,14 +733,14 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
621
733
  ])
622
734
  ])
623
735
  ]))
624
- : (openBlock(), createElementBlock("div", _hoisted_25, [
736
+ : (openBlock(), createElementBlock("div", _hoisted_26, [
625
737
  (!$options.hasBodyGrid)
626
- ? (openBlock(), createElementBlock("div", _hoisted_26, [
738
+ ? (openBlock(), createElementBlock("div", _hoisted_27, [
627
739
  renderSlot(_ctx.$slots, "default")
628
740
  ]))
629
741
  : createCommentVNode("v-if", true),
630
742
  (_ctx.$slots.sections)
631
- ? (openBlock(), createElementBlock("div", _hoisted_27, [
743
+ ? (openBlock(), createElementBlock("div", _hoisted_28, [
632
744
  renderSlot(_ctx.$slots, "sections")
633
745
  ]))
634
746
  : createCommentVNode("v-if", true)
@@ -643,9 +755,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
643
755
  }, null, 8 /* PROPS */, ["sections", "context"]))
644
756
  : createCommentVNode("v-if", true),
645
757
  (($props.relatedCollections && $props.relatedCollections.length > 0) || ($props.relationLinks && $props.relationLinks.length > 0))
646
- ? (openBlock(), createElementBlock("div", _hoisted_28, [
758
+ ? (openBlock(), createElementBlock("div", _hoisted_29, [
647
759
  ($props.relationLinks && $props.relationLinks.length > 0)
648
- ? (openBlock(), createElementBlock("div", _hoisted_29, [
760
+ ? (openBlock(), createElementBlock("div", _hoisted_30, [
649
761
  (openBlock(true), createElementBlock(Fragment, null, renderList($props.relationLinks, (link, li) => {
650
762
  return (openBlock(), createBlock(_component_NcButton, {
651
763
  key: li,
@@ -692,20 +804,67 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
692
804
  }, null, 8 /* PROPS */, ["sections", "context"]))
693
805
  : createCommentVNode("v-if", true),
694
806
  (_ctx.$slots.footer)
695
- ? (openBlock(), createElementBlock("div", _hoisted_30, [
807
+ ? (openBlock(), createElementBlock("div", _hoisted_31, [
696
808
  renderSlot(_ctx.$slots, "footer")
697
809
  ]))
698
810
  : createCommentVNode("v-if", true)
699
811
  ])),
812
+ ($options.showsSideColumn)
813
+ ? (openBlock(), createElementBlock("aside", {
814
+ key: 10,
815
+ class: "cn-detail-page__side",
816
+ "aria-label": $options.sideColumnLabel,
817
+ "data-testid": "cn-detail-page-side"
818
+ }, [
819
+ (openBlock(true), createElementBlock(Fragment, null, renderList($options.sideColumnWidgets, (widget) => {
820
+ return (openBlock(), createElementBlock("div", {
821
+ key: `side-${widget.id}`,
822
+ class: "cn-detail-page__side-item",
823
+ "data-testid": `cn-detail-page-side-${widget.id}`
824
+ }, [
825
+ renderSlot(_ctx.$slots, `widget-${widget.id}`, {
826
+ item: { id: widget.id, widgetId: widget.id },
827
+ widget: widget,
828
+ objectId: $props.objectId,
829
+ object: $options.resolvedObject,
830
+ objectData: $options.resolvedObject,
831
+ objectType: $options.resolvedObjectType,
832
+ register: $props.register,
833
+ schema: $props.schema
834
+ }, () => [
835
+ createVNode(_component_CnDetailWidgetHost, {
836
+ widget: widget,
837
+ chrome: "card",
838
+ showCardTitle: true,
839
+ objectId: $props.objectId,
840
+ object: $options.currentObject,
841
+ objectType: $options.resolvedObjectType,
842
+ schemaObject: $options.currentSchema,
843
+ register: $props.register,
844
+ schema: $props.schema,
845
+ store: $options.effectiveObjectStore,
846
+ surface: $props.surface,
847
+ integrationContext: $options.effectiveIntegrationContext,
848
+ hideEmpty: $props.hideEmpty,
849
+ cnRegistry: $options.cnRegistry,
850
+ availableWidgets: _ctx.widgets,
851
+ onGeoSaved: $options.onGeoSaved,
852
+ onOpenIntegration: $options.onAutoBodyOpenIntegration
853
+ }, null, 8 /* PROPS */, ["widget", "objectId", "object", "objectType", "schemaObject", "register", "schema", "store", "surface", "integrationContext", "hideEmpty", "cnRegistry", "availableWidgets", "onGeoSaved", "onOpenIntegration"])
854
+ ])
855
+ ], 8 /* PROPS */, _hoisted_33))
856
+ }), 128 /* KEYED_FRAGMENT */))
857
+ ], 8 /* PROPS */, _hoisted_32))
858
+ : createCommentVNode("v-if", true),
700
859
  ($data.showWidgetConfig)
701
860
  ? (openBlock(), createBlock(_component_CnWidgetStyleEditorModal, {
702
- key: 9,
861
+ key: 11,
703
862
  show: $data.showWidgetConfig,
704
863
  widget: $options.configWidget,
705
864
  deletable: true,
706
865
  onSave: $options.onWidgetConfigSave,
707
866
  onDelete: $options.onWidgetConfigDelete,
708
- onClose: _cache[6] || (_cache[6] = $event => ($data.showWidgetConfig = false))
867
+ onClose: _cache[5] || (_cache[5] = $event => ($data.showWidgetConfig = false))
709
868
  }, null, 8 /* PROPS */, ["show", "widget", "onSave", "onDelete"]))
710
869
  : createCommentVNode("v-if", true),
711
870
  renderSlot(_ctx.$slots, "form-dialog", {
@@ -752,7 +911,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
752
911
  ]),
753
912
  ($data.activeRelationLink)
754
913
  ? (openBlock(), createBlock(_component_CnRelationLinkModal, {
755
- key: 10,
914
+ key: 12,
756
915
  title: $data.activeRelationLink.title || undefined,
757
916
  selectLabel: $data.activeRelationLink.selectLabel || undefined,
758
917
  register: $data.activeRelationLink.register,
@@ -763,10 +922,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
763
922
  currentObject: $options.currentObject || {},
764
923
  fkField: $data.activeRelationLink.fkField,
765
924
  onLinked: $options.onRelationLinked,
766
- onClose: _cache[7] || (_cache[7] = $event => ($data.activeRelationLink = null))
925
+ onClose: _cache[6] || (_cache[6] = $event => ($data.activeRelationLink = null))
767
926
  }, null, 8 /* PROPS */, ["title", "selectLabel", "register", "schema", "labelField", "allowCreate", "currentType", "currentObject", "fkField", "onLinked"]))
768
927
  : createCommentVNode("v-if", true)
769
- ], 4 /* STYLE */))
928
+ ], 6 /* CLASS, STYLE */))
770
929
  }
771
930
 
772
931
  export { render };