@pisell/materials 1.8.31 → 1.8.33
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/build/lowcode/assets-daily.json +11 -11
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +11 -11
- package/build/lowcode/meta.js +1 -1
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +6 -6
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +5 -5
- package/es/components/Pagination/index.d.ts +2 -1
- package/es/components/Pagination/index.js +58 -24
- package/es/components/dataSourceComponents/dataSourceForm/serve.d.ts +201 -0
- package/es/components/dataSourceComponents/dataSourceForm/serve.js +4 -2
- package/es/components/dataSourceComponents/fields/index.d.ts +13 -12
- package/es/components/dataSourceComponents/hooks/useActions.d.ts +18 -0
- package/es/components/pisellFloorMapLayout/PisellFloorMapLayout.js +3 -1
- package/es/components/pisellFloorMapLayout/components/ItemLayer.d.ts +4 -0
- package/es/components/pisellFloorMapLayout/components/ItemLayer.js +9 -4
- package/es/components/pisellFloorMapLayout/components/ItemLayer.less +9 -2
- package/es/components/pisellFloorMapLayout/hooks/useFloorMapTransformMetrics.js +74 -23
- package/es/components/pisellFloorMapLayout/types.d.ts +5 -0
- package/es/components/pisellRecordBoard/PisellRecordBoard.js +14 -6
- package/es/components/pisellRecordBoard/layouts/GridLayout/Grid.js +193 -9
- package/es/components/pisellRecordBoard/layouts/GridLayout/Grid.less +31 -0
- package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarMonthView.js +6 -3
- package/es/components/pisellRecordBoard/shellFrame/index.js +4 -1
- package/es/components/pisellRecordBoard/types.d.ts +9 -0
- package/es/components/pisellTimeNavigator/PisellTimeNavigator.js +13 -1
- package/es/locales/en-US.d.ts +4 -1
- package/es/locales/en-US.js +5 -2
- package/es/locales/ja.d.ts +3 -0
- package/es/locales/ja.js +3 -0
- package/es/locales/pt.d.ts +3 -0
- package/es/locales/pt.js +3 -0
- package/es/locales/zh-CN.d.ts +4 -1
- package/es/locales/zh-CN.js +5 -2
- package/es/locales/zh-TW.d.ts +4 -1
- package/es/locales/zh-TW.js +5 -2
- package/es/pisell-materials.tw.css +1 -1
- package/lib/components/Pagination/index.d.ts +2 -1
- package/lib/components/Pagination/index.js +50 -7
- package/lib/components/dataSourceComponents/dataSourceForm/serve.d.ts +201 -0
- package/lib/components/dataSourceComponents/dataSourceForm/serve.js +4 -2
- package/lib/components/dataSourceComponents/fields/index.d.ts +13 -12
- package/lib/components/dataSourceComponents/hooks/useActions.d.ts +18 -0
- package/lib/components/pisellFloorMapLayout/PisellFloorMapLayout.js +3 -1
- package/lib/components/pisellFloorMapLayout/components/ItemLayer.d.ts +4 -0
- package/lib/components/pisellFloorMapLayout/components/ItemLayer.js +8 -3
- package/lib/components/pisellFloorMapLayout/components/ItemLayer.less +9 -2
- package/lib/components/pisellFloorMapLayout/hooks/useFloorMapTransformMetrics.js +53 -18
- package/lib/components/pisellFloorMapLayout/types.d.ts +5 -0
- package/lib/components/pisellRecordBoard/PisellRecordBoard.js +16 -6
- package/lib/components/pisellRecordBoard/layouts/GridLayout/Grid.js +189 -32
- package/lib/components/pisellRecordBoard/layouts/GridLayout/Grid.less +31 -0
- package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarMonthView.js +99 -96
- package/lib/components/pisellRecordBoard/shellFrame/index.js +2 -1
- package/lib/components/pisellRecordBoard/types.d.ts +9 -0
- package/lib/components/pisellTimeNavigator/PisellTimeNavigator.js +9 -1
- package/lib/locales/en-US.d.ts +4 -1
- package/lib/locales/en-US.js +4 -1
- package/lib/locales/ja.d.ts +3 -0
- package/lib/locales/ja.js +3 -0
- package/lib/locales/pt.d.ts +3 -0
- package/lib/locales/pt.js +3 -0
- package/lib/locales/zh-CN.d.ts +4 -1
- package/lib/locales/zh-CN.js +4 -1
- package/lib/locales/zh-TW.d.ts +4 -1
- package/lib/locales/zh-TW.js +4 -1
- package/lib/pisell-materials.tw.css +1 -1
- package/lowcode/pisell-record-board-calendar-view/meta.ts +1 -1
- package/package.json +1 -1
|
@@ -5,7 +5,8 @@ declare const Pagination: (props: PaginationProps) => React.JSX.Element | null;
|
|
|
5
5
|
export declare const paginationConfig: {
|
|
6
6
|
className: string;
|
|
7
7
|
defaultCurrent: number;
|
|
8
|
-
|
|
8
|
+
/** 无 props 上下文时仅能根据 total + range 近似推算(见 resolveCurrentPage) */
|
|
9
|
+
showTotal: (totalRecords: number, range: [number, number]) => any;
|
|
9
10
|
responsive: boolean;
|
|
10
11
|
size: string;
|
|
11
12
|
};
|
|
@@ -8,7 +8,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
8
8
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
9
9
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
10
10
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
11
|
-
import React, { useEffect, useMemo, useState } from 'react';
|
|
11
|
+
import React, { useCallback, useEffect, useMemo, useState } from 'react';
|
|
12
12
|
// import { ArrowLeft, ArrowRight } from "@pisell/icon/es";
|
|
13
13
|
import ArrowRight from '@pisell/icon/es/ArrowRight';
|
|
14
14
|
import ArrowLeft from '@pisell/icon/es/ArrowLeft';
|
|
@@ -26,16 +26,32 @@ function getPaginationText(key) {
|
|
|
26
26
|
if (fromUtils !== fullKey) return fromUtils;
|
|
27
27
|
return (_getText = getText(fullKey)) !== null && _getText !== void 0 ? _getText : getText("table-pagination-".concat(key));
|
|
28
28
|
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* antd Pagination 的 showTotal(total, range) 中 range 为本页条目序号区间 [start, end],
|
|
32
|
+
* 不是页码。未受控时用 range 与 pageSize 推算当前页。
|
|
33
|
+
*/
|
|
34
|
+
function resolveCurrentPage(props, range, pageSize) {
|
|
35
|
+
var _props$current;
|
|
36
|
+
var fromProps = (_props$current = props.current) !== null && _props$current !== void 0 ? _props$current : props.defaultCurrent;
|
|
37
|
+
if (typeof fromProps === 'number' && fromProps >= 1) {
|
|
38
|
+
return fromProps;
|
|
39
|
+
}
|
|
40
|
+
var start = range[0];
|
|
41
|
+
if (start == null || start < 1 || pageSize < 1) {
|
|
42
|
+
return 1;
|
|
43
|
+
}
|
|
44
|
+
return Math.floor((start - 1) / pageSize) + 1;
|
|
45
|
+
}
|
|
29
46
|
var Pagination = function Pagination(props) {
|
|
30
47
|
var show = useMemo(function () {
|
|
31
48
|
return Object.keys(props).length;
|
|
32
49
|
}, [props]);
|
|
33
50
|
var isMiniPagination = useIsMobileTable();
|
|
34
|
-
var
|
|
51
|
+
var itemRenderFn = useMemo(function () {
|
|
35
52
|
var prevText = getPaginationText('previous');
|
|
36
53
|
var nextText = getPaginationText('next');
|
|
37
|
-
|
|
38
|
-
var itemRenderFn = function itemRenderFn(_, type, originalElement) {
|
|
54
|
+
return function (_, type, originalElement) {
|
|
39
55
|
if (type === 'prev') {
|
|
40
56
|
return /*#__PURE__*/React.createElement("div", {
|
|
41
57
|
className: classNames('paginator-page-btn', 'left')
|
|
@@ -56,20 +72,28 @@ var Pagination = function Pagination(props) {
|
|
|
56
72
|
}
|
|
57
73
|
return originalElement;
|
|
58
74
|
};
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
75
|
+
}, []);
|
|
76
|
+
var showTotalDefault = useCallback(function (totalRecords, range) {
|
|
77
|
+
var _ref, _props$pageSize;
|
|
78
|
+
var pageSize = (_ref = (_props$pageSize = props.pageSize) !== null && _props$pageSize !== void 0 ? _props$pageSize : props.defaultPageSize) !== null && _ref !== void 0 ? _ref : 10;
|
|
79
|
+
var currentPage = resolveCurrentPage(props, range, pageSize);
|
|
80
|
+
var totalPages = totalRecords <= 0 ? 1 : Math.max(1, Math.ceil(totalRecords / pageSize));
|
|
81
|
+
var showTotalFn = getPaginationText('showTotal');
|
|
82
|
+
if (typeof showTotalFn === 'function') {
|
|
83
|
+
return showTotalFn(currentPage, totalPages);
|
|
84
|
+
}
|
|
85
|
+
return "Page ".concat(currentPage, " of ").concat(totalPages);
|
|
86
|
+
}, [props.current, props.defaultCurrent, props.pageSize, props.defaultPageSize]);
|
|
87
|
+
var effectiveConfig = useMemo(function () {
|
|
64
88
|
return {
|
|
65
89
|
className: 'materials-grid-paginator',
|
|
66
90
|
defaultCurrent: 1,
|
|
67
|
-
showTotal:
|
|
91
|
+
showTotal: showTotalDefault,
|
|
68
92
|
itemRender: itemRenderFn,
|
|
69
93
|
responsive: true,
|
|
70
94
|
size: 'small'
|
|
71
95
|
};
|
|
72
|
-
}, []);
|
|
96
|
+
}, [itemRenderFn, showTotalDefault]);
|
|
73
97
|
var content = useMemo(function () {
|
|
74
98
|
if (!show) {
|
|
75
99
|
return null;
|
|
@@ -85,18 +109,28 @@ var Pagination = function Pagination(props) {
|
|
|
85
109
|
export var paginationConfig = {
|
|
86
110
|
className: 'materials-grid-paginator',
|
|
87
111
|
defaultCurrent: 1,
|
|
88
|
-
|
|
89
|
-
|
|
112
|
+
/** 无 props 上下文时仅能根据 total + range 近似推算(见 resolveCurrentPage) */
|
|
113
|
+
showTotal: function showTotal(totalRecords, range) {
|
|
114
|
+
var pageSize = 10;
|
|
115
|
+
var currentPage = resolveCurrentPage({
|
|
116
|
+
pageSize: pageSize
|
|
117
|
+
}, range, pageSize);
|
|
118
|
+
var totalPages = totalRecords <= 0 ? 1 : Math.max(1, Math.ceil(totalRecords / pageSize));
|
|
119
|
+
var fn = getPaginationText('showTotal');
|
|
120
|
+
if (typeof fn === 'function') {
|
|
121
|
+
return fn(currentPage, totalPages);
|
|
122
|
+
}
|
|
123
|
+
return "Page ".concat(currentPage, " of ").concat(totalPages);
|
|
90
124
|
},
|
|
91
125
|
responsive: true,
|
|
92
126
|
size: 'small'
|
|
93
127
|
};
|
|
94
128
|
export default Pagination;
|
|
95
129
|
var MiniPagination = function MiniPagination(props) {
|
|
96
|
-
var _props$
|
|
97
|
-
current = _props$
|
|
98
|
-
_props$
|
|
99
|
-
pageSize = _props$
|
|
130
|
+
var _props$current2 = props.current,
|
|
131
|
+
current = _props$current2 === void 0 ? 1 : _props$current2,
|
|
132
|
+
_props$pageSize2 = props.pageSize,
|
|
133
|
+
pageSize = _props$pageSize2 === void 0 ? 10 : _props$pageSize2,
|
|
100
134
|
_props$total = props.total,
|
|
101
135
|
total = _props$total === void 0 ? 0 : _props$total;
|
|
102
136
|
|
|
@@ -163,13 +197,13 @@ var MiniPagination = function MiniPagination(props) {
|
|
|
163
197
|
className: 'paginator-page-btn-right-icon'
|
|
164
198
|
}))));
|
|
165
199
|
};
|
|
166
|
-
export var FormPagination = function FormPagination(
|
|
167
|
-
var
|
|
168
|
-
value =
|
|
169
|
-
onChange =
|
|
170
|
-
page =
|
|
171
|
-
pageSize =
|
|
172
|
-
other = _objectWithoutProperties(
|
|
200
|
+
export var FormPagination = function FormPagination(_ref2) {
|
|
201
|
+
var _ref2$value = _ref2.value,
|
|
202
|
+
value = _ref2$value === void 0 ? {} : _ref2$value,
|
|
203
|
+
onChange = _ref2.onChange,
|
|
204
|
+
page = _ref2.page,
|
|
205
|
+
pageSize = _ref2.pageSize,
|
|
206
|
+
other = _objectWithoutProperties(_ref2, _excluded);
|
|
173
207
|
var _useState = useState(page || 1),
|
|
174
208
|
_useState2 = _slicedToArray(_useState, 2),
|
|
175
209
|
_p = _useState2[0],
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
export interface DataSourceType {
|
|
2
|
+
key: string;
|
|
3
|
+
displayName: string;
|
|
4
|
+
status: string;
|
|
5
|
+
type: string;
|
|
6
|
+
isDBInstance: boolean;
|
|
7
|
+
collections: Collection[];
|
|
8
|
+
}
|
|
9
|
+
export declare type ActionsItem = {
|
|
10
|
+
method: string;
|
|
11
|
+
path: string;
|
|
12
|
+
params: {
|
|
13
|
+
name: string;
|
|
14
|
+
value: string;
|
|
15
|
+
}[];
|
|
16
|
+
headers: {
|
|
17
|
+
name: string;
|
|
18
|
+
value: string;
|
|
19
|
+
}[];
|
|
20
|
+
body: Record<string, any>;
|
|
21
|
+
};
|
|
22
|
+
export interface Collection {
|
|
23
|
+
name: string;
|
|
24
|
+
title: string;
|
|
25
|
+
tableName: string;
|
|
26
|
+
timestamps: boolean;
|
|
27
|
+
autoGenId: boolean;
|
|
28
|
+
filterTargetKey: string;
|
|
29
|
+
fields: Field[];
|
|
30
|
+
introspected: boolean;
|
|
31
|
+
unavailableActions: any[];
|
|
32
|
+
actions: {
|
|
33
|
+
get: ActionsItem;
|
|
34
|
+
update: ActionsItem;
|
|
35
|
+
create: ActionsItem;
|
|
36
|
+
delete: ActionsItem;
|
|
37
|
+
list: ActionsItem;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
interface Field {
|
|
41
|
+
name: string;
|
|
42
|
+
type: string;
|
|
43
|
+
allowNull: boolean;
|
|
44
|
+
primaryKey: boolean;
|
|
45
|
+
unique: boolean;
|
|
46
|
+
autoIncrement: boolean;
|
|
47
|
+
description?: (null | string)[];
|
|
48
|
+
possibleTypes?: string[];
|
|
49
|
+
rawType: string;
|
|
50
|
+
interface: string;
|
|
51
|
+
uiSchema: UiSchema;
|
|
52
|
+
key?: string;
|
|
53
|
+
collectionName?: string;
|
|
54
|
+
collectionKey?: any;
|
|
55
|
+
dataSourceKey?: string;
|
|
56
|
+
defaultValue?: any;
|
|
57
|
+
}
|
|
58
|
+
interface UiSchema {
|
|
59
|
+
type?: string;
|
|
60
|
+
'x-component': string;
|
|
61
|
+
'x-component-props'?: Xcomponentprops;
|
|
62
|
+
'x-validator'?: string;
|
|
63
|
+
title: string;
|
|
64
|
+
default?: any;
|
|
65
|
+
enum?: any[];
|
|
66
|
+
}
|
|
67
|
+
interface Xcomponentprops {
|
|
68
|
+
style?: Style;
|
|
69
|
+
autoSize?: AutoSize;
|
|
70
|
+
stringMode?: boolean;
|
|
71
|
+
step?: string;
|
|
72
|
+
dateFormat?: string;
|
|
73
|
+
showTime?: boolean;
|
|
74
|
+
}
|
|
75
|
+
interface AutoSize {
|
|
76
|
+
minRows: number;
|
|
77
|
+
}
|
|
78
|
+
interface Style {
|
|
79
|
+
width: string;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* 获取nocobase自定义数据源
|
|
83
|
+
*/
|
|
84
|
+
export declare const getNocobaseDataSource: () => Promise<DataSourceType[]>;
|
|
85
|
+
/**
|
|
86
|
+
* 获取nocobase主数据源
|
|
87
|
+
*/
|
|
88
|
+
export declare const getNocobaseMainDataSource: () => Promise<any>;
|
|
89
|
+
/**
|
|
90
|
+
* 获取nocobase数据源设置
|
|
91
|
+
*/
|
|
92
|
+
export declare const getNocobaseDataSourceOptions: () => Promise<any>;
|
|
93
|
+
/**
|
|
94
|
+
* 创建nocobase数据
|
|
95
|
+
*/
|
|
96
|
+
export declare const createNocobaseData: (params: {
|
|
97
|
+
key: string;
|
|
98
|
+
data: any;
|
|
99
|
+
headers?: any;
|
|
100
|
+
}) => Promise<any>;
|
|
101
|
+
/**
|
|
102
|
+
* nocobase get数据
|
|
103
|
+
*/
|
|
104
|
+
export declare const getNocobaseData: (params: {
|
|
105
|
+
key: string;
|
|
106
|
+
query: Record<string, any>;
|
|
107
|
+
headers?: any;
|
|
108
|
+
}) => Promise<any>;
|
|
109
|
+
/**
|
|
110
|
+
* 自定义api接口
|
|
111
|
+
*/
|
|
112
|
+
export declare const customApi: (url: string, data: Record<string, any>, options: {
|
|
113
|
+
method: 'GET' | 'POST' | 'PUT' | 'DELETE';
|
|
114
|
+
baseUrl?: string | undefined;
|
|
115
|
+
headers?: {
|
|
116
|
+
name: string;
|
|
117
|
+
value: any;
|
|
118
|
+
}[] | undefined;
|
|
119
|
+
params?: {
|
|
120
|
+
name: string;
|
|
121
|
+
value: any;
|
|
122
|
+
}[] | undefined;
|
|
123
|
+
body?: Record<string, any> | undefined;
|
|
124
|
+
dataSourceKey?: string | undefined;
|
|
125
|
+
}) => Promise<any>;
|
|
126
|
+
/**
|
|
127
|
+
* 更新nocobase数据
|
|
128
|
+
*/
|
|
129
|
+
export declare const updateNocobaseData: (params: {
|
|
130
|
+
key: string;
|
|
131
|
+
data: any;
|
|
132
|
+
headers?: any;
|
|
133
|
+
query?: Record<string, any> | undefined;
|
|
134
|
+
}) => Promise<any>;
|
|
135
|
+
/**
|
|
136
|
+
* 获取nocobase数据列表
|
|
137
|
+
*/
|
|
138
|
+
export declare const getNocobaseDataList: (allParams: {
|
|
139
|
+
key: string;
|
|
140
|
+
params: {
|
|
141
|
+
page: number;
|
|
142
|
+
pageSize: number;
|
|
143
|
+
};
|
|
144
|
+
headers?: any;
|
|
145
|
+
}) => Promise<any>;
|
|
146
|
+
/**
|
|
147
|
+
* 删除nocobase数据
|
|
148
|
+
*/
|
|
149
|
+
export declare const deleteNocobaseData: (key: string, id: string, headers?: any) => Promise<any>;
|
|
150
|
+
/**
|
|
151
|
+
* 获取formSettingMeta数据
|
|
152
|
+
* @param params 请求参数
|
|
153
|
+
* @param params.sectionCodes 配置段代码数组,如 ['payment']
|
|
154
|
+
* @param params.businessCode 业务代码
|
|
155
|
+
* @param params.channelCode 渠道代码
|
|
156
|
+
* @param params.isBoard 是否包含board_code参数
|
|
157
|
+
* @returns Promise<any> 返回设置元数据
|
|
158
|
+
*/
|
|
159
|
+
export declare const getFormSettingMetaData: (params: {
|
|
160
|
+
sectionCodes: string[];
|
|
161
|
+
scope: string;
|
|
162
|
+
target?: string | undefined;
|
|
163
|
+
}) => Promise<any>;
|
|
164
|
+
/**
|
|
165
|
+
* 更新租户设置数据
|
|
166
|
+
* @param params 请求参数
|
|
167
|
+
* @param params.businessCode 业务代码
|
|
168
|
+
* @param params.channelCode 渠道代码
|
|
169
|
+
* @param params.boardCode 板块代码
|
|
170
|
+
* @param params.data 要更新的数据对象,如 {"order.prefix":"","order.suffix":"","payment.number":""}
|
|
171
|
+
* @returns Promise<any> 返回更新结果
|
|
172
|
+
*/
|
|
173
|
+
export declare const updateTenantSetting: (params: {
|
|
174
|
+
scope: string;
|
|
175
|
+
target?: string | undefined;
|
|
176
|
+
data: Record<string, any>;
|
|
177
|
+
}) => Promise<any>;
|
|
178
|
+
export declare type DeviceSettingScene = 'template' | 'profile' | 'instance';
|
|
179
|
+
/**
|
|
180
|
+
* 获取设备设置元数据(POST 类型 GET)
|
|
181
|
+
* @param params.scene 场景,默认 template
|
|
182
|
+
* @param params.sceneRequestId URL 中 {id} 占位符的实际取值
|
|
183
|
+
* @param params.items 需要获取的字段列表,例如 ['order.name', 'order.id']
|
|
184
|
+
*/
|
|
185
|
+
export declare const getDeviceSettingMetaData: (params: {
|
|
186
|
+
scene?: DeviceSettingScene | undefined;
|
|
187
|
+
sceneRequestId: string;
|
|
188
|
+
items: string[];
|
|
189
|
+
}) => Promise<any>;
|
|
190
|
+
/**
|
|
191
|
+
* 更新设备设置数据
|
|
192
|
+
* @param params.scene 场景,默认 template
|
|
193
|
+
* @param params.sceneRequestId URL 中 {id} 占位符的实际取值
|
|
194
|
+
* @param params.data 需要更新的字段值对象
|
|
195
|
+
*/
|
|
196
|
+
export declare const updateDeviceSetting: (params: {
|
|
197
|
+
scene?: DeviceSettingScene | undefined;
|
|
198
|
+
sceneRequestId: string;
|
|
199
|
+
data: Record<string, any>;
|
|
200
|
+
}) => Promise<any>;
|
|
201
|
+
export {};
|
|
@@ -410,7 +410,8 @@ export var getDeviceSettingMetaData = /*#__PURE__*/function () {
|
|
|
410
410
|
}, {
|
|
411
411
|
headers: {
|
|
412
412
|
'Content-Type': 'application/json'
|
|
413
|
-
}
|
|
413
|
+
},
|
|
414
|
+
isPisell2: true
|
|
414
415
|
}));
|
|
415
416
|
case 7:
|
|
416
417
|
case "end":
|
|
@@ -452,7 +453,8 @@ export var updateDeviceSetting = /*#__PURE__*/function () {
|
|
|
452
453
|
}, {
|
|
453
454
|
headers: {
|
|
454
455
|
'Content-Type': 'application/json'
|
|
455
|
-
}
|
|
456
|
+
},
|
|
457
|
+
isPisell2: true
|
|
456
458
|
}));
|
|
457
459
|
case 7:
|
|
458
460
|
case "end":
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
declare const formFieldMap: {
|
|
2
3
|
FormItemCheckbox: import("react").FC<{}> & {
|
|
3
4
|
Group: import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps>;
|
|
@@ -19,7 +20,7 @@ declare const formFieldMap: {
|
|
|
19
20
|
Subdomain: import("react").FC<import("antd").InputProps & {
|
|
20
21
|
onChange: (value: string) => void;
|
|
21
22
|
onBlur?: ((e: import("react").FocusEvent<HTMLInputElement, Element>) => void) | undefined;
|
|
22
|
-
rootDomain: "custom" | "
|
|
23
|
+
rootDomain: "custom" | "xzero" | "saas";
|
|
23
24
|
customDomain?: string | undefined;
|
|
24
25
|
value?: string | undefined;
|
|
25
26
|
tenantId: string;
|
|
@@ -34,7 +35,7 @@ declare const formFieldMap: {
|
|
|
34
35
|
};
|
|
35
36
|
FormItemSelect: (props: import("antd").SelectProps<any, import("antd/es/select").DefaultOptionType> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps & {
|
|
36
37
|
options?: any;
|
|
37
|
-
optionSourceType?: "
|
|
38
|
+
optionSourceType?: "custom" | "default" | "api" | undefined;
|
|
38
39
|
labelField: string;
|
|
39
40
|
valueField: string;
|
|
40
41
|
extraParams?: Record<string, any> | undefined;
|
|
@@ -61,7 +62,7 @@ declare const formFieldMap: {
|
|
|
61
62
|
FormItemIconSelect: import("react").FC<import("./IconSelect/type").IconSelectProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps>;
|
|
62
63
|
FormItemRecordListWrapper: (props: import("./RecordListWrapper/type").RecordListWrapperProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps & {
|
|
63
64
|
options?: any;
|
|
64
|
-
optionSourceType?: "
|
|
65
|
+
optionSourceType?: "custom" | "default" | "api" | undefined;
|
|
65
66
|
labelField: string;
|
|
66
67
|
valueField: string;
|
|
67
68
|
extraParams?: Record<string, any> | undefined;
|
|
@@ -71,7 +72,7 @@ declare const formFieldMap: {
|
|
|
71
72
|
}) => import("react").JSX.Element;
|
|
72
73
|
FormItemTabs: (props: import("./Tabs/type").TabsProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps & {
|
|
73
74
|
options?: any;
|
|
74
|
-
optionSourceType?: "
|
|
75
|
+
optionSourceType?: "custom" | "default" | "api" | undefined;
|
|
75
76
|
labelField: string;
|
|
76
77
|
valueField: string;
|
|
77
78
|
extraParams?: Record<string, any> | undefined;
|
|
@@ -80,7 +81,7 @@ declare const formFieldMap: {
|
|
|
80
81
|
extraParams?: Record<string, any> | undefined;
|
|
81
82
|
}) => import("react").JSX.Element;
|
|
82
83
|
};
|
|
83
|
-
declare const getFieldComponent: (fieldComponent: string) => (import("react").FC<import("./Input/type").InputProps> & {
|
|
84
|
+
declare const getFieldComponent: (fieldComponent: string) => import("react").FC<any> | import("react").FC<import("./DatePicker").DataSourceDatePickerProps> | (import("react").FC<import("./Input/type").InputProps> & {
|
|
84
85
|
JSON: import("react").FC<any>;
|
|
85
86
|
Password: import("react").FC<import("antd/es/input").PasswordProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps>;
|
|
86
87
|
TextArea: import("react").FC<import("antd/es/input").TextAreaProps & import("react").RefAttributes<import("antd/es/input/TextArea").TextAreaRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps>;
|
|
@@ -93,24 +94,24 @@ declare const getFieldComponent: (fieldComponent: string) => (import("react").FC
|
|
|
93
94
|
Subdomain: import("react").FC<import("antd").InputProps & {
|
|
94
95
|
onChange: (value: string) => void;
|
|
95
96
|
onBlur?: ((e: import("react").FocusEvent<HTMLInputElement, Element>) => void) | undefined;
|
|
96
|
-
rootDomain: "custom" | "
|
|
97
|
+
rootDomain: "custom" | "xzero" | "saas";
|
|
97
98
|
customDomain?: string | undefined;
|
|
98
99
|
value?: string | undefined;
|
|
99
100
|
tenantId: string;
|
|
100
101
|
name?: string | undefined;
|
|
101
102
|
fieldKey?: string | undefined;
|
|
102
103
|
} & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps>;
|
|
103
|
-
}) |
|
|
104
|
+
}) | (import("react").FC<{}> & {
|
|
104
105
|
Group: import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps>;
|
|
105
106
|
} & {
|
|
106
107
|
Group: import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps>;
|
|
107
|
-
}) | import("react").FC<import("./ColorPicker/type").ColorPickerProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> |
|
|
108
|
+
}) | import("react").FC<import("./ColorPicker/type").ColorPickerProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | (import("react").FC<{}> & {
|
|
108
109
|
Group: import("react").FC<import("./Radio/type").RadioGroupProps & import("../dataSourceForm/utils").WithModeProps>;
|
|
109
110
|
} & {
|
|
110
111
|
Group: import("react").FC<import("./Radio/type").RadioGroupProps & import("../dataSourceForm/utils").WithModeProps>;
|
|
111
112
|
}) | ((props: import("antd").SelectProps<any, import("antd/es/select").DefaultOptionType> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps & {
|
|
112
113
|
options?: any;
|
|
113
|
-
optionSourceType?: "
|
|
114
|
+
optionSourceType?: "custom" | "default" | "api" | undefined;
|
|
114
115
|
labelField: string;
|
|
115
116
|
valueField: string;
|
|
116
117
|
extraParams?: Record<string, any> | undefined;
|
|
@@ -119,9 +120,9 @@ declare const getFieldComponent: (fieldComponent: string) => (import("react").FC
|
|
|
119
120
|
extraParams?: Record<string, any> | undefined;
|
|
120
121
|
}) => import("react").JSX.Element) | import("react").FC<import("./TimePicker/type").TimePickerProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Input.Phone/WithMode").PhoneInputProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Input.Mobile/WithMode").PhoneInputProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd").InputProps & {
|
|
121
122
|
onChange: (value: string) => void;
|
|
122
|
-
} & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd").InputProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd/es/input").PasswordProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Radio/type").RadioGroupProps & import("../dataSourceForm/utils").WithModeProps> | import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps> | import("react").FC<import("./DateRangePicker/type").DateRangePickerProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Translation/type").TranslationProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./IconSelect/type").IconSelectProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | ((props: import("./RecordListWrapper/type").RecordListWrapperProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps & {
|
|
123
|
+
} & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd").InputProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("antd/es/input").PasswordProps & import("react").RefAttributes<import("antd").InputRef> & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Radio/type").RadioGroupProps & import("../dataSourceForm/utils").WithModeProps> | import("react").FC<import("./Checkbox/type").CheckboxGroupProps & import("../dataSourceForm/utils").WithModeProps> | import("react").FC<import("./DateRangePicker/type").DateRangePickerProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Upload/type").UploadProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./Translation/type").TranslationProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | import("react").FC<import("./IconSelect/type").IconSelectProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps> | ((props: import("./RecordListWrapper/type").RecordListWrapperProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps & {
|
|
123
124
|
options?: any;
|
|
124
|
-
optionSourceType?: "
|
|
125
|
+
optionSourceType?: "custom" | "default" | "api" | undefined;
|
|
125
126
|
labelField: string;
|
|
126
127
|
valueField: string;
|
|
127
128
|
extraParams?: Record<string, any> | undefined;
|
|
@@ -130,7 +131,7 @@ declare const getFieldComponent: (fieldComponent: string) => (import("react").FC
|
|
|
130
131
|
extraParams?: Record<string, any> | undefined;
|
|
131
132
|
}) => import("react").JSX.Element) | ((props: import("./Tabs/type").TabsProps & import("../dataSourceForm/utils").WithModeProps & import("../dataSourceForm/utils").WithFormItemProps & {
|
|
132
133
|
options?: any;
|
|
133
|
-
optionSourceType?: "
|
|
134
|
+
optionSourceType?: "custom" | "default" | "api" | undefined;
|
|
134
135
|
labelField: string;
|
|
135
136
|
valueField: string;
|
|
136
137
|
extraParams?: Record<string, any> | undefined;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { DataSourceType } from '../provider/dataSource/DataSourceContext';
|
|
2
|
+
export interface UseActionsParams {
|
|
3
|
+
dataSource?: DataSourceType;
|
|
4
|
+
currentValue?: 'server' | 'local';
|
|
5
|
+
__designMode?: string;
|
|
6
|
+
extraParams?: Record<string, any>;
|
|
7
|
+
}
|
|
8
|
+
declare const useActions: ({ dataSource: propsDataSource, currentValue: propsCurrentValue, __designMode, extraParams: propsExtraParams, }?: UseActionsParams) => {
|
|
9
|
+
create: (this: unknown, values: Record<string, any>) => Promise<any>;
|
|
10
|
+
get: (this: unknown) => Promise<any>;
|
|
11
|
+
update: (this: unknown, values: Record<string, any>) => Promise<any>;
|
|
12
|
+
list: (this: unknown, params: {
|
|
13
|
+
page: number;
|
|
14
|
+
pageSize: number;
|
|
15
|
+
}) => Promise<any>;
|
|
16
|
+
destroy: (this: unknown, id: string) => Promise<any>;
|
|
17
|
+
};
|
|
18
|
+
export default useActions;
|
|
@@ -70,6 +70,7 @@ function PisellFloorMapLayoutInner(props, ref) {
|
|
|
70
70
|
controls = _p$controls === void 0 ? {} : _p$controls,
|
|
71
71
|
_p$enableHover = p.enableHover,
|
|
72
72
|
enableHover = _p$enableHover === void 0 ? true : _p$enableHover,
|
|
73
|
+
readModeSelectedItemId = p.readModeSelectedItemId,
|
|
73
74
|
onItemClick = p.onItemClick,
|
|
74
75
|
onItemHover = p.onItemHover,
|
|
75
76
|
onItemLeave = p.onItemLeave,
|
|
@@ -797,7 +798,8 @@ function PisellFloorMapLayoutInner(props, ref) {
|
|
|
797
798
|
onItemHover: onItemHover,
|
|
798
799
|
onItemLeave: onItemLeave,
|
|
799
800
|
getMergedItemWrapperStyle: getMergedItemWrapperStyle,
|
|
800
|
-
onInteractionChange: setIsInteractingWithElement
|
|
801
|
+
onInteractionChange: setIsInteractingWithElement,
|
|
802
|
+
readModeSelectedItemId: readModeSelectedItemId
|
|
801
803
|
}), isFloorMapView && mode === 'edit' && (placeMode === null || placeMode === void 0 ? void 0 : placeMode.type) === 'scene' && /*#__PURE__*/React.createElement("div", {
|
|
802
804
|
className: placeOverlayClass,
|
|
803
805
|
style: {
|
|
@@ -42,6 +42,10 @@ export interface ItemLayerProps<T extends FloorMapItemBase> {
|
|
|
42
42
|
onItemLeave?: (item: T, index: number, e: React.MouseEvent<HTMLElement>) => void;
|
|
43
43
|
/** 每项外层容器额外样式(与定位样式合并) */
|
|
44
44
|
getMergedItemWrapperStyle?: (item: T, index: number) => CSSProperties | undefined;
|
|
45
|
+
/**
|
|
46
|
+
* 阅读态:与 {@link rowKey} 解析 id 相等的图元加选中外圈(如详情 Modal 打开时)。
|
|
47
|
+
*/
|
|
48
|
+
readModeSelectedItemId?: string | null;
|
|
45
49
|
/**
|
|
46
50
|
* 与编辑态一致:在含 `data-pisell-floor-room-scroll-surface` 的区域内按下时置 true,
|
|
47
51
|
* 用于禁用 Transform 画布平移,避免图元内纵向滑动拖动画布。
|
|
@@ -21,6 +21,9 @@ var PREFIX = 'pisell-floor-map-layout';
|
|
|
21
21
|
|
|
22
22
|
/** 图元内可滚动区标记(如预约房间卡 body / multi-list),与 private-materials 约定一致 */
|
|
23
23
|
var ROOM_SCROLL_SURFACE_SELECTOR = '[data-pisell-floor-room-scroll-surface]';
|
|
24
|
+
|
|
25
|
+
/** 与 EditableItemLayer `SELECTED_ITEM_STACK_Z` 一致:阅读态选中时抬升,避免邻桌图形盖住描边 */
|
|
26
|
+
var READ_MODE_SELECTED_STACK_Z = 1000000;
|
|
24
27
|
function getItemKey(item, index, rowKey) {
|
|
25
28
|
var _rowKey;
|
|
26
29
|
if (!rowKey) return item.id;
|
|
@@ -73,6 +76,7 @@ export function ItemLayer(props) {
|
|
|
73
76
|
onItemLeave = props.onItemLeave,
|
|
74
77
|
getMergedItemWrapperStyle = props.getMergedItemWrapperStyle,
|
|
75
78
|
onInteractionChange = props.onInteractionChange,
|
|
79
|
+
readModeSelectedItemId = props.readModeSelectedItemId,
|
|
76
80
|
className = props.className;
|
|
77
81
|
|
|
78
82
|
/** 触控/指针在房间卡滚动区内按下时禁用画布 pan,松手恢复 */
|
|
@@ -137,7 +141,7 @@ export function ItemLayer(props) {
|
|
|
137
141
|
return ((_a$zIndex = a.zIndex) !== null && _a$zIndex !== void 0 ? _a$zIndex : 0) - ((_b$zIndex = b.zIndex) !== null && _b$zIndex !== void 0 ? _b$zIndex : 0);
|
|
138
142
|
});
|
|
139
143
|
return sorted.map(function (item, index) {
|
|
140
|
-
var _item$zIndex;
|
|
144
|
+
var _item$zIndex, _item$zIndex2;
|
|
141
145
|
var left;
|
|
142
146
|
var top;
|
|
143
147
|
var width;
|
|
@@ -159,9 +163,10 @@ export function ItemLayer(props) {
|
|
|
159
163
|
}
|
|
160
164
|
var key = getItemKey(item, index, rowKey);
|
|
161
165
|
var shapeStyle = getShapeStyle(item.shape);
|
|
166
|
+
var selectedRead = readModeSelectedItemId != null && String(readModeSelectedItemId).trim() !== '' && key === String(readModeSelectedItemId);
|
|
162
167
|
return /*#__PURE__*/React.createElement("div", {
|
|
163
168
|
key: key,
|
|
164
|
-
className: classNames("".concat(PREFIX, "-item"), _defineProperty(_defineProperty({}, "".concat(PREFIX, "-item-hoverable"), enableHover), "".concat(PREFIX, "-item-hover-outline"), enableHover && itemHoverOutline)),
|
|
169
|
+
className: classNames("".concat(PREFIX, "-item"), _defineProperty(_defineProperty(_defineProperty({}, "".concat(PREFIX, "-item-hoverable"), enableHover), "".concat(PREFIX, "-item-hover-outline"), enableHover && itemHoverOutline), "".concat(PREFIX, "-item-read-selected"), selectedRead)),
|
|
165
170
|
style: _objectSpread(_objectSpread({
|
|
166
171
|
position: 'absolute',
|
|
167
172
|
left: left,
|
|
@@ -169,7 +174,7 @@ export function ItemLayer(props) {
|
|
|
169
174
|
width: width,
|
|
170
175
|
height: height,
|
|
171
176
|
boxSizing: 'border-box',
|
|
172
|
-
zIndex: (_item$zIndex = item.zIndex) !== null && _item$zIndex !== void 0 ? _item$zIndex : 0
|
|
177
|
+
zIndex: selectedRead ? READ_MODE_SELECTED_STACK_Z + ((_item$zIndex = item.zIndex) !== null && _item$zIndex !== void 0 ? _item$zIndex : 0) : (_item$zIndex2 = item.zIndex) !== null && _item$zIndex2 !== void 0 ? _item$zIndex2 : 0
|
|
173
178
|
}, shapeStyle), getMergedItemWrapperStyle === null || getMergedItemWrapperStyle === void 0 ? void 0 : getMergedItemWrapperStyle(item, index)),
|
|
174
179
|
onClick: function onClick(e) {
|
|
175
180
|
return onItemClick === null || onItemClick === void 0 ? void 0 : onItemClick(item, index, e);
|
|
@@ -184,7 +189,7 @@ export function ItemLayer(props) {
|
|
|
184
189
|
onTouchStartCapture: handleItemTouchStartCapture
|
|
185
190
|
}, renderItem(item, index));
|
|
186
191
|
});
|
|
187
|
-
}, [items, renderItem, rowKey, cellSize, itemUnit, itemGap, enableHover, itemHoverOutline, onItemClick, onItemHover, onItemLeave, getMergedItemWrapperStyle, handleItemPointerDownCapture, handleItemTouchStartCapture]);
|
|
192
|
+
}, [items, renderItem, rowKey, cellSize, itemUnit, itemGap, enableHover, itemHoverOutline, onItemClick, onItemHover, onItemLeave, getMergedItemWrapperStyle, handleItemPointerDownCapture, handleItemTouchStartCapture, readModeSelectedItemId]);
|
|
188
193
|
return /*#__PURE__*/React.createElement("div", {
|
|
189
194
|
className: classNames("".concat(PREFIX, "-item-layer"), className),
|
|
190
195
|
style: {
|
|
@@ -13,10 +13,17 @@
|
|
|
13
13
|
|
|
14
14
|
/** hover 描边与编辑态选中一致(见 EditableItemLayer:`pisell-floor-map-layout-editable-item-selected`) */
|
|
15
15
|
|
|
16
|
-
&-hoverable&-hover-outline:hover {
|
|
16
|
+
// &-hoverable&-hover-outline:hover {
|
|
17
|
+
// outline: 3px solid var(--fmap-primary, #1677ff);
|
|
18
|
+
// outline-offset: 0;
|
|
19
|
+
// box-shadow: 0 0 0 1px rgba(22, 119, 255, 0.25);
|
|
20
|
+
// z-index: 1;
|
|
21
|
+
// }
|
|
22
|
+
|
|
23
|
+
/** 阅读态:详情弹层等打开时由业务传入 `readModeSelectedItemId`,与编辑态选中描边一致 */
|
|
24
|
+
&-read-selected {
|
|
17
25
|
outline: 3px solid var(--fmap-primary, #1677ff);
|
|
18
26
|
outline-offset: 0;
|
|
19
27
|
box-shadow: 0 0 0 1px rgba(22, 119, 255, 0.25);
|
|
20
|
-
z-index: 1;
|
|
21
28
|
}
|
|
22
29
|
}
|