@nokecy/qc-ui 1.1.36 → 1.1.38
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/README.md +25 -25
- package/dist/cjs/ConfirmPro/index.js +4 -4
- package/dist/cjs/RuleBuilder/LogicSelector.js +7 -7
- package/dist/cjs/RuleBuilder/RuleBuilderContainer.js +27 -27
- package/dist/cjs/RuleBuilder/RuleCard.js +6 -6
- package/dist/cjs/RuleBuilder/RuleGroupEditor.js +7 -7
- package/dist/cjs/RuleBuilder/constants/operators.js +18 -18
- package/dist/cjs/RuleBuilder/context/RuleBuilderContext.js +38 -38
- package/dist/cjs/RuleBuilder/inputs/BetweenValueInput.js +5 -5
- package/dist/cjs/RuleBuilder/inputs/MultiValueInput.js +5 -5
- package/dist/cjs/RuleBuilder/inputs/SingleValueInput.js +8 -8
- package/dist/cjs/RuleBuilder/inputs/ValueInput.js +8 -8
- package/dist/cjs/RuleBuilder/selectors/FieldSelector.js +5 -5
- package/dist/cjs/RuleBuilder/selectors/OperatorSelector.js +5 -5
- package/dist/cjs/RuleBuilder/styles/index.module.less +443 -443
- package/dist/cjs/RuleBuilder/styles/index.module.less.d.ts +43 -43
- package/dist/cjs/RuleBuilder/types/index.js +42 -42
- package/dist/cjs/RuleBuilder/utils/pathHelpers.js +47 -47
- package/dist/cjs/RuleBuilder/utils/ruleHelpers.js +31 -31
- package/dist/cjs/RuleBuilder/utils/validation.js +22 -22
- package/dist/cjs/ag-grid-plus/_utils/boolSelect.js +5 -5
- package/dist/cjs/ag-grid-plus/_utils/processColumnGroups.js +9 -9
- package/dist/cjs/ag-grid-plus/ag-grid-theme-builder.css +352 -352
- package/dist/cjs/ag-grid-plus/ag-gridPlus.js +83 -89
- package/dist/cjs/ag-grid-plus/context/gridContext.d.ts +1 -5
- package/dist/cjs/ag-grid-plus/context/gridContext.js +19 -19
- package/dist/cjs/ag-grid-plus/context/useSchemeDataFlow.js +56 -56
- package/dist/cjs/ag-grid-plus/context/useSchemeManager.js +93 -93
- package/dist/cjs/ag-grid-plus/errors/ErrorBoundary.js +8 -8
- package/dist/cjs/ag-grid-plus/errors/types.js +14 -14
- package/dist/cjs/ag-grid-plus/hooks/useAgGridCalculation.js +45 -45
- package/dist/cjs/ag-grid-plus/hooks/useAgGridData.js +44 -44
- package/dist/cjs/ag-grid-plus/hooks/useGridPlusColumnState.js +3 -3
- package/dist/cjs/ag-grid-plus/hooks/useGridState.js +36 -36
- package/dist/cjs/ag-grid-plus/index.less +50 -50
- package/dist/cjs/ag-grid-plus/queryForm/index.less +72 -72
- package/dist/cjs/ag-grid-plus/setting/ColumnConfigForm.js +11 -11
- package/dist/cjs/ag-grid-plus/setting/ColumnConfigTable.js +3 -3
- package/dist/cjs/ag-grid-plus/setting/ColumnNameCellRenderer.js +10 -10
- package/dist/cjs/ag-grid-plus/setting/ColumnSetting.js +29 -29
- package/dist/cjs/ag-grid-plus/setting/DebounceInputs.js +9 -9
- package/dist/cjs/ag-grid-plus/setting/MoveNodeModal.js +7 -7
- package/dist/cjs/ag-grid-plus/setting/NameColumnRenderer.js +6 -6
- package/dist/cjs/ag-grid-plus/setting/QuerySchemeManager.js +34 -34
- package/dist/cjs/ag-grid-plus/setting/columnGroupUtils.js +76 -76
- package/dist/cjs/ag-grid-plus/setting/performanceMonitor.js +5 -5
- package/dist/cjs/ag-grid-plus/shared/storage/backendApiAdapter.js +46 -46
- package/dist/cjs/ag-grid-plus/shared/storage/localStorageAdapter.js +39 -39
- package/dist/cjs/ag-grid-plus/shared/utils/schemeDataMigration.js +18 -18
- package/dist/cjs/ag-grid-plus/theme.js +3 -3
- package/dist/cjs/ag-grid-plus/toolBar/index.js +4 -4
- package/dist/cjs/ag-grid-plus/types.d.ts +2 -22
- package/dist/cjs/ag-grid-plus/utils/columnProcessors.js +52 -52
- package/dist/cjs/ag-grid-plus/utils/constants.js +22 -22
- package/dist/cjs/ag-grid-plus/utils/entityExtensionColumns.d.ts +1 -0
- package/dist/cjs/ag-grid-plus/utils/entityExtensionColumns.js +22 -20
- package/dist/cjs/ag-grid-plus/utils/logger.js +2 -2
- package/dist/cjs/ag-grid-plus/utils/sanitize.js +10 -10
- package/dist/cjs/ag-grid-plus/utils.js +3 -3
- package/dist/cjs/array-table/columnHelper.js +43 -43
- package/dist/cjs/array-table/hooks.js +11 -9
- package/dist/cjs/array-table/index.js +40 -41
- package/dist/cjs/array-table/utils.js +4 -3
- package/dist/cjs/components/RegexEditor/core/RegexEditor.js +32 -32
- package/dist/cjs/components/RegexEditor/core/RegexEditor.less +119 -119
- package/dist/cjs/components/RegexEditor/core/extensions/errorMarker.js +52 -52
- package/dist/cjs/components/RegexEditor/hooks/useRegexTester.js +48 -48
- package/dist/cjs/components/RegexEditor/hooks/useRegexValidation.js +54 -54
- package/dist/cjs/components/RegexEditor/hooks/useTemplateManager.js +5 -5
- package/dist/cjs/components/RegexEditor/templates/TemplateSelector.js +28 -28
- package/dist/cjs/components/RegexEditor/templates/builtinTemplates.js +24 -24
- package/dist/cjs/components/RegexEditor/templates/storage.js +29 -29
- package/dist/cjs/components/RegexEditor/templates/templateManager.js +29 -29
- package/dist/cjs/components/RegexEditor/templates/types.js +74 -74
- package/dist/cjs/components/RegexEditor/validation/complexity.js +40 -40
- package/dist/cjs/components/RegexEditor/validation/parser.js +47 -47
- package/dist/cjs/components/RegexEditor/validation/validator.js +54 -54
- package/dist/cjs/components/RegexEditor/visualizer/FlagsSelector.js +19 -19
- package/dist/cjs/components/RegexEditor/visualizer/MatchItem.js +20 -20
- package/dist/cjs/components/RegexEditor/visualizer/RegexRailroadDiagram.js +15 -15
- package/dist/cjs/components/RegexEditor/visualizer/RegexTester.js +17 -17
- package/dist/cjs/components/RegexEditor/visualizer/astToRailroad.js +11 -11
- package/dist/cjs/components/RegexEditor/visualizer/utils.js +92 -92
- package/dist/cjs/dashboard/dashboard/components/toolbar/style/index.less +49 -49
- package/dist/cjs/dashboard/dashboard/index.less +173 -173
- package/dist/cjs/dashboard/dashboard/utils.js +4 -4
- package/dist/cjs/dashboard/utils.js +8 -8
- package/dist/cjs/dashboard/widget/index.less +7 -7
- package/dist/cjs/dashboard/widget/selector/index.less +172 -172
- package/dist/cjs/deleteConfirm/index.js +17 -17
- package/dist/cjs/draggableModal/index.js +4 -4
- package/dist/cjs/draggableModal/style.less +122 -122
- package/dist/cjs/editable/index.js +16 -1
- package/dist/cjs/formDesigner/arrayTable/styles.less +2 -2
- package/dist/cjs/formDesigner/index.less +2 -2
- package/dist/cjs/fullScreenAlert/index.js +13 -13
- package/dist/cjs/fullScreenAlert/index.less +133 -133
- package/dist/cjs/generatedListPage/ConfigurableToolbar.js +2 -2
- package/dist/cjs/generatedListPage/GeneratedListPage.js +20 -20
- package/dist/cjs/generatedListPage/OptionsColumn.js +3 -3
- package/dist/cjs/generatedListPage/PerformanceMonitor.js +9 -9
- package/dist/cjs/generatedListPage/RequestManager.js +39 -39
- package/dist/cjs/generatedListPage/_utils/AccessWrapper.js +6 -6
- package/dist/cjs/generatedListPage/_utils/defaultHandlers.js +14 -14
- package/dist/cjs/generatedListPage/usePermissionCheck.js +27 -27
- package/dist/cjs/generatedListPage/useRequestManager.js +20 -20
- package/dist/cjs/importModal/index.js +4 -4
- package/dist/cjs/standardFormDialog/FormValidation.js +45 -45
- package/dist/cjs/standardFormDialog/PortalManager.js +46 -46
- package/dist/cjs/standardFormDialog/StandardFormDialog.js +20 -20
- package/dist/cjs/standardFormDialog/useStandardFormSchema.js +24 -24
- package/dist/cjs/toolBar/index.less +25 -25
- package/dist/cjs/types/railroad-diagrams.d.ts +59 -59
- package/dist/cjs/types/regexp-tree.d.ts +175 -175
- package/dist/esm/ConfirmPro/index.js +4 -4
- package/dist/esm/RuleBuilder/LogicSelector.js +7 -7
- package/dist/esm/RuleBuilder/RuleBuilderContainer.js +27 -27
- package/dist/esm/RuleBuilder/RuleCard.js +6 -6
- package/dist/esm/RuleBuilder/RuleGroupEditor.js +7 -7
- package/dist/esm/RuleBuilder/constants/operators.js +18 -18
- package/dist/esm/RuleBuilder/context/RuleBuilderContext.js +38 -38
- package/dist/esm/RuleBuilder/index.js +6 -6
- package/dist/esm/RuleBuilder/inputs/BetweenValueInput.js +5 -5
- package/dist/esm/RuleBuilder/inputs/MultiValueInput.js +5 -5
- package/dist/esm/RuleBuilder/inputs/SingleValueInput.js +8 -8
- package/dist/esm/RuleBuilder/inputs/ValueInput.js +8 -8
- package/dist/esm/RuleBuilder/selectors/FieldSelector.js +5 -5
- package/dist/esm/RuleBuilder/selectors/OperatorSelector.js +5 -5
- package/dist/esm/RuleBuilder/styles/index.module.less +443 -443
- package/dist/esm/RuleBuilder/styles/index.module.less.d.ts +43 -43
- package/dist/esm/RuleBuilder/types/index.js +42 -42
- package/dist/esm/RuleBuilder/utils/pathHelpers.js +47 -47
- package/dist/esm/RuleBuilder/utils/ruleHelpers.js +31 -31
- package/dist/esm/RuleBuilder/utils/validation.js +22 -22
- package/dist/esm/ag-grid-plus/_utils/boolSelect.js +5 -5
- package/dist/esm/ag-grid-plus/_utils/processColumnGroups.js +9 -9
- package/dist/esm/ag-grid-plus/ag-grid-theme-builder.css +352 -352
- package/dist/esm/ag-grid-plus/ag-gridPlus.js +83 -89
- package/dist/esm/ag-grid-plus/context/gridContext.d.ts +1 -5
- package/dist/esm/ag-grid-plus/context/gridContext.js +19 -19
- package/dist/esm/ag-grid-plus/context/useSchemeDataFlow.js +56 -56
- package/dist/esm/ag-grid-plus/context/useSchemeManager.js +93 -93
- package/dist/esm/ag-grid-plus/errors/ErrorBoundary.js +8 -8
- package/dist/esm/ag-grid-plus/errors/types.js +14 -14
- package/dist/esm/ag-grid-plus/hooks/index.js +2 -2
- package/dist/esm/ag-grid-plus/hooks/useAgGridCalculation.js +45 -45
- package/dist/esm/ag-grid-plus/hooks/useAgGridData.js +44 -44
- package/dist/esm/ag-grid-plus/hooks/useGridPlusColumnState.js +3 -3
- package/dist/esm/ag-grid-plus/hooks/useGridState.js +36 -36
- package/dist/esm/ag-grid-plus/index.less +50 -50
- package/dist/esm/ag-grid-plus/queryForm/index.less +72 -72
- package/dist/esm/ag-grid-plus/setting/ColumnConfigForm.js +11 -11
- package/dist/esm/ag-grid-plus/setting/ColumnConfigTable.js +3 -3
- package/dist/esm/ag-grid-plus/setting/ColumnNameCellRenderer.js +10 -10
- package/dist/esm/ag-grid-plus/setting/ColumnSetting.js +29 -29
- package/dist/esm/ag-grid-plus/setting/DebounceInputs.js +9 -9
- package/dist/esm/ag-grid-plus/setting/MoveNodeModal.js +7 -7
- package/dist/esm/ag-grid-plus/setting/NameColumnRenderer.js +6 -6
- package/dist/esm/ag-grid-plus/setting/QuerySchemeManager.js +34 -34
- package/dist/esm/ag-grid-plus/setting/columnGroupUtils.js +76 -76
- package/dist/esm/ag-grid-plus/setting/performanceMonitor.js +5 -5
- package/dist/esm/ag-grid-plus/shared/storage/backendApiAdapter.js +46 -46
- package/dist/esm/ag-grid-plus/shared/storage/localStorageAdapter.js +39 -39
- package/dist/esm/ag-grid-plus/shared/utils/schemeDataMigration.js +18 -18
- package/dist/esm/ag-grid-plus/theme.js +3 -3
- package/dist/esm/ag-grid-plus/toolBar/index.js +4 -4
- package/dist/esm/ag-grid-plus/types.d.ts +2 -22
- package/dist/esm/ag-grid-plus/utils/columnProcessors.js +52 -52
- package/dist/esm/ag-grid-plus/utils/constants.js +22 -22
- package/dist/esm/ag-grid-plus/utils/entityExtensionColumns.d.ts +1 -0
- package/dist/esm/ag-grid-plus/utils/entityExtensionColumns.js +29 -34
- package/dist/esm/ag-grid-plus/utils/logger.js +2 -2
- package/dist/esm/ag-grid-plus/utils/sanitize.js +10 -10
- package/dist/esm/ag-grid-plus/utils.js +3 -3
- package/dist/esm/array-table/columnHelper.js +43 -43
- package/dist/esm/array-table/hooks.js +11 -9
- package/dist/esm/array-table/index.js +40 -41
- package/dist/esm/array-table/utils.js +4 -3
- package/dist/esm/components/RegexEditor/core/RegexEditor.js +32 -32
- package/dist/esm/components/RegexEditor/core/RegexEditor.less +119 -119
- package/dist/esm/components/RegexEditor/core/extensions/errorMarker.js +52 -52
- package/dist/esm/components/RegexEditor/hooks/index.js +4 -4
- package/dist/esm/components/RegexEditor/hooks/useRegexTester.js +48 -48
- package/dist/esm/components/RegexEditor/hooks/useRegexValidation.js +54 -54
- package/dist/esm/components/RegexEditor/hooks/useTemplateManager.js +5 -5
- package/dist/esm/components/RegexEditor/templates/TemplateSelector.js +28 -28
- package/dist/esm/components/RegexEditor/templates/builtinTemplates.js +24 -24
- package/dist/esm/components/RegexEditor/templates/index.js +2 -2
- package/dist/esm/components/RegexEditor/templates/storage.js +29 -29
- package/dist/esm/components/RegexEditor/templates/templateManager.js +29 -29
- package/dist/esm/components/RegexEditor/templates/types.js +74 -74
- package/dist/esm/components/RegexEditor/validation/complexity.js +40 -40
- package/dist/esm/components/RegexEditor/validation/parser.js +47 -47
- package/dist/esm/components/RegexEditor/validation/validator.js +54 -54
- package/dist/esm/components/RegexEditor/visualizer/FlagsSelector.js +19 -19
- package/dist/esm/components/RegexEditor/visualizer/MatchItem.js +20 -20
- package/dist/esm/components/RegexEditor/visualizer/RegexRailroadDiagram.js +15 -15
- package/dist/esm/components/RegexEditor/visualizer/RegexTester.js +17 -17
- package/dist/esm/components/RegexEditor/visualizer/astToRailroad.js +11 -11
- package/dist/esm/components/RegexEditor/visualizer/index.js +5 -5
- package/dist/esm/components/RegexEditor/visualizer/utils.js +92 -92
- package/dist/esm/dashboard/dashboard/components/toolbar/style/index.less +49 -49
- package/dist/esm/dashboard/dashboard/index.less +173 -173
- package/dist/esm/dashboard/dashboard/utils.js +4 -4
- package/dist/esm/dashboard/utils.js +8 -8
- package/dist/esm/dashboard/widget/index.less +7 -7
- package/dist/esm/dashboard/widget/selector/index.less +172 -172
- package/dist/esm/deleteConfirm/index.js +17 -17
- package/dist/esm/draggableModal/index.js +4 -4
- package/dist/esm/draggableModal/style.less +122 -122
- package/dist/esm/editable/index.js +16 -1
- package/dist/esm/formDesigner/arrayTable/styles.less +2 -2
- package/dist/esm/formDesigner/index.less +2 -2
- package/dist/esm/fullScreenAlert/index.js +13 -13
- package/dist/esm/fullScreenAlert/index.less +133 -133
- package/dist/esm/generatedListPage/ConfigurableToolbar.js +2 -2
- package/dist/esm/generatedListPage/GeneratedListPage.js +20 -20
- package/dist/esm/generatedListPage/OptionsColumn.js +3 -3
- package/dist/esm/generatedListPage/PerformanceMonitor.js +9 -9
- package/dist/esm/generatedListPage/RequestManager.js +39 -39
- package/dist/esm/generatedListPage/_utils/AccessWrapper.js +6 -6
- package/dist/esm/generatedListPage/_utils/defaultHandlers.js +14 -14
- package/dist/esm/generatedListPage/index.js +9 -9
- package/dist/esm/generatedListPage/usePermissionCheck.js +27 -27
- package/dist/esm/generatedListPage/useRequestManager.js +20 -20
- package/dist/esm/importModal/index.js +4 -4
- package/dist/esm/standardFormDialog/FormValidation.js +45 -45
- package/dist/esm/standardFormDialog/PortalManager.js +46 -46
- package/dist/esm/standardFormDialog/StandardFormDialog.js +20 -20
- package/dist/esm/standardFormDialog/useStandardFormSchema.js +24 -24
- package/dist/esm/standardFormDialog/withStandardForm.d.ts +2 -2
- package/dist/esm/toolBar/index.less +25 -25
- package/dist/esm/types/railroad-diagrams.d.ts +59 -59
- package/dist/esm/types/regexp-tree.d.ts +175 -175
- package/dist/umd/qc-ui.min.js +1 -1
- package/package.json +90 -90
- package/dist/cjs/ag-grid-plus/shared/hooks/useSchemeManager.d.ts +0 -66
- package/dist/cjs/ag-grid-plus/shared/hooks/useSchemeManager.js +0 -648
- package/dist/esm/ag-grid-plus/shared/hooks/useSchemeManager.d.ts +0 -66
- package/dist/esm/ag-grid-plus/shared/hooks/useSchemeManager.js +0 -643
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* GeneratedListPage - 通用列表页面生成器
|
|
3
|
-
*
|
|
4
|
-
* 基于配置自动生成标准化的列表页面,包含:
|
|
5
|
-
* - AgGridPlus表格
|
|
6
|
-
* - 配置化工具栏
|
|
7
|
-
* - 标准化操作列
|
|
8
|
-
* - 树形数据支持
|
|
9
|
-
* - 统一的API调用和错误处理
|
|
1
|
+
/**
|
|
2
|
+
* GeneratedListPage - 通用列表页面生成器
|
|
3
|
+
*
|
|
4
|
+
* 基于配置自动生成标准化的列表页面,包含:
|
|
5
|
+
* - AgGridPlus表格
|
|
6
|
+
* - 配置化工具栏
|
|
7
|
+
* - 标准化操作列
|
|
8
|
+
* - 树形数据支持
|
|
9
|
+
* - 统一的API调用和错误处理
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
export { default } from "./GeneratedListPage";
|
|
@@ -5,25 +5,25 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
5
5
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
7
7
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
8
|
-
/**
|
|
9
|
-
* usePermissionCheck Hook
|
|
10
|
-
*
|
|
11
|
-
* 提供统一的权限检查功能,避免重复的权限检查逻辑
|
|
12
|
-
* 适配版:支持外部传入 access 对象或使用默认的全部允许策略
|
|
8
|
+
/**
|
|
9
|
+
* usePermissionCheck Hook
|
|
10
|
+
*
|
|
11
|
+
* 提供统一的权限检查功能,避免重复的权限检查逻辑
|
|
12
|
+
* 适配版:支持外部传入 access 对象或使用默认的全部允许策略
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
import { useMemo } from 'react';
|
|
16
|
-
/**
|
|
17
|
-
* 权限检查 Hook
|
|
18
|
-
* @param permissions 权限配置对象(可选)
|
|
19
|
-
* @param access 可选的 access 对象(如果不传入,默认全部允许)
|
|
20
|
-
* @returns 权限检查结果
|
|
16
|
+
/**
|
|
17
|
+
* 权限检查 Hook
|
|
18
|
+
* @param permissions 权限配置对象(可选)
|
|
19
|
+
* @param access 可选的 access 对象(如果不传入,默认全部允许)
|
|
20
|
+
* @returns 权限检查结果
|
|
21
21
|
*/
|
|
22
22
|
export function usePermissionCheck(permissions, access) {
|
|
23
23
|
// 缓存权限检查结果
|
|
24
24
|
var permissionResult = useMemo(function () {
|
|
25
|
-
/**
|
|
26
|
-
* 检查单个权限
|
|
25
|
+
/**
|
|
26
|
+
* 检查单个权限
|
|
27
27
|
*/
|
|
28
28
|
var hasPermission = function hasPermission(permission) {
|
|
29
29
|
if (!permission) return true; // 未配置权限则默认有权限
|
|
@@ -31,8 +31,8 @@ export function usePermissionCheck(permissions, access) {
|
|
|
31
31
|
return !!access[permission];
|
|
32
32
|
};
|
|
33
33
|
|
|
34
|
-
/**
|
|
35
|
-
* 检查多个权限(需要全部满足)
|
|
34
|
+
/**
|
|
35
|
+
* 检查多个权限(需要全部满足)
|
|
36
36
|
*/
|
|
37
37
|
var hasAllPermissions = function hasAllPermissions() {
|
|
38
38
|
for (var _len = arguments.length, perms = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
@@ -44,8 +44,8 @@ export function usePermissionCheck(permissions, access) {
|
|
|
44
44
|
});
|
|
45
45
|
};
|
|
46
46
|
|
|
47
|
-
/**
|
|
48
|
-
* 检查多个权限(满足任一即可)
|
|
47
|
+
/**
|
|
48
|
+
* 检查多个权限(满足任一即可)
|
|
49
49
|
*/
|
|
50
50
|
var hasAnyPermission = function hasAnyPermission() {
|
|
51
51
|
for (var _len2 = arguments.length, perms = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
@@ -71,9 +71,9 @@ export function usePermissionCheck(permissions, access) {
|
|
|
71
71
|
return permissionResult;
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
/**
|
|
75
|
-
* 权限检查工具类
|
|
76
|
-
* 用于非 Hook 场景下的权限检查
|
|
74
|
+
/**
|
|
75
|
+
* 权限检查工具类
|
|
76
|
+
* 用于非 Hook 场景下的权限检查
|
|
77
77
|
*/
|
|
78
78
|
export var PermissionChecker = /*#__PURE__*/function () {
|
|
79
79
|
function PermissionChecker(access) {
|
|
@@ -82,8 +82,8 @@ export var PermissionChecker = /*#__PURE__*/function () {
|
|
|
82
82
|
this.access = access;
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
-
/**
|
|
86
|
-
* 检查单个权限
|
|
85
|
+
/**
|
|
86
|
+
* 检查单个权限
|
|
87
87
|
*/
|
|
88
88
|
_createClass(PermissionChecker, [{
|
|
89
89
|
key: "hasPermission",
|
|
@@ -92,8 +92,8 @@ export var PermissionChecker = /*#__PURE__*/function () {
|
|
|
92
92
|
return !!this.access[permission];
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
/**
|
|
96
|
-
* 检查多个权限(需要全部满足)
|
|
95
|
+
/**
|
|
96
|
+
* 检查多个权限(需要全部满足)
|
|
97
97
|
*/
|
|
98
98
|
}, {
|
|
99
99
|
key: "hasAllPermissions",
|
|
@@ -108,8 +108,8 @@ export var PermissionChecker = /*#__PURE__*/function () {
|
|
|
108
108
|
});
|
|
109
109
|
}
|
|
110
110
|
|
|
111
|
-
/**
|
|
112
|
-
* 检查多个权限(满足任一即可)
|
|
111
|
+
/**
|
|
112
|
+
* 检查多个权限(满足任一即可)
|
|
113
113
|
*/
|
|
114
114
|
}, {
|
|
115
115
|
key: "hasAnyPermission",
|
|
@@ -124,8 +124,8 @@ export var PermissionChecker = /*#__PURE__*/function () {
|
|
|
124
124
|
});
|
|
125
125
|
}
|
|
126
126
|
|
|
127
|
-
/**
|
|
128
|
-
* 检查权限配置对象
|
|
127
|
+
/**
|
|
128
|
+
* 检查权限配置对象
|
|
129
129
|
*/
|
|
130
130
|
}, {
|
|
131
131
|
key: "checkConfig",
|
|
@@ -2,16 +2,16 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
|
|
|
2
2
|
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; }
|
|
3
3
|
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); } }
|
|
4
4
|
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); }); }; }
|
|
5
|
-
/**
|
|
6
|
-
* useRequestManager Hook
|
|
7
|
-
*
|
|
8
|
-
* 为组件提供请求管理功能的 React Hook
|
|
5
|
+
/**
|
|
6
|
+
* useRequestManager Hook
|
|
7
|
+
*
|
|
8
|
+
* 为组件提供请求管理功能的 React Hook
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import { useRef, useEffect, useCallback } from 'react';
|
|
12
12
|
import { RequestManager } from "./RequestManager";
|
|
13
|
-
/**
|
|
14
|
-
* 使用请求管理器的 Hook
|
|
13
|
+
/**
|
|
14
|
+
* 使用请求管理器的 Hook
|
|
15
15
|
*/
|
|
16
16
|
export function useRequestManager(options) {
|
|
17
17
|
var managerRef = useRef();
|
|
@@ -29,8 +29,8 @@ export function useRequestManager(options) {
|
|
|
29
29
|
};
|
|
30
30
|
}, [manager]);
|
|
31
31
|
|
|
32
|
-
/**
|
|
33
|
-
* 执行请求
|
|
32
|
+
/**
|
|
33
|
+
* 执行请求
|
|
34
34
|
*/
|
|
35
35
|
var request = useCallback( /*#__PURE__*/function () {
|
|
36
36
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(params, requestFn) {
|
|
@@ -49,8 +49,8 @@ export function useRequestManager(options) {
|
|
|
49
49
|
};
|
|
50
50
|
}(), [manager]);
|
|
51
51
|
|
|
52
|
-
/**
|
|
53
|
-
* 防抖请求
|
|
52
|
+
/**
|
|
53
|
+
* 防抖请求
|
|
54
54
|
*/
|
|
55
55
|
var debouncedRequest = useCallback( /*#__PURE__*/function () {
|
|
56
56
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(key, params, requestFn) {
|
|
@@ -69,36 +69,36 @@ export function useRequestManager(options) {
|
|
|
69
69
|
};
|
|
70
70
|
}(), [manager]);
|
|
71
71
|
|
|
72
|
-
/**
|
|
73
|
-
* 取消请求
|
|
72
|
+
/**
|
|
73
|
+
* 取消请求
|
|
74
74
|
*/
|
|
75
75
|
var cancelRequest = useCallback(function (params) {
|
|
76
76
|
manager.cancelRequest(params);
|
|
77
77
|
}, [manager]);
|
|
78
78
|
|
|
79
|
-
/**
|
|
80
|
-
* 取消所有请求
|
|
79
|
+
/**
|
|
80
|
+
* 取消所有请求
|
|
81
81
|
*/
|
|
82
82
|
var cancelAllRequests = useCallback(function () {
|
|
83
83
|
manager.cancelAllPendingRequests();
|
|
84
84
|
}, [manager]);
|
|
85
85
|
|
|
86
|
-
/**
|
|
87
|
-
* 清理缓存
|
|
86
|
+
/**
|
|
87
|
+
* 清理缓存
|
|
88
88
|
*/
|
|
89
89
|
var clearCache = useCallback(function () {
|
|
90
90
|
manager.clearCache();
|
|
91
91
|
}, [manager]);
|
|
92
92
|
|
|
93
|
-
/**
|
|
94
|
-
* 清理过期缓存
|
|
93
|
+
/**
|
|
94
|
+
* 清理过期缓存
|
|
95
95
|
*/
|
|
96
96
|
var cleanupCache = useCallback(function () {
|
|
97
97
|
manager.cleanupExpiredCache();
|
|
98
98
|
}, [manager]);
|
|
99
99
|
|
|
100
|
-
/**
|
|
101
|
-
* 获取统计信息
|
|
100
|
+
/**
|
|
101
|
+
* 获取统计信息
|
|
102
102
|
*/
|
|
103
103
|
var getStats = useCallback(function () {
|
|
104
104
|
return manager.getStats();
|
|
@@ -9,8 +9,8 @@ import { Alert, Button, message, Modal, Upload } from 'antd';
|
|
|
9
9
|
import { InboxOutlined, ImportOutlined } from '@ant-design/icons';
|
|
10
10
|
import React from 'react';
|
|
11
11
|
import { useBoolean } from 'ahooks';
|
|
12
|
-
/**
|
|
13
|
-
* 默认的下载 Blob 实现
|
|
12
|
+
/**
|
|
13
|
+
* 默认的下载 Blob 实现
|
|
14
14
|
*/
|
|
15
15
|
var defaultDownloadBlob = function defaultDownloadBlob(url, filename) {
|
|
16
16
|
var link = document.createElement('a');
|
|
@@ -19,8 +19,8 @@ var defaultDownloadBlob = function defaultDownloadBlob(url, filename) {
|
|
|
19
19
|
link.click();
|
|
20
20
|
};
|
|
21
21
|
|
|
22
|
-
/**
|
|
23
|
-
* 通用导入弹出框
|
|
22
|
+
/**
|
|
23
|
+
* 通用导入弹出框
|
|
24
24
|
*/
|
|
25
25
|
var ImportModal = function ImportModal(props) {
|
|
26
26
|
var onAfterSubmit = props.onAfterSubmit,
|
|
@@ -4,14 +4,14 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
4
4
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
5
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
6
6
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
7
|
-
/**
|
|
8
|
-
* 表单验证工具函数
|
|
7
|
+
/**
|
|
8
|
+
* 表单验证工具函数
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
// 常用验证规则
|
|
12
12
|
export var ValidationRules = {
|
|
13
|
-
/**
|
|
14
|
-
* 必填验证
|
|
13
|
+
/**
|
|
14
|
+
* 必填验证
|
|
15
15
|
*/
|
|
16
16
|
required: function required(message) {
|
|
17
17
|
return {
|
|
@@ -19,8 +19,8 @@ export var ValidationRules = {
|
|
|
19
19
|
message: message || '此字段为必填项'
|
|
20
20
|
};
|
|
21
21
|
},
|
|
22
|
-
/**
|
|
23
|
-
* 邮箱验证
|
|
22
|
+
/**
|
|
23
|
+
* 邮箱验证
|
|
24
24
|
*/
|
|
25
25
|
email: function email(message) {
|
|
26
26
|
return {
|
|
@@ -28,8 +28,8 @@ export var ValidationRules = {
|
|
|
28
28
|
message: message || '请输入有效的邮箱地址'
|
|
29
29
|
};
|
|
30
30
|
},
|
|
31
|
-
/**
|
|
32
|
-
* 手机号验证
|
|
31
|
+
/**
|
|
32
|
+
* 手机号验证
|
|
33
33
|
*/
|
|
34
34
|
phone: function phone(message) {
|
|
35
35
|
return {
|
|
@@ -37,8 +37,8 @@ export var ValidationRules = {
|
|
|
37
37
|
message: message || '请输入有效的手机号码'
|
|
38
38
|
};
|
|
39
39
|
},
|
|
40
|
-
/**
|
|
41
|
-
* 长度验证
|
|
40
|
+
/**
|
|
41
|
+
* 长度验证
|
|
42
42
|
*/
|
|
43
43
|
length: function length(min, max, message) {
|
|
44
44
|
if (max) {
|
|
@@ -53,8 +53,8 @@ export var ValidationRules = {
|
|
|
53
53
|
message: message || "\u957F\u5EA6\u4E0D\u80FD\u5C11\u4E8E".concat(min, "\u4E2A\u5B57\u7B26")
|
|
54
54
|
};
|
|
55
55
|
},
|
|
56
|
-
/**
|
|
57
|
-
* 数字范围验证
|
|
56
|
+
/**
|
|
57
|
+
* 数字范围验证
|
|
58
58
|
*/
|
|
59
59
|
range: function range(min, max, message) {
|
|
60
60
|
if (max !== undefined) {
|
|
@@ -69,8 +69,8 @@ export var ValidationRules = {
|
|
|
69
69
|
message: message || "\u503C\u4E0D\u80FD\u5C0F\u4E8E".concat(min)
|
|
70
70
|
};
|
|
71
71
|
},
|
|
72
|
-
/**
|
|
73
|
-
* 正则表达式验证
|
|
72
|
+
/**
|
|
73
|
+
* 正则表达式验证
|
|
74
74
|
*/
|
|
75
75
|
pattern: function pattern(_pattern, message) {
|
|
76
76
|
return {
|
|
@@ -78,8 +78,8 @@ export var ValidationRules = {
|
|
|
78
78
|
message: message
|
|
79
79
|
};
|
|
80
80
|
},
|
|
81
|
-
/**
|
|
82
|
-
* 身份证号验证
|
|
81
|
+
/**
|
|
82
|
+
* 身份证号验证
|
|
83
83
|
*/
|
|
84
84
|
idCard: function idCard(message) {
|
|
85
85
|
return {
|
|
@@ -87,8 +87,8 @@ export var ValidationRules = {
|
|
|
87
87
|
message: message || '请输入有效的身份证号码'
|
|
88
88
|
};
|
|
89
89
|
},
|
|
90
|
-
/**
|
|
91
|
-
* URL验证
|
|
90
|
+
/**
|
|
91
|
+
* URL验证
|
|
92
92
|
*/
|
|
93
93
|
url: function url(message) {
|
|
94
94
|
return {
|
|
@@ -96,8 +96,8 @@ export var ValidationRules = {
|
|
|
96
96
|
message: message || '请输入有效的URL地址'
|
|
97
97
|
};
|
|
98
98
|
},
|
|
99
|
-
/**
|
|
100
|
-
* 整数验证
|
|
99
|
+
/**
|
|
100
|
+
* 整数验证
|
|
101
101
|
*/
|
|
102
102
|
integer: function integer(message) {
|
|
103
103
|
return {
|
|
@@ -105,8 +105,8 @@ export var ValidationRules = {
|
|
|
105
105
|
message: message || '请输入整数'
|
|
106
106
|
};
|
|
107
107
|
},
|
|
108
|
-
/**
|
|
109
|
-
* 正整数验证
|
|
108
|
+
/**
|
|
109
|
+
* 正整数验证
|
|
110
110
|
*/
|
|
111
111
|
positiveInteger: function positiveInteger(message) {
|
|
112
112
|
return {
|
|
@@ -114,8 +114,8 @@ export var ValidationRules = {
|
|
|
114
114
|
message: message || '请输入正整数'
|
|
115
115
|
};
|
|
116
116
|
},
|
|
117
|
-
/**
|
|
118
|
-
* 非负整数验证
|
|
117
|
+
/**
|
|
118
|
+
* 非负整数验证
|
|
119
119
|
*/
|
|
120
120
|
nonNegativeInteger: function nonNegativeInteger(message) {
|
|
121
121
|
return {
|
|
@@ -123,8 +123,8 @@ export var ValidationRules = {
|
|
|
123
123
|
message: message || '请输入非负整数'
|
|
124
124
|
};
|
|
125
125
|
},
|
|
126
|
-
/**
|
|
127
|
-
* 小数验证
|
|
126
|
+
/**
|
|
127
|
+
* 小数验证
|
|
128
128
|
*/
|
|
129
129
|
decimal: function decimal(precision, message) {
|
|
130
130
|
var pattern = precision ? new RegExp("^-?\\d+(\\.\\d{1,".concat(precision, "})?$")) : /^-?\d+(\.\d+)?$/;
|
|
@@ -152,56 +152,56 @@ export var conditionalValidation = function conditionalValidation(condition, rul
|
|
|
152
152
|
|
|
153
153
|
// 常用验证组合
|
|
154
154
|
export var CommonValidations = {
|
|
155
|
-
/**
|
|
156
|
-
* 编码字段(必填,长度限制,字母数字)
|
|
155
|
+
/**
|
|
156
|
+
* 编码字段(必填,长度限制,字母数字)
|
|
157
157
|
*/
|
|
158
158
|
code: function code() {
|
|
159
159
|
var maxLength = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 50;
|
|
160
160
|
return combineValidation(ValidationRules.required('编码不能为空'), ValidationRules.length(1, maxLength), ValidationRules.pattern(/^[a-zA-Z0-9_-]+$/, '编码只能包含字母、数字、下划线和短横线'));
|
|
161
161
|
},
|
|
162
|
-
/**
|
|
163
|
-
* 名称字段(必填,长度限制)
|
|
162
|
+
/**
|
|
163
|
+
* 名称字段(必填,长度限制)
|
|
164
164
|
*/
|
|
165
165
|
name: function name() {
|
|
166
166
|
var maxLength = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 100;
|
|
167
167
|
return combineValidation(ValidationRules.required('名称不能为空'), ValidationRules.length(1, maxLength));
|
|
168
168
|
},
|
|
169
|
-
/**
|
|
170
|
-
* 手机号字段(必填,格式验证)
|
|
169
|
+
/**
|
|
170
|
+
* 手机号字段(必填,格式验证)
|
|
171
171
|
*/
|
|
172
172
|
requiredPhone: function requiredPhone() {
|
|
173
173
|
return combineValidation(ValidationRules.required('手机号不能为空'), ValidationRules.phone());
|
|
174
174
|
},
|
|
175
|
-
/**
|
|
176
|
-
* 邮箱字段(必填,格式验证)
|
|
175
|
+
/**
|
|
176
|
+
* 邮箱字段(必填,格式验证)
|
|
177
177
|
*/
|
|
178
178
|
requiredEmail: function requiredEmail() {
|
|
179
179
|
return combineValidation(ValidationRules.required('邮箱不能为空'), ValidationRules.email());
|
|
180
180
|
},
|
|
181
|
-
/**
|
|
182
|
-
* 备注字段(可选,长度限制)
|
|
181
|
+
/**
|
|
182
|
+
* 备注字段(可选,长度限制)
|
|
183
183
|
*/
|
|
184
184
|
remark: function remark() {
|
|
185
185
|
var maxLength = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 500;
|
|
186
186
|
return [ValidationRules.length(0, maxLength)];
|
|
187
187
|
},
|
|
188
|
-
/**
|
|
189
|
-
* 金额字段(必填,非负数,两位小数)
|
|
188
|
+
/**
|
|
189
|
+
* 金额字段(必填,非负数,两位小数)
|
|
190
190
|
*/
|
|
191
191
|
amount: function amount() {
|
|
192
192
|
return combineValidation(ValidationRules.required('金额不能为空'), ValidationRules.decimal(2, '请输入有效的金额(最多2位小数)'), ValidationRules.range(0, undefined, '金额不能为负数'));
|
|
193
193
|
},
|
|
194
|
-
/**
|
|
195
|
-
* 数量字段(必填,正整数)
|
|
194
|
+
/**
|
|
195
|
+
* 数量字段(必填,正整数)
|
|
196
196
|
*/
|
|
197
197
|
quantity: function quantity() {
|
|
198
198
|
return combineValidation(ValidationRules.required('数量不能为空'), ValidationRules.positiveInteger('请输入正整数'));
|
|
199
199
|
}
|
|
200
200
|
};
|
|
201
201
|
|
|
202
|
-
/**
|
|
203
|
-
* 表单字段增强工具
|
|
204
|
-
* 为FieldCreators添加验证功能
|
|
202
|
+
/**
|
|
203
|
+
* 表单字段增强工具
|
|
204
|
+
* 为FieldCreators添加验证功能
|
|
205
205
|
*/
|
|
206
206
|
export var enhanceFieldWithValidation = function enhanceFieldWithValidation(field, validations) {
|
|
207
207
|
return _objectSpread(_objectSpread({}, field), {}, {
|
|
@@ -209,8 +209,8 @@ export var enhanceFieldWithValidation = function enhanceFieldWithValidation(fiel
|
|
|
209
209
|
});
|
|
210
210
|
};
|
|
211
211
|
|
|
212
|
-
/**
|
|
213
|
-
* 批量添加验证的工具函数
|
|
212
|
+
/**
|
|
213
|
+
* 批量添加验证的工具函数
|
|
214
214
|
*/
|
|
215
215
|
export var addValidationToFields = function addValidationToFields(fields, validationMap) {
|
|
216
216
|
var result = _objectSpread({}, fields);
|
|
@@ -11,11 +11,11 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
11
11
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
12
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
13
13
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
14
|
-
/**
|
|
15
|
-
* FormDialog Portal 管理器
|
|
16
|
-
*
|
|
17
|
-
* 负责管理 FormDialog Portal 的生命周期,避免 Portal ID 冲突
|
|
18
|
-
* 和内存泄漏问题
|
|
14
|
+
/**
|
|
15
|
+
* FormDialog Portal 管理器
|
|
16
|
+
*
|
|
17
|
+
* 负责管理 FormDialog Portal 的生命周期,避免 Portal ID 冲突
|
|
18
|
+
* 和内存泄漏问题
|
|
19
19
|
*/
|
|
20
20
|
var PortalManager = /*#__PURE__*/function () {
|
|
21
21
|
function PortalManager() {
|
|
@@ -26,12 +26,12 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
26
26
|
this.startCleanupTimer();
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
/**
|
|
30
|
-
* 生成唯一的 Portal ID
|
|
31
|
-
* @param prefix Portal ID 前缀
|
|
32
|
-
* @param formId 表单 ID
|
|
33
|
-
* @param entityId 实体 ID (可选)
|
|
34
|
-
* @returns 唯一的 Portal ID
|
|
29
|
+
/**
|
|
30
|
+
* 生成唯一的 Portal ID
|
|
31
|
+
* @param prefix Portal ID 前缀
|
|
32
|
+
* @param formId 表单 ID
|
|
33
|
+
* @param entityId 实体 ID (可选)
|
|
34
|
+
* @returns 唯一的 Portal ID
|
|
35
35
|
*/
|
|
36
36
|
_createClass(PortalManager, [{
|
|
37
37
|
key: "generatePortalId",
|
|
@@ -50,11 +50,11 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
50
50
|
return uniqueId;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
/**
|
|
54
|
-
* 注册 Portal
|
|
55
|
-
* @param id Portal ID
|
|
56
|
-
* @param formId 表单 ID
|
|
57
|
-
* @param prefix Portal 前缀
|
|
53
|
+
/**
|
|
54
|
+
* 注册 Portal
|
|
55
|
+
* @param id Portal ID
|
|
56
|
+
* @param formId 表单 ID
|
|
57
|
+
* @param prefix Portal 前缀
|
|
58
58
|
*/
|
|
59
59
|
}, {
|
|
60
60
|
key: "register",
|
|
@@ -70,9 +70,9 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
70
70
|
});
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
/**
|
|
74
|
-
* 更新 Portal 访问时间
|
|
75
|
-
* @param id Portal ID
|
|
73
|
+
/**
|
|
74
|
+
* 更新 Portal 访问时间
|
|
75
|
+
* @param id Portal ID
|
|
76
76
|
*/
|
|
77
77
|
}, {
|
|
78
78
|
key: "updateAccess",
|
|
@@ -83,9 +83,9 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
|
|
86
|
-
/**
|
|
87
|
-
* 标记 Portal 为关闭状态
|
|
88
|
-
* @param id Portal ID
|
|
86
|
+
/**
|
|
87
|
+
* 标记 Portal 为关闭状态
|
|
88
|
+
* @param id Portal ID
|
|
89
89
|
*/
|
|
90
90
|
}, {
|
|
91
91
|
key: "markAsClosed",
|
|
@@ -97,9 +97,9 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
-
/**
|
|
101
|
-
* 取消注册 Portal
|
|
102
|
-
* @param id Portal ID
|
|
100
|
+
/**
|
|
101
|
+
* 取消注册 Portal
|
|
102
|
+
* @param id Portal ID
|
|
103
103
|
*/
|
|
104
104
|
}, {
|
|
105
105
|
key: "unregister",
|
|
@@ -107,9 +107,9 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
107
107
|
if (this.portals.delete(id)) {}
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
-
/**
|
|
111
|
-
* 检查 Portal 是否存在
|
|
112
|
-
* @param id Portal ID
|
|
110
|
+
/**
|
|
111
|
+
* 检查 Portal 是否存在
|
|
112
|
+
* @param id Portal ID
|
|
113
113
|
*/
|
|
114
114
|
}, {
|
|
115
115
|
key: "exists",
|
|
@@ -117,9 +117,9 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
117
117
|
return this.portals.has(id);
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
-
/**
|
|
121
|
-
* 获取 Portal 信息
|
|
122
|
-
* @param id Portal ID
|
|
120
|
+
/**
|
|
121
|
+
* 获取 Portal 信息
|
|
122
|
+
* @param id Portal ID
|
|
123
123
|
*/
|
|
124
124
|
}, {
|
|
125
125
|
key: "getPortal",
|
|
@@ -127,8 +127,8 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
127
127
|
return this.portals.get(id);
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
/**
|
|
131
|
-
* 获取所有 Portal 列表
|
|
130
|
+
/**
|
|
131
|
+
* 获取所有 Portal 列表
|
|
132
132
|
*/
|
|
133
133
|
}, {
|
|
134
134
|
key: "getAllPortals",
|
|
@@ -136,11 +136,11 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
136
136
|
return Array.from(this.portals.values());
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
-
/**
|
|
140
|
-
* 清理过期的 Portal
|
|
141
|
-
* 清理规则:
|
|
142
|
-
* 1. 已关闭且超过 5 分钟未访问
|
|
143
|
-
* 2. 创建超过 30 分钟的 Portal
|
|
139
|
+
/**
|
|
140
|
+
* 清理过期的 Portal
|
|
141
|
+
* 清理规则:
|
|
142
|
+
* 1. 已关闭且超过 5 分钟未访问
|
|
143
|
+
* 2. 创建超过 30 分钟的 Portal
|
|
144
144
|
*/
|
|
145
145
|
}, {
|
|
146
146
|
key: "cleanup",
|
|
@@ -171,8 +171,8 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
171
171
|
if (cleanedCount > 0) {}
|
|
172
172
|
}
|
|
173
173
|
|
|
174
|
-
/**
|
|
175
|
-
* 启动定期清理定时器
|
|
174
|
+
/**
|
|
175
|
+
* 启动定期清理定时器
|
|
176
176
|
*/
|
|
177
177
|
}, {
|
|
178
178
|
key: "startCleanupTimer",
|
|
@@ -184,8 +184,8 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
184
184
|
}, 2 * 60 * 1000);
|
|
185
185
|
}
|
|
186
186
|
|
|
187
|
-
/**
|
|
188
|
-
* 停止清理定时器
|
|
187
|
+
/**
|
|
188
|
+
* 停止清理定时器
|
|
189
189
|
*/
|
|
190
190
|
}, {
|
|
191
191
|
key: "stopCleanupTimer",
|
|
@@ -196,8 +196,8 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
198
|
|
|
199
|
-
/**
|
|
200
|
-
* 清空所有 Portal
|
|
199
|
+
/**
|
|
200
|
+
* 清空所有 Portal
|
|
201
201
|
*/
|
|
202
202
|
}, {
|
|
203
203
|
key: "clear",
|
|
@@ -205,8 +205,8 @@ var PortalManager = /*#__PURE__*/function () {
|
|
|
205
205
|
this.portals.clear();
|
|
206
206
|
}
|
|
207
207
|
|
|
208
|
-
/**
|
|
209
|
-
* 获取统计信息
|
|
208
|
+
/**
|
|
209
|
+
* 获取统计信息
|
|
210
210
|
*/
|
|
211
211
|
}, {
|
|
212
212
|
key: "getStats",
|