@conduction/nextcloud-vue 2.137.0 → 2.138.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 (86) hide show
  1. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue.js +1 -1
  2. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js +6 -4
  3. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue2.js.map +1 -1
  4. package/dist/esm/components/CnCellRenderer/CnCellRenderer.vue3.js.map +1 -1
  5. package/dist/esm/components/CnDetailCard/CnDetailCard.vue.js +1 -1
  6. package/dist/esm/components/CnDetailCard/CnDetailCard.vue2.js +6 -0
  7. package/dist/esm/components/CnDetailCard/CnDetailCard.vue2.js.map +1 -1
  8. package/dist/esm/components/CnDetailCard/CnDetailCard.vue3.js +24 -7
  9. package/dist/esm/components/CnDetailCard/CnDetailCard.vue3.js.map +1 -1
  10. package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue.js +1 -1
  11. package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue2.js +2 -0
  12. package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue2.js.map +1 -1
  13. package/dist/esm/components/CnDetailWidgetHost/CnDetailWidgetHost.vue3.js.map +1 -1
  14. package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue.js +1 -1
  15. package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js +43 -1
  16. package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue2.js.map +1 -1
  17. package/dist/esm/components/CnFilesBrowser/CnFilesBrowser.vue3.js.map +1 -1
  18. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +34 -2
  19. package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
  20. package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js +23 -15
  21. package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
  22. package/dist/esm/components/CnMailTab/dashboardRegistration.js +4 -0
  23. package/dist/esm/components/CnMailTab/dashboardRegistration.js.map +1 -1
  24. package/dist/esm/components/CnNotificationMatrix/CnNotificationMatrix.vue.js +1 -1
  25. package/dist/esm/components/CnNotificationMatrix/CnNotificationMatrix.vue2.js.map +1 -1
  26. package/dist/esm/components/CnNotificationMatrix/CnNotificationMatrix.vue3.js.map +1 -1
  27. package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue.js +1 -1
  28. package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue2.js +2 -0
  29. package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue2.js.map +1 -1
  30. package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue3.js +2 -1
  31. package/dist/esm/components/CnObjectSidebar/CnFilesTab.vue3.js.map +1 -1
  32. package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue.js +1 -1
  33. package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue2.js +6 -0
  34. package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue2.js.map +1 -1
  35. package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue3.js +3 -3
  36. package/dist/esm/components/CnOrderedListField/CnOrderedListField.vue3.js.map +1 -1
  37. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue.js +1 -1
  38. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js +16 -0
  39. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue2.js.map +1 -1
  40. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js +11 -5
  41. package/dist/esm/components/CnRecordListWidget/CnRecordListWidget.vue3.js.map +1 -1
  42. package/dist/esm/components/CnSavedViewMenuSettings/CnSavedViewMenuSettings.vue.js +1 -1
  43. package/dist/esm/components/CnSavedViewMenuSettings/CnSavedViewMenuSettings.vue2.js.map +1 -1
  44. package/dist/esm/components/CnSavedViewMenuSettings/CnSavedViewMenuSettings.vue3.js +1 -0
  45. package/dist/esm/components/CnSavedViewMenuSettings/CnSavedViewMenuSettings.vue3.js.map +1 -1
  46. package/dist/esm/components/CnUserSettingsDialog/CnUserSettingsDialog.vue.js +1 -1
  47. package/dist/esm/components/CnUserSettingsDialog/CnUserSettingsDialog.vue2.js.map +1 -1
  48. package/dist/esm/components/CnUserSettingsDialog/CnUserSettingsDialog.vue3.js.map +1 -1
  49. package/dist/esm/composables/indexSources.js +36 -9
  50. package/dist/esm/composables/indexSources.js.map +1 -1
  51. package/dist/esm/l10n/en.json.js +10 -1
  52. package/dist/esm/l10n/en.json.js.map +1 -1
  53. package/dist/esm/l10n/nl.json.js +10 -1
  54. package/dist/esm/l10n/nl.json.js.map +1 -1
  55. package/dist/esm/library-style.js +1 -1
  56. package/dist/esm/nextcloud-vue.css +431 -360
  57. package/dist/esm/utils/resolveFilterTokens.js +9 -0
  58. package/dist/esm/utils/resolveFilterTokens.js.map +1 -1
  59. package/dist/esm/utils/sentinelTokens.js +1 -1
  60. package/dist/esm/utils/sentinelTokens.js.map +1 -1
  61. package/dist/nextcloud-vue.cjs.js +418 -221
  62. package/dist/nextcloud-vue.cjs.js.map +2 -2
  63. package/dist/nextcloud-vue.css +431 -360
  64. package/l10n/en.json +10 -1
  65. package/l10n/nl.json +10 -1
  66. package/package.json +1 -1
  67. package/src/components/CnCellRenderer/CnCellRenderer.vue +6 -4
  68. package/src/components/CnDetailCard/CnDetailCard.md +1 -0
  69. package/src/components/CnDetailCard/CnDetailCard.vue +25 -1
  70. package/src/components/CnDetailWidgetHost/CnDetailWidgetHost.vue +2 -0
  71. package/src/components/CnFilesBrowser/CnFilesBrowser.vue +43 -1
  72. package/src/components/CnIndexPage/CnIndexPage.vue +34 -1
  73. package/src/components/CnMailTab/dashboardRegistration.js +4 -0
  74. package/src/components/CnNotificationMatrix/CnNotificationMatrix.vue +4 -0
  75. package/src/components/CnObjectSidebar/CnFilesTab.vue +3 -0
  76. package/src/components/CnOrderedListField/CnOrderedListField.vue +11 -1
  77. package/src/components/CnRecordListWidget/CnRecordListWidget.vue +22 -3
  78. package/src/components/CnSavedViewMenuSettings/CnSavedViewMenuSettings.vue +1 -0
  79. package/src/components/CnUserSettingsDialog/CnUserSettingsDialog.vue +3 -0
  80. package/src/composables/indexSources.js +36 -9
  81. package/src/css/dialog.css +8 -0
  82. package/src/css/index-page.css +5 -0
  83. package/src/css/look-board-detail.css +12 -0
  84. package/src/css/look-board.css +26 -0
  85. package/src/utils/resolveFilterTokens.js +9 -0
  86. package/src/utils/sentinelTokens.js +1 -1
