@tachybase/client 1.6.12 → 1.6.14
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/es/block-provider/BlockProvider.mjs +26 -4
- package/es/block-provider/TreeBlockProvider.mjs +2 -0
- package/es/block-provider/hooks/index.mjs +5 -0
- package/es/filter-provider/FilterProvider.d.ts +3 -0
- package/es/filter-provider/FilterProvider.mjs +19 -1
- package/es/filter-provider/incomingFilterFromSources.d.ts +15 -0
- package/es/filter-provider/incomingFilterFromSources.mjs +23 -0
- package/es/filter-provider/index.d.ts +1 -0
- package/es/filter-provider/index.mjs +1 -0
- package/es/filter-provider/utils.mjs +2 -0
- package/es/modules/blocks/data-blocks/table/hooks/useTableBlockProps.mjs +6 -3
- package/lib/block-provider/BlockProvider.js +25 -3
- package/lib/block-provider/TreeBlockProvider.js +2 -0
- package/lib/block-provider/hooks/index.js +101 -93
- package/lib/filter-provider/FilterProvider.js +19 -1
- package/lib/filter-provider/incomingFilterFromSources.js +60 -0
- package/lib/filter-provider/index.js +12 -3
- package/lib/filter-provider/utils.js +2 -0
- package/lib/modules/blocks/data-blocks/table/hooks/useTableBlockProps.js +6 -3
- package/package.json +1 -1
|
@@ -8,7 +8,8 @@ import template from "lodash/template";
|
|
|
8
8
|
import { Link } from "react-router-dom";
|
|
9
9
|
import { ACLCollectionProvider, DataBlockProvider, TableFieldResource, WithoutTableFieldResource, useCollectionManager, useCollectionParentRecord, useCollectionParentRecordData, useCollectionRecord, useDataBlockProps, useDataBlockRequest, useDataBlockResource, useDesignable, useRecord } from "../index.mjs";
|
|
10
10
|
import { CollectionProvider_deprecated, useCollectionManager_deprecated, useCollection_deprecated } from "../collection-manager/index.mjs";
|
|
11
|
-
import { DataBlockCollector } from "../filter-provider/FilterProvider.mjs";
|
|
11
|
+
import { DataBlockCollector, useFilterBlock } from "../filter-provider/FilterProvider.mjs";
|
|
12
|
+
import { mergeIncomingFiltersFromSourceBlocks } from "../filter-provider/incomingFilterFromSources.mjs";
|
|
12
13
|
import { RecordProvider, useRecordIndex } from "../record-provider/index.mjs";
|
|
13
14
|
import { useAssociationNames } from "./hooks/index.mjs";
|
|
14
15
|
import { useDataBlockParentRecord } from "./hooks/useDataBlockSourceId.mjs";
|
|
@@ -172,24 +173,45 @@ const useCompatDataBlockParentRecord = (props)=>{
|
|
|
172
173
|
return useDataBlockParentRecord(props);
|
|
173
174
|
};
|
|
174
175
|
const BlockProvider = (props)=>{
|
|
176
|
+
var _props_params;
|
|
175
177
|
const { name, dataSource, useParams, parentRecord } = props;
|
|
176
178
|
const parentRecordFromHook = useCompatDataBlockParentRecord(props);
|
|
179
|
+
const fieldSchema = useFieldSchema();
|
|
180
|
+
const { dataBlocks, inProvider } = useFilterBlock();
|
|
177
181
|
const paramsFromHook = null == useParams ? void 0 : useParams();
|
|
178
182
|
const { getAssociationAppends } = useAssociationNames(dataSource);
|
|
179
183
|
const { appends, updateAssociationValues } = getAssociationAppends();
|
|
180
|
-
const
|
|
184
|
+
const mergedFilter = useMemo(()=>{
|
|
181
185
|
var _props_params;
|
|
182
|
-
|
|
186
|
+
const uid = null == fieldSchema ? void 0 : fieldSchema['x-uid'];
|
|
187
|
+
if (!inProvider || !uid) {
|
|
188
|
+
var _props_params1;
|
|
189
|
+
return null == (_props_params1 = props.params) ? void 0 : _props_params1.filter;
|
|
190
|
+
}
|
|
191
|
+
return mergeIncomingFiltersFromSourceBlocks(null == (_props_params = props.params) ? void 0 : _props_params.filter, uid, dataBlocks);
|
|
192
|
+
}, [
|
|
193
|
+
null == (_props_params = props.params) ? void 0 : _props_params.filter,
|
|
194
|
+
fieldSchema,
|
|
195
|
+
dataBlocks,
|
|
196
|
+
inProvider
|
|
197
|
+
]);
|
|
198
|
+
const params = useMemo(()=>{
|
|
199
|
+
const baseParams = {
|
|
183
200
|
...props.params,
|
|
201
|
+
filter: mergedFilter
|
|
202
|
+
};
|
|
203
|
+
if (!baseParams['appends']) return {
|
|
204
|
+
...baseParams,
|
|
184
205
|
appends,
|
|
185
206
|
...paramsFromHook
|
|
186
207
|
};
|
|
187
208
|
return {
|
|
188
|
-
...
|
|
209
|
+
...baseParams,
|
|
189
210
|
...paramsFromHook
|
|
190
211
|
};
|
|
191
212
|
}, [
|
|
192
213
|
appends,
|
|
214
|
+
mergedFilter,
|
|
193
215
|
paramsFromHook,
|
|
194
216
|
props.params
|
|
195
217
|
]);
|
|
@@ -2,6 +2,7 @@ import { jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { createContext, useContext, useEffect, useState } from "react";
|
|
3
3
|
import { useField, useFieldSchema } from "@tachybase/schema";
|
|
4
4
|
import { mergeFilter, useFilterBlock } from "../filter-provider/index.mjs";
|
|
5
|
+
import { getFilterSourceDefaultFilter } from "../filter-provider/incomingFilterFromSources.mjs";
|
|
5
6
|
import { FixedBlockWrapper, removeNullCondition } from "../schema-component/index.mjs";
|
|
6
7
|
import { BlockProvider, RenderChildrenWithAssociationFilter, useBlockRequestContext } from "./BlockProvider.mjs";
|
|
7
8
|
import { findFilterTargets } from "./hooks/index.mjs";
|
|
@@ -101,6 +102,7 @@ const useTreeBlockProps = ()=>{
|
|
|
101
102
|
};
|
|
102
103
|
const mergedFilter = mergeFilter([
|
|
103
104
|
...Object.values(storedFilter).map((filter)=>removeNullCondition(filter)),
|
|
105
|
+
getFilterSourceDefaultFilter(dataBlocks, uid),
|
|
104
106
|
block.defaultFilter
|
|
105
107
|
]);
|
|
106
108
|
return block.doFilter({
|
|
@@ -14,6 +14,7 @@ import { useAPIClient, useRequest } from "../../api-client/index.mjs";
|
|
|
14
14
|
import { PathHandler } from "../../built-in/dynamic-page/utils.mjs";
|
|
15
15
|
import { useCollectionManager_deprecated, useCollection_deprecated } from "../../collection-manager/index.mjs";
|
|
16
16
|
import { useFilterBlock } from "../../filter-provider/FilterProvider.mjs";
|
|
17
|
+
import { getFilterSourceDefaultFilter } from "../../filter-provider/incomingFilterFromSources.mjs";
|
|
17
18
|
import { FILTER_OPERATORS_WITH_ARRAY_VALUES, mergeFilter as utils_mjs_mergeFilter, transformToFilter } from "../../filter-provider/utils.mjs";
|
|
18
19
|
import { useRecord } from "../../record-provider/index.mjs";
|
|
19
20
|
import { getCustomCondition, removeNullCondition, useActionContext, useCompile, useDesignable } from "../../schema-component/index.mjs";
|
|
@@ -50,6 +51,7 @@ function filterByCleanedFields(mergeFilter) {
|
|
|
50
51
|
].includes(p)) return false;
|
|
51
52
|
if (/^\d+$/.test(p)) {
|
|
52
53
|
const prev = i > 0 ? arr[i - 1] : '';
|
|
54
|
+
if ('$and' === prev || '$or' === prev) return true;
|
|
53
55
|
if (FILTER_OPERATORS_WITH_ARRAY_VALUES.has(prev)) return true;
|
|
54
56
|
return false;
|
|
55
57
|
}
|
|
@@ -452,6 +454,7 @@ const useFilterBlockActionProps = ()=>{
|
|
|
452
454
|
storedFilter[uid] = removeNullCondition(transformToFilter(filter.formValues, fieldSchema, getCollectionJoinField, name));
|
|
453
455
|
const mergedFilter = utils_mjs_mergeFilter([
|
|
454
456
|
...Object.values(storedFilter).map((filter)=>removeNullCondition(filter)),
|
|
457
|
+
getFilterSourceDefaultFilter(getDataBlocks(), uid),
|
|
455
458
|
block.defaultFilter,
|
|
456
459
|
filter.customFilter,
|
|
457
460
|
prevMergedFilter
|
|
@@ -497,6 +500,7 @@ const useResetBlockActionProps = ()=>{
|
|
|
497
500
|
delete storedFilter[uid];
|
|
498
501
|
const currFilter = utils_mjs_mergeFilter([
|
|
499
502
|
...Object.values(storedFilter),
|
|
503
|
+
getFilterSourceDefaultFilter(getDataBlocks(), uid),
|
|
500
504
|
block.defaultFilter,
|
|
501
505
|
prevMergedFilter
|
|
502
506
|
]);
|
|
@@ -1085,6 +1089,7 @@ const useAssociationFilterBlockProps = ()=>{
|
|
|
1085
1089
|
}
|
|
1086
1090
|
const mergedFilter = utils_mjs_mergeFilter([
|
|
1087
1091
|
...Object.values(storedFilter),
|
|
1092
|
+
getFilterSourceDefaultFilter(getDataBlocks(), uid),
|
|
1088
1093
|
block.defaultFilter
|
|
1089
1094
|
]);
|
|
1090
1095
|
return block.doFilter({
|
|
@@ -37,6 +37,8 @@ export interface DataBlock {
|
|
|
37
37
|
foreignKeyFields?: ForeignKeyField[];
|
|
38
38
|
/** 数据卡片已经存在的过滤条件(通过 `设置数据范围` 或者其它能设置筛选条件的功能) */
|
|
39
39
|
defaultFilter?: FilterParam;
|
|
40
|
+
/** 本块作为连接发起方时,x-filter-targets 中的目标块 uid(用于把发起方的数据范围合并到被连接块) */
|
|
41
|
+
filterTargetUids?: string[];
|
|
40
42
|
/** 数据卡片用于请求数据的接口 */
|
|
41
43
|
service?: any;
|
|
42
44
|
/** 数据卡片所的 DOM 容器 */
|
|
@@ -74,6 +76,7 @@ export declare const useFilterBlock: () => {
|
|
|
74
76
|
recordDataBlocks: (block: DataBlock) => void;
|
|
75
77
|
getDataBlocks: () => DataBlock[];
|
|
76
78
|
removeDataBlock: (uid: string) => void;
|
|
79
|
+
dataBlocks: DataBlock[];
|
|
77
80
|
/**
|
|
78
81
|
* running in FilterBlockProvider
|
|
79
82
|
*/
|
|
@@ -32,6 +32,15 @@ const DataBlockCollector = (param)=>{
|
|
|
32
32
|
const dataLoadingMode = useDataLoadingMode();
|
|
33
33
|
const shouldApplyFilter = 'FilterFormBlockProvider' !== field.decoratorType && 'FormBlockProvider' !== field.decoratorType && 'filter' !== field.decoratorProps.blockType;
|
|
34
34
|
const addBlockToDataBlocks = useCallback(()=>{
|
|
35
|
+
let filterTargetUids = [];
|
|
36
|
+
let s = fieldSchema;
|
|
37
|
+
while(s){
|
|
38
|
+
if (s['x-filter-targets']) {
|
|
39
|
+
filterTargetUids = s['x-filter-targets'].map((t)=>t.uid);
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
s = s.parent;
|
|
43
|
+
}
|
|
35
44
|
recordDataBlocks({
|
|
36
45
|
uid: fieldSchema['x-uid'],
|
|
37
46
|
title: field.componentProps.title,
|
|
@@ -40,6 +49,7 @@ const DataBlockCollector = (param)=>{
|
|
|
40
49
|
associatedFields,
|
|
41
50
|
foreignKeyFields: collection.foreignKeyFields,
|
|
42
51
|
defaultFilter: (null == params ? void 0 : params.filter) || {},
|
|
52
|
+
filterTargetUids,
|
|
43
53
|
service,
|
|
44
54
|
dom: container.current,
|
|
45
55
|
dataLoadingMode,
|
|
@@ -97,15 +107,22 @@ const useFilterBlock = ()=>{
|
|
|
97
107
|
inProvider: false,
|
|
98
108
|
recordDataBlocks: ()=>{},
|
|
99
109
|
getDataBlocks: ()=>[],
|
|
100
|
-
removeDataBlock: ()=>{}
|
|
110
|
+
removeDataBlock: ()=>{},
|
|
111
|
+
dataBlocks: []
|
|
101
112
|
};
|
|
102
113
|
const { dataBlocks, setDataBlocks } = ctx;
|
|
103
114
|
const recordDataBlocks = (block)=>{
|
|
104
115
|
const existingBlock = dataBlocks.find((item)=>item.uid === block.uid);
|
|
105
116
|
if (existingBlock) {
|
|
117
|
+
const prevDf = JSON.stringify(existingBlock.defaultFilter);
|
|
118
|
+
const prevTg = JSON.stringify(existingBlock.filterTargetUids);
|
|
106
119
|
existingBlock.service = block.service;
|
|
107
120
|
existingBlock.defaultFilter = block.defaultFilter;
|
|
121
|
+
existingBlock.filterTargetUids = block.filterTargetUids;
|
|
108
122
|
existingBlock.dataLoadingMode = block.dataLoadingMode;
|
|
123
|
+
if (JSON.stringify(existingBlock.defaultFilter) !== prevDf || JSON.stringify(existingBlock.filterTargetUids) !== prevTg) setDataBlocks((prev)=>[
|
|
124
|
+
...prev
|
|
125
|
+
]);
|
|
109
126
|
return;
|
|
110
127
|
}
|
|
111
128
|
setDataBlocks((prev)=>uniqBy([
|
|
@@ -121,6 +138,7 @@ const useFilterBlock = ()=>{
|
|
|
121
138
|
recordDataBlocks,
|
|
122
139
|
getDataBlocks,
|
|
123
140
|
removeDataBlock,
|
|
141
|
+
dataBlocks,
|
|
124
142
|
inProvider: true
|
|
125
143
|
};
|
|
126
144
|
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** 与 FilterProvider.DataBlock 对齐,用于合并「谁连接了我」带来的 defaultFilter */
|
|
2
|
+
export type DataBlockIncomingRef = {
|
|
3
|
+
uid: string;
|
|
4
|
+
defaultFilter?: any;
|
|
5
|
+
/** 本块在 schema 的 x-filter-targets 里声明的连接目标 uid 列表(发起方) */
|
|
6
|
+
filterTargetUids?: string[];
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* 被连接的数据卡片:将连接发起方数据卡片上的 defaultFilter(如设置数据范围)与自身 filter 做 $and。
|
|
10
|
+
*/
|
|
11
|
+
export declare function mergeIncomingFiltersFromSourceBlocks(ownFilter: unknown, currentBlockUid: string, dataBlocks: DataBlockIncomingRef[]): any;
|
|
12
|
+
/**
|
|
13
|
+
* 带 x-filter-targets 的连接发起方(表格、筛选表单等)自身的 defaultFilter。
|
|
14
|
+
*/
|
|
15
|
+
export declare function getFilterSourceDefaultFilter(dataBlocks: DataBlockIncomingRef[], filterSourceUid: string | undefined): Record<string, any>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { mergeFilter } from "./utils.mjs";
|
|
2
|
+
function mergeIncomingFiltersFromSourceBlocks(ownFilter, currentBlockUid, dataBlocks) {
|
|
3
|
+
if (!currentBlockUid) return null != ownFilter ? ownFilter : {};
|
|
4
|
+
const sources = dataBlocks.filter((b)=>{
|
|
5
|
+
var _b_filterTargetUids;
|
|
6
|
+
return (null == (_b_filterTargetUids = b.filterTargetUids) ? void 0 : _b_filterTargetUids.length) && b.filterTargetUids.includes(currentBlockUid);
|
|
7
|
+
});
|
|
8
|
+
const sourceFilters = sources.map((b)=>b.defaultFilter).filter((f)=>f && 'object' == typeof f && Object.keys(f).length > 0);
|
|
9
|
+
if (!sourceFilters.length) return null != ownFilter ? ownFilter : {};
|
|
10
|
+
const own = ownFilter && 'object' == typeof ownFilter ? ownFilter : {};
|
|
11
|
+
return mergeFilter([
|
|
12
|
+
...sourceFilters,
|
|
13
|
+
own
|
|
14
|
+
], '$and');
|
|
15
|
+
}
|
|
16
|
+
function getFilterSourceDefaultFilter(dataBlocks, filterSourceUid) {
|
|
17
|
+
var _dataBlocks_find;
|
|
18
|
+
if (!filterSourceUid) return {};
|
|
19
|
+
const f = null == (_dataBlocks_find = dataBlocks.find((b)=>b.uid === filterSourceUid)) ? void 0 : _dataBlocks_find.defaultFilter;
|
|
20
|
+
if (f && 'object' == typeof f && Object.keys(f).length) return f;
|
|
21
|
+
return {};
|
|
22
|
+
}
|
|
23
|
+
export { getFilterSourceDefaultFilter, mergeIncomingFiltersFromSourceBlocks };
|
|
@@ -8,6 +8,7 @@ import { useCollectionManager_deprecated, useCollection_deprecated } from "../co
|
|
|
8
8
|
import { removeNullCondition } from "../schema-component/index.mjs";
|
|
9
9
|
import { findFilterOperators } from "../schema-component/antd/form-item/SchemaSettingOptions.mjs";
|
|
10
10
|
import { useFilterBlock } from "./FilterProvider.mjs";
|
|
11
|
+
import { getFilterSourceDefaultFilter } from "./incomingFilterFromSources.mjs";
|
|
11
12
|
var utils_FilterBlockType = /*#__PURE__*/ function(FilterBlockType) {
|
|
12
13
|
FilterBlockType[FilterBlockType["FORM"] = 0] = "FORM";
|
|
13
14
|
FilterBlockType[FilterBlockType["TABLE"] = 1] = "TABLE";
|
|
@@ -172,6 +173,7 @@ const useFilterAPI = ()=>{
|
|
|
172
173
|
else delete storedFilter[uid];
|
|
173
174
|
const mergedFilter = mergeFilter([
|
|
174
175
|
...Object.values(storedFilter).map((filter)=>removeNullCondition(filter)),
|
|
176
|
+
getFilterSourceDefaultFilter(dataBlocks, uid),
|
|
175
177
|
block.defaultFilter
|
|
176
178
|
]);
|
|
177
179
|
block.doFilter({
|
|
@@ -5,6 +5,7 @@ import lodash from "lodash";
|
|
|
5
5
|
import { filterByCleanedFields, findFilterTargets } from "../../../../../block-provider/hooks/index.mjs";
|
|
6
6
|
import { useTableBlockContext } from "../../../../../block-provider/TableBlockProvider.mjs";
|
|
7
7
|
import { useFilterBlock } from "../../../../../filter-provider/FilterProvider.mjs";
|
|
8
|
+
import { getFilterSourceDefaultFilter } from "../../../../../filter-provider/incomingFilterFromSources.mjs";
|
|
8
9
|
import { mergeFilter } from "../../../../../filter-provider/utils.mjs";
|
|
9
10
|
import { removeNullCondition } from "../../../../../schema-component/index.mjs";
|
|
10
11
|
const useTableBlockProps = ()=>{
|
|
@@ -88,8 +89,9 @@ const useTableBlockProps = ()=>{
|
|
|
88
89
|
});
|
|
89
90
|
},
|
|
90
91
|
onClickRow (record, setSelectedRow, selectedRow) {
|
|
91
|
-
const { targets, uid } = findFilterTargets(fieldSchema);
|
|
92
|
+
const { targets, uid: filterSourceUid } = findFilterTargets(fieldSchema);
|
|
92
93
|
const dataBlocks = getDataBlocks();
|
|
94
|
+
const sourceDefaultFilter = getFilterSourceDefaultFilter(dataBlocks, filterSourceUid);
|
|
93
95
|
if (!targets || !targets.some((target)=>dataBlocks.some((dataBlock)=>dataBlock.uid === target.uid))) return void setSelectedRow((prev)=>prev.length ? [] : prev);
|
|
94
96
|
const value = [
|
|
95
97
|
record[ctx.rowKey]
|
|
@@ -103,8 +105,8 @@ const useTableBlockProps = ()=>{
|
|
|
103
105
|
const storedFilter = (null == (_block_service_params1 = block.service.params) ? void 0 : null == (_block_service_params_ = _block_service_params1[1]) ? void 0 : _block_service_params_.filters) || {};
|
|
104
106
|
if (selectedRow.includes(record[ctx.rowKey])) {
|
|
105
107
|
if ('manual' === block.dataLoadingMode) return block.clearData();
|
|
106
|
-
delete storedFilter[
|
|
107
|
-
} else storedFilter[
|
|
108
|
+
delete storedFilter[filterSourceUid];
|
|
109
|
+
} else storedFilter[filterSourceUid] = {
|
|
108
110
|
$and: [
|
|
109
111
|
{
|
|
110
112
|
[(null == target ? void 0 : target.field) || ctx.rowKey]: {
|
|
@@ -121,6 +123,7 @@ const useTableBlockProps = ()=>{
|
|
|
121
123
|
const mergeList = [
|
|
122
124
|
...Object.values(storedFilter).map((filter)=>removeNullCondition(filter)),
|
|
123
125
|
flat.unflatten(items),
|
|
126
|
+
sourceDefaultFilter,
|
|
124
127
|
block.defaultFilter,
|
|
125
128
|
prevMergedFilter
|
|
126
129
|
];
|
|
@@ -64,6 +64,7 @@ const external_react_router_dom_namespaceObject = require("react-router-dom");
|
|
|
64
64
|
const external_index_js_namespaceObject = require("../index.js");
|
|
65
65
|
const index_js_namespaceObject = require("../collection-manager/index.js");
|
|
66
66
|
const FilterProvider_js_namespaceObject = require("../filter-provider/FilterProvider.js");
|
|
67
|
+
const incomingFilterFromSources_js_namespaceObject = require("../filter-provider/incomingFilterFromSources.js");
|
|
67
68
|
const external_record_provider_index_js_namespaceObject = require("../record-provider/index.js");
|
|
68
69
|
const external_hooks_index_js_namespaceObject = require("./hooks/index.js");
|
|
69
70
|
const useDataBlockSourceId_js_namespaceObject = require("./hooks/useDataBlockSourceId.js");
|
|
@@ -227,24 +228,45 @@ const useCompatDataBlockParentRecord = (props)=>{
|
|
|
227
228
|
return (0, useDataBlockSourceId_js_namespaceObject.useDataBlockParentRecord)(props);
|
|
228
229
|
};
|
|
229
230
|
const BlockProvider = (props)=>{
|
|
231
|
+
var _props_params;
|
|
230
232
|
const { name, dataSource, useParams, parentRecord } = props;
|
|
231
233
|
const parentRecordFromHook = useCompatDataBlockParentRecord(props);
|
|
234
|
+
const fieldSchema = (0, schema_namespaceObject.useFieldSchema)();
|
|
235
|
+
const { dataBlocks, inProvider } = (0, FilterProvider_js_namespaceObject.useFilterBlock)();
|
|
232
236
|
const paramsFromHook = null == useParams ? void 0 : useParams();
|
|
233
237
|
const { getAssociationAppends } = (0, external_hooks_index_js_namespaceObject.useAssociationNames)(dataSource);
|
|
234
238
|
const { appends, updateAssociationValues } = getAssociationAppends();
|
|
235
|
-
const
|
|
239
|
+
const mergedFilter = (0, external_react_namespaceObject.useMemo)(()=>{
|
|
236
240
|
var _props_params;
|
|
237
|
-
|
|
241
|
+
const uid = null == fieldSchema ? void 0 : fieldSchema['x-uid'];
|
|
242
|
+
if (!inProvider || !uid) {
|
|
243
|
+
var _props_params1;
|
|
244
|
+
return null == (_props_params1 = props.params) ? void 0 : _props_params1.filter;
|
|
245
|
+
}
|
|
246
|
+
return (0, incomingFilterFromSources_js_namespaceObject.mergeIncomingFiltersFromSourceBlocks)(null == (_props_params = props.params) ? void 0 : _props_params.filter, uid, dataBlocks);
|
|
247
|
+
}, [
|
|
248
|
+
null == (_props_params = props.params) ? void 0 : _props_params.filter,
|
|
249
|
+
fieldSchema,
|
|
250
|
+
dataBlocks,
|
|
251
|
+
inProvider
|
|
252
|
+
]);
|
|
253
|
+
const params = (0, external_react_namespaceObject.useMemo)(()=>{
|
|
254
|
+
const baseParams = {
|
|
238
255
|
...props.params,
|
|
256
|
+
filter: mergedFilter
|
|
257
|
+
};
|
|
258
|
+
if (!baseParams['appends']) return {
|
|
259
|
+
...baseParams,
|
|
239
260
|
appends,
|
|
240
261
|
...paramsFromHook
|
|
241
262
|
};
|
|
242
263
|
return {
|
|
243
|
-
...
|
|
264
|
+
...baseParams,
|
|
244
265
|
...paramsFromHook
|
|
245
266
|
};
|
|
246
267
|
}, [
|
|
247
268
|
appends,
|
|
269
|
+
mergedFilter,
|
|
248
270
|
paramsFromHook,
|
|
249
271
|
props.params
|
|
250
272
|
]);
|
|
@@ -33,6 +33,7 @@ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
|
|
|
33
33
|
const external_react_namespaceObject = require("react");
|
|
34
34
|
const schema_namespaceObject = require("@tachybase/schema");
|
|
35
35
|
const index_js_namespaceObject = require("../filter-provider/index.js");
|
|
36
|
+
const incomingFilterFromSources_js_namespaceObject = require("../filter-provider/incomingFilterFromSources.js");
|
|
36
37
|
const external_schema_component_index_js_namespaceObject = require("../schema-component/index.js");
|
|
37
38
|
const external_BlockProvider_js_namespaceObject = require("./BlockProvider.js");
|
|
38
39
|
const external_hooks_index_js_namespaceObject = require("./hooks/index.js");
|
|
@@ -132,6 +133,7 @@ const useTreeBlockProps = ()=>{
|
|
|
132
133
|
};
|
|
133
134
|
const mergedFilter = (0, index_js_namespaceObject.mergeFilter)([
|
|
134
135
|
...Object.values(storedFilter).map((filter)=>(0, external_schema_component_index_js_namespaceObject.removeNullCondition)(filter)),
|
|
136
|
+
(0, incomingFilterFromSources_js_namespaceObject.getFilterSourceDefaultFilter)(dataBlocks, uid),
|
|
135
137
|
block.defaultFilter
|
|
136
138
|
]);
|
|
137
139
|
return block.doFilter({
|
|
@@ -12,6 +12,9 @@ var __webpack_modules__ = {
|
|
|
12
12
|
"../../filter-provider/FilterProvider": function(module) {
|
|
13
13
|
module.exports = require("../../filter-provider/FilterProvider.js");
|
|
14
14
|
},
|
|
15
|
+
"../../filter-provider/incomingFilterFromSources": function(module) {
|
|
16
|
+
module.exports = require("../../filter-provider/incomingFilterFromSources.js");
|
|
17
|
+
},
|
|
15
18
|
"../../filter-provider/utils": function(module) {
|
|
16
19
|
module.exports = require("../../filter-provider/utils.js");
|
|
17
20
|
},
|
|
@@ -187,20 +190,21 @@ var __webpack_exports__ = {};
|
|
|
187
190
|
var _built_in_dynamic_page_utils__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("../../built-in/dynamic-page/utils");
|
|
188
191
|
var _collection_manager__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__("../../collection-manager");
|
|
189
192
|
var _filter_provider_FilterProvider__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__("../../filter-provider/FilterProvider");
|
|
190
|
-
var
|
|
191
|
-
var
|
|
192
|
-
var
|
|
193
|
-
var
|
|
194
|
-
var
|
|
195
|
-
var
|
|
196
|
-
var
|
|
197
|
-
var
|
|
198
|
-
var
|
|
199
|
-
var
|
|
200
|
-
var
|
|
201
|
-
var
|
|
193
|
+
var _filter_provider_incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__("../../filter-provider/incomingFilterFromSources");
|
|
194
|
+
var _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__("../../filter-provider/utils");
|
|
195
|
+
var _record_provider__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__("../../record-provider");
|
|
196
|
+
var _schema_component__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__("../../schema-component");
|
|
197
|
+
var _schema_component_antd_association_field_util__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__("../../schema-component/antd/association-field/util");
|
|
198
|
+
var _user__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__("../../user");
|
|
199
|
+
var _variables__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__("../../variables");
|
|
200
|
+
var _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__("../../variables/utils/isVariable");
|
|
201
|
+
var _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__("../../variables/utils/transformVariableValue");
|
|
202
|
+
var _BlockProvider__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__("../BlockProvider");
|
|
203
|
+
var _DetailsBlockProvider__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__("../DetailsBlockProvider");
|
|
204
|
+
var _TableFieldProvider__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__("../TableFieldProvider");
|
|
205
|
+
var _useFormActiveFields__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__("./useFormActiveFields");
|
|
202
206
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
203
|
-
for(var __WEBPACK_IMPORT_KEY__ in
|
|
207
|
+
for(var __WEBPACK_IMPORT_KEY__ in _useFormActiveFields__WEBPACK_IMPORTED_MODULE_28__)if ([
|
|
204
208
|
"useBulkDestroyActionProps",
|
|
205
209
|
"updateFilterTargets",
|
|
206
210
|
"useCustomizeUpdateActionProps",
|
|
@@ -231,12 +235,12 @@ var __webpack_exports__ = {};
|
|
|
231
235
|
"useOptionalFieldList",
|
|
232
236
|
"filterByCleanedFields"
|
|
233
237
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
234
|
-
return
|
|
238
|
+
return _useFormActiveFields__WEBPACK_IMPORTED_MODULE_28__[key];
|
|
235
239
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
236
240
|
__webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
237
|
-
var
|
|
241
|
+
var _useParsedFilter__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__("./useParsedFilter");
|
|
238
242
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
239
|
-
for(var __WEBPACK_IMPORT_KEY__ in
|
|
243
|
+
for(var __WEBPACK_IMPORT_KEY__ in _useParsedFilter__WEBPACK_IMPORTED_MODULE_29__)if ([
|
|
240
244
|
"useBulkDestroyActionProps",
|
|
241
245
|
"updateFilterTargets",
|
|
242
246
|
"useCustomizeUpdateActionProps",
|
|
@@ -267,12 +271,12 @@ var __webpack_exports__ = {};
|
|
|
267
271
|
"useOptionalFieldList",
|
|
268
272
|
"filterByCleanedFields"
|
|
269
273
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
270
|
-
return
|
|
274
|
+
return _useParsedFilter__WEBPACK_IMPORTED_MODULE_29__[key];
|
|
271
275
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
272
276
|
__webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
273
|
-
var
|
|
277
|
+
var _useDataBlockSourceId__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__("./useDataBlockSourceId");
|
|
274
278
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
275
|
-
for(var __WEBPACK_IMPORT_KEY__ in
|
|
279
|
+
for(var __WEBPACK_IMPORT_KEY__ in _useDataBlockSourceId__WEBPACK_IMPORTED_MODULE_30__)if ([
|
|
276
280
|
"useBulkDestroyActionProps",
|
|
277
281
|
"updateFilterTargets",
|
|
278
282
|
"useCustomizeUpdateActionProps",
|
|
@@ -303,12 +307,12 @@ var __webpack_exports__ = {};
|
|
|
303
307
|
"useOptionalFieldList",
|
|
304
308
|
"filterByCleanedFields"
|
|
305
309
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
306
|
-
return
|
|
310
|
+
return _useDataBlockSourceId__WEBPACK_IMPORTED_MODULE_30__[key];
|
|
307
311
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
308
312
|
__webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
309
|
-
var
|
|
313
|
+
var _useIsMobile__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__("./useIsMobile");
|
|
310
314
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
311
|
-
for(var __WEBPACK_IMPORT_KEY__ in
|
|
315
|
+
for(var __WEBPACK_IMPORT_KEY__ in _useIsMobile__WEBPACK_IMPORTED_MODULE_31__)if ([
|
|
312
316
|
"useBulkDestroyActionProps",
|
|
313
317
|
"updateFilterTargets",
|
|
314
318
|
"useCustomizeUpdateActionProps",
|
|
@@ -339,7 +343,7 @@ var __webpack_exports__ = {};
|
|
|
339
343
|
"useOptionalFieldList",
|
|
340
344
|
"filterByCleanedFields"
|
|
341
345
|
].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
342
|
-
return
|
|
346
|
+
return _useIsMobile__WEBPACK_IMPORTED_MODULE_31__[key];
|
|
343
347
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
344
348
|
__webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
345
349
|
function renderTemplate(str, data) {
|
|
@@ -363,7 +367,8 @@ var __webpack_exports__ = {};
|
|
|
363
367
|
].includes(p)) return false;
|
|
364
368
|
if (/^\d+$/.test(p)) {
|
|
365
369
|
const prev = i > 0 ? arr[i - 1] : '';
|
|
366
|
-
if (
|
|
370
|
+
if ('$and' === prev || '$or' === prev) return true;
|
|
371
|
+
if (_filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.FILTER_OPERATORS_WITH_ARRAY_VALUES.has(prev)) return true;
|
|
367
372
|
return false;
|
|
368
373
|
}
|
|
369
374
|
return true;
|
|
@@ -399,18 +404,18 @@ var __webpack_exports__ = {};
|
|
|
399
404
|
}
|
|
400
405
|
function useCollectValuesToSubmit() {
|
|
401
406
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
402
|
-
const filterByTk = (0,
|
|
403
|
-
const { field, resource } = (0,
|
|
407
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
408
|
+
const { field, resource } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
404
409
|
const { fields, getField, getTreeParentField, name } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
405
410
|
const fieldNames = fields.map((field)=>field.name);
|
|
406
|
-
const { fieldSchema } = (0,
|
|
411
|
+
const { fieldSchema } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
407
412
|
const { getActiveFieldsName } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormActiveFields)() || {};
|
|
408
|
-
const variables = (0,
|
|
409
|
-
const localVariables = (0,
|
|
413
|
+
const variables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useVariables)();
|
|
414
|
+
const localVariables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useLocalVariables)({
|
|
410
415
|
currentForm: form
|
|
411
416
|
});
|
|
412
417
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
413
|
-
const currentRecord = (0,
|
|
418
|
+
const currentRecord = (0, _record_provider__WEBPACK_IMPORTED_MODULE_18__.useRecord)();
|
|
414
419
|
return (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(async ()=>{
|
|
415
420
|
var _fieldSchema_xcomponentprops;
|
|
416
421
|
var _actionSchema_xactionsettings;
|
|
@@ -428,9 +433,9 @@ var __webpack_exports__ = {};
|
|
|
428
433
|
const waitList = Object.keys(originalAssignedValues).map(async (key)=>{
|
|
429
434
|
const value = originalAssignedValues[key];
|
|
430
435
|
const collectionField = getField(key);
|
|
431
|
-
if ((0,
|
|
436
|
+
if ((0, _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__.isVariable)(value)) {
|
|
432
437
|
const result = await (null == variables ? void 0 : variables.parseVariable(value, localVariables));
|
|
433
|
-
if (result) assignedValues[key] = (0,
|
|
438
|
+
if (result) assignedValues[key] = (0, _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__.transformVariableValue)(result, {
|
|
434
439
|
targetCollectionField: collectionField
|
|
435
440
|
});
|
|
436
441
|
} else if (null != value && '' !== value) assignedValues[key] = value;
|
|
@@ -499,7 +504,7 @@ var __webpack_exports__ = {};
|
|
|
499
504
|
};
|
|
500
505
|
const useInsertSchema = ()=>{
|
|
501
506
|
const fieldSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
502
|
-
const { insertAfterBegin } = (0,
|
|
507
|
+
const { insertAfterBegin } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useDesignable)();
|
|
503
508
|
const insert = (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((ss)=>{
|
|
504
509
|
const schema = fieldSchema.reduceProperties((buf, s)=>{
|
|
505
510
|
if (s['x-component'] === pageDetailsViewer) return s;
|
|
@@ -513,7 +518,7 @@ var __webpack_exports__ = {};
|
|
|
513
518
|
};
|
|
514
519
|
const useCancelActionProps = ()=>{
|
|
515
520
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
516
|
-
const ctx = (0,
|
|
521
|
+
const ctx = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
517
522
|
return {
|
|
518
523
|
async onClick () {
|
|
519
524
|
ctx.setVisible(false);
|
|
@@ -524,7 +529,7 @@ var __webpack_exports__ = {};
|
|
|
524
529
|
const useJumpDetails = ()=>{
|
|
525
530
|
const collection = (0, ___WEBPACK_IMPORTED_MODULE_11__.useCollection)();
|
|
526
531
|
const fieldSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
527
|
-
const dn = (0,
|
|
532
|
+
const dn = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useDesignable)();
|
|
528
533
|
const insert = useInsertSchema();
|
|
529
534
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
530
535
|
return (filterByTk)=>{
|
|
@@ -557,13 +562,13 @@ var __webpack_exports__ = {};
|
|
|
557
562
|
var _actionField_componentProps_filterKeys;
|
|
558
563
|
const record = (0, ___WEBPACK_IMPORTED_MODULE_11__.useCollectionRecord)();
|
|
559
564
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
560
|
-
const { field, resource, __parent } = (0,
|
|
565
|
+
const { field, resource, __parent } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
561
566
|
const jumpDetails = useJumpDetails();
|
|
562
|
-
const { setVisible } = (0,
|
|
567
|
+
const { setVisible } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
563
568
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
564
569
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
565
570
|
const actionField = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
566
|
-
const compile = (0,
|
|
571
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
567
572
|
const { modal, message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
568
573
|
const { t } = (0, react_i18next__WEBPACK_IMPORTED_MODULE_8__.useTranslation)();
|
|
569
574
|
const { updateAssociationValues } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormBlockContext)();
|
|
@@ -624,17 +629,17 @@ var __webpack_exports__ = {};
|
|
|
624
629
|
const useAssociationCreateActionProps = ()=>{
|
|
625
630
|
var _actionField_componentProps_filterKeys;
|
|
626
631
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
627
|
-
const { field, resource, __parent } = (0,
|
|
628
|
-
const { setVisible, fieldSchema } = (0,
|
|
632
|
+
const { field, resource, __parent } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
633
|
+
const { setVisible, fieldSchema } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
629
634
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
630
635
|
const actionField = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
631
636
|
const { message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
632
637
|
const { fields, getField, getTreeParentField, name } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
633
|
-
const compile = (0,
|
|
634
|
-
const filterByTk = (0,
|
|
635
|
-
const currentRecord = (0,
|
|
636
|
-
const variables = (0,
|
|
637
|
-
const localVariables = (0,
|
|
638
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
639
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
640
|
+
const currentRecord = (0, _record_provider__WEBPACK_IMPORTED_MODULE_18__.useRecord)();
|
|
641
|
+
const variables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useVariables)();
|
|
642
|
+
const localVariables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useLocalVariables)({
|
|
638
643
|
currentForm: form
|
|
639
644
|
});
|
|
640
645
|
const { getActiveFieldsName } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormActiveFields)() || {};
|
|
@@ -651,9 +656,9 @@ var __webpack_exports__ = {};
|
|
|
651
656
|
const waitList = Object.keys(originalAssignedValues).map(async (key)=>{
|
|
652
657
|
const value = originalAssignedValues[key];
|
|
653
658
|
const collectionField = getField(key);
|
|
654
|
-
if ((0,
|
|
659
|
+
if ((0, _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__.isVariable)(value)) {
|
|
655
660
|
const result = await (null == variables ? void 0 : variables.parseVariable(value, localVariables));
|
|
656
|
-
if (result) assignedValues[key] = (0,
|
|
661
|
+
if (result) assignedValues[key] = (0, _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__.transformVariableValue)(result, {
|
|
657
662
|
targetCollectionField: collectionField
|
|
658
663
|
});
|
|
659
664
|
} else if (null != value && '' !== value) assignedValues[key] = value;
|
|
@@ -760,11 +765,12 @@ var __webpack_exports__ = {};
|
|
|
760
765
|
...values
|
|
761
766
|
};
|
|
762
767
|
for(const key in form.values['__custom'])if (form.values['__custom'][key]) filter.customValues[key] = form.values['__custom'][key];
|
|
763
|
-
filter.customFilter = (0,
|
|
768
|
+
filter.customFilter = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.getCustomCondition)(filter.customValues, fieldSchema);
|
|
764
769
|
}
|
|
765
|
-
storedFilter[uid] = (0,
|
|
766
|
-
const mergedFilter = (0,
|
|
767
|
-
...Object.values(storedFilter).map((filter)=>(0,
|
|
770
|
+
storedFilter[uid] = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.removeNullCondition)((0, _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.transformToFilter)(filter.formValues, fieldSchema, getCollectionJoinField, name));
|
|
771
|
+
const mergedFilter = (0, _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.mergeFilter)([
|
|
772
|
+
...Object.values(storedFilter).map((filter)=>(0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.removeNullCondition)(filter)),
|
|
773
|
+
(0, _filter_provider_incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_16__.getFilterSourceDefaultFilter)(getDataBlocks(), uid),
|
|
768
774
|
block.defaultFilter,
|
|
769
775
|
filter.customFilter,
|
|
770
776
|
prevMergedFilter
|
|
@@ -808,8 +814,9 @@ var __webpack_exports__ = {};
|
|
|
808
814
|
const param = (null == (_block_service_params = block.service.params) ? void 0 : _block_service_params[0]) || {};
|
|
809
815
|
const storedFilter = (null == (_block_service_params1 = block.service.params) ? void 0 : null == (_block_service_params_ = _block_service_params1[1]) ? void 0 : _block_service_params_.filters) || {};
|
|
810
816
|
delete storedFilter[uid];
|
|
811
|
-
const currFilter = (0,
|
|
817
|
+
const currFilter = (0, _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.mergeFilter)([
|
|
812
818
|
...Object.values(storedFilter),
|
|
819
|
+
(0, _filter_provider_incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_16__.getFilterSourceDefaultFilter)(getDataBlocks(), uid),
|
|
813
820
|
block.defaultFilter,
|
|
814
821
|
prevMergedFilter
|
|
815
822
|
]);
|
|
@@ -831,15 +838,15 @@ var __webpack_exports__ = {};
|
|
|
831
838
|
};
|
|
832
839
|
};
|
|
833
840
|
const useCustomizeUpdateActionProps = ()=>{
|
|
834
|
-
const { resource, __parent, service } = (0,
|
|
835
|
-
const filterByTk = (0,
|
|
841
|
+
const { resource, __parent, service } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
842
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
836
843
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
837
844
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
838
|
-
const compile = (0,
|
|
845
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
839
846
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
840
847
|
const { modal, message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
841
|
-
const variables = (0,
|
|
842
|
-
const localVariables = (0,
|
|
848
|
+
const variables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useVariables)();
|
|
849
|
+
const localVariables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useLocalVariables)({
|
|
843
850
|
currentForm: form
|
|
844
851
|
});
|
|
845
852
|
const { name, getField } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
@@ -852,9 +859,9 @@ var __webpack_exports__ = {};
|
|
|
852
859
|
const waitList = Object.keys(originalAssignedValues).map(async (key)=>{
|
|
853
860
|
const value = originalAssignedValues[key];
|
|
854
861
|
const collectionField = getField(key);
|
|
855
|
-
if ((0,
|
|
862
|
+
if ((0, _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__.isVariable)(value)) {
|
|
856
863
|
const result = await (null == variables ? void 0 : variables.parseVariable(value, localVariables));
|
|
857
|
-
if (result) assignedValues[key] = (0,
|
|
864
|
+
if (result) assignedValues[key] = (0, _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__.transformVariableValue)(result, {
|
|
858
865
|
targetCollectionField: collectionField
|
|
859
866
|
});
|
|
860
867
|
} else if (null != value && '' !== value) assignedValues[key] = value;
|
|
@@ -870,7 +877,7 @@ var __webpack_exports__ = {};
|
|
|
870
877
|
beforeWorkflows: getBeforeWorkflows(triggerWorkflows)
|
|
871
878
|
});
|
|
872
879
|
null == service || null == (_service_refresh = service.refresh) || _service_refresh.call(service);
|
|
873
|
-
if (!(resource instanceof
|
|
880
|
+
if (!(resource instanceof _TableFieldProvider__WEBPACK_IMPORTED_MODULE_27__.TableFieldResource)) {
|
|
874
881
|
var __parent_service_refresh, __parent_service;
|
|
875
882
|
null == __parent || null == (__parent_service = __parent.service) || null == (__parent_service_refresh = __parent_service.refresh) || __parent_service_refresh.call(__parent_service);
|
|
876
883
|
}
|
|
@@ -894,17 +901,17 @@ var __webpack_exports__ = {};
|
|
|
894
901
|
var _currentUserContext_data;
|
|
895
902
|
const apiClient = (0, _api_client__WEBPACK_IMPORTED_MODULE_12__.useAPIClient)();
|
|
896
903
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
897
|
-
const filterByTk = (0,
|
|
904
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
898
905
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
899
|
-
const compile = (0,
|
|
906
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
900
907
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
901
908
|
const { fields, getField } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
902
|
-
const { field, resource, __parent, service } = (0,
|
|
903
|
-
const currentRecord = (0,
|
|
904
|
-
const currentUserContext = (0,
|
|
909
|
+
const { field, resource, __parent, service } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
910
|
+
const currentRecord = (0, _record_provider__WEBPACK_IMPORTED_MODULE_18__.useRecord)();
|
|
911
|
+
const currentUserContext = (0, _user__WEBPACK_IMPORTED_MODULE_21__.useCurrentUserContext)();
|
|
905
912
|
const currentUser = null == currentUserContext ? void 0 : null == (_currentUserContext_data = currentUserContext.data) ? void 0 : _currentUserContext_data.data;
|
|
906
913
|
const actionField = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
907
|
-
const { setVisible } = (0,
|
|
914
|
+
const { setVisible } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
908
915
|
const { modal, message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
909
916
|
const { getActiveFieldsName } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormActiveFields)() || {};
|
|
910
917
|
return {
|
|
@@ -962,7 +969,7 @@ var __webpack_exports__ = {};
|
|
|
962
969
|
...requestBody
|
|
963
970
|
});
|
|
964
971
|
actionField.data.loading = false;
|
|
965
|
-
if (!(resource instanceof
|
|
972
|
+
if (!(resource instanceof _TableFieldProvider__WEBPACK_IMPORTED_MODULE_27__.TableFieldResource)) {
|
|
966
973
|
var __parent_service_refresh, __parent_service;
|
|
967
974
|
null == __parent || null == (__parent_service = __parent.service) || null == (__parent_service_refresh = __parent_service.refresh) || __parent_service_refresh.call(__parent_service);
|
|
968
975
|
}
|
|
@@ -985,19 +992,19 @@ var __webpack_exports__ = {};
|
|
|
985
992
|
};
|
|
986
993
|
const useUpdateActionProps = ()=>{
|
|
987
994
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
988
|
-
const filterByTk = (0,
|
|
989
|
-
const { field, resource, __parent } = (0,
|
|
990
|
-
const { setVisible } = (0,
|
|
995
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
996
|
+
const { field, resource, __parent } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
997
|
+
const { setVisible } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
991
998
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
992
999
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
993
1000
|
const { fields, getField, name } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
994
|
-
const compile = (0,
|
|
1001
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
995
1002
|
const actionField = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
996
1003
|
const { updateAssociationValues } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormBlockContext)();
|
|
997
1004
|
const { modal, message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
998
|
-
const data = (0,
|
|
999
|
-
const variables = (0,
|
|
1000
|
-
const localVariables = (0,
|
|
1005
|
+
const data = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useParamsFromRecord)();
|
|
1006
|
+
const variables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useVariables)();
|
|
1007
|
+
const localVariables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useLocalVariables)({
|
|
1001
1008
|
currentForm: form
|
|
1002
1009
|
});
|
|
1003
1010
|
const { getActiveFieldsName } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormActiveFields)() || {};
|
|
@@ -1009,9 +1016,9 @@ var __webpack_exports__ = {};
|
|
|
1009
1016
|
const waitList = Object.keys(originalAssignedValues).map(async (key)=>{
|
|
1010
1017
|
const value = originalAssignedValues[key];
|
|
1011
1018
|
const collectionField = getField(key);
|
|
1012
|
-
if ((0,
|
|
1019
|
+
if ((0, _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__.isVariable)(value)) {
|
|
1013
1020
|
const result = await (null == variables ? void 0 : variables.parseVariable(value, localVariables));
|
|
1014
|
-
if (result) assignedValues[key] = (0,
|
|
1021
|
+
if (result) assignedValues[key] = (0, _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__.transformVariableValue)(result, {
|
|
1015
1022
|
targetCollectionField: collectionField
|
|
1016
1023
|
});
|
|
1017
1024
|
} else if (null != value && '' !== value) assignedValues[key] = value;
|
|
@@ -1078,10 +1085,10 @@ var __webpack_exports__ = {};
|
|
|
1078
1085
|
};
|
|
1079
1086
|
};
|
|
1080
1087
|
const useDestroyActionProps = ()=>{
|
|
1081
|
-
const filterByTk = (0,
|
|
1082
|
-
const { resource, service, block, __parent } = (0,
|
|
1083
|
-
const { setVisible } = (0,
|
|
1084
|
-
const data = (0,
|
|
1088
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
1089
|
+
const { resource, service, block, __parent } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1090
|
+
const { setVisible } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
1091
|
+
const data = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useParamsFromRecord)();
|
|
1085
1092
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
1086
1093
|
return {
|
|
1087
1094
|
async onClick () {
|
|
@@ -1114,7 +1121,7 @@ var __webpack_exports__ = {};
|
|
|
1114
1121
|
};
|
|
1115
1122
|
};
|
|
1116
1123
|
const useRemoveActionProps = (associationName)=>{
|
|
1117
|
-
const filterByTk = (0,
|
|
1124
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
1118
1125
|
const api = (0, _api_client__WEBPACK_IMPORTED_MODULE_12__.useAPIClient)();
|
|
1119
1126
|
const resource = api.resource(associationName, filterByTk);
|
|
1120
1127
|
return {
|
|
@@ -1128,9 +1135,9 @@ var __webpack_exports__ = {};
|
|
|
1128
1135
|
};
|
|
1129
1136
|
};
|
|
1130
1137
|
const useDisassociateActionProps = ()=>{
|
|
1131
|
-
const filterByTk = (0,
|
|
1132
|
-
const { resource, service, block, __parent } = (0,
|
|
1133
|
-
const { setVisible } = (0,
|
|
1138
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
1139
|
+
const { resource, service, block, __parent } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1140
|
+
const { setVisible } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
1134
1141
|
return {
|
|
1135
1142
|
async onClick () {
|
|
1136
1143
|
var _service_data;
|
|
@@ -1171,8 +1178,8 @@ var __webpack_exports__ = {};
|
|
|
1171
1178
|
};
|
|
1172
1179
|
};
|
|
1173
1180
|
const useBulkDestroyActionProps = ()=>{
|
|
1174
|
-
const { field } = (0,
|
|
1175
|
-
const { resource, service } = (0,
|
|
1181
|
+
const { field } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1182
|
+
const { resource, service } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1176
1183
|
return {
|
|
1177
1184
|
async onClick () {
|
|
1178
1185
|
var _field_data_selectedRowKeys, _field_data, _field_data1, _service_params_, _service_data_meta, _service_data, _service_refresh;
|
|
@@ -1189,7 +1196,7 @@ var __webpack_exports__ = {};
|
|
|
1189
1196
|
};
|
|
1190
1197
|
};
|
|
1191
1198
|
const useRefreshActionProps = ()=>{
|
|
1192
|
-
const { service } = (0,
|
|
1199
|
+
const { service } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1193
1200
|
return {
|
|
1194
1201
|
async onClick () {
|
|
1195
1202
|
var _service_refresh;
|
|
@@ -1199,7 +1206,7 @@ var __webpack_exports__ = {};
|
|
|
1199
1206
|
};
|
|
1200
1207
|
const useDetailsPaginationProps = ()=>{
|
|
1201
1208
|
var _ctx_service_data_meta, _ctx_service_data, _ctx_service, _ctx_service_data_meta1, _ctx_service_data1, _ctx_service1;
|
|
1202
|
-
const ctx = (0,
|
|
1209
|
+
const ctx = (0, _DetailsBlockProvider__WEBPACK_IMPORTED_MODULE_26__.useDetailsBlockContext)();
|
|
1203
1210
|
const count = (null == (_ctx_service = ctx.service) ? void 0 : null == (_ctx_service_data = _ctx_service.data) ? void 0 : null == (_ctx_service_data_meta = _ctx_service_data.meta) ? void 0 : _ctx_service_data_meta.count) || 0;
|
|
1204
1211
|
return {
|
|
1205
1212
|
simple: true,
|
|
@@ -1225,7 +1232,7 @@ var __webpack_exports__ = {};
|
|
|
1225
1232
|
const useAssociationFilterProps = ()=>{
|
|
1226
1233
|
var _cm_getCollection, _fieldSchema_xcomponentprops_fieldNames, _fieldSchema_xcomponentprops, _field_componentProps, _field_componentProps1;
|
|
1227
1234
|
const collectionField = ___WEBPACK_IMPORTED_MODULE_11__.AssociationFilter.useAssociationField();
|
|
1228
|
-
const { service, props: blockProps } = (0,
|
|
1235
|
+
const { service, props: blockProps } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1229
1236
|
const fieldSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
1230
1237
|
const cm = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollectionManager_deprecated)();
|
|
1231
1238
|
const valueKey = (null == collectionField ? void 0 : collectionField.target) ? null == (_cm_getCollection = cm.getCollection(collectionField.target)) ? void 0 : _cm_getCollection.getPrimaryKey() : 'id';
|
|
@@ -1266,7 +1273,7 @@ var __webpack_exports__ = {};
|
|
|
1266
1273
|
...null == (_service_params1 = service.params) ? void 0 : _service_params1[0],
|
|
1267
1274
|
pageSize: 200,
|
|
1268
1275
|
page: 1,
|
|
1269
|
-
filter: (0,
|
|
1276
|
+
filter: (0, _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.mergeFilter)([
|
|
1270
1277
|
...Object.values(filters),
|
|
1271
1278
|
null == blockProps ? void 0 : null == (_blockProps_params = blockProps.params) ? void 0 : _blockProps_params.filter
|
|
1272
1279
|
])
|
|
@@ -1312,7 +1319,7 @@ var __webpack_exports__ = {};
|
|
|
1312
1319
|
const { getDataBlocks } = (0, _filter_provider_FilterProvider__WEBPACK_IMPORTED_MODULE_15__.useFilterBlock)();
|
|
1313
1320
|
const collectionFieldName = null == collectionField ? void 0 : collectionField.name;
|
|
1314
1321
|
const field = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
1315
|
-
const { props: blockProps } = (0,
|
|
1322
|
+
const { props: blockProps } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1316
1323
|
const headers = (0, ___WEBPACK_IMPORTED_MODULE_11__.useDataSourceHeaders)(null == blockProps ? void 0 : blockProps.dataSource);
|
|
1317
1324
|
const cm = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollectionManager_deprecated)();
|
|
1318
1325
|
let list, handleSearchInput, params, run, data, valueKey, labelKey, filterKey;
|
|
@@ -1396,8 +1403,9 @@ var __webpack_exports__ = {};
|
|
|
1396
1403
|
if ('manual' === block.dataLoadingMode) return block.clearData();
|
|
1397
1404
|
delete storedFilter[key];
|
|
1398
1405
|
}
|
|
1399
|
-
const mergedFilter = (0,
|
|
1406
|
+
const mergedFilter = (0, _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.mergeFilter)([
|
|
1400
1407
|
...Object.values(storedFilter),
|
|
1408
|
+
(0, _filter_provider_incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_16__.getFilterSourceDefaultFilter)(getDataBlocks(), uid),
|
|
1401
1409
|
block.defaultFilter
|
|
1402
1410
|
]);
|
|
1403
1411
|
return block.doFilter({
|
|
@@ -1556,7 +1564,7 @@ var __webpack_exports__ = {};
|
|
|
1556
1564
|
async function resetFormCorrectly(form) {
|
|
1557
1565
|
(0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.untracked)(()=>{
|
|
1558
1566
|
Object.keys(form.fields).forEach((key)=>{
|
|
1559
|
-
if ((0,
|
|
1567
|
+
if ((0, _schema_component_antd_association_field_util__WEBPACK_IMPORTED_MODULE_20__.isSubMode)(form.fields[key])) form.fields[key].initialValue = null;
|
|
1560
1568
|
});
|
|
1561
1569
|
});
|
|
1562
1570
|
await form.reset();
|
|
@@ -72,6 +72,15 @@ const DataBlockCollector = (param)=>{
|
|
|
72
72
|
const dataLoadingMode = (0, setDataLoadingModeSettingsItem_js_namespaceObject.useDataLoadingMode)();
|
|
73
73
|
const shouldApplyFilter = 'FilterFormBlockProvider' !== field.decoratorType && 'FormBlockProvider' !== field.decoratorType && 'filter' !== field.decoratorProps.blockType;
|
|
74
74
|
const addBlockToDataBlocks = (0, external_react_namespaceObject.useCallback)(()=>{
|
|
75
|
+
let filterTargetUids = [];
|
|
76
|
+
let s = fieldSchema;
|
|
77
|
+
while(s){
|
|
78
|
+
if (s['x-filter-targets']) {
|
|
79
|
+
filterTargetUids = s['x-filter-targets'].map((t)=>t.uid);
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
s = s.parent;
|
|
83
|
+
}
|
|
75
84
|
recordDataBlocks({
|
|
76
85
|
uid: fieldSchema['x-uid'],
|
|
77
86
|
title: field.componentProps.title,
|
|
@@ -80,6 +89,7 @@ const DataBlockCollector = (param)=>{
|
|
|
80
89
|
associatedFields,
|
|
81
90
|
foreignKeyFields: collection.foreignKeyFields,
|
|
82
91
|
defaultFilter: (null == params ? void 0 : params.filter) || {},
|
|
92
|
+
filterTargetUids,
|
|
83
93
|
service,
|
|
84
94
|
dom: container.current,
|
|
85
95
|
dataLoadingMode,
|
|
@@ -137,15 +147,22 @@ const useFilterBlock = ()=>{
|
|
|
137
147
|
inProvider: false,
|
|
138
148
|
recordDataBlocks: ()=>{},
|
|
139
149
|
getDataBlocks: ()=>[],
|
|
140
|
-
removeDataBlock: ()=>{}
|
|
150
|
+
removeDataBlock: ()=>{},
|
|
151
|
+
dataBlocks: []
|
|
141
152
|
};
|
|
142
153
|
const { dataBlocks, setDataBlocks } = ctx;
|
|
143
154
|
const recordDataBlocks = (block)=>{
|
|
144
155
|
const existingBlock = dataBlocks.find((item)=>item.uid === block.uid);
|
|
145
156
|
if (existingBlock) {
|
|
157
|
+
const prevDf = JSON.stringify(existingBlock.defaultFilter);
|
|
158
|
+
const prevTg = JSON.stringify(existingBlock.filterTargetUids);
|
|
146
159
|
existingBlock.service = block.service;
|
|
147
160
|
existingBlock.defaultFilter = block.defaultFilter;
|
|
161
|
+
existingBlock.filterTargetUids = block.filterTargetUids;
|
|
148
162
|
existingBlock.dataLoadingMode = block.dataLoadingMode;
|
|
163
|
+
if (JSON.stringify(existingBlock.defaultFilter) !== prevDf || JSON.stringify(existingBlock.filterTargetUids) !== prevTg) setDataBlocks((prev)=>[
|
|
164
|
+
...prev
|
|
165
|
+
]);
|
|
149
166
|
return;
|
|
150
167
|
}
|
|
151
168
|
setDataBlocks((prev)=>(0, external_lodash_namespaceObject.uniqBy)([
|
|
@@ -161,6 +178,7 @@ const useFilterBlock = ()=>{
|
|
|
161
178
|
recordDataBlocks,
|
|
162
179
|
getDataBlocks,
|
|
163
180
|
removeDataBlock,
|
|
181
|
+
dataBlocks,
|
|
164
182
|
inProvider: true
|
|
165
183
|
};
|
|
166
184
|
};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __webpack_require__ = {};
|
|
3
|
+
(()=>{
|
|
4
|
+
__webpack_require__.d = (exports1, definition)=>{
|
|
5
|
+
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: definition[key]
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
})();
|
|
11
|
+
(()=>{
|
|
12
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
13
|
+
})();
|
|
14
|
+
(()=>{
|
|
15
|
+
__webpack_require__.r = (exports1)=>{
|
|
16
|
+
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
17
|
+
value: 'Module'
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
20
|
+
value: true
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
var __webpack_exports__ = {};
|
|
25
|
+
__webpack_require__.r(__webpack_exports__);
|
|
26
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
+
mergeIncomingFiltersFromSourceBlocks: ()=>mergeIncomingFiltersFromSourceBlocks,
|
|
28
|
+
getFilterSourceDefaultFilter: ()=>getFilterSourceDefaultFilter
|
|
29
|
+
});
|
|
30
|
+
const external_utils_js_namespaceObject = require("./utils.js");
|
|
31
|
+
function mergeIncomingFiltersFromSourceBlocks(ownFilter, currentBlockUid, dataBlocks) {
|
|
32
|
+
if (!currentBlockUid) return null != ownFilter ? ownFilter : {};
|
|
33
|
+
const sources = dataBlocks.filter((b)=>{
|
|
34
|
+
var _b_filterTargetUids;
|
|
35
|
+
return (null == (_b_filterTargetUids = b.filterTargetUids) ? void 0 : _b_filterTargetUids.length) && b.filterTargetUids.includes(currentBlockUid);
|
|
36
|
+
});
|
|
37
|
+
const sourceFilters = sources.map((b)=>b.defaultFilter).filter((f)=>f && 'object' == typeof f && Object.keys(f).length > 0);
|
|
38
|
+
if (!sourceFilters.length) return null != ownFilter ? ownFilter : {};
|
|
39
|
+
const own = ownFilter && 'object' == typeof ownFilter ? ownFilter : {};
|
|
40
|
+
return (0, external_utils_js_namespaceObject.mergeFilter)([
|
|
41
|
+
...sourceFilters,
|
|
42
|
+
own
|
|
43
|
+
], '$and');
|
|
44
|
+
}
|
|
45
|
+
function getFilterSourceDefaultFilter(dataBlocks, filterSourceUid) {
|
|
46
|
+
var _dataBlocks_find;
|
|
47
|
+
if (!filterSourceUid) return {};
|
|
48
|
+
const f = null == (_dataBlocks_find = dataBlocks.find((b)=>b.uid === filterSourceUid)) ? void 0 : _dataBlocks_find.defaultFilter;
|
|
49
|
+
if (f && 'object' == typeof f && Object.keys(f).length) return f;
|
|
50
|
+
return {};
|
|
51
|
+
}
|
|
52
|
+
exports.getFilterSourceDefaultFilter = __webpack_exports__.getFilterSourceDefaultFilter;
|
|
53
|
+
exports.mergeIncomingFiltersFromSourceBlocks = __webpack_exports__.mergeIncomingFiltersFromSourceBlocks;
|
|
54
|
+
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
|
|
55
|
+
"getFilterSourceDefaultFilter",
|
|
56
|
+
"mergeIncomingFiltersFromSourceBlocks"
|
|
57
|
+
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
58
|
+
Object.defineProperty(exports, '__esModule', {
|
|
59
|
+
value: true
|
|
60
|
+
});
|
|
@@ -3,6 +3,9 @@ var __webpack_modules__ = {
|
|
|
3
3
|
"./FilterProvider": function(module) {
|
|
4
4
|
module.exports = require("./FilterProvider.js");
|
|
5
5
|
},
|
|
6
|
+
"./incomingFilterFromSources": function(module) {
|
|
7
|
+
module.exports = require("./incomingFilterFromSources.js");
|
|
8
|
+
},
|
|
6
9
|
"./utils?198b": function(module) {
|
|
7
10
|
module.exports = require("./utils.js");
|
|
8
11
|
}
|
|
@@ -56,10 +59,16 @@ var __webpack_exports__ = {};
|
|
|
56
59
|
return _FilterProvider__WEBPACK_IMPORTED_MODULE_0__[key];
|
|
57
60
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
58
61
|
__webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
59
|
-
var
|
|
62
|
+
var _incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("./incomingFilterFromSources");
|
|
63
|
+
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
64
|
+
for(var __WEBPACK_IMPORT_KEY__ in _incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_1__)if ("default" !== __WEBPACK_IMPORT_KEY__) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
65
|
+
return _incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_1__[key];
|
|
66
|
+
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
67
|
+
__webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
68
|
+
var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./utils?198b");
|
|
60
69
|
var __WEBPACK_REEXPORT_OBJECT__ = {};
|
|
61
|
-
for(var __WEBPACK_IMPORT_KEY__ in
|
|
62
|
-
return
|
|
70
|
+
for(var __WEBPACK_IMPORT_KEY__ in _utils__WEBPACK_IMPORTED_MODULE_2__)if ("default" !== __WEBPACK_IMPORT_KEY__) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = (function(key) {
|
|
71
|
+
return _utils__WEBPACK_IMPORTED_MODULE_2__[key];
|
|
63
72
|
}).bind(0, __WEBPACK_IMPORT_KEY__);
|
|
64
73
|
__webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
|
|
65
74
|
})();
|
|
@@ -58,6 +58,7 @@ const external_collection_manager_index_js_namespaceObject = require("../collect
|
|
|
58
58
|
const external_schema_component_index_js_namespaceObject = require("../schema-component/index.js");
|
|
59
59
|
const SchemaSettingOptions_js_namespaceObject = require("../schema-component/antd/form-item/SchemaSettingOptions.js");
|
|
60
60
|
const external_FilterProvider_js_namespaceObject = require("./FilterProvider.js");
|
|
61
|
+
const external_incomingFilterFromSources_js_namespaceObject = require("./incomingFilterFromSources.js");
|
|
61
62
|
var utils_FilterBlockType = /*#__PURE__*/ function(FilterBlockType) {
|
|
62
63
|
FilterBlockType[FilterBlockType["FORM"] = 0] = "FORM";
|
|
63
64
|
FilterBlockType[FilterBlockType["TABLE"] = 1] = "TABLE";
|
|
@@ -222,6 +223,7 @@ const useFilterAPI = ()=>{
|
|
|
222
223
|
else delete storedFilter[uid];
|
|
223
224
|
const mergedFilter = mergeFilter([
|
|
224
225
|
...Object.values(storedFilter).map((filter)=>(0, external_schema_component_index_js_namespaceObject.removeNullCondition)(filter)),
|
|
226
|
+
(0, external_incomingFilterFromSources_js_namespaceObject.getFilterSourceDefaultFilter)(dataBlocks, uid),
|
|
225
227
|
block.defaultFilter
|
|
226
228
|
]);
|
|
227
229
|
block.doFilter({
|
|
@@ -44,6 +44,7 @@ var external_lodash_default = /*#__PURE__*/ __webpack_require__.n(external_lodas
|
|
|
44
44
|
const index_js_namespaceObject = require("../../../../../block-provider/hooks/index.js");
|
|
45
45
|
const TableBlockProvider_js_namespaceObject = require("../../../../../block-provider/TableBlockProvider.js");
|
|
46
46
|
const FilterProvider_js_namespaceObject = require("../../../../../filter-provider/FilterProvider.js");
|
|
47
|
+
const incomingFilterFromSources_js_namespaceObject = require("../../../../../filter-provider/incomingFilterFromSources.js");
|
|
47
48
|
const utils_js_namespaceObject = require("../../../../../filter-provider/utils.js");
|
|
48
49
|
const external_schema_component_index_js_namespaceObject = require("../../../../../schema-component/index.js");
|
|
49
50
|
const useTableBlockProps = ()=>{
|
|
@@ -127,8 +128,9 @@ const useTableBlockProps = ()=>{
|
|
|
127
128
|
});
|
|
128
129
|
},
|
|
129
130
|
onClickRow (record, setSelectedRow, selectedRow) {
|
|
130
|
-
const { targets, uid } = (0, index_js_namespaceObject.findFilterTargets)(fieldSchema);
|
|
131
|
+
const { targets, uid: filterSourceUid } = (0, index_js_namespaceObject.findFilterTargets)(fieldSchema);
|
|
131
132
|
const dataBlocks = getDataBlocks();
|
|
133
|
+
const sourceDefaultFilter = (0, incomingFilterFromSources_js_namespaceObject.getFilterSourceDefaultFilter)(dataBlocks, filterSourceUid);
|
|
132
134
|
if (!targets || !targets.some((target)=>dataBlocks.some((dataBlock)=>dataBlock.uid === target.uid))) return void setSelectedRow((prev)=>prev.length ? [] : prev);
|
|
133
135
|
const value = [
|
|
134
136
|
record[ctx.rowKey]
|
|
@@ -142,8 +144,8 @@ const useTableBlockProps = ()=>{
|
|
|
142
144
|
const storedFilter = (null == (_block_service_params1 = block.service.params) ? void 0 : null == (_block_service_params_ = _block_service_params1[1]) ? void 0 : _block_service_params_.filters) || {};
|
|
143
145
|
if (selectedRow.includes(record[ctx.rowKey])) {
|
|
144
146
|
if ('manual' === block.dataLoadingMode) return block.clearData();
|
|
145
|
-
delete storedFilter[
|
|
146
|
-
} else storedFilter[
|
|
147
|
+
delete storedFilter[filterSourceUid];
|
|
148
|
+
} else storedFilter[filterSourceUid] = {
|
|
147
149
|
$and: [
|
|
148
150
|
{
|
|
149
151
|
[(null == target ? void 0 : target.field) || ctx.rowKey]: {
|
|
@@ -160,6 +162,7 @@ const useTableBlockProps = ()=>{
|
|
|
160
162
|
const mergeList = [
|
|
161
163
|
...Object.values(storedFilter).map((filter)=>(0, external_schema_component_index_js_namespaceObject.removeNullCondition)(filter)),
|
|
162
164
|
external_flat_default().unflatten(items),
|
|
165
|
+
sourceDefaultFilter,
|
|
163
166
|
block.defaultFilter,
|
|
164
167
|
prevMergedFilter
|
|
165
168
|
];
|