@conduction/nextcloud-vue 2.106.0 → 2.107.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 (135) hide show
  1. package/dist/esm/components/CnActionDialog/CnActionDialog.vue.js +9 -0
  2. package/dist/esm/components/CnActionDialog/CnActionDialog.vue.js.map +1 -0
  3. package/dist/esm/components/CnActionDialog/CnActionDialog.vue2.js +338 -0
  4. package/dist/esm/components/CnActionDialog/CnActionDialog.vue2.js.map +1 -0
  5. package/dist/esm/components/CnActionDialog/CnActionDialog.vue3.js +249 -0
  6. package/dist/esm/components/CnActionDialog/CnActionDialog.vue3.js.map +1 -0
  7. package/dist/esm/components/CnAdvancedFormDialog/CnPropertiesTab.vue2.js +2 -2
  8. package/dist/esm/components/CnAdvancedFormDialog/CnPropertiesTab.vue2.js.map +1 -1
  9. package/dist/esm/components/CnAppNav/CnAppNav.vue2.js.map +1 -1
  10. package/dist/esm/components/CnAppNav/CnAppNav.vue3.js +145 -138
  11. package/dist/esm/components/CnAppNav/CnAppNav.vue3.js.map +1 -1
  12. package/dist/esm/components/CnAppRoot/CnAppRoot.vue2.js +102 -2
  13. package/dist/esm/components/CnAppRoot/CnAppRoot.vue2.js.map +1 -1
  14. package/dist/esm/components/CnAppRoot/CnAppRoot.vue3.js.map +1 -1
  15. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue.js +1 -1
  16. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js +83 -6
  17. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js.map +1 -1
  18. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js +4 -2
  19. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js.map +1 -1
  20. package/dist/esm/components/CnIcon/semanticIcons.js +2 -2
  21. package/dist/esm/components/CnIcon/semanticIcons.js.map +1 -1
  22. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +389 -20
  23. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
  24. package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js +68 -35
  25. package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
  26. package/dist/esm/components/CnIndexPage/useSelfFetchList.js +22 -2
  27. package/dist/esm/components/CnIndexPage/useSelfFetchList.js.map +1 -1
  28. package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue2.js +69 -5
  29. package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue2.js.map +1 -1
  30. package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue3.js +38 -5
  31. package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue3.js.map +1 -1
  32. package/dist/esm/components/CnMapWidget/CnMapWidget.vue.js +1 -1
  33. package/dist/esm/components/CnMapWidget/CnMapWidget.vue2.js +7 -1
  34. package/dist/esm/components/CnMapWidget/CnMapWidget.vue2.js.map +1 -1
  35. package/dist/esm/components/CnMapWidget/CnMapWidget.vue3.js.map +1 -1
  36. package/dist/esm/components/CnPartyPicker/CnPartyPicker.vue.js +8 -0
  37. package/dist/esm/components/CnPartyPicker/CnPartyPicker.vue.js.map +1 -0
  38. package/dist/esm/components/CnPartyPicker/CnPartyPicker.vue2.js +297 -0
  39. package/dist/esm/components/CnPartyPicker/CnPartyPicker.vue2.js.map +1 -0
  40. package/dist/esm/components/CnPartyPicker/CnPartyPicker.vue3.js +24 -0
  41. package/dist/esm/components/CnPartyPicker/CnPartyPicker.vue3.js.map +1 -0
  42. package/dist/esm/components/CnSavedViewEditDialog/CnSavedViewEditDialog.vue.js +9 -0
  43. package/dist/esm/components/CnSavedViewEditDialog/CnSavedViewEditDialog.vue.js.map +1 -0
  44. package/dist/esm/components/CnSavedViewEditDialog/CnSavedViewEditDialog.vue2.js +95 -0
  45. package/dist/esm/components/CnSavedViewEditDialog/CnSavedViewEditDialog.vue2.js.map +1 -0
  46. package/dist/esm/components/CnSavedViewEditDialog/CnSavedViewEditDialog.vue3.js +123 -0
  47. package/dist/esm/components/CnSavedViewEditDialog/CnSavedViewEditDialog.vue3.js.map +1 -0
  48. package/dist/esm/components/CnSavedViewShareDialog/CnSavedViewShareDialog.vue.js +1 -1
  49. package/dist/esm/components/CnSavedViewShareDialog/CnSavedViewShareDialog.vue2.js +13 -5
  50. package/dist/esm/components/CnSavedViewShareDialog/CnSavedViewShareDialog.vue2.js.map +1 -1
  51. package/dist/esm/components/CnSavedViewShareDialog/CnSavedViewShareDialog.vue3.js +3 -1
  52. package/dist/esm/components/CnSavedViewShareDialog/CnSavedViewShareDialog.vue3.js.map +1 -1
  53. package/dist/esm/components/CnSavedViewShareFields/CnSavedViewShareFields.vue.js +1 -1
  54. package/dist/esm/components/CnSavedViewShareFields/CnSavedViewShareFields.vue2.js +49 -23
  55. package/dist/esm/components/CnSavedViewShareFields/CnSavedViewShareFields.vue2.js.map +1 -1
  56. package/dist/esm/components/CnSavedViewShareFields/CnSavedViewShareFields.vue3.js +74 -27
  57. package/dist/esm/components/CnSavedViewShareFields/CnSavedViewShareFields.vue3.js.map +1 -1
  58. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue.js +0 -1
  59. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue.js.map +1 -1
  60. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue2.js +18 -413
  61. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue2.js.map +1 -1
  62. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue3.js +27 -214
  63. package/dist/esm/components/CnSavedViewsControl/CnSavedViewsControl.vue3.js.map +1 -1
  64. package/dist/esm/components/CnSavedViewsPanel/CnSavedViewsPanel.vue.js +9 -0
  65. package/dist/esm/components/CnSavedViewsPanel/CnSavedViewsPanel.vue.js.map +1 -0
  66. package/dist/esm/components/CnSavedViewsPanel/CnSavedViewsPanel.vue2.js +190 -0
  67. package/dist/esm/components/CnSavedViewsPanel/CnSavedViewsPanel.vue2.js.map +1 -0
  68. package/dist/esm/components/CnSavedViewsPanel/CnSavedViewsPanel.vue3.js +270 -0
  69. package/dist/esm/components/CnSavedViewsPanel/CnSavedViewsPanel.vue3.js.map +1 -0
  70. package/dist/esm/index.js +4 -0
  71. package/dist/esm/index.js.map +1 -1
  72. package/dist/esm/l10n/en.json.js +56 -1
  73. package/dist/esm/l10n/en.json.js.map +1 -1
  74. package/dist/esm/l10n/nl.json.js +56 -1
  75. package/dist/esm/l10n/nl.json.js.map +1 -1
  76. package/dist/esm/library-style.js +1 -1
  77. package/dist/esm/mixins/savedViewsList.js +235 -0
  78. package/dist/esm/mixins/savedViewsList.js.map +1 -0
  79. package/dist/esm/nextcloud-vue.css +348 -108
  80. package/dist/esm/utils/actionsDispatcher.js +2 -2
  81. package/dist/esm/utils/actionsDispatcher.js.map +1 -1
  82. package/dist/esm/utils/builtInModals.js +39 -0
  83. package/dist/esm/utils/builtInModals.js.map +1 -0
  84. package/dist/esm/utils/mapMarkerColor.js +121 -0
  85. package/dist/esm/utils/mapMarkerColor.js.map +1 -0
  86. package/dist/esm/utils/mergeManifestDelta.js +4 -0
  87. package/dist/esm/utils/mergeManifestDelta.js.map +1 -1
  88. package/dist/esm/utils/savedViewHelpers.js +59 -7
  89. package/dist/esm/utils/savedViewHelpers.js.map +1 -1
  90. package/dist/esm/utils/savedViewMenu.js +154 -0
  91. package/dist/esm/utils/savedViewMenu.js.map +1 -0
  92. package/dist/esm/utils/searchGroupSharees.js +50 -15
  93. package/dist/esm/utils/searchGroupSharees.js.map +1 -1
  94. package/dist/esm/utils/validateManifestV2.compiled.js +3 -3
  95. package/dist/esm/utils/validateManifestV2.compiled.js.map +1 -1
  96. package/dist/nextcloud-vue.cjs.js +13351 -10855
  97. package/dist/nextcloud-vue.cjs.js.map +2 -2
  98. package/dist/nextcloud-vue.css +348 -108
  99. package/l10n/en.json +56 -1
  100. package/l10n/nl.json +56 -1
  101. package/package.json +1 -1
  102. package/src/components/CnActionDialog/CnActionDialog.vue +545 -0
  103. package/src/components/CnActionDialog/index.js +12 -0
  104. package/src/components/CnAppNav/CnAppNav.vue +17 -0
  105. package/src/components/CnAppRoot/CnAppRoot.vue +102 -2
  106. package/src/components/CnDashboardPage/CnDashboardPage.vue +86 -7
  107. package/src/components/CnIndexPage/CnIndexPage.vue +409 -23
  108. package/src/components/CnIndexPage/useSelfFetchList.js +21 -1
  109. package/src/components/CnIndexSidebar/CnIndexSidebar.md +2 -0
  110. package/src/components/CnIndexSidebar/CnIndexSidebar.vue +91 -1
  111. package/src/components/CnMapWidget/CnMapWidget.vue +16 -1
  112. package/src/components/CnPartyPicker/CnPartyPicker.vue +317 -0
  113. package/src/components/CnPartyPicker/index.js +11 -0
  114. package/src/components/CnSavedViewEditDialog/CnSavedViewEditDialog.vue +192 -0
  115. package/src/components/CnSavedViewEditDialog/index.js +11 -0
  116. package/src/components/CnSavedViewShareDialog/CnSavedViewShareDialog.vue +21 -6
  117. package/src/components/CnSavedViewShareFields/CnSavedViewShareFields.vue +130 -37
  118. package/src/components/CnSavedViewsControl/CnSavedViewsControl.vue +36 -599
  119. package/src/components/CnSavedViewsPanel/CnSavedViewsPanel.vue +459 -0
  120. package/src/components/CnSavedViewsPanel/index.js +11 -0
  121. package/src/components/index.js +4 -0
  122. package/src/css/index-page.css +16 -0
  123. package/src/css/look-board-index.css +5 -3
  124. package/src/css/look-board.css +18 -3
  125. package/src/index.js +4 -0
  126. package/src/mixins/savedViewsList.js +231 -0
  127. package/src/schemas/app-manifest-v2.schema.json +98 -3
  128. package/src/utils/actionsDispatcher.js +2 -2
  129. package/src/utils/builtInModals.js +35 -0
  130. package/src/utils/mapMarkerColor.js +117 -0
  131. package/src/utils/mergeManifestDelta.js +4 -0
  132. package/src/utils/savedViewHelpers.js +58 -6
  133. package/src/utils/savedViewMenu.js +150 -0
  134. package/src/utils/searchGroupSharees.js +49 -14
  135. package/src/utils/validateManifestV2.compiled.js +3 -3
