@conduction/nextcloud-vue 2.77.0 → 2.78.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 (82) hide show
  1. package/dist/esm/components/CnAiCompanion/CnAiCompanion.vue2.js +23 -0
  2. package/dist/esm/components/CnAiCompanion/CnAiCompanion.vue2.js.map +1 -1
  3. package/dist/esm/components/CnAiCompanion/CnAiCompanion.vue3.js.map +1 -1
  4. package/dist/esm/components/CnBoardView/CnBoardView.vue2.js +2 -1
  5. package/dist/esm/components/CnBoardView/CnBoardView.vue2.js.map +1 -1
  6. package/dist/esm/components/CnBoardView/CnBoardView.vue3.js.map +1 -1
  7. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js +37 -0
  8. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js.map +1 -1
  9. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js +8 -7
  10. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js.map +1 -1
  11. package/dist/esm/components/CnChartWidget/CnChartWidget.vue2.js +37 -0
  12. package/dist/esm/components/CnChartWidget/CnChartWidget.vue2.js.map +1 -1
  13. package/dist/esm/components/CnChartWidget/CnChartWidget.vue3.js +2 -2
  14. package/dist/esm/components/CnChartWidget/CnChartWidget.vue3.js.map +1 -1
  15. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js +29 -4
  16. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js.map +1 -1
  17. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js.map +1 -1
  18. package/dist/esm/components/CnDataTable/CnDataTable.vue2.js +7 -2
  19. package/dist/esm/components/CnDataTable/CnDataTable.vue2.js.map +1 -1
  20. package/dist/esm/components/CnDataTable/CnDataTable.vue3.js.map +1 -1
  21. package/dist/esm/components/CnDateRangePicker/CnDateRangePicker.vue.js +1 -1
  22. package/dist/esm/components/CnDateRangePicker/CnDateRangePicker.vue2.js +45 -2
  23. package/dist/esm/components/CnDateRangePicker/CnDateRangePicker.vue2.js.map +1 -1
  24. package/dist/esm/components/CnDateRangePicker/CnDateRangePicker.vue3.js.map +1 -1
  25. package/dist/esm/components/CnFormDialog/CnFormDialog.vue2.js +7 -1
  26. package/dist/esm/components/CnFormDialog/CnFormDialog.vue2.js.map +1 -1
  27. package/dist/esm/components/CnFormDialog/CnFormDialog.vue3.js.map +1 -1
  28. package/dist/esm/components/CnFormPage/CnFormPage.vue2.js +4 -1
  29. package/dist/esm/components/CnFormPage/CnFormPage.vue2.js.map +1 -1
  30. package/dist/esm/components/CnFormPage/CnFormPage.vue3.js.map +1 -1
  31. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +6 -0
  32. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
  33. package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
  34. package/dist/esm/components/CnStatWidget/CnStatWidget.vue2.js +36 -0
  35. package/dist/esm/components/CnStatWidget/CnStatWidget.vue2.js.map +1 -1
  36. package/dist/esm/components/CnStatWidget/CnStatWidget.vue3.js +35 -23
  37. package/dist/esm/components/CnStatWidget/CnStatWidget.vue3.js.map +1 -1
  38. package/dist/esm/components/CnStatusBadge/CnStatusBadge.vue2.js +6 -2
  39. package/dist/esm/components/CnStatusBadge/CnStatusBadge.vue2.js.map +1 -1
  40. package/dist/esm/components/CnStatusBadge/CnStatusBadge.vue3.js.map +1 -1
  41. package/dist/esm/composables/useFormDraft.js +11 -1
  42. package/dist/esm/composables/useFormDraft.js.map +1 -1
  43. package/dist/esm/composables/useObjectPresence.js +15 -4
  44. package/dist/esm/composables/useObjectPresence.js.map +1 -1
  45. package/dist/esm/l10n/en.json.js +7 -0
  46. package/dist/esm/l10n/en.json.js.map +1 -1
  47. package/dist/esm/l10n/nl.json.js +7 -0
  48. package/dist/esm/l10n/nl.json.js.map +1 -1
  49. package/dist/esm/nextcloud-vue.css +212 -1
  50. package/dist/esm/utils/badgeVariants.js +32 -0
  51. package/dist/esm/utils/badgeVariants.js.map +1 -0
  52. package/dist/esm/utils/validateManifestV2.compiled.js +2 -2
  53. package/dist/esm/utils/validateManifestV2.compiled.js.map +1 -1
  54. package/dist/nextcloud-vue.cjs.js +533 -233
  55. package/dist/nextcloud-vue.cjs.js.map +2 -2
  56. package/dist/nextcloud-vue.css +212 -1
  57. package/l10n/en.json +7 -0
  58. package/l10n/nl.json +7 -0
  59. package/package.json +1 -1
  60. package/src/components/CnAiCompanion/CnAiCompanion.vue +23 -0
  61. package/src/components/CnBoardView/CnBoardView.vue +2 -1
  62. package/src/components/CnCellRenderer/CnCellRenderer.md +1 -0
  63. package/src/components/CnCellRenderer/CnCellRenderer.vue +50 -8
  64. package/src/components/CnChartWidget/CnChartWidget.vue +39 -2
  65. package/src/components/CnDashboardPage/CnDashboardPage.vue +29 -4
  66. package/src/components/CnDataTable/CnDataTable.vue +7 -2
  67. package/src/components/CnDateRangePicker/CnDateRangePicker.vue +44 -1
  68. package/src/components/CnFormDialog/CnFormDialog.vue +7 -1
  69. package/src/components/CnFormPage/CnFormPage.vue +4 -1
  70. package/src/components/CnIndexPage/CnIndexPage.vue +6 -0
  71. package/src/components/CnStatWidget/CnStatWidget.vue +52 -2
  72. package/src/components/CnStatusBadge/CnStatusBadge.vue +6 -2
  73. package/src/composables/__tests__/useObjectPresence.spec.js +24 -0
  74. package/src/composables/useFormDraft.js +11 -1
  75. package/src/composables/useObjectPresence.js +15 -4
  76. package/src/css/badge.css +31 -0
  77. package/src/css/kpi-card.css +51 -0
  78. package/src/css/look-board-index.css +36 -0
  79. package/src/css/look-board.css +8 -0
  80. package/src/schemas/app-manifest-v2.schema.json +5 -5
  81. package/src/utils/badgeVariants.js +29 -0
  82. package/src/utils/validateManifestV2.compiled.js +2 -2
