@conduction/nextcloud-vue 2.56.0-beta.63 → 2.56.0-beta.65
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.
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue.js +1 -1
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue2.js +115 -12
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue2.js.map +1 -1
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue3.js +36 -9
- package/dist/esm/components/CnActionDialog/CnActionDialog.vue3.js.map +1 -1
- package/dist/esm/components/CnAppRoot/CnAppRoot.vue2.js +2 -1
- package/dist/esm/components/CnAppRoot/CnAppRoot.vue2.js.map +1 -1
- package/dist/esm/components/CnAppRoot/CnAppRoot.vue3.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js +20 -0
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue2.js.map +1 -1
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js +68 -61
- package/dist/esm/components/CnDetailPage/CnDetailPage.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js +37 -12
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue2.js.map +1 -1
- package/dist/esm/components/CnIndexPage/CnIndexPage.vue3.js.map +1 -1
- package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue2.js.map +1 -1
- package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue3.js +1 -1
- package/dist/esm/components/CnIndexSidebar/CnIndexSidebar.vue3.js.map +1 -1
- package/dist/esm/components/CnWorkQueue/CnWorkQueue.vue.js +1 -1
- package/dist/esm/components/CnWorkQueue/CnWorkQueue.vue2.js +8 -1
- package/dist/esm/components/CnWorkQueue/CnWorkQueue.vue2.js.map +1 -1
- package/dist/esm/components/CnWorkQueue/CnWorkQueue.vue3.js.map +1 -1
- package/dist/esm/library-style.js +1 -1
- package/dist/esm/nextcloud-vue.css +131 -64
- package/dist/esm/utils/actionsDispatcher.js +5 -2
- package/dist/esm/utils/actionsDispatcher.js.map +1 -1
- package/dist/esm/utils/savedViewHelpers.js +40 -3
- package/dist/esm/utils/savedViewHelpers.js.map +1 -1
- package/dist/nextcloud-vue.cjs.js +479 -251
- package/dist/nextcloud-vue.cjs.js.map +2 -2
- package/dist/nextcloud-vue.css +131 -64
- package/package.json +1 -1
- package/src/components/CnActionDialog/CnActionDialog.vue +134 -13
- package/src/components/CnAppRoot/CnAppRoot.vue +2 -1
- package/src/components/CnDetailPage/CnDetailPage.vue +35 -11
- package/src/components/CnIndexPage/CnIndexPage.md +1 -1
- package/src/components/CnIndexPage/CnIndexPage.vue +37 -12
- package/src/components/CnIndexSidebar/CnIndexSidebar.md +1 -1
- package/src/components/CnIndexSidebar/CnIndexSidebar.vue +2 -2
- package/src/components/CnWorkQueue/CnWorkQueue.vue +8 -1
- package/src/css/board.css +5 -2
- package/src/css/look-board-detail.css +19 -7
- package/src/css/look-board-index.css +14 -10
- package/src/css/look-board-reports.css +1 -1
- package/src/css/look-board.css +54 -9
- package/src/utils/actionsDispatcher.js +4 -1
- package/src/utils/savedViewHelpers.js +39 -2
|
@@ -55,7 +55,7 @@ import { isRowActionVisible, rowActionPayload } from '../../utils/rowActionItem.
|
|
|
55
55
|
import { isNewTabClick, preventMiddleClickAutoscroll, isRowMiddleClick, isNewTabHandled, markNewTabHandled } from '../../utils/rowAuxClick.js';
|
|
56
56
|
import { compileRowClass } from '../../utils/rowClassRules.js';
|
|
57
57
|
import { DEFAULT_ROW_INDICATOR_CAP } from '../../utils/rowIndicators.js';
|
|
58
|
-
import { defaultFilterViews, viewMatchesScope, normalizeSharedWith, extractViewState, buildRouteQueryFromViewState, extractViewStateFromRouteQuery, buildViewCreatePayload, savedViewScope, schemaSlug } from '../../utils/savedViewHelpers.js';
|
|
58
|
+
import { defaultFilterViews, pageOffersSavedViews, viewMatchesScope, normalizeSharedWith, extractViewState, buildRouteQueryFromViewState, extractViewStateFromRouteQuery, buildViewCreatePayload, savedViewScope, schemaSlug } from '../../utils/savedViewHelpers.js';
|
|
59
59
|
import { savedViewOverrides, savedViewBadge } from '../../utils/savedViewOverrides.js';
|
|
60
60
|
import { fieldsFromSchema, columnsFromSchema } from '../../utils/schema.js';
|
|
61
61
|
import { resolveScopeLayout, resolveScopePresentation } from '../../utils/scopeListLayout.js';
|
|
@@ -180,11 +180,22 @@ function declaredFilterFields(props) {
|
|
|
180
180
|
* @return {object} The `{ fieldKey: values }` map, empty when the link carries none.
|
|
181
181
|
*/
|
|
182
182
|
function namedFiltersFromRoute(instance, props) {
|
|
183
|
+
const route = instance && instance.proxy && instance.proxy.$route;
|
|
184
|
+
return namedFiltersFromQuery((route && route.query) || {}, props)
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* The named-source filters a query carries, as `namedFiltersFromRoute` reads them.
|
|
189
|
+
*
|
|
190
|
+
* @param {object} query The route query.
|
|
191
|
+
* @param {object} props The CnIndexPage props.
|
|
192
|
+
*
|
|
193
|
+
* @return {object} The `{ fieldKey: values }` map.
|
|
194
|
+
*/
|
|
195
|
+
function namedFiltersFromQuery(query, props) {
|
|
183
196
|
if (!props.entitySource) {
|
|
184
197
|
return {}
|
|
185
198
|
}
|
|
186
|
-
const route = instance && instance.proxy && instance.proxy.$route;
|
|
187
|
-
const query = (route && route.query) || {};
|
|
188
199
|
const properties = declaredFilterFields(props);
|
|
189
200
|
const out = {};
|
|
190
201
|
|
|
@@ -1627,9 +1638,11 @@ var script = {
|
|
|
1627
1638
|
},
|
|
1628
1639
|
|
|
1629
1640
|
/**
|
|
1630
|
-
*
|
|
1631
|
-
*
|
|
1632
|
-
*
|
|
1641
|
+
* Saved views (saved-views-ui). Unset, the sidebar's Views tab is on
|
|
1642
|
+
* for every page with a sidebar and a source a view can be scoped to
|
|
1643
|
+
* (register and schema, `entitySource` or `savedViewsScope`); `false`
|
|
1644
|
+
* turns it off. `true` also forces the sidebar and adds the toolbar
|
|
1645
|
+
* control, where a Views dropdown lists the
|
|
1633
1646
|
* current user's OpenRegister saved-search views
|
|
1634
1647
|
* (`GET /apps/openregister/api/views`); applying one writes its
|
|
1635
1648
|
* stored filters/search/sort into the route query (reusing the
|
|
@@ -1641,7 +1654,7 @@ var script = {
|
|
|
1641
1654
|
*/
|
|
1642
1655
|
allowSavedViews: {
|
|
1643
1656
|
type: Boolean,
|
|
1644
|
-
default:
|
|
1657
|
+
default: null,
|
|
1645
1658
|
},
|
|
1646
1659
|
|
|
1647
1660
|
/**
|
|
@@ -4203,7 +4216,7 @@ var script = {
|
|
|
4203
4216
|
* @spec openspec/changes/saved-views-manage-and-defaults/tasks.md#task-6
|
|
4204
4217
|
*/
|
|
4205
4218
|
savedViewsForSidebar() {
|
|
4206
|
-
if (!this.
|
|
4219
|
+
if (!this.savedViewsOffered) {
|
|
4207
4220
|
return null
|
|
4208
4221
|
}
|
|
4209
4222
|
return {
|
|
@@ -5344,7 +5357,16 @@ var script = {
|
|
|
5344
5357
|
* @return {{ scope: string, register: string, schema: object|string|null }} The page's source.
|
|
5345
5358
|
*/
|
|
5346
5359
|
savedViewsPage() {
|
|
5347
|
-
return { scope: this.savedViewsScope, register: this.register, schema: this.schema }
|
|
5360
|
+
return { scope: this.savedViewsScope, register: this.register, schema: this.schema, source: this.entitySource }
|
|
5361
|
+
},
|
|
5362
|
+
|
|
5363
|
+
/**
|
|
5364
|
+
* Whether this page offers saved views in its sidebar.
|
|
5365
|
+
*
|
|
5366
|
+
* @return {boolean}
|
|
5367
|
+
*/
|
|
5368
|
+
savedViewsOffered() {
|
|
5369
|
+
return pageOffersSavedViews(this)
|
|
5348
5370
|
},
|
|
5349
5371
|
|
|
5350
5372
|
/**
|
|
@@ -6917,7 +6939,7 @@ var script = {
|
|
|
6917
6939
|
created() {
|
|
6918
6940
|
this.applyViewModeFromRoute();
|
|
6919
6941
|
this.pushAiContext();
|
|
6920
|
-
if (this.
|
|
6942
|
+
if (this.savedViewsOffered) {
|
|
6921
6943
|
this.fetchSavedViews();
|
|
6922
6944
|
}
|
|
6923
6945
|
this.selfActions = createSelfModeActions({
|
|
@@ -10025,8 +10047,8 @@ var script = {
|
|
|
10025
10047
|
|
|
10026
10048
|
/**
|
|
10027
10049
|
* Fetch the current user's saved views (own + public) from
|
|
10028
|
-
* OpenRegister's views API. Called from created() when
|
|
10029
|
-
*
|
|
10050
|
+
* OpenRegister's views API. Called from created() when the page
|
|
10051
|
+
* offers saved views.
|
|
10030
10052
|
*/
|
|
10031
10053
|
async fetchSavedViews() {
|
|
10032
10054
|
this.savedViewsLoading = true;
|
|
@@ -10096,6 +10118,9 @@ var script = {
|
|
|
10096
10118
|
query.savedView = this.appliedSavedViewId;
|
|
10097
10119
|
}
|
|
10098
10120
|
const nav = this.$router.replace({ query });
|
|
10121
|
+
if (this.isNamedSource) {
|
|
10122
|
+
this.namedActiveFilters = namedFiltersFromQuery(query, this);
|
|
10123
|
+
}
|
|
10099
10124
|
// Swallow the duplicate-navigation rejection (Vue Router 3)
|
|
10100
10125
|
// when the applied view matches the current query.
|
|
10101
10126
|
if (nav && typeof nav.catch === 'function') {
|