@@ -32,19 +32,20 @@ const _hoisted_8 = {
32
32
  };
33
33
  const _hoisted_9 = ["data-testid"];
34
34
  const _hoisted_10 = ["data-testid"];
35
- const _hoisted_11 = {
35
+ const _hoisted_11 = ["data-testid"];
36
+ const _hoisted_12 = {
36
37
  key: 0,
37
38
  class: "cn-app-nav__card",
38
39
  "data-testid": "cn-nav-card"
39
40
  };
40
- const _hoisted_12 = { class: "cn-app-nav__card-title" };
41
- const _hoisted_13 = {
41
+ const _hoisted_13 = { class: "cn-app-nav__card-title" };
42
+ const _hoisted_14 = {
42
43
  key: 0,
43
44
  class: "cn-app-nav__card-text"
44
45
  };
45
- const _hoisted_14 = ["data-testid"];
46
- const _hoisted_15 = { class: "cn-app-nav__settings-list" };
47
- const _hoisted_16 = ["data-testid"];
46
+ const _hoisted_15 = ["data-testid"];
47
+ const _hoisted_16 = { class: "cn-app-nav__settings-list" };
48
+ const _hoisted_17 = ["data-testid"];
48
49
 
49
50
  function render(_ctx, _cache, $props, $setup, $data, $options) {
50
51
  const _component_CnActionButtons = resolveComponent("CnActionButtons");
@@ -101,136 +102,142 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
101
102
  }
102
103
  : undefined
103
104
  ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["name", "data-testid"]))