@@ -1184,9 +1184,45 @@ var script = {
1184
1184
  if (layout === 'vertical' || layout === 'stacked') {
1185
1185
  return layout
1186
1186
  }
1187
+ // Board look: every KPI tile on the screens is stacked, so a tile
1188
+ // that names no layout takes it. An explicit `horizontal` stays.
1189
+ if (this.isBoardLook && layout === undefined) {
1190
+ return 'stacked'
1191
+ }
1187
1192
  return 'horizontal'
1188
1193
  },
1189
1194
 
1195
+ /**
1196
+ * Whether the board look draws the icon in a tinted circle at the
1197
+ * right of the label row (`content.iconPlacement: "end"`), as the
1198
+ * DqDashboard tiles. Off without the board look and without an icon.
1199
+ *
1200
+ * @spec openspec/changes/screens-stat-tile-parity/specs/dashboard-page/spec.md#requirement-the-board-kpi-tile-can-carry-its-icon-at-the-end
1201
+ * @return {boolean}
1202
+ */
1203
+ hasEndBadge() {
1204
+ return this.isBoardLook
1205
+ && (this.content || {}).iconPlacement === 'end'
1206
+ && Boolean(this.resolvedIcon)
1207
+ },
1208
+
1209
+ /**
1210
+ * The tile's state as a tone name for the end badge: the variant the
1211
+ * value colour comes from (`success`, `warning`, `error`), else
1212
+ * `primary`. A custom `valueColor` has no tone and reads as primary.
1213
+ *
1214
+ * @spec openspec/changes/screens-stat-tile-parity/specs/dashboard-page/spec.md#requirement-the-board-kpi-tile-can-carry-its-icon-at-the-end
1215
+ * @return {'primary'|'success'|'warning'|'error'}
1216
+ */
1217
+ stateTone() {
1218
+ const color = this.variantColor;
1219
+ if (!color) {
1220
+ return 'primary'
1221
+ }
1222
+ const tone = ['success', 'warning', 'error'].find((name) => VARIANT_COLORS[name] === color);
1223
+ return tone || 'primary'
1224
+ },
1225
+
1190
1226
  /**
1191
1227
  * Whether the tile takes the stacked board look (`content.layout:
1192
1228
  * "stacked"`): a plain muted label, the number at 34px in the text