@conduction/nextcloud-vue 2.139.0 → 2.141.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 (144) hide show
  1. package/dist/esm/components/CnAppRoot/CnAppRoot.vue2.js +9 -2
  2. package/dist/esm/components/CnAppRoot/CnAppRoot.vue2.js.map +1 -1
  3. package/dist/esm/components/CnAppRoot/CnAppRoot.vue3.js.map +1 -1
  4. package/dist/esm/components/CnAssignDialog/CnAssignDialog.vue.js +1 -1
  5. package/dist/esm/components/CnAssignDialog/CnAssignDialog.vue2.js +10 -2
  6. package/dist/esm/components/CnAssignDialog/CnAssignDialog.vue2.js.map +1 -1
  7. package/dist/esm/components/CnAssignDialog/CnAssignDialog.vue3.js.map +1 -1
  8. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue.js +1 -1
  9. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js +28 -4
  10. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js.map +1 -1
  11. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js +2 -2
  12. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js.map +1 -1
  13. package/dist/esm/components/CnChartWidget/CnChartWidget.vue.js +1 -1
  14. package/dist/esm/components/CnChartWidget/CnChartWidget.vue2.js +64 -1
  15. package/dist/esm/components/CnChartWidget/CnChartWidget.vue2.js.map +1 -1
  16. package/dist/esm/components/CnChartWidget/CnChartWidget.vue3.js +76 -37
  17. package/dist/esm/components/CnChartWidget/CnChartWidget.vue3.js.map +1 -1
  18. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue.js +1 -1
  19. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js +106 -0
  20. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue2.js.map +1 -1
  21. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue3.js +30 -7
  22. package/dist/esm/components/CnConversationThread/CnConversationWidget.vue3.js.map +1 -1
  23. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue.js +1 -1
  24. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js +1 -0
  25. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue2.js.map +1 -1
  26. package/dist/esm/components/CnDashboardPage/CnDashboardPage.vue3.js.map +1 -1
  27. package/dist/esm/components/CnDataTable/CnDataTable.vue2.js +5 -3
  28. package/dist/esm/components/CnDataTable/CnDataTable.vue2.js.map +1 -1
  29. package/dist/esm/components/CnDataTable/CnDataTable.vue3.js +1 -0
  30. package/dist/esm/components/CnDataTable/CnDataTable.vue3.js.map +1 -1
  31. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue.js +1 -1
  32. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js +59 -3
  33. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue2.js.map +1 -1
  34. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js +44 -34
  35. package/dist/esm/components/CnFactsWidget/CnFactsWidget.vue3.js.map +1 -1
  36. package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue.js +1 -1
  37. package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js +28 -1
  38. package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js.map +1 -1
  39. package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue3.js.map +1 -1
  40. package/dist/esm/components/CnFilesBrowser/filesBrowser.js +7 -1
  41. package/dist/esm/components/CnFilesBrowser/filesBrowser.js.map +1 -1
  42. package/dist/esm/components/CnFilesBrowser/filesBrowserColumns.js +5 -0
  43. package/dist/esm/components/CnFilesBrowser/filesBrowserColumns.js.map +1 -1
  44. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +30 -2
  45. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
  46. package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
  47. package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue2.js +65 -1
  48. package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue2.js.map +1 -1
  49. package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue3.js +120 -69
  50. package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue3.js.map +1 -1
  51. package/dist/esm/components/CnMapWidget/CnMapWidget.vue.js +1 -1
  52. package/dist/esm/components/CnMapWidget/CnMapWidget.vue2.js +47 -9
  53. package/dist/esm/components/CnMapWidget/CnMapWidget.vue2.js.map +1 -1
  54. package/dist/esm/components/CnMapWidget/CnMapWidget.vue3.js.map +1 -1
  55. package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue.js +1 -1
  56. package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js +28 -3
  57. package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue2.js.map +1 -1
  58. package/dist/esm/components/CnObjectDataWidget/CnObjectDataWidget.vue3.js.map +1 -1
  59. package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue.js +1 -1
  60. package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue2.js +3 -3
  61. package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue2.js.map +1 -1
  62. package/dist/esm/components/CnObjectListWidget/CnObjectListWidget.vue3.js.map +1 -1
  63. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue.js +1 -1
  64. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js +2 -0
  65. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js.map +1 -1
  66. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js +1 -1
  67. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js.map +1 -1
  68. package/dist/esm/components/CnRecordListWidget/CnRecordNoteRows.vue.js +1 -1
  69. package/dist/esm/components/CnRecordListWidget/CnRecordNoteRows.vue2.js +20 -0
  70. package/dist/esm/components/CnRecordListWidget/CnRecordNoteRows.vue2.js.map +1 -1
  71. package/dist/esm/components/CnRecordListWidget/CnRecordNoteRows.vue3.js +34 -26
  72. package/dist/esm/components/CnRecordListWidget/CnRecordNoteRows.vue3.js.map +1 -1
  73. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue.js +1 -1
  74. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue2.js +12 -1
  75. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue2.js.map +1 -1
  76. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue3.js +1 -1
  77. package/dist/esm/components/CnStackedBarWidget/CnStackedBarWidget.vue3.js.map +1 -1
  78. package/dist/esm/components/CnTransitionInputFields/CnTransitionInputFields.vue.js +1 -1
  79. package/dist/esm/components/CnTransitionInputFields/CnTransitionInputFields.vue2.js +23 -1
  80. package/dist/esm/components/CnTransitionInputFields/CnTransitionInputFields.vue2.js.map +1 -1
  81. package/dist/esm/components/CnTransitionInputFields/CnTransitionInputFields.vue3.js +43 -13
  82. package/dist/esm/components/CnTransitionInputFields/CnTransitionInputFields.vue3.js.map +1 -1
  83. package/dist/esm/composables/indexSources.js +5 -2
  84. package/dist/esm/composables/indexSources.js.map +1 -1
  85. package/dist/esm/composables/useTaskInboxStore.js +4 -3
  86. package/dist/esm/composables/useTaskInboxStore.js.map +1 -1
  87. package/dist/esm/l10n/en.json.js +3 -1
  88. package/dist/esm/l10n/en.json.js.map +1 -1
  89. package/dist/esm/l10n/nl.json.js +6 -1
  90. package/dist/esm/l10n/nl.json.js.map +1 -1
  91. package/dist/esm/library-style.js +1 -1
  92. package/dist/esm/nextcloud-vue.css +961 -605
  93. package/dist/esm/utils/builtInFormatters.js +23 -1
  94. package/dist/esm/utils/builtInFormatters.js.map +1 -1
  95. package/dist/esm/utils/fillTemplate.js +7 -1
  96. package/dist/esm/utils/fillTemplate.js.map +1 -1
  97. package/dist/esm/utils/groupSublines.js +120 -0
  98. package/dist/esm/utils/groupSublines.js.map +1 -0
  99. package/dist/esm/utils/myTeam.js +24 -4
  100. package/dist/esm/utils/myTeam.js.map +1 -1
  101. package/dist/esm/utils/resolveFilterTokens.js +5 -4
  102. package/dist/esm/utils/resolveFilterTokens.js.map +1 -1
  103. package/dist/esm/utils/transitionInputs.js +43 -2
  104. package/dist/esm/utils/transitionInputs.js.map +1 -1
  105. package/dist/nextcloud-vue.cjs.js +1731 -846
  106. package/dist/nextcloud-vue.cjs.js.map +2 -2
  107. package/dist/nextcloud-vue.css +961 -605
  108. package/l10n/en.json +3 -1
  109. package/l10n/nl.json +6 -1
  110. package/package.json +1 -1
  111. package/src/components/CnAppRoot/CnAppRoot.vue +9 -2
  112. package/src/components/CnAssignDialog/CnAssignDialog.vue +10 -2
  113. package/src/components/CnCellRenderer/CnCellRenderer.vue +30 -6
  114. package/src/components/CnChartWidget/CnChartWidget.md +2 -0
  115. package/src/components/CnChartWidget/CnChartWidget.vue +121 -5
  116. package/src/components/CnConversationThread/CnConversationWidget.vue +126 -1
  117. package/src/components/CnDashboardPage/CnDashboardPage.vue +1 -0
  118. package/src/components/CnDataTable/CnDataTable.vue +6 -3
  119. package/src/components/CnFactsWidget/CnFactsWidget.vue +72 -5
  120. package/src/components/CnFilesBrowser/CnFilesBrowser.vue +28 -1
  121. package/src/components/CnFilesBrowser/filesBrowser.js +7 -1
  122. package/src/components/CnFilesBrowser/filesBrowserColumns.js +5 -0
  123. package/src/components/CnIndexPage/CnIndexPage.vue +30 -2
  124. package/src/components/CnIndexSidebar/CnIndexSidebar.vue +101 -3
  125. package/src/components/CnMapWidget/CnMapWidget.vue +47 -9
  126. package/src/components/CnObjectDataWidget/CnObjectDataWidget.vue +28 -3
  127. package/src/components/CnObjectListWidget/CnObjectListWidget.vue +3 -3
  128. package/src/components/CnRecordListWidget/CnRecordListWidget.vue +20 -1
  129. package/src/components/CnRecordListWidget/CnRecordNoteRows.vue +43 -9
  130. package/src/components/CnStackedBarWidget/CnStackedBarWidget.vue +68 -2
  131. package/src/components/CnTransitionInputFields/CnTransitionInputFields.vue +43 -1
  132. package/src/composables/indexSources.js +5 -2
  133. package/src/composables/useTaskInboxStore.js +4 -3
  134. package/src/css/dialog.css +13 -1
  135. package/src/css/look-board-detail.css +12 -9
  136. package/src/css/look-board-index.css +90 -7
  137. package/src/css/look-board.css +102 -2
  138. package/src/css/table.css +25 -0
  139. package/src/utils/builtInFormatters.js +22 -0
  140. package/src/utils/fillTemplate.js +7 -1
  141. package/src/utils/groupSublines.js +125 -0
  142. package/src/utils/myTeam.js +24 -4
  143. package/src/utils/resolveFilterTokens.js +5 -4
  144. package/src/utils/transitionInputs.js +42 -1
