@tachybase/client 1.6.13 → 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 +4 -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 +100 -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";
|
|
@@ -453,6 +454,7 @@ const useFilterBlockActionProps = ()=>{
|
|
|
453
454
|
storedFilter[uid] = removeNullCondition(transformToFilter(filter.formValues, fieldSchema, getCollectionJoinField, name));
|
|
454
455
|
const mergedFilter = utils_mjs_mergeFilter([
|
|
455
456
|
...Object.values(storedFilter).map((filter)=>removeNullCondition(filter)),
|
|
457
|
+
getFilterSourceDefaultFilter(getDataBlocks(), uid),
|
|
456
458
|
block.defaultFilter,
|
|
457
459
|
filter.customFilter,
|
|
458
460
|
prevMergedFilter
|
|
@@ -498,6 +500,7 @@ const useResetBlockActionProps = ()=>{
|
|
|
498
500
|
delete storedFilter[uid];
|
|
499
501
|
const currFilter = utils_mjs_mergeFilter([
|
|
500
502
|
...Object.values(storedFilter),
|
|
503
|
+
getFilterSourceDefaultFilter(getDataBlocks(), uid),
|
|
501
504
|
block.defaultFilter,
|
|
502
505
|
prevMergedFilter
|
|
503
506
|
]);
|
|
@@ -1086,6 +1089,7 @@ const useAssociationFilterBlockProps = ()=>{
|
|
|
1086
1089
|
}
|
|
1087
1090
|
const mergedFilter = utils_mjs_mergeFilter([
|
|
1088
1091
|
...Object.values(storedFilter),
|
|
1092
|
+
getFilterSourceDefaultFilter(getDataBlocks(), uid),
|
|
1089
1093
|
block.defaultFilter
|
|
1090
1094
|
]);
|
|
1091
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) {
|
|
@@ -364,7 +368,7 @@ var __webpack_exports__ = {};
|
|
|
364
368
|
if (/^\d+$/.test(p)) {
|
|
365
369
|
const prev = i > 0 ? arr[i - 1] : '';
|
|
366
370
|
if ('$and' === prev || '$or' === prev) return true;
|
|
367
|
-
if (
|
|
371
|
+
if (_filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.FILTER_OPERATORS_WITH_ARRAY_VALUES.has(prev)) return true;
|
|
368
372
|
return false;
|
|
369
373
|
}
|
|
370
374
|
return true;
|
|
@@ -400,18 +404,18 @@ var __webpack_exports__ = {};
|
|
|
400
404
|
}
|
|
401
405
|
function useCollectValuesToSubmit() {
|
|
402
406
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
403
|
-
const filterByTk = (0,
|
|
404
|
-
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)();
|
|
405
409
|
const { fields, getField, getTreeParentField, name } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
406
410
|
const fieldNames = fields.map((field)=>field.name);
|
|
407
|
-
const { fieldSchema } = (0,
|
|
411
|
+
const { fieldSchema } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
408
412
|
const { getActiveFieldsName } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormActiveFields)() || {};
|
|
409
|
-
const variables = (0,
|
|
410
|
-
const localVariables = (0,
|
|
413
|
+
const variables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useVariables)();
|
|
414
|
+
const localVariables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useLocalVariables)({
|
|
411
415
|
currentForm: form
|
|
412
416
|
});
|
|
413
417
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
414
|
-
const currentRecord = (0,
|
|
418
|
+
const currentRecord = (0, _record_provider__WEBPACK_IMPORTED_MODULE_18__.useRecord)();
|
|
415
419
|
return (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(async ()=>{
|
|
416
420
|
var _fieldSchema_xcomponentprops;
|
|
417
421
|
var _actionSchema_xactionsettings;
|
|
@@ -429,9 +433,9 @@ var __webpack_exports__ = {};
|
|
|
429
433
|
const waitList = Object.keys(originalAssignedValues).map(async (key)=>{
|
|
430
434
|
const value = originalAssignedValues[key];
|
|
431
435
|
const collectionField = getField(key);
|
|
432
|
-
if ((0,
|
|
436
|
+
if ((0, _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__.isVariable)(value)) {
|
|
433
437
|
const result = await (null == variables ? void 0 : variables.parseVariable(value, localVariables));
|
|
434
|
-
if (result) assignedValues[key] = (0,
|
|
438
|
+
if (result) assignedValues[key] = (0, _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__.transformVariableValue)(result, {
|
|
435
439
|
targetCollectionField: collectionField
|
|
436
440
|
});
|
|
437
441
|
} else if (null != value && '' !== value) assignedValues[key] = value;
|
|
@@ -500,7 +504,7 @@ var __webpack_exports__ = {};
|
|
|
500
504
|
};
|
|
501
505
|
const useInsertSchema = ()=>{
|
|
502
506
|
const fieldSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
503
|
-
const { insertAfterBegin } = (0,
|
|
507
|
+
const { insertAfterBegin } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useDesignable)();
|
|
504
508
|
const insert = (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((ss)=>{
|
|
505
509
|
const schema = fieldSchema.reduceProperties((buf, s)=>{
|
|
506
510
|
if (s['x-component'] === pageDetailsViewer) return s;
|
|
@@ -514,7 +518,7 @@ var __webpack_exports__ = {};
|
|
|
514
518
|
};
|
|
515
519
|
const useCancelActionProps = ()=>{
|
|
516
520
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
517
|
-
const ctx = (0,
|
|
521
|
+
const ctx = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
518
522
|
return {
|
|
519
523
|
async onClick () {
|
|
520
524
|
ctx.setVisible(false);
|
|
@@ -525,7 +529,7 @@ var __webpack_exports__ = {};
|
|
|
525
529
|
const useJumpDetails = ()=>{
|
|
526
530
|
const collection = (0, ___WEBPACK_IMPORTED_MODULE_11__.useCollection)();
|
|
527
531
|
const fieldSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
528
|
-
const dn = (0,
|
|
532
|
+
const dn = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useDesignable)();
|
|
529
533
|
const insert = useInsertSchema();
|
|
530
534
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
531
535
|
return (filterByTk)=>{
|
|
@@ -558,13 +562,13 @@ var __webpack_exports__ = {};
|
|
|
558
562
|
var _actionField_componentProps_filterKeys;
|
|
559
563
|
const record = (0, ___WEBPACK_IMPORTED_MODULE_11__.useCollectionRecord)();
|
|
560
564
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
561
|
-
const { field, resource, __parent } = (0,
|
|
565
|
+
const { field, resource, __parent } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
562
566
|
const jumpDetails = useJumpDetails();
|
|
563
|
-
const { setVisible } = (0,
|
|
567
|
+
const { setVisible } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
564
568
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
565
569
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
566
570
|
const actionField = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
567
|
-
const compile = (0,
|
|
571
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
568
572
|
const { modal, message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
569
573
|
const { t } = (0, react_i18next__WEBPACK_IMPORTED_MODULE_8__.useTranslation)();
|
|
570
574
|
const { updateAssociationValues } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormBlockContext)();
|
|
@@ -625,17 +629,17 @@ var __webpack_exports__ = {};
|
|
|
625
629
|
const useAssociationCreateActionProps = ()=>{
|
|
626
630
|
var _actionField_componentProps_filterKeys;
|
|
627
631
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
628
|
-
const { field, resource, __parent } = (0,
|
|
629
|
-
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)();
|
|
630
634
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
631
635
|
const actionField = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
632
636
|
const { message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
633
637
|
const { fields, getField, getTreeParentField, name } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
634
|
-
const compile = (0,
|
|
635
|
-
const filterByTk = (0,
|
|
636
|
-
const currentRecord = (0,
|
|
637
|
-
const variables = (0,
|
|
638
|
-
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)({
|
|
639
643
|
currentForm: form
|
|
640
644
|
});
|
|
641
645
|
const { getActiveFieldsName } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormActiveFields)() || {};
|
|
@@ -652,9 +656,9 @@ var __webpack_exports__ = {};
|
|
|
652
656
|
const waitList = Object.keys(originalAssignedValues).map(async (key)=>{
|
|
653
657
|
const value = originalAssignedValues[key];
|
|
654
658
|
const collectionField = getField(key);
|
|
655
|
-
if ((0,
|
|
659
|
+
if ((0, _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__.isVariable)(value)) {
|
|
656
660
|
const result = await (null == variables ? void 0 : variables.parseVariable(value, localVariables));
|
|
657
|
-
if (result) assignedValues[key] = (0,
|
|
661
|
+
if (result) assignedValues[key] = (0, _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__.transformVariableValue)(result, {
|
|
658
662
|
targetCollectionField: collectionField
|
|
659
663
|
});
|
|
660
664
|
} else if (null != value && '' !== value) assignedValues[key] = value;
|
|
@@ -761,11 +765,12 @@ var __webpack_exports__ = {};
|
|
|
761
765
|
...values
|
|
762
766
|
};
|
|
763
767
|
for(const key in form.values['__custom'])if (form.values['__custom'][key]) filter.customValues[key] = form.values['__custom'][key];
|
|
764
|
-
filter.customFilter = (0,
|
|
768
|
+
filter.customFilter = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.getCustomCondition)(filter.customValues, fieldSchema);
|
|
765
769
|
}
|
|
766
|
-
storedFilter[uid] = (0,
|
|
767
|
-
const mergedFilter = (0,
|
|
768
|
-
...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),
|
|
769
774
|
block.defaultFilter,
|
|
770
775
|
filter.customFilter,
|
|
771
776
|
prevMergedFilter
|
|
@@ -809,8 +814,9 @@ var __webpack_exports__ = {};
|
|
|
809
814
|
const param = (null == (_block_service_params = block.service.params) ? void 0 : _block_service_params[0]) || {};
|
|
810
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) || {};
|
|
811
816
|
delete storedFilter[uid];
|
|
812
|
-
const currFilter = (0,
|
|
817
|
+
const currFilter = (0, _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.mergeFilter)([
|
|
813
818
|
...Object.values(storedFilter),
|
|
819
|
+
(0, _filter_provider_incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_16__.getFilterSourceDefaultFilter)(getDataBlocks(), uid),
|
|
814
820
|
block.defaultFilter,
|
|
815
821
|
prevMergedFilter
|
|
816
822
|
]);
|
|
@@ -832,15 +838,15 @@ var __webpack_exports__ = {};
|
|
|
832
838
|
};
|
|
833
839
|
};
|
|
834
840
|
const useCustomizeUpdateActionProps = ()=>{
|
|
835
|
-
const { resource, __parent, service } = (0,
|
|
836
|
-
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)();
|
|
837
843
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
838
844
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
839
|
-
const compile = (0,
|
|
845
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
840
846
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
841
847
|
const { modal, message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
842
|
-
const variables = (0,
|
|
843
|
-
const localVariables = (0,
|
|
848
|
+
const variables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useVariables)();
|
|
849
|
+
const localVariables = (0, _variables__WEBPACK_IMPORTED_MODULE_22__.useLocalVariables)({
|
|
844
850
|
currentForm: form
|
|
845
851
|
});
|
|
846
852
|
const { name, getField } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
@@ -853,9 +859,9 @@ var __webpack_exports__ = {};
|
|
|
853
859
|
const waitList = Object.keys(originalAssignedValues).map(async (key)=>{
|
|
854
860
|
const value = originalAssignedValues[key];
|
|
855
861
|
const collectionField = getField(key);
|
|
856
|
-
if ((0,
|
|
862
|
+
if ((0, _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__.isVariable)(value)) {
|
|
857
863
|
const result = await (null == variables ? void 0 : variables.parseVariable(value, localVariables));
|
|
858
|
-
if (result) assignedValues[key] = (0,
|
|
864
|
+
if (result) assignedValues[key] = (0, _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__.transformVariableValue)(result, {
|
|
859
865
|
targetCollectionField: collectionField
|
|
860
866
|
});
|
|
861
867
|
} else if (null != value && '' !== value) assignedValues[key] = value;
|
|
@@ -871,7 +877,7 @@ var __webpack_exports__ = {};
|
|
|
871
877
|
beforeWorkflows: getBeforeWorkflows(triggerWorkflows)
|
|
872
878
|
});
|
|
873
879
|
null == service || null == (_service_refresh = service.refresh) || _service_refresh.call(service);
|
|
874
|
-
if (!(resource instanceof
|
|
880
|
+
if (!(resource instanceof _TableFieldProvider__WEBPACK_IMPORTED_MODULE_27__.TableFieldResource)) {
|
|
875
881
|
var __parent_service_refresh, __parent_service;
|
|
876
882
|
null == __parent || null == (__parent_service = __parent.service) || null == (__parent_service_refresh = __parent_service.refresh) || __parent_service_refresh.call(__parent_service);
|
|
877
883
|
}
|
|
@@ -895,17 +901,17 @@ var __webpack_exports__ = {};
|
|
|
895
901
|
var _currentUserContext_data;
|
|
896
902
|
const apiClient = (0, _api_client__WEBPACK_IMPORTED_MODULE_12__.useAPIClient)();
|
|
897
903
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
898
|
-
const filterByTk = (0,
|
|
904
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
899
905
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
900
|
-
const compile = (0,
|
|
906
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
901
907
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
902
908
|
const { fields, getField } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
903
|
-
const { field, resource, __parent, service } = (0,
|
|
904
|
-
const currentRecord = (0,
|
|
905
|
-
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)();
|
|
906
912
|
const currentUser = null == currentUserContext ? void 0 : null == (_currentUserContext_data = currentUserContext.data) ? void 0 : _currentUserContext_data.data;
|
|
907
913
|
const actionField = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
908
|
-
const { setVisible } = (0,
|
|
914
|
+
const { setVisible } = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useActionContext)();
|
|
909
915
|
const { modal, message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
910
916
|
const { getActiveFieldsName } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormActiveFields)() || {};
|
|
911
917
|
return {
|
|
@@ -963,7 +969,7 @@ var __webpack_exports__ = {};
|
|
|
963
969
|
...requestBody
|
|
964
970
|
});
|
|
965
971
|
actionField.data.loading = false;
|
|
966
|
-
if (!(resource instanceof
|
|
972
|
+
if (!(resource instanceof _TableFieldProvider__WEBPACK_IMPORTED_MODULE_27__.TableFieldResource)) {
|
|
967
973
|
var __parent_service_refresh, __parent_service;
|
|
968
974
|
null == __parent || null == (__parent_service = __parent.service) || null == (__parent_service_refresh = __parent_service.refresh) || __parent_service_refresh.call(__parent_service);
|
|
969
975
|
}
|
|
@@ -986,19 +992,19 @@ var __webpack_exports__ = {};
|
|
|
986
992
|
};
|
|
987
993
|
const useUpdateActionProps = ()=>{
|
|
988
994
|
const form = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useForm)();
|
|
989
|
-
const filterByTk = (0,
|
|
990
|
-
const { field, resource, __parent } = (0,
|
|
991
|
-
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)();
|
|
992
998
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
993
999
|
const navigate = (0, react_router_dom__WEBPACK_IMPORTED_MODULE_9__.useNavigate)();
|
|
994
1000
|
const { fields, getField, name } = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollection_deprecated)();
|
|
995
|
-
const compile = (0,
|
|
1001
|
+
const compile = (0, _schema_component__WEBPACK_IMPORTED_MODULE_19__.useCompile)();
|
|
996
1002
|
const actionField = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
997
1003
|
const { updateAssociationValues } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormBlockContext)();
|
|
998
1004
|
const { modal, message } = antd__WEBPACK_IMPORTED_MODULE_3__.App.useApp();
|
|
999
|
-
const data = (0,
|
|
1000
|
-
const variables = (0,
|
|
1001
|
-
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)({
|
|
1002
1008
|
currentForm: form
|
|
1003
1009
|
});
|
|
1004
1010
|
const { getActiveFieldsName } = (0, ___WEBPACK_IMPORTED_MODULE_11__.useFormActiveFields)() || {};
|
|
@@ -1010,9 +1016,9 @@ var __webpack_exports__ = {};
|
|
|
1010
1016
|
const waitList = Object.keys(originalAssignedValues).map(async (key)=>{
|
|
1011
1017
|
const value = originalAssignedValues[key];
|
|
1012
1018
|
const collectionField = getField(key);
|
|
1013
|
-
if ((0,
|
|
1019
|
+
if ((0, _variables_utils_isVariable__WEBPACK_IMPORTED_MODULE_23__.isVariable)(value)) {
|
|
1014
1020
|
const result = await (null == variables ? void 0 : variables.parseVariable(value, localVariables));
|
|
1015
|
-
if (result) assignedValues[key] = (0,
|
|
1021
|
+
if (result) assignedValues[key] = (0, _variables_utils_transformVariableValue__WEBPACK_IMPORTED_MODULE_24__.transformVariableValue)(result, {
|
|
1016
1022
|
targetCollectionField: collectionField
|
|
1017
1023
|
});
|
|
1018
1024
|
} else if (null != value && '' !== value) assignedValues[key] = value;
|
|
@@ -1079,10 +1085,10 @@ var __webpack_exports__ = {};
|
|
|
1079
1085
|
};
|
|
1080
1086
|
};
|
|
1081
1087
|
const useDestroyActionProps = ()=>{
|
|
1082
|
-
const filterByTk = (0,
|
|
1083
|
-
const { resource, service, block, __parent } = (0,
|
|
1084
|
-
const { setVisible } = (0,
|
|
1085
|
-
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)();
|
|
1086
1092
|
const actionSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
1087
1093
|
return {
|
|
1088
1094
|
async onClick () {
|
|
@@ -1115,7 +1121,7 @@ var __webpack_exports__ = {};
|
|
|
1115
1121
|
};
|
|
1116
1122
|
};
|
|
1117
1123
|
const useRemoveActionProps = (associationName)=>{
|
|
1118
|
-
const filterByTk = (0,
|
|
1124
|
+
const filterByTk = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useFilterByTk)();
|
|
1119
1125
|
const api = (0, _api_client__WEBPACK_IMPORTED_MODULE_12__.useAPIClient)();
|
|
1120
1126
|
const resource = api.resource(associationName, filterByTk);
|
|
1121
1127
|
return {
|
|
@@ -1129,9 +1135,9 @@ var __webpack_exports__ = {};
|
|
|
1129
1135
|
};
|
|
1130
1136
|
};
|
|
1131
1137
|
const useDisassociateActionProps = ()=>{
|
|
1132
|
-
const filterByTk = (0,
|
|
1133
|
-
const { resource, service, block, __parent } = (0,
|
|
1134
|
-
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)();
|
|
1135
1141
|
return {
|
|
1136
1142
|
async onClick () {
|
|
1137
1143
|
var _service_data;
|
|
@@ -1172,8 +1178,8 @@ var __webpack_exports__ = {};
|
|
|
1172
1178
|
};
|
|
1173
1179
|
};
|
|
1174
1180
|
const useBulkDestroyActionProps = ()=>{
|
|
1175
|
-
const { field } = (0,
|
|
1176
|
-
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)();
|
|
1177
1183
|
return {
|
|
1178
1184
|
async onClick () {
|
|
1179
1185
|
var _field_data_selectedRowKeys, _field_data, _field_data1, _service_params_, _service_data_meta, _service_data, _service_refresh;
|
|
@@ -1190,7 +1196,7 @@ var __webpack_exports__ = {};
|
|
|
1190
1196
|
};
|
|
1191
1197
|
};
|
|
1192
1198
|
const useRefreshActionProps = ()=>{
|
|
1193
|
-
const { service } = (0,
|
|
1199
|
+
const { service } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1194
1200
|
return {
|
|
1195
1201
|
async onClick () {
|
|
1196
1202
|
var _service_refresh;
|
|
@@ -1200,7 +1206,7 @@ var __webpack_exports__ = {};
|
|
|
1200
1206
|
};
|
|
1201
1207
|
const useDetailsPaginationProps = ()=>{
|
|
1202
1208
|
var _ctx_service_data_meta, _ctx_service_data, _ctx_service, _ctx_service_data_meta1, _ctx_service_data1, _ctx_service1;
|
|
1203
|
-
const ctx = (0,
|
|
1209
|
+
const ctx = (0, _DetailsBlockProvider__WEBPACK_IMPORTED_MODULE_26__.useDetailsBlockContext)();
|
|
1204
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;
|
|
1205
1211
|
return {
|
|
1206
1212
|
simple: true,
|
|
@@ -1226,7 +1232,7 @@ var __webpack_exports__ = {};
|
|
|
1226
1232
|
const useAssociationFilterProps = ()=>{
|
|
1227
1233
|
var _cm_getCollection, _fieldSchema_xcomponentprops_fieldNames, _fieldSchema_xcomponentprops, _field_componentProps, _field_componentProps1;
|
|
1228
1234
|
const collectionField = ___WEBPACK_IMPORTED_MODULE_11__.AssociationFilter.useAssociationField();
|
|
1229
|
-
const { service, props: blockProps } = (0,
|
|
1235
|
+
const { service, props: blockProps } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1230
1236
|
const fieldSchema = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useFieldSchema)();
|
|
1231
1237
|
const cm = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollectionManager_deprecated)();
|
|
1232
1238
|
const valueKey = (null == collectionField ? void 0 : collectionField.target) ? null == (_cm_getCollection = cm.getCollection(collectionField.target)) ? void 0 : _cm_getCollection.getPrimaryKey() : 'id';
|
|
@@ -1267,7 +1273,7 @@ var __webpack_exports__ = {};
|
|
|
1267
1273
|
...null == (_service_params1 = service.params) ? void 0 : _service_params1[0],
|
|
1268
1274
|
pageSize: 200,
|
|
1269
1275
|
page: 1,
|
|
1270
|
-
filter: (0,
|
|
1276
|
+
filter: (0, _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.mergeFilter)([
|
|
1271
1277
|
...Object.values(filters),
|
|
1272
1278
|
null == blockProps ? void 0 : null == (_blockProps_params = blockProps.params) ? void 0 : _blockProps_params.filter
|
|
1273
1279
|
])
|
|
@@ -1313,7 +1319,7 @@ var __webpack_exports__ = {};
|
|
|
1313
1319
|
const { getDataBlocks } = (0, _filter_provider_FilterProvider__WEBPACK_IMPORTED_MODULE_15__.useFilterBlock)();
|
|
1314
1320
|
const collectionFieldName = null == collectionField ? void 0 : collectionField.name;
|
|
1315
1321
|
const field = (0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.useField)();
|
|
1316
|
-
const { props: blockProps } = (0,
|
|
1322
|
+
const { props: blockProps } = (0, _BlockProvider__WEBPACK_IMPORTED_MODULE_25__.useBlockRequestContext)();
|
|
1317
1323
|
const headers = (0, ___WEBPACK_IMPORTED_MODULE_11__.useDataSourceHeaders)(null == blockProps ? void 0 : blockProps.dataSource);
|
|
1318
1324
|
const cm = (0, _collection_manager__WEBPACK_IMPORTED_MODULE_14__.useCollectionManager_deprecated)();
|
|
1319
1325
|
let list, handleSearchInput, params, run, data, valueKey, labelKey, filterKey;
|
|
@@ -1397,8 +1403,9 @@ var __webpack_exports__ = {};
|
|
|
1397
1403
|
if ('manual' === block.dataLoadingMode) return block.clearData();
|
|
1398
1404
|
delete storedFilter[key];
|
|
1399
1405
|
}
|
|
1400
|
-
const mergedFilter = (0,
|
|
1406
|
+
const mergedFilter = (0, _filter_provider_utils__WEBPACK_IMPORTED_MODULE_17__.mergeFilter)([
|
|
1401
1407
|
...Object.values(storedFilter),
|
|
1408
|
+
(0, _filter_provider_incomingFilterFromSources__WEBPACK_IMPORTED_MODULE_16__.getFilterSourceDefaultFilter)(getDataBlocks(), uid),
|
|
1402
1409
|
block.defaultFilter
|
|
1403
1410
|
]);
|
|
1404
1411
|
return block.doFilter({
|
|
@@ -1557,7 +1564,7 @@ var __webpack_exports__ = {};
|
|
|
1557
1564
|
async function resetFormCorrectly(form) {
|
|
1558
1565
|
(0, _tachybase_schema__WEBPACK_IMPORTED_MODULE_1__.untracked)(()=>{
|
|
1559
1566
|
Object.keys(form.fields).forEach((key)=>{
|
|
1560
|
-
if ((0,
|
|
1567
|
+
if ((0, _schema_component_antd_association_field_util__WEBPACK_IMPORTED_MODULE_20__.isSubMode)(form.fields[key])) form.fields[key].initialValue = null;
|
|
1561
1568
|
});
|
|
1562
1569
|
});
|
|
1563
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
|
];
|