104
- : (openBlock(), createBlock(_component_NcAppNavigationItem, {
105
- key: item.id,
106
- name: $options.resolveLabel(item),
107
- to: $options.linkTo(item),
108
- href: $options.linkHref(item),
109
- icon: $options.cssIconClass(item),
110
- active: $options.isActive(item),
111
- pinned: Boolean(item.pinned),
112
- allowCollapse: $options.visibleChildren(item).length > 0,
113
- open: $options.isItemOpen(item),
114
- "data-testid": `cn-nav-entry-${item.id}`,
115
- "data-cn-route": item.route,
116
- "onUpdate:open": $event => ($options.setItemOpen(item, $event)),
117
- onClick: $event => ($options.onItemClick(item, $event))
118
- }, createSlots({
119
- default: withCtx(() => [
120
- (openBlock(true), createElementBlock(Fragment, null, renderList($options.visibleChildren(item), (child) => {
121
- return (openBlock(), createBlock(_component_NcAppNavigationItem, {
122
- key: child.id,
123
- name: $options.resolveLabel(child),
124
- to: $options.linkTo(child),
125
- href: $options.linkHref(child),
126
- icon: $options.cssIconClass(child),
127
- active: $options.isActive(child),
128
- pinned: Boolean(child.pinned),
129
- "data-testid": `cn-nav-entry-${child.id}`,
130
- "data-cn-route": child.route,
131
- onClick: $event => ($options.onItemClick(child, $event))
132
- }, createSlots({ _: 2 /* DYNAMIC */ }, [
133
- ($options.mdiIconComponent(child) || $options.isRichIcon(child) || $options.isRegistryIcon(child) || $options.isUnresolvedIcon(child))
134
- ? {
135
- name: "icon",
136
- fn: withCtx(() => [
137
- ($options.mdiIconComponent(child))
138
- ? (openBlock(), createBlock(resolveDynamicComponent($options.mdiIconComponent(child)), {
139
- key: 0,
140
- size: 20
141
- }))
142
- : ($options.isUnresolvedIcon(child))
143
- ? (openBlock(), createBlock(_component_HelpCircleOutline, {
144
- key: 1,
105
+ : (item.type === 'hint')
106
+ ? (openBlock(), createElementBlock("li", {
107
+ key: item.id,
108
+ class: "cn-app-nav__hint",
109
+ "data-testid": `cn-nav-hint-${item.id}`
110
+ }, toDisplayString($options.resolveLabel(item)), 9 /* TEXT, PROPS */, _hoisted_9))
111
+ : (openBlock(), createBlock(_component_NcAppNavigationItem, {
112
+ key: item.id,
113
+ name: $options.resolveLabel(item),
114
+ to: $options.linkTo(item),
115
+ href: $options.linkHref(item),
116
+ icon: $options.cssIconClass(item),
117
+ active: $options.isActive(item),
118
+ pinned: Boolean(item.pinned),
119
+ allowCollapse: $options.visibleChildren(item).length > 0,
120
+ open: $options.isItemOpen(item),
121
+ "data-testid": `cn-nav-entry-${item.id}`,
122
+ "data-cn-route": item.route,
123
+ "onUpdate:open": $event => ($options.setItemOpen(item, $event)),
124
+ onClick: $event => ($options.onItemClick(item, $event))
125
+ }, createSlots({
126
+ default: withCtx(() => [
127
+ (openBlock(true), createElementBlock(Fragment, null, renderList($options.visibleChildren(item), (child) => {
128
+ return (openBlock(), createBlock(_component_NcAppNavigationItem, {
129
+ key: child.id,
130
+ name: $options.resolveLabel(child),
131
+ to: $options.linkTo(child),
132
+ href: $options.linkHref(child),
133
+ icon: $options.cssIconClass(child),
134
+ active: $options.isActive(child),
135
+ pinned: Boolean(child.pinned),
136
+ "data-testid": `cn-nav-entry-${child.id}`,
137
+ "data-cn-route": child.route,
138
+ onClick: $event => ($options.onItemClick(child, $event))
139
+ }, createSlots({ _: 2 /* DYNAMIC */ }, [
140
+ ($options.mdiIconComponent(child) || $options.isRichIcon(child) || $options.isRegistryIcon(child) || $options.isUnresolvedIcon(child))
141
+ ? {
142
+ name: "icon",
143
+ fn: withCtx(() => [
144
+ ($options.mdiIconComponent(child))
145
+ ? (openBlock(), createBlock(resolveDynamicComponent($options.mdiIconComponent(child)), {
146
+ key: 0,
145
147
  size: 20
146
148
  }))
147
- : (openBlock(), createBlock(_component_CnMenuItemIcon, {
148
- key: 2,
149
- icon: child.icon,
150
- size: 20
151
- }, null, 8 /* PROPS */, ["icon"]))
152
- ]),
153
- key: "0"
154
- }
155
- : undefined,
156
- ($options.resolveCount(child))
157
- ? {
158
- name: "counter",
159
- fn: withCtx(() => [
160
- ($setup.isBoard)
161
- ? (openBlock(), createElementBlock("span", {
162
- key: 0,
163
- class: normalizeClass(["cn-app-nav__count", { 'cn-app-nav__count--attention': $options.isAttention(child) }]),
164
- "data-testid": `cn-nav-count-${child.id}`
165
- }, toDisplayString($options.resolveCount(child)), 11 /* TEXT, CLASS, PROPS */, _hoisted_10))
166
- : (openBlock(), createBlock(_component_NcCounterBubble, {
167
- key: 1,
168
- count: $options.resolveCount(child),
169
- active: $options.isActive(child),
170
- type: $options.isAttention(child) ? 'highlighted' : undefined
171
- }, null, 8 /* PROPS */, ["count", "active", "type"]))
172
- ]),
173
- key: "1"
174
- }
175
- : undefined
176
- ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["name", "to", "href", "icon", "active", "pinned", "data-testid", "data-cn-route", "onClick"]))
177
- }), 128 /* KEYED_FRAGMENT */))
178
- ]),
179
- _: 2 /* DYNAMIC */
180
- }, [
181
- ($options.mdiIconComponent(item) || $options.isRichIcon(item) || $options.isRegistryIcon(item) || $options.isUnresolvedIcon(item))
182
- ? {
183
- name: "icon",
184
- fn: withCtx(() => [
185
- ($options.mdiIconComponent(item))
186
- ? (openBlock(), createBlock(resolveDynamicComponent($options.mdiIconComponent(item)), {
187
- key: 0,
188
- size: 20
189
- }))
190
- : ($options.isUnresolvedIcon(item))
191
- ? (openBlock(), createBlock(_component_HelpCircleOutline, {
192
- key: 1,
149
+ : ($options.isUnresolvedIcon(child))
150
+ ? (openBlock(), createBlock(_component_HelpCircleOutline, {
151
+ key: 1,
152
+ size: 20
153
+ }))
154
+ : (openBlock(), createBlock(_component_CnMenuItemIcon, {
155
+ key: 2,
156
+ icon: child.icon,
157
+ size: 20
158
+ }, null, 8 /* PROPS */, ["icon"]))
159
+ ]),
160
+ key: "0"
161
+ }
162
+ : undefined,
163
+ ($options.resolveCount(child))
164
+ ? {
165
+ name: "counter",
166
+ fn: withCtx(() => [
167
+ ($setup.isBoard)
168
+ ? (openBlock(), createElementBlock("span", {
169
+ key: 0,
170
+ class: normalizeClass(["cn-app-nav__count", { 'cn-app-nav__count--attention': $options.isAttention(child) }]),
171
+ "data-testid": `cn-nav-count-${child.id}`
172
+ }, toDisplayString($options.resolveCount(child)), 11 /* TEXT, CLASS, PROPS */, _hoisted_11))
173
+ : (openBlock(), createBlock(_component_NcCounterBubble, {
174
+ key: 1,
175
+ count: $options.resolveCount(child),
176
+ active: $options.isActive(child),
177
+ type: $options.isAttention(child) ? 'highlighted' : undefined
178
+ }, null, 8 /* PROPS */, ["count", "active", "type"]))
179
+ ]),
180
+ key: "1"
181
+ }
182
+ : undefined
183
+ ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["name", "to", "href", "icon", "active", "pinned", "data-testid", "data-cn-route", "onClick"]))
184
+ }), 128 /* KEYED_FRAGMENT */))
185
+ ]),
186
+ _: 2 /* DYNAMIC */
187
+ }, [
188
+ ($options.mdiIconComponent(item) || $options.isRichIcon(item) || $options.isRegistryIcon(item) || $options.isUnresolvedIcon(item))
189
+ ? {
190
+ name: "icon",
191
+ fn: withCtx(() => [
192
+ ($options.mdiIconComponent(item))
193
+ ? (openBlock(), createBlock(resolveDynamicComponent($options.mdiIconComponent(item)), {
194
+ key: 0,
193
195
  size: 20
194
196
  }))
195
- : (openBlock(), createBlock(_component_CnMenuItemIcon, {
196
- key: 2,
197
- icon: item.icon,
198
- size: 20
199
- }, null, 8 /* PROPS */, ["icon"]))
200
- ]),
201
- key: "0"
202
- }
203
- : undefined,
204
- ($options.resolveCount(item))
205
- ? {
206
- name: "counter",
207
- fn: withCtx(() => [
208
- ($setup.isBoard)
209
- ? (openBlock(), createElementBlock("span", {
210
- key: 0,
211
- class: normalizeClass(["cn-app-nav__count", { 'cn-app-nav__count--attention': $options.isAttention(item) }]),
212
- "data-testid": `cn-nav-count-${item.id}`
213
- }, toDisplayString($options.resolveCount(item)), 11 /* TEXT, CLASS, PROPS */, _hoisted_9))
214
- : (openBlock(), createBlock(_component_NcCounterBubble, {
215
- key: 1,
216
- count: $options.resolveCount(item),
217
- active: $options.isActive(item),
218
- type: $options.isAttention(item) ? 'highlighted' : undefined
219
- }, null, 8 /* PROPS */, ["count", "active", "type"]))
220
- ]),
221
- key: "1"
222
- }
223
- : undefined,
224
- ($options.hasItemActionsSlot(item))
225
- ? {
226
- name: "actions",
227
- fn: withCtx(() => [
228
- renderSlot(_ctx.$slots, `item-${item.id}-actions`, { item: item })
229
- ]),
230
- key: "2"
231
- }
232
- : undefined
233
- ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["name", "to", "href", "icon", "active", "pinned", "allowCollapse", "open", "data-testid", "data-cn-route", "onUpdate:open", "onClick"]))
197
+ : ($options.isUnresolvedIcon(item))
198
+ ? (openBlock(), createBlock(_component_HelpCircleOutline, {
199
+ key: 1,
200
+ size: 20
201
+ }))
202
+ : (openBlock(), createBlock(_component_CnMenuItemIcon, {
203
+ key: 2,
204
+ icon: item.icon,
205
+ size: 20
206
+ }, null, 8 /* PROPS */, ["icon"]))
207
+ ]),
208
+ key: "0"
209
+ }
210
+ : undefined,
211
+ ($options.resolveCount(item))
212
+ ? {
213
+ name: "counter",
214
+ fn: withCtx(() => [
215
+ ($setup.isBoard)
216
+ ? (openBlock(), createElementBlock("span", {
217
+ key: 0,
218
+ class: normalizeClass(["cn-app-nav__count", { 'cn-app-nav__count--attention': $options.isAttention(item) }]),
219
+ "data-testid": `cn-nav-count-${item.id}`
220
+ }, toDisplayString($options.resolveCount(item)), 11 /* TEXT, CLASS, PROPS */, _hoisted_10))
221
+ : (openBlock(), createBlock(_component_NcCounterBubble, {
222
+ key: 1,
223
+ count: $options.resolveCount(item),
224
+ active: $options.isActive(item),
225
+ type: $options.isAttention(item) ? 'highlighted' : undefined
226
+ }, null, 8 /* PROPS */, ["count", "active", "type"]))
227
+ ]),
228
+ key: "1"
229
+ }
230
+ : undefined,
231
+ ($options.hasItemActionsSlot(item))
232
+ ? {
233
+ name: "actions",
234
+ fn: withCtx(() => [
235
+ renderSlot(_ctx.$slots, `item-${item.id}-actions`, { item: item })
236
+ ]),
237
+ key: "2"
238
+ }
239
+ : undefined
240
+ ]), 1032 /* PROPS, DYNAMIC_SLOTS */, ["name", "to", "href", "icon", "active", "pinned", "allowCollapse", "open", "data-testid", "data-cn-route", "onUpdate:open", "onClick"]))
234
241
  ], 64 /* STABLE_FRAGMENT */))
235
242
  }), 256 /* UNKEYED_FRAGMENT */))
236
243
  ]),
@@ -329,10 +336,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
329
336
  fn: withCtx(() => [
330
337
  renderSlot(_ctx.$slots, "card", { card: $options.resolvedCard }, () => [
331
338
  ($options.resolvedCard)
332
- ? (openBlock(), createElementBlock("div", _hoisted_11, [
333
- createElementVNode("strong", _hoisted_12, toDisplayString($options.resolvedCard.title), 1 /* TEXT */),
339
+ ? (openBlock(), createElementBlock("div", _hoisted_12, [
340
+ createElementVNode("strong", _hoisted_13, toDisplayString($options.resolvedCard.title), 1 /* TEXT */),
334
341
  ($options.resolvedCard.text)
335
- ? (openBlock(), createElementBlock("span", _hoisted_13, toDisplayString($options.resolvedCard.text), 1 /* TEXT */))
342
+ ? (openBlock(), createElementBlock("span", _hoisted_14, toDisplayString($options.resolvedCard.text), 1 /* TEXT */))
336
343
  : createCommentVNode("v-if", true),
337
344
  ($options.resolvedCard.linkTag)
338
345
  ? (openBlock(), createBlock(resolveDynamicComponent($options.resolvedCard.linkTag), mergeProps({
@@ -414,7 +421,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
414
421
  key: 0,
415
422
  class: normalizeClass(["cn-app-nav__count", { 'cn-app-nav__count--attention': $options.isAttention(item) }]),
416
423
  "data-testid": `cn-nav-count-${item.id}`
417
- }, toDisplayString($options.resolveCount(item)), 11 /* TEXT, CLASS, PROPS */, _hoisted_14))
424
+ }, toDisplayString($options.resolveCount(item)), 11 /* TEXT, CLASS, PROPS */, _hoisted_15))
418
425
  : (openBlock(), createBlock(_component_NcCounterBubble, {
419
426
  key: 1,
420
427
  count: $options.resolveCount(item),
@@ -454,7 +461,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
454
461
  "data-testid": "cn-nav-settings"
455
462
  }, {
456
463
  default: withCtx(() => [
457
- createElementVNode("ul", _hoisted_15, [
464
+ createElementVNode("ul", _hoisted_16, [
458
465
  ($options.includePersonalSettings)
459
466
  ? (openBlock(), createBlock(_component_NcAppNavigationItem, {
460
467
  key: 0,
@@ -589,7 +596,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
589
596
  key: 0,
590
597
  class: normalizeClass(["cn-app-nav__count", { 'cn-app-nav__count--attention': $options.isAttention(item) }]),
591
598
  "data-testid": `cn-nav-count-${item.id}`
592
- }, toDisplayString($options.resolveCount(item)), 11 /* TEXT, CLASS, PROPS */, _hoisted_16))
599
+ }, toDisplayString($options.resolveCount(item)), 11 /* TEXT, CLASS, PROPS */, _hoisted_17))
593
600
  : (openBlock(), createBlock(_component_NcCounterBubble, {
594
601
  key: 1,
595
602
  count: $options.resolveCount(item),