@@ -1,5 +1,6 @@
1
1
  import { subscribe, unsubscribe } from '@nextcloud/event-bus';
2
2
  import { translate, getLanguage } from '@nextcloud/l10n';
3
+ import { NcNoteCard } from '@nextcloud/vue';
3
4
  import { ref, inject, markRaw } from 'vue';
4
5
  import m from '../../node_modules/vue3-apexcharts/dist/vue3-apexcharts.js';
5
6
  import { useDataSource } from '../../composables/useDataSource.js';
@@ -251,7 +252,7 @@ function formatterFor(vf) {
251
252
  var script = {
252
253
  name: 'CnChartWidget',
253
254
 
254
- components: { CnEndpointNotice: __sfc_main },
255
+ components: { CnEndpointNotice: __sfc_main, NcNoteCard },
255
256
 
256
257
  inject: {
257
258
  /**
@@ -301,6 +302,18 @@ var script = {
301
302
  default: null,
302
303
  },
303
304
 
305
+ /**
306
+ * A `bar-list` without a track: each bar as long as its share and its
307
+ * value right after the bar's end (DqProcesanalyse "Doorlooptijd per
308
+ * status"). False, the default, keeps the track and the value column.
309
+ *
310
+ * @spec openspec/changes/chart-bar-list-value-at-end/specs/chart-bar-list-value-at-end/spec.md#requirement-a-bar-list-can-put-each-value-at-its-bars-end
311
+ */
312
+ barValueAtEnd: {
313
+ type: Boolean,
314
+ default: false,
315
+ },
316
+
304
317
  /**
305
318
  * A `matrix`'s row-label column width in px. Null, the default, sizes
306
319
  * the column to its longest label (at least 120px); a width wraps a
@@ -313,6 +326,24 @@ var script = {
313
326
  default: null,
314
327
  },
315
328
 
329
+ /**
330
+ * A toned note card under the chart whose words carry values from the
331
+ * page record: `{ lead?, text?, values?, labels?, tone? }`. `lead`
332
+ * (bold) and `text` go through the host's translate, then each
333
+ * `{name}` is filled from `values[name]`, a literal or a token such as
334
+ * `@object.recommendedIntervention`. `labels[name]` turns a key into
335
+ * words: `"rows"`, `"columns"` or `"values"` read the matrix's
336
+ * cellSource label maps, an object is its own map. `tone` is info
337
+ * (default), success, warning or error. Hidden while a value is
338
+ * missing, so a half-filled sentence never shows.
339
+ *
340
+ * @spec openspec/changes/chart-notice/specs/chart-notice/spec.md#requirement-a-chart-can-carry-a-notice-with-record-values
341
+ */
342
+ notice: {
343
+ type: Object,
344
+ default: null,
345
+ },
346
+
316
347
  /**
317
348
  * A line under the chart ("Klik een balk om de zaken te zien"),
318
349
  * through the host's translate: under the rows of a `bar-list` or
@@ -1447,6 +1478,38 @@ var script = {
1447
1478
  }
1448
1479
  },
1449
1480
 
1481
+ /**
1482
+ * The notice's bold lead, text and note-card type, values filled in;
1483
+ * null when there is none or a value is missing.
1484
+ *
1485
+ * @return {{lead: string, text: string, type: string}|null} The notice.
1486
+ * @spec openspec/changes/chart-notice/specs/chart-notice/spec.md#requirement-a-chart-can-carry-a-notice-with-record-values
1487
+ */
1488
+ noticeParts() {
1489
+ const def = this.notice;
1490
+ if (!def || typeof def !== 'object' || (!def.lead && !def.text)) {
1491
+ return null
1492
+ }
1493
+ const declared = def.values && typeof def.values === 'object' ? def.values : {};
1494
+ const resolved = resolveFilterTokens(declared, this.chartTokenCtx());
1495
+ const source = this.cellSource && typeof this.cellSource === 'object' ? this.cellSource : {};
1496
+ const maps = { rows: source.rowLabels, columns: source.columnLabels, values: source.valueLabels };
1497
+ const words = {};
1498
+ for (const name of Object.keys(declared)) {
1499
+ const raw = resolved[name];
1500
+ if (raw === null || raw === undefined || raw === '' || (typeof raw === 'string' && raw.charAt(0) === '@')) {
1501
+ return null
1502
+ }
1503
+ const ref = def.labels && def.labels[name];
1504
+ const map = typeof ref === 'string' ? maps[ref] : ref;
1505
+ const label = map && typeof map === 'object' && typeof map[String(raw)] === 'string' ? map[String(raw)] : null;
1506
+ words[name] = label ? this.hostTranslate(label) : String(raw);
1507
+ }
1508
+ const fill = (key) => (key ? this.hostTranslate(key).replace(/\{(\w+)\}/g, (match, name) => (name in words ? words[name] : match)) : '');
1509
+ const type = ['info', 'success', 'warning', 'error'].includes(def.tone) ? def.tone : 'info';
1510
+ return { lead: fill(def.lead), text: fill(def.text), type }
1511
+ },
1512
+
1450
1513
  /**
1451
1514
  * The matrix cell of the record (`highlight: { row, column }`, tokens
1452
1515
  * such as `@object.behaviour` resolved), as row and column indexes. A