@@ -43,6 +43,9 @@
43
43
  * - `@object.<field>` → a field off the current detail-page object (needs `ctx`)
44
44
  * - `@workspace.<key>` → a value off the page-level workspace context (needs `ctx.workspace`)
45
45
  * - `@config.<key>` → a value off the page-level app config (needs `ctx.config`)
46
+ * - `@context.<name>.<path>` → a value off a record the detail page reads beside
47
+ * the loaded one (needs `ctx.context`); left as written
48
+ * while that record is not read
46
49
  *
47
50
  * `@objectId` / `@object.<field>` are OBJECT-CONTEXT tokens: they resolve only
48
51
  * when a `ctx` `{ objectId, object }` is supplied (a detail page provides it via
@@ -75,6 +78,7 @@ import { getCurrentUser } from '@nextcloud/auth'
75
78
  // userGroupsPeek, not widgetVisibility: that one imports @nextcloud/axios, and
76
79
  // this resolver runs on public pages and in node (see userGroupsPeek.js).
77
80
  import { peekMyTeam } from './myTeam.js'
81
+ import { readPath } from './readPath.js'
78
82
  import { TODAY_DELTA_RE } from './sentinelTokens.js'
79
83
  import { peekCurrentUserGroups } from './userGroupsPeek.js'
80
84
 
@@ -195,6 +199,11 @@ export function resolveFilterValue(v, ctx) {
195
199
  }
196
200
  return v
197
201
  }
202
+ if (v.startsWith('@context.')) {
203
+ // @spec openspec/changes/files-second-line-fields/specs/files-second-line-fields/spec.md#requirement-widget-props-can-read-the-detail-pages-context-records
204
+ const found = ctx && ctx.context ? readPath(ctx.context, v.slice('@context.'.length)) : undefined
205
+ return found === undefined ? v : found
206
+ }
198
207
  if (v.startsWith('@workspace.')) {
199
208
  // A trailing `?` marks the token OPTIONAL: when unset the caller drops the
200
209
  // filter key (show all) instead of waiting (see hasUnresolvedTokens /
@@ -188,7 +188,7 @@ export const SENTINEL_VOCABULARY = Object.freeze({
188
188
  members: ['@subject.<field>'],
189
189
  },
190
190
  context: {
191
- resolver: 'CnDetailPage visibilityContext (detailWidgetVisibility), read by a grid widget\'s or a tab\'s visibleWhen',
191
+ resolver: 'CnDetailPage visibilityContext (detailWidgetVisibility), read by a grid widget\'s or a tab\'s visibleWhen, and by a widget\'s props (CnDetailWidgetHost)',
192
192
  description: 'A record the detail page reads beside the loaded one, named in `config.visibilityContext` (a case\'s case type). A `visibleWhen` field reads it as `@context.<name>.<field>`, dot paths allowed (`@context.caseType.category`).',
193
193
  members: ['@context.<name>.<field>'],
194
194
  },