@nokecy/qc-ui 1.1.38 → 1.1.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/adapters/abpPagedApiAdapter.d.ts +8 -0
- package/dist/cjs/adapters/abpPagedApiAdapter.js +35 -0
- package/dist/cjs/adapters/index.d.ts +6 -0
- package/dist/cjs/adapters/index.js +12 -0
- package/dist/cjs/adapters/pagedApiAdapter.d.ts +25 -0
- package/dist/cjs/adapters/pagedApiAdapter.js +5 -0
- package/dist/cjs/ag-grid-plus/ag-gridPlus.js +81 -222
- package/dist/cjs/ag-grid-plus/context/gridContext.d.ts +3 -0
- package/dist/cjs/ag-grid-plus/context/queryFormContext.d.ts +20 -0
- package/dist/cjs/ag-grid-plus/context/queryFormContext.js +25 -0
- package/dist/cjs/ag-grid-plus/context/useSchemeDataFlow.js +37 -1
- package/dist/cjs/ag-grid-plus/context/useSchemeManager.js +120 -79
- package/dist/cjs/ag-grid-plus/errors/ErrorBoundary.d.ts +1 -1
- package/dist/cjs/ag-grid-plus/hooks/index.d.ts +1 -3
- package/dist/cjs/ag-grid-plus/hooks/index.js +7 -39
- package/dist/cjs/ag-grid-plus/hooks/useRowId.d.ts +13 -0
- package/dist/cjs/ag-grid-plus/hooks/useRowId.js +57 -0
- package/dist/cjs/ag-grid-plus/interface.d.ts +9 -0
- package/dist/cjs/ag-grid-plus/setting/ColumnSetting.js +52 -36
- package/dist/cjs/ag-grid-plus/setting/QuerySchemeManager.js +6 -6
- package/dist/cjs/ag-grid-plus/setting/columnGroupUtils.js +16 -6
- package/dist/cjs/ag-grid-plus/types.d.ts +9 -0
- package/dist/cjs/ag-grid-plus/utils/aggregation.d.ts +17 -0
- package/dist/cjs/ag-grid-plus/utils/aggregation.js +101 -0
- package/dist/cjs/ag-grid-plus/utils/columnProcessors.js +2 -2
- package/dist/cjs/ag-grid-plus/utils/entityExtensionColumns.d.ts +12 -3
- package/dist/cjs/ag-grid-plus/utils/entityExtensionColumns.js +20 -5
- package/dist/cjs/ag-grid-plus/utils/queryFormDerivation.d.ts +19 -0
- package/dist/cjs/ag-grid-plus/utils/queryFormDerivation.js +49 -0
- package/dist/cjs/ag-grid-plus/utils/requestParams.d.ts +15 -0
- package/dist/cjs/ag-grid-plus/utils/requestParams.js +31 -0
- package/dist/cjs/ag-grid-plus/utils/rowSelection.d.ts +9 -0
- package/dist/cjs/ag-grid-plus/utils/rowSelection.js +24 -0
- package/dist/cjs/ag-grid-plus/utils.js +2 -2
- package/dist/cjs/array-table/arrayAddBtn.js +26 -17
- package/dist/cjs/array-table/arrayBase.js +2 -0
- package/dist/cjs/array-table/hooks.d.ts +2 -1
- package/dist/cjs/array-table/hooks.js +23 -43
- package/dist/cjs/array-table/index.js +105 -25
- package/dist/cjs/array-table/preview.js +1 -1
- package/dist/cjs/array-table/readOnlyFormatters.d.ts +28 -0
- package/dist/cjs/array-table/readOnlyFormatters.js +113 -0
- package/dist/cjs/array-table/utils.d.ts +2 -2
- package/dist/cjs/array-table/utils.js +180 -11
- package/dist/cjs/components/RegexEditor/hooks/useRegexValidation.js +2 -3
- package/dist/cjs/components/RegexEditor/hooks/useTemplateManager.js +1 -0
- package/dist/cjs/components/RegexEditor/validation/types.d.ts +1 -3
- package/dist/cjs/components/RegexEditor/visualizer/astToRailroad.d.ts +0 -2
- package/dist/cjs/dashboard/dashboard/index.js +8 -11
- package/dist/cjs/dashboard/dashboard/utils.js +3 -6
- package/dist/cjs/dashboard/widget/index.js +3 -3
- package/dist/cjs/dashboard/widget/selector/index.js +5 -7
- package/dist/cjs/dashboard/widget/utils.js +3 -4
- package/dist/cjs/dialogSelect/index.d.ts +3 -0
- package/dist/cjs/dialogSelect/index.js +16 -13
- package/dist/cjs/editable/index.js +3 -1
- package/dist/cjs/formDesigner/FormDesigner.js +3 -2
- package/dist/cjs/formDesigner/preWidgets/index.d.ts +1 -10
- package/dist/cjs/formDesigner/preWidgets/index.js +1 -100
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty.d.ts +11 -0
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty.js +70 -0
- package/dist/cjs/generatedListPage/GeneratedListPage.js +20 -19
- package/dist/cjs/generatedListPage/_utils/toAbpPagedRequest.d.ts +15 -0
- package/dist/cjs/generatedListPage/_utils/toAbpPagedRequest.js +26 -0
- package/dist/cjs/generatedListPage/types.d.ts +3 -0
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.js +57 -0
- package/dist/cjs/standardFormDialog/types.d.ts +7 -0
- package/dist/cjs/standardFormDialog/useStandardFormSchema.d.ts +1 -1
- package/dist/cjs/standardFormDialog/withStandardForm.js +5 -4
- package/dist/esm/adapters/abpPagedApiAdapter.d.ts +8 -0
- package/dist/esm/adapters/abpPagedApiAdapter.js +29 -0
- package/dist/esm/adapters/index.d.ts +6 -0
- package/dist/esm/adapters/index.js +6 -0
- package/dist/esm/adapters/pagedApiAdapter.d.ts +25 -0
- package/dist/esm/adapters/pagedApiAdapter.js +1 -0
- package/dist/esm/ag-grid-plus/ag-gridPlus.js +79 -220
- package/dist/esm/ag-grid-plus/context/gridContext.d.ts +3 -0
- package/dist/esm/ag-grid-plus/context/queryFormContext.d.ts +20 -0
- package/dist/esm/ag-grid-plus/context/queryFormContext.js +19 -0
- package/dist/esm/ag-grid-plus/context/useSchemeDataFlow.js +37 -1
- package/dist/esm/ag-grid-plus/context/useSchemeManager.js +120 -79
- package/dist/esm/ag-grid-plus/hooks/index.d.ts +1 -3
- package/dist/esm/ag-grid-plus/hooks/index.js +2 -6
- package/dist/esm/ag-grid-plus/hooks/useRowId.d.ts +13 -0
- package/dist/esm/ag-grid-plus/hooks/useRowId.js +52 -0
- package/dist/esm/ag-grid-plus/interface.d.ts +9 -0
- package/dist/esm/ag-grid-plus/setting/ColumnSetting.js +52 -36
- package/dist/esm/ag-grid-plus/setting/QuerySchemeManager.js +6 -6
- package/dist/esm/ag-grid-plus/setting/columnGroupUtils.js +20 -6
- package/dist/esm/ag-grid-plus/types.d.ts +9 -0
- package/dist/esm/ag-grid-plus/utils/aggregation.d.ts +17 -0
- package/dist/esm/ag-grid-plus/utils/aggregation.js +93 -0
- package/dist/esm/ag-grid-plus/utils/columnProcessors.js +2 -2
- package/dist/esm/ag-grid-plus/utils/entityExtensionColumns.d.ts +12 -3
- package/dist/esm/ag-grid-plus/utils/entityExtensionColumns.js +20 -5
- package/dist/esm/ag-grid-plus/utils/queryFormDerivation.d.ts +19 -0
- package/dist/esm/ag-grid-plus/utils/queryFormDerivation.js +42 -0
- package/dist/esm/ag-grid-plus/utils/requestParams.d.ts +15 -0
- package/dist/esm/ag-grid-plus/utils/requestParams.js +24 -0
- package/dist/esm/ag-grid-plus/utils/rowSelection.d.ts +9 -0
- package/dist/esm/ag-grid-plus/utils/rowSelection.js +18 -0
- package/dist/esm/ag-grid-plus/utils.js +2 -2
- package/dist/esm/array-table/arrayAddBtn.js +26 -17
- package/dist/esm/array-table/arrayBase.js +2 -0
- package/dist/esm/array-table/hooks.d.ts +2 -1
- package/dist/esm/array-table/hooks.js +23 -43
- package/dist/esm/array-table/index.js +107 -27
- package/dist/esm/array-table/preview.js +2 -2
- package/dist/esm/array-table/readOnlyFormatters.d.ts +28 -0
- package/dist/esm/array-table/readOnlyFormatters.js +107 -0
- package/dist/esm/array-table/utils.d.ts +2 -2
- package/dist/esm/array-table/utils.js +180 -11
- package/dist/esm/components/RegexEditor/hooks/useRegexValidation.js +2 -2
- package/dist/esm/components/RegexEditor/hooks/useTemplateManager.js +1 -0
- package/dist/esm/components/RegexEditor/validation/types.d.ts +0 -1
- package/dist/esm/components/RegexEditor/visualizer/astToRailroad.d.ts +0 -1
- package/dist/esm/dashboard/dashboard/index.js +8 -11
- package/dist/esm/dashboard/dashboard/utils.js +3 -2
- package/dist/esm/dashboard/widget/index.js +3 -3
- package/dist/esm/dashboard/widget/selector/index.js +5 -7
- package/dist/esm/dashboard/widget/utils.js +3 -3
- package/dist/esm/dialogSelect/index.d.ts +3 -0
- package/dist/esm/dialogSelect/index.js +16 -13
- package/dist/esm/editable/index.js +3 -1
- package/dist/esm/formDesigner/FormDesigner.js +3 -2
- package/dist/esm/formDesigner/preWidgets/index.d.ts +1 -10
- package/dist/esm/formDesigner/preWidgets/index.js +1 -10
- package/dist/esm/formDesigner/preWidgets/preDefineProperty.d.ts +11 -0
- package/dist/esm/formDesigner/preWidgets/{preDefineProperty1/preview.js → preDefineProperty.js} +49 -30
- package/dist/esm/generatedListPage/GeneratedListPage.js +20 -19
- package/dist/esm/generatedListPage/_utils/toAbpPagedRequest.d.ts +15 -0
- package/dist/esm/generatedListPage/_utils/toAbpPagedRequest.js +20 -0
- package/dist/esm/generatedListPage/types.d.ts +3 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/standardFormDialog/types.d.ts +7 -0
- package/dist/esm/standardFormDialog/withStandardForm.js +5 -4
- package/dist/umd/qc-ui.min.css +1 -1
- package/dist/umd/qc-ui.min.js +1 -1
- package/package.json +52 -13
- package/dist/cjs/ag-grid-plus/hooks/useAgGridCalculation.d.ts +0 -88
- package/dist/cjs/ag-grid-plus/hooks/useAgGridCalculation.js +0 -224
- package/dist/cjs/ag-grid-plus/hooks/useAgGridData.d.ts +0 -91
- package/dist/cjs/ag-grid-plus/hooks/useAgGridData.js +0 -230
- package/dist/cjs/ag-grid-plus/hooks/useGridState.d.ts +0 -153
- package/dist/cjs/ag-grid-plus/hooks/useGridState.js +0 -258
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty1/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty1/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty1/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty1/preview.js +0 -51
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty10/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty10/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty10/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty10/preview.js +0 -50
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty2/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty2/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty2/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty2/preview.js +0 -50
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty3/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty3/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty3/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty3/preview.js +0 -50
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty4/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty4/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty4/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty4/preview.js +0 -50
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty5/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty5/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty5/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty5/preview.js +0 -50
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty6/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty6/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty6/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty6/preview.js +0 -50
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty7/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty7/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty7/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty7/preview.js +0 -50
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty8/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty8/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty8/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty8/preview.js +0 -50
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty9/index.d.ts +0 -1
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty9/index.js +0 -16
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty9/preview.d.ts +0 -5
- package/dist/cjs/formDesigner/preWidgets/preDefineProperty9/preview.js +0 -50
- package/dist/esm/ag-grid-plus/hooks/useAgGridCalculation.d.ts +0 -88
- package/dist/esm/ag-grid-plus/hooks/useAgGridCalculation.js +0 -217
- package/dist/esm/ag-grid-plus/hooks/useAgGridData.d.ts +0 -91
- package/dist/esm/ag-grid-plus/hooks/useAgGridData.js +0 -225
- package/dist/esm/ag-grid-plus/hooks/useGridState.d.ts +0 -153
- package/dist/esm/ag-grid-plus/hooks/useGridState.js +0 -258
- package/dist/esm/formDesigner/preWidgets/preDefineProperty1/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty1/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty1/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty10/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty10/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty10/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty10/preview.js +0 -43
- package/dist/esm/formDesigner/preWidgets/preDefineProperty2/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty2/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty2/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty2/preview.js +0 -43
- package/dist/esm/formDesigner/preWidgets/preDefineProperty3/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty3/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty3/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty3/preview.js +0 -43
- package/dist/esm/formDesigner/preWidgets/preDefineProperty4/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty4/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty4/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty4/preview.js +0 -43
- package/dist/esm/formDesigner/preWidgets/preDefineProperty5/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty5/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty5/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty5/preview.js +0 -43
- package/dist/esm/formDesigner/preWidgets/preDefineProperty6/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty6/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty6/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty6/preview.js +0 -43
- package/dist/esm/formDesigner/preWidgets/preDefineProperty7/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty7/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty7/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty7/preview.js +0 -43
- package/dist/esm/formDesigner/preWidgets/preDefineProperty8/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty8/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty8/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty8/preview.js +0 -43
- package/dist/esm/formDesigner/preWidgets/preDefineProperty9/index.d.ts +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty9/index.js +0 -1
- package/dist/esm/formDesigner/preWidgets/preDefineProperty9/preview.d.ts +0 -5
- package/dist/esm/formDesigner/preWidgets/preDefineProperty9/preview.js +0 -43
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.registerReadOnlyFormatter = exports.getReadOnlyFormatter = void 0;
|
|
7
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
8
|
+
/**
|
|
9
|
+
* 只读列「纯文本快路径」格式化器注册表
|
|
10
|
+
*
|
|
11
|
+
* 背景:ArrayTable 每个可见单元格默认挂一棵完整 Formily 字段树(AgField),
|
|
12
|
+
* 行虚拟化滚动时整行销毁重建,列多必然掉帧。只读列没有编辑/校验/写回,
|
|
13
|
+
* 完全可以不挂 Formily 树、改用 AG-Grid 的 valueFormatter 出纯文本。
|
|
14
|
+
*
|
|
15
|
+
* 本注册表负责「内层组件类型 -> 显示文本」的映射。命中返回格式化器,
|
|
16
|
+
* 未命中返回 null —— 调用方据此安全回退 AgField(正确优先于速度)。
|
|
17
|
+
*
|
|
18
|
+
* 取舍:这是 Formily readPretty 之外的一份精简显示逻辑,可能与定制 readPretty
|
|
19
|
+
* 发散。靠「未命中即回退 + 消费方可 registerReadOnlyFormatter 扩展」控制风险。
|
|
20
|
+
*
|
|
21
|
+
* @author nokecy
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
/** 从字段 schema / 列 props 里尽量取到 Select 的可选项(value->label 映射用) */
|
|
25
|
+
var resolveOptions = function resolveOptions(ctx) {
|
|
26
|
+
var _ref, _ref2, _ref3, _fieldSchema$enum, _fieldSchema$xCompon, _fieldSchema$xCompon2;
|
|
27
|
+
var columnProps = ctx.columnProps,
|
|
28
|
+
fieldSchema = ctx.fieldSchema;
|
|
29
|
+
var candidate = (_ref = (_ref2 = (_ref3 = (_fieldSchema$enum = fieldSchema === null || fieldSchema === void 0 ? void 0 : fieldSchema.enum) !== null && _fieldSchema$enum !== void 0 ? _fieldSchema$enum : fieldSchema === null || fieldSchema === void 0 || (_fieldSchema$xCompon = fieldSchema['x-component-props']) === null || _fieldSchema$xCompon === void 0 ? void 0 : _fieldSchema$xCompon.options) !== null && _ref3 !== void 0 ? _ref3 : fieldSchema === null || fieldSchema === void 0 || (_fieldSchema$xCompon2 = fieldSchema['x-component-props']) === null || _fieldSchema$xCompon2 === void 0 ? void 0 : _fieldSchema$xCompon2.dataSource) !== null && _ref2 !== void 0 ? _ref2 : columnProps === null || columnProps === void 0 ? void 0 : columnProps.options) !== null && _ref !== void 0 ? _ref : columnProps === null || columnProps === void 0 ? void 0 : columnProps.dataSource;
|
|
30
|
+
return Array.isArray(candidate) ? candidate : [];
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
/** 单个值映射成 label:兼容 labelInValue 对象、{label,value} 选项、原始值 */
|
|
34
|
+
var mapOptionLabel = function mapOptionLabel(value, options) {
|
|
35
|
+
var _ref4, _value$label, _ref5, _hit$label;
|
|
36
|
+
if (value == null) return '';
|
|
37
|
+
// labelInValue: 值本身就是 { label, value }
|
|
38
|
+
if (_typeof(value) === 'object') return String((_ref4 = (_value$label = value.label) !== null && _value$label !== void 0 ? _value$label : value.value) !== null && _ref4 !== void 0 ? _ref4 : '');
|
|
39
|
+
// 严格相等优先;退一步按 String 宽松比对,容忍后端类型漂移(如返回 "0" 而 enum 存数字 0)
|
|
40
|
+
var hit = options.find(function (o) {
|
|
41
|
+
var ov = o && _typeof(o) === 'object' ? o.value : o;
|
|
42
|
+
return ov === value || String(ov) === String(value);
|
|
43
|
+
});
|
|
44
|
+
if (hit && _typeof(hit) === 'object') return String((_ref5 = (_hit$label = hit.label) !== null && _hit$label !== void 0 ? _hit$label : hit.value) !== null && _ref5 !== void 0 ? _ref5 : value);
|
|
45
|
+
return String(value);
|
|
46
|
+
};
|
|
47
|
+
var textFormatter = function textFormatter(value) {
|
|
48
|
+
return value == null ? '' : String(value);
|
|
49
|
+
};
|
|
50
|
+
var selectFormatter = function selectFormatter(value, ctx) {
|
|
51
|
+
if (value == null) return '';
|
|
52
|
+
var options = resolveOptions(ctx);
|
|
53
|
+
// 多选:数组 -> 逗号拼接
|
|
54
|
+
if (Array.isArray(value)) {
|
|
55
|
+
return value.map(function (v) {
|
|
56
|
+
return mapOptionLabel(v, options);
|
|
57
|
+
}).filter(Boolean).join(', ');
|
|
58
|
+
}
|
|
59
|
+
return mapOptionLabel(value, options);
|
|
60
|
+
};
|
|
61
|
+
var dateFormatter = function dateFormatter(value, ctx) {
|
|
62
|
+
var _ref6, _ctx$columnProps$form, _ctx$columnProps, _ctx$fieldSchema;
|
|
63
|
+
if (value == null || value === '') return '';
|
|
64
|
+
var fmt = (_ref6 = (_ctx$columnProps$form = (_ctx$columnProps = ctx.columnProps) === null || _ctx$columnProps === void 0 ? void 0 : _ctx$columnProps.format) !== null && _ctx$columnProps$form !== void 0 ? _ctx$columnProps$form : (_ctx$fieldSchema = ctx.fieldSchema) === null || _ctx$fieldSchema === void 0 || (_ctx$fieldSchema = _ctx$fieldSchema['x-component-props']) === null || _ctx$fieldSchema === void 0 ? void 0 : _ctx$fieldSchema.format) !== null && _ref6 !== void 0 ? _ref6 : 'YYYY-MM-DD';
|
|
65
|
+
// 值多为 dayjs 对象(有 .format)或已格式化的字符串;不强引 dayjs,保持轻量
|
|
66
|
+
if (value && typeof value.format === 'function') return value.format(fmt);
|
|
67
|
+
return String(value);
|
|
68
|
+
};
|
|
69
|
+
var booleanFormatter = function booleanFormatter(value, ctx) {
|
|
70
|
+
var _ctx$fieldSchema$xCo, _ctx$fieldSchema2, _props$checkedChildre, _props$unCheckedChild;
|
|
71
|
+
if (value == null || value === '') return '';
|
|
72
|
+
var props = (_ctx$fieldSchema$xCo = (_ctx$fieldSchema2 = ctx.fieldSchema) === null || _ctx$fieldSchema2 === void 0 ? void 0 : _ctx$fieldSchema2['x-component-props']) !== null && _ctx$fieldSchema$xCo !== void 0 ? _ctx$fieldSchema$xCo : {};
|
|
73
|
+
var truthy = (_props$checkedChildre = props.checkedChildren) !== null && _props$checkedChildre !== void 0 ? _props$checkedChildre : '是';
|
|
74
|
+
var falsy = (_props$unCheckedChild = props.unCheckedChildren) !== null && _props$unCheckedChild !== void 0 ? _props$unCheckedChild : '否';
|
|
75
|
+
return value ? String(truthy) : String(falsy);
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* 内置注册表。key 为 Formily x-component 名。
|
|
80
|
+
* 未列出的组件类型 -> getReadOnlyFormatter 返回 null -> 回退 AgField。
|
|
81
|
+
*/
|
|
82
|
+
var registry = {
|
|
83
|
+
Input: textFormatter,
|
|
84
|
+
'Input.TextArea': textFormatter,
|
|
85
|
+
Password: textFormatter,
|
|
86
|
+
Text: textFormatter,
|
|
87
|
+
Preview: textFormatter,
|
|
88
|
+
NumberPicker: textFormatter,
|
|
89
|
+
InputNumber: textFormatter,
|
|
90
|
+
Select: selectFormatter,
|
|
91
|
+
TreeSelect: selectFormatter,
|
|
92
|
+
Cascader: selectFormatter,
|
|
93
|
+
'Radio.Group': selectFormatter,
|
|
94
|
+
'Checkbox.Group': selectFormatter,
|
|
95
|
+
DatePicker: dateFormatter,
|
|
96
|
+
TimePicker: dateFormatter,
|
|
97
|
+
Switch: booleanFormatter,
|
|
98
|
+
Checkbox: booleanFormatter
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
/** 消费方扩展自定义只读列的显示逻辑 */
|
|
102
|
+
var registerReadOnlyFormatter = exports.registerReadOnlyFormatter = function registerReadOnlyFormatter(component, formatter) {
|
|
103
|
+
registry[component] = formatter;
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* 取某组件类型的只读格式化器。命中返回函数,未命中返回 null(调用方回退 AgField)。
|
|
108
|
+
*/
|
|
109
|
+
var getReadOnlyFormatter = exports.getReadOnlyFormatter = function getReadOnlyFormatter(component) {
|
|
110
|
+
var _registry$component;
|
|
111
|
+
if (!component) return null;
|
|
112
|
+
return (_registry$component = registry[component]) !== null && _registry$component !== void 0 ? _registry$component : null;
|
|
113
|
+
};
|
|
@@ -6,6 +6,6 @@ import { ObservableColumnSource } from './interface';
|
|
|
6
6
|
declare const isColumnComponent: (schema: Schema) => boolean;
|
|
7
7
|
declare const useArrayTableSources: () => ObservableColumnSource[];
|
|
8
8
|
declare const useArrayTableActions: () => ObservableColumnSource[];
|
|
9
|
-
declare const
|
|
9
|
+
declare const buildArrayTableColumns: (dataSource: any[], field: ArrayField, sources: ObservableColumnSource[]) => AgGridReactProps['columnDefs'];
|
|
10
10
|
declare const useAddition: () => React.JSX.Element | null;
|
|
11
|
-
export { isColumnComponent, useArrayTableSources, useArrayTableActions,
|
|
11
|
+
export { isColumnComponent, useArrayTableSources, useArrayTableActions, buildArrayTableColumns, useAddition };
|
|
@@ -4,12 +4,13 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.useArrayTableSources = exports.
|
|
7
|
+
exports.useArrayTableSources = exports.useArrayTableActions = exports.useAddition = exports.isColumnComponent = exports.buildArrayTableColumns = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _react2 = require("@formily/react");
|
|
10
10
|
var _shared = require("@formily/shared");
|
|
11
11
|
var _arrayBase = _interopRequireDefault(require("./arrayBase"));
|
|
12
|
-
var
|
|
12
|
+
var _readOnlyFormatters = require("./readOnlyFormatters");
|
|
13
|
+
var _excluded = ["hide", "sort", "sortIndex", "forceAgField"];
|
|
13
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
15
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
16
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -109,24 +110,26 @@ var useArrayTableActions = exports.useArrayTableActions = function useArrayTable
|
|
|
109
110
|
return schema.properties ? parseSources(schema.properties['actions'] || {}) : [];
|
|
110
111
|
};
|
|
111
112
|
var AgField = function AgField(_ref) {
|
|
112
|
-
var _ref2, _node$rowIndex;
|
|
113
|
+
var _field$value$indexOf, _field$value, _field$value$indexOf2, _ref2, _node$rowIndex;
|
|
113
114
|
var value = _ref.value,
|
|
114
115
|
record = _ref.data,
|
|
115
116
|
dataSource = _ref.dataSource,
|
|
116
117
|
schema = _ref.schema,
|
|
117
118
|
field = _ref.field,
|
|
118
119
|
node = _ref.node;
|
|
119
|
-
//
|
|
120
|
-
//
|
|
121
|
-
|
|
120
|
+
// 数据序绑定:用 field.value.indexOf(record) 取数据数组下标(record === field.value 元素引用)。
|
|
121
|
+
// 排序/过滤后 node.rowIndex 是显示序 ≠ 数据序,会把单元格绑到别的行——故 indexOf 优先,
|
|
122
|
+
// 仅在未命中(理论不应发生)时才回退 rowIndex/dataSource。@author nokecy
|
|
123
|
+
var dataIndex = (_field$value$indexOf = field === null || field === void 0 || (_field$value = field.value) === null || _field$value === void 0 || (_field$value$indexOf2 = _field$value.indexOf) === null || _field$value$indexOf2 === void 0 ? void 0 : _field$value$indexOf2.call(_field$value, record)) !== null && _field$value$indexOf !== void 0 ? _field$value$indexOf : -1;
|
|
124
|
+
var index = dataIndex >= 0 ? dataIndex : (_ref2 = (_node$rowIndex = node === null || node === void 0 ? void 0 : node.rowIndex) !== null && _node$rowIndex !== void 0 ? _node$rowIndex : dataSource === null || dataSource === void 0 ? void 0 : dataSource.indexOf(record)) !== null && _ref2 !== void 0 ? _ref2 : -1;
|
|
122
125
|
var children =
|
|
123
126
|
/*#__PURE__*/
|
|
124
127
|
//@ts-ignore
|
|
125
128
|
_react.default.createElement(_arrayBase.default.Item, {
|
|
126
129
|
index: index,
|
|
127
130
|
record: function record() {
|
|
128
|
-
var _field$
|
|
129
|
-
return (_field$
|
|
131
|
+
var _field$value2;
|
|
132
|
+
return (_field$value2 = field.value) === null || _field$value2 === void 0 ? void 0 : _field$value2[index];
|
|
130
133
|
},
|
|
131
134
|
schema: schema,
|
|
132
135
|
field: field
|
|
@@ -137,7 +140,108 @@ var AgField = function AgField(_ref) {
|
|
|
137
140
|
}));
|
|
138
141
|
return children;
|
|
139
142
|
};
|
|
140
|
-
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* 懒挂载单元格渲染器(可编辑列)。
|
|
146
|
+
*
|
|
147
|
+
* 已有行的可编辑格被 Editable 装饰器默认转成 readPretty 只读文本态(点击才进编辑),
|
|
148
|
+
* 但仍挂着完整 Formily 树——这是行多列多滚动卡的主因。本渲染器:
|
|
149
|
+
* - 新增行(_isNew,保持编辑态需即时校验) 或 已被激活(点击/导航进过)的格 -> 挂 AgField 全树;
|
|
150
|
+
* - 其余(存量行、没碰过) -> 只渲染廉价纯文本(复用 readOnlyFormatters),不挂 Formily 树。
|
|
151
|
+
*
|
|
152
|
+
* 激活态存放在 AG-Grid context.activeCells(Set),由 index.tsx 在点击/键盘导航时写入并 refreshCells。
|
|
153
|
+
* 「挂了不卸」:一旦激活保持挂载(直到行被虚拟化销毁),不做失焦退回,避开一堆边界。
|
|
154
|
+
*
|
|
155
|
+
* 校验安全:未碰过的存量格本就是 readPretty、本就不参与校验,不挂树校验语义零变化。@author nokecy
|
|
156
|
+
*/
|
|
157
|
+
var LazyAgField = function LazyAgField(params) {
|
|
158
|
+
var _context$activeCells, _context$activeCells$;
|
|
159
|
+
var value = params.value,
|
|
160
|
+
record = params.data,
|
|
161
|
+
dataSource = params.dataSource,
|
|
162
|
+
schema = params.schema,
|
|
163
|
+
field = params.field,
|
|
164
|
+
node = params.node,
|
|
165
|
+
colDef = params.colDef,
|
|
166
|
+
context = params.context,
|
|
167
|
+
formatter = params.formatter,
|
|
168
|
+
columnProps = params.columnProps,
|
|
169
|
+
fieldSchema = params.fieldSchema;
|
|
170
|
+
var key = "".concat(node === null || node === void 0 ? void 0 : node.id, ":").concat(colDef === null || colDef === void 0 ? void 0 : colDef.field);
|
|
171
|
+
var activated = (record === null || record === void 0 ? void 0 : record._isNew) === true || (context === null || context === void 0 || (_context$activeCells = context.activeCells) === null || _context$activeCells === void 0 || (_context$activeCells$ = _context$activeCells.has) === null || _context$activeCells$ === void 0 ? void 0 : _context$activeCells$.call(_context$activeCells, key)) === true;
|
|
172
|
+
if (activated) {
|
|
173
|
+
return /*#__PURE__*/_react.default.createElement(AgField, {
|
|
174
|
+
value: value,
|
|
175
|
+
data: record,
|
|
176
|
+
dataSource: dataSource,
|
|
177
|
+
schema: schema,
|
|
178
|
+
field: field,
|
|
179
|
+
node: node
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
var text = formatter ? formatter(value, {
|
|
183
|
+
columnProps: columnProps,
|
|
184
|
+
fieldSchema: fieldSchema
|
|
185
|
+
}) : value == null ? '' : String(value);
|
|
186
|
+
// 纯文本占满单元格,点击交给 AG-Grid onCellClicked 激活;样式尽量贴近 Editable 只读态避免点开跳动
|
|
187
|
+
return /*#__PURE__*/_react.default.createElement("span", {
|
|
188
|
+
className: "ag-array-table-lazy-text",
|
|
189
|
+
style: {
|
|
190
|
+
display: 'inline-block',
|
|
191
|
+
width: '100%',
|
|
192
|
+
cursor: 'text'
|
|
193
|
+
}
|
|
194
|
+
}, text);
|
|
195
|
+
};
|
|
196
|
+
|
|
197
|
+
// 在 Column 的子 schema 里递归找到内层数据字段(可读 x-component / x-pattern / x-reactions / enum) @author nokecy
|
|
198
|
+
var findDataFieldSchema = function findDataFieldSchema(columnSchema, name) {
|
|
199
|
+
if (!columnSchema || !columnSchema.properties) return null;
|
|
200
|
+
var matched = null;
|
|
201
|
+
var firstField = null;
|
|
202
|
+
var walk = function walk(s) {
|
|
203
|
+
if (!s || !s.properties) return;
|
|
204
|
+
s.reduceProperties(function (_, child) {
|
|
205
|
+
if (matched) return _;
|
|
206
|
+
var comp = child === null || child === void 0 ? void 0 : child['x-component'];
|
|
207
|
+
// 兜底:记录第一个带 x-component 的叶子字段(排除 Column/Operations/Addition 等包裹组件)
|
|
208
|
+
if (!firstField && typeof comp === 'string' && !/Column|Operations|Addition/.test(comp)) {
|
|
209
|
+
firstField = child;
|
|
210
|
+
}
|
|
211
|
+
if ((child === null || child === void 0 ? void 0 : child.name) === name) {
|
|
212
|
+
matched = child;
|
|
213
|
+
return _;
|
|
214
|
+
}
|
|
215
|
+
walk(child);
|
|
216
|
+
return _;
|
|
217
|
+
}, null);
|
|
218
|
+
};
|
|
219
|
+
walk(columnSchema);
|
|
220
|
+
return matched || firstField;
|
|
221
|
+
};
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* 判断某列是否可走「只读纯文本快路径」(不挂 Formily 树)。
|
|
225
|
+
*
|
|
226
|
+
* 安全不对称:误判「可编辑->只读」会丢编辑/校验/reaction 计算(灾难);
|
|
227
|
+
* 误判「只读->可编辑」只是没优化(无害)。所以仅在能证明永久只读时才放行,其余一律回退。
|
|
228
|
+
*
|
|
229
|
+
* @author nokecy
|
|
230
|
+
*/
|
|
231
|
+
var isColumnReadOnlyEligible = function isColumnReadOnlyEligible(arrayPattern, dataField, columnProps) {
|
|
232
|
+
if ((columnProps === null || columnProps === void 0 ? void 0 : columnProps.forceAgField) === true) return false;
|
|
233
|
+
// 有 x-reactions:可能运行时切 pattern 或计算字段值,静态判不准 -> 保守回退 AgField
|
|
234
|
+
if (dataField && dataField['x-reactions']) return false;
|
|
235
|
+
if (arrayPattern === 'readPretty') return true; // 整表只读(明细/详情页)
|
|
236
|
+
if (!dataField) return false;
|
|
237
|
+
if (dataField['x-pattern'] === 'readPretty') return true;
|
|
238
|
+
if (dataField['x-read-pretty'] === true) return true;
|
|
239
|
+
return false;
|
|
240
|
+
};
|
|
241
|
+
|
|
242
|
+
// 重命名自 useArrayTableColumns:内部无任何 Hook 调用,use 前缀违反 Hook 命名约定且曾在 useMemo 内被调用 @author nokecy
|
|
243
|
+
var buildArrayTableColumns = exports.buildArrayTableColumns = function buildArrayTableColumns(dataSource, field, sources) {
|
|
244
|
+
var arrayPattern = field === null || field === void 0 ? void 0 : field.pattern;
|
|
141
245
|
return sources.reduce(function (buf, _ref3, key) {
|
|
142
246
|
var name = _ref3.name,
|
|
143
247
|
columnProps = _ref3.columnProps,
|
|
@@ -154,13 +258,78 @@ var useArrayTableColumns = exports.useArrayTableColumns = function useArrayTable
|
|
|
154
258
|
var hide = columnProps.hide,
|
|
155
259
|
sort = columnProps.sort,
|
|
156
260
|
sortIndex = columnProps.sortIndex,
|
|
261
|
+
forceAgField = columnProps.forceAgField,
|
|
157
262
|
safeColumnProps = _objectWithoutProperties(columnProps, _excluded);
|
|
158
|
-
|
|
263
|
+
var base = _objectSpread(_objectSpread({}, safeColumnProps), {}, {
|
|
159
264
|
// 保留 width 作为列的初始宽度
|
|
160
265
|
width: columnProps.width,
|
|
161
266
|
//@ts-ignore
|
|
162
267
|
headerName: columnProps.headerName || columnProps.title,
|
|
163
|
-
field: name
|
|
268
|
+
field: name
|
|
269
|
+
});
|
|
270
|
+
|
|
271
|
+
// 三分流渲染策略:@author nokecy
|
|
272
|
+
// ① 只读纯文本(永不可编辑):只读列 + 有格式化器 -> valueFormatter,不挂 Formily 树。
|
|
273
|
+
// ② 可编辑懒挂载:可编辑列 + 有格式化器 + 无 reactions + 未强制 eager -> LazyAgField,
|
|
274
|
+
// 存量格先出廉价文本、点击/导航才挂全树(挂了不卸)。
|
|
275
|
+
// ③ 兜底全树:其余(无格式化器/带 reactions/forceAgField/只读但无格式化器) -> AgField。
|
|
276
|
+
var dataField = findDataFieldSchema(schema, name);
|
|
277
|
+
var component = dataField === null || dataField === void 0 ? void 0 : dataField['x-component'];
|
|
278
|
+
var formatter = (0, _readOnlyFormatters.getReadOnlyFormatter)(component);
|
|
279
|
+
var readOnly = isColumnReadOnlyEligible(arrayPattern, dataField, columnProps);
|
|
280
|
+
var hasReactions = !!(dataField && dataField['x-reactions']);
|
|
281
|
+
var forceEager = (columnProps === null || columnProps === void 0 ? void 0 : columnProps.forceAgField) === true;
|
|
282
|
+
// Switch/Checkbox 是「单击直控」组件:可编辑态本就该常驻渲染真控件(优化前即如此)。
|
|
283
|
+
// 懒挂载会把它降成「是/否」纯文本(点击才挂出开关),用户会以为开关消失。故可编辑态强制 eager。
|
|
284
|
+
// 只读态(下方 ① 路径)仍走「是/否」文本快路径不受影响。@author nokecy
|
|
285
|
+
var isInlineToggle = component === 'Switch' || component === 'Checkbox';
|
|
286
|
+
|
|
287
|
+
// formatter 路径(只读快路径/懒挂载)经 AG-Grid params.value 取值,而 params.value 由 colDef.field(=name)驱动。
|
|
288
|
+
// 但设计器生成的 schema 里 Column key 多为随机 designable-id 且无 dataIndex,真实数据键在内层字段 name 上,
|
|
289
|
+
// 两者不一致时 record[name] 恒为 undefined → 单元格空白(点击挂 AgField 才按内层字段名显真值)。
|
|
290
|
+
// 故按内层字段名补 valueGetter(仅在与 name 不一致时,保持 name===字段名 的现状)。@author nokecy
|
|
291
|
+
var dataFieldName = dataField === null || dataField === void 0 ? void 0 : dataField.name;
|
|
292
|
+
var valueGetter = dataFieldName && dataFieldName !== name ? function (params) {
|
|
293
|
+
var _params$data;
|
|
294
|
+
return params === null || params === void 0 || (_params$data = params.data) === null || _params$data === void 0 ? void 0 : _params$data[dataFieldName];
|
|
295
|
+
} : undefined;
|
|
296
|
+
|
|
297
|
+
// ① 只读纯文本
|
|
298
|
+
if (readOnly && formatter) {
|
|
299
|
+
return buf.concat(_objectSpread(_objectSpread(_objectSpread({}, base), valueGetter ? {
|
|
300
|
+
valueGetter: valueGetter
|
|
301
|
+
} : {}), {}, {
|
|
302
|
+
// 显式清掉可能从 safeColumnProps 漏带的 cellRenderer(AG-Grid 中 renderer 优先级高于 formatter)
|
|
303
|
+
cellRenderer: undefined,
|
|
304
|
+
valueFormatter: function valueFormatter(params) {
|
|
305
|
+
return formatter(params.value, {
|
|
306
|
+
columnProps: columnProps,
|
|
307
|
+
fieldSchema: dataField
|
|
308
|
+
});
|
|
309
|
+
}
|
|
310
|
+
}));
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
// ② 可编辑懒挂载(排除单击直控的 Switch/Checkbox:须 eager 出真控件)
|
|
314
|
+
if (!readOnly && formatter && !hasReactions && !forceEager && !isInlineToggle) {
|
|
315
|
+
return buf.concat(_objectSpread(_objectSpread(_objectSpread({}, base), valueGetter ? {
|
|
316
|
+
valueGetter: valueGetter
|
|
317
|
+
} : {}), {}, {
|
|
318
|
+
cellRenderer: LazyAgField,
|
|
319
|
+
cellRendererParams: {
|
|
320
|
+
dataSource: dataSource,
|
|
321
|
+
schema: schema,
|
|
322
|
+
field: field,
|
|
323
|
+
formatter: formatter,
|
|
324
|
+
columnProps: columnProps,
|
|
325
|
+
fieldSchema: dataField,
|
|
326
|
+
lazyEditable: true // 供 index.tsx 识别懒列(激活/导航用)
|
|
327
|
+
}
|
|
328
|
+
}));
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
// ③ 兜底全树
|
|
332
|
+
return buf.concat(_objectSpread(_objectSpread({}, base), {}, {
|
|
164
333
|
cellRendererParams: {
|
|
165
334
|
dataSource: dataSource,
|
|
166
335
|
schema: schema,
|
|
@@ -5,12 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.useRegexValidation = void 0;
|
|
8
|
-
var _debounce2 = _interopRequireDefault(require("lodash-es/debounce"));
|
|
9
8
|
var _react = require("react");
|
|
9
|
+
var _lodashEs = require("lodash-es");
|
|
10
10
|
var _parser = require("../validation/parser");
|
|
11
11
|
var _validator = require("../validation/validator");
|
|
12
12
|
var _complexity = require("../validation/complexity");
|
|
13
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
13
|
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
15
14
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
16
15
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
@@ -191,7 +190,7 @@ var useRegexValidation = exports.useRegexValidation = function useRegexValidatio
|
|
|
191
190
|
|
|
192
191
|
// 防抖验证函数
|
|
193
192
|
// 使用 useRef 保存防抖函数,避免在每次渲染时重新创建
|
|
194
|
-
var debouncedValidateRef = (0, _react.useRef)((0,
|
|
193
|
+
var debouncedValidateRef = (0, _react.useRef)((0, _lodashEs.debounce)(function (value) {
|
|
195
194
|
validate(value);
|
|
196
195
|
}, debounceMs));
|
|
197
196
|
|
|
@@ -146,6 +146,7 @@ var useTemplateManager = exports.useTemplateManager = function useTemplateManage
|
|
|
146
146
|
|
|
147
147
|
// 使用模板
|
|
148
148
|
var useTemplateCallback = (0, _react.useCallback)(function (id) {
|
|
149
|
+
// eslint-disable-next-line react-hooks/rules-of-hooks -- useTemplate 是纯函数(读/更新存储),非 React hook,误名 use* 前缀
|
|
149
150
|
var template = (0, _templates.useTemplate)(id);
|
|
150
151
|
if (template) {
|
|
151
152
|
// 刷新模板列表以更新使用统计
|
|
@@ -4,10 +4,8 @@
|
|
|
4
4
|
* @module RegexEditor/validation/types
|
|
5
5
|
* @description 定义正则表达式解析、验证、复杂度分析相关的核心类型
|
|
6
6
|
*/
|
|
7
|
-
/// <reference types="dist/cjs/types/regexp-tree" />
|
|
8
|
-
/// <reference types="src/types/regexp-tree" />
|
|
9
|
-
/// <reference types="dist/esm/types/regexp-tree" />
|
|
10
7
|
/// <reference types="regexp-tree" />
|
|
8
|
+
/// <reference types="src/types/regexp-tree" />
|
|
11
9
|
/**
|
|
12
10
|
* regexp-tree 的 AST 节点类型
|
|
13
11
|
*
|
|
@@ -4,9 +4,7 @@
|
|
|
4
4
|
* @module RegexEditor/visualizer/astToRailroad
|
|
5
5
|
* @description 将 regexp-tree 的 AST 转换为 railroad-diagrams 格式
|
|
6
6
|
*/
|
|
7
|
-
/// <reference types="dist/cjs/types/railroad-diagrams" />
|
|
8
7
|
/// <reference types="src/types/railroad-diagrams" />
|
|
9
|
-
/// <reference types="dist/esm/types/railroad-diagrams" />
|
|
10
8
|
import { Diagram, type DiagramNode } from 'railroad-diagrams';
|
|
11
9
|
import type { ASTNode } from '../validation/types';
|
|
12
10
|
/**
|
|
@@ -5,13 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _debounce2 = _interopRequireDefault(require("lodash/debounce"));
|
|
9
|
-
var _isArray2 = _interopRequireDefault(require("lodash/isArray"));
|
|
10
|
-
var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty"));
|
|
11
|
-
var _cloneDeep2 = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
12
8
|
var _icons = require("@ant-design/icons");
|
|
13
9
|
var _antd = require("antd");
|
|
14
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
+
var _lodash = require("lodash");
|
|
15
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
16
13
|
var _reactGridLayout = require("react-grid-layout");
|
|
17
14
|
var _reactKeyevent = _interopRequireDefault(require("react-keyevent"));
|
|
@@ -94,7 +91,7 @@ var Dashboard = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
94
91
|
var dom = (0, _react.useRef)(null);
|
|
95
92
|
|
|
96
93
|
//获取操作
|
|
97
|
-
var fetch = (0, _react.useCallback)((0,
|
|
94
|
+
var fetch = (0, _react.useCallback)((0, _lodash.debounce)( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
98
95
|
var response, _layout, resArr, data;
|
|
99
96
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
100
97
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -106,10 +103,10 @@ var Dashboard = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
106
103
|
});
|
|
107
104
|
case 3:
|
|
108
105
|
response = _context.sent;
|
|
109
|
-
_layout = (0,
|
|
106
|
+
_layout = (0, _lodash.isArray)(defaultLayout) ? defaultLayout : [];
|
|
110
107
|
if (response) {
|
|
111
108
|
resArr = JSON.parse(response).currentLayout;
|
|
112
|
-
if (!(0,
|
|
109
|
+
if (!(0, _lodash.isEmpty)(resArr)) {
|
|
113
110
|
_layout = resArr;
|
|
114
111
|
}
|
|
115
112
|
}
|
|
@@ -203,7 +200,7 @@ var Dashboard = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
203
200
|
}(), [storageKey, widgets]);
|
|
204
201
|
|
|
205
202
|
//改变布局触发
|
|
206
|
-
var onLayoutChange = (0, _react.useCallback)((0,
|
|
203
|
+
var onLayoutChange = (0, _react.useCallback)((0, _lodash.debounce)(function (layout, layouts, callback) {
|
|
207
204
|
window.dispatchEvent(new Event('resize'));
|
|
208
205
|
if (!stateEditMode) {
|
|
209
206
|
return;
|
|
@@ -243,7 +240,7 @@ var Dashboard = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
243
240
|
//删除小程序
|
|
244
241
|
var removeWidget = (0, _react.useCallback)(function (widgetKey) {
|
|
245
242
|
var removedWidget;
|
|
246
|
-
var newLayout = (0,
|
|
243
|
+
var newLayout = (0, _lodash.cloneDeep)(dirtyCurrentLayout);
|
|
247
244
|
newLayout.map(function (item, index) {
|
|
248
245
|
if (item['i'] === widgetKey) {
|
|
249
246
|
removedWidget = item;
|
|
@@ -361,7 +358,7 @@ var Dashboard = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
361
358
|
|
|
362
359
|
//响应外部数据
|
|
363
360
|
(0, _react.useEffect)(function () {
|
|
364
|
-
if (!(0,
|
|
361
|
+
if (!(0, _lodash.isArray)(customLayout)) {
|
|
365
362
|
return;
|
|
366
363
|
}
|
|
367
364
|
var data = (0, _utils3.calcMinAndMax)(customLayout, widgets);
|
|
@@ -513,7 +510,7 @@ var Dashboard = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
513
510
|
size: "small",
|
|
514
511
|
onClick: revert,
|
|
515
512
|
icon: /*#__PURE__*/_react.default.createElement(_icons.RetweetOutlined, null)
|
|
516
|
-
}, '恢复'), !(0,
|
|
513
|
+
}, '恢复'), !(0, _lodash.isEmpty)(finLayout) && /*#__PURE__*/_react.default.createElement(_antd.Button, {
|
|
517
514
|
size: "small",
|
|
518
515
|
danger: true,
|
|
519
516
|
onClick: reset,
|
|
@@ -5,13 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.request = exports.formatLayout = exports.copy = exports.calcMinAndMax = void 0;
|
|
8
|
-
var
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
8
|
+
var _lodash = require("lodash");
|
|
10
9
|
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
11
10
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
12
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
13
|
-
// import { updateApi as modifySmartChartConfig } from '@/pages/common/widgets/smartchart/service'
|
|
14
|
-
|
|
11
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } // import { updateApi as modifySmartChartConfig } from '@/pages/common/widgets/smartchart/service'
|
|
15
12
|
var request = exports.request = /*#__PURE__*/function () {
|
|
16
13
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(url, options) {
|
|
17
14
|
var method, _options$data, dataId, dataType, bigData, res;
|
|
@@ -61,7 +58,7 @@ var copy = exports.copy = function copy(str) {
|
|
|
61
58
|
}, 1000);
|
|
62
59
|
};
|
|
63
60
|
var formatLayout = exports.formatLayout = function formatLayout(layout) {
|
|
64
|
-
var data = (0,
|
|
61
|
+
var data = (0, _lodash.cloneDeep)(layout);
|
|
65
62
|
data.forEach(function (item) {
|
|
66
63
|
delete item.minW;
|
|
67
64
|
delete item.maxW;
|
|
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
9
8
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
|
+
var _lodash = require("lodash");
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
require("./index.less");
|
|
12
12
|
var _utils = require("./utils");
|
|
@@ -37,8 +37,8 @@ var Widget = function Widget(props) {
|
|
|
37
37
|
_useState2 = _slicedToArray(_useState, 2),
|
|
38
38
|
configShow = _useState2[0],
|
|
39
39
|
setConfigShow = _useState2[1];
|
|
40
|
-
var component = (0,
|
|
41
|
-
var configComponent = (0,
|
|
40
|
+
var component = (0, _lodash.get)(widgets, widgetType + '.component');
|
|
41
|
+
var configComponent = (0, _lodash.get)(widgets, widgetType + '.configComponent');
|
|
42
42
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
43
43
|
className: (0, _classnames.default)(widgetWrapClassName, 'react-dashboard-widget'),
|
|
44
44
|
style: widgetWrapStyle
|
|
@@ -5,12 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
9
|
-
var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty"));
|
|
10
|
-
var _cloneDeep2 = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
11
8
|
var _icons = require("@ant-design/icons");
|
|
12
9
|
var _antd = require("antd");
|
|
13
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
+
var _lodash = require("lodash");
|
|
14
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
13
|
require("./index.less");
|
|
16
14
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
@@ -99,7 +97,7 @@ var WidgetSelector = function WidgetSelector(props) {
|
|
|
99
97
|
handleCalcMenuData();
|
|
100
98
|
}, []);
|
|
101
99
|
var finWidgets = (0, _react.useMemo)(function () {
|
|
102
|
-
var finData = (0,
|
|
100
|
+
var finData = (0, _lodash.cloneDeep)(widgets);
|
|
103
101
|
Object.keys(finData).map(function (key) {
|
|
104
102
|
//初始化数据
|
|
105
103
|
finData[key].length = 0;
|
|
@@ -184,7 +182,7 @@ var WidgetSelector = function WidgetSelector(props) {
|
|
|
184
182
|
height: '100%',
|
|
185
183
|
overflowY: 'auto'
|
|
186
184
|
}
|
|
187
|
-
}, !(0,
|
|
185
|
+
}, !(0, _lodash.isEmpty)(finWidgets) ? /*#__PURE__*/_react.default.createElement("div", {
|
|
188
186
|
className: "react-dashboard-widget-waterfall",
|
|
189
187
|
style: {
|
|
190
188
|
columnCount: Math.ceil((width - 200) / 200)
|
|
@@ -205,8 +203,8 @@ var WidgetSelector = function WidgetSelector(props) {
|
|
|
205
203
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
206
204
|
className: 'react-dashboard-widget-iconWrap',
|
|
207
205
|
style: {
|
|
208
|
-
backgroundColor: (0,
|
|
209
|
-
backgroundImage: (0,
|
|
206
|
+
backgroundColor: (0, _lodash.get)(widgets, key + '.iconBackground'),
|
|
207
|
+
backgroundImage: (0, _lodash.get)(widgets, key + '.iconBackground')
|
|
210
208
|
}
|
|
211
209
|
}, item.icon), /*#__PURE__*/_react.default.createElement("div", {
|
|
212
210
|
className: 'react-dashboard-widget-name'
|