@nokecy/qc-ui 1.1.37 → 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 +63 -65
- 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/utils/columnProcessors.js +52 -52
- package/dist/cjs/ag-grid-plus/utils/constants.js +22 -22
- package/dist/cjs/ag-grid-plus/utils/entityExtensionColumns.js +20 -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 +63 -65
- 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/utils/columnProcessors.js +52 -52
- package/dist/esm/ag-grid-plus/utils/constants.js +22 -22
- package/dist/esm/ag-grid-plus/utils/entityExtensionColumns.js +20 -20
- 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
|
@@ -4,17 +4,17 @@ 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
|
-
* FlagsSelector 组件
|
|
9
|
-
*
|
|
10
|
-
* @module RegexEditor/visualizer/FlagsSelector
|
|
11
|
-
* @description 正则表达式标志选择器组件
|
|
7
|
+
/**
|
|
8
|
+
* FlagsSelector 组件
|
|
9
|
+
*
|
|
10
|
+
* @module RegexEditor/visualizer/FlagsSelector
|
|
11
|
+
* @description 正则表达式标志选择器组件
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
14
|
import React from 'react';
|
|
15
15
|
import { Checkbox, Space, Tooltip } from 'antd';
|
|
16
|
-
/**
|
|
17
|
-
* 标志配置
|
|
16
|
+
/**
|
|
17
|
+
* 标志配置
|
|
18
18
|
*/
|
|
19
19
|
var FLAG_CONFIG = [{
|
|
20
20
|
key: 'global',
|
|
@@ -42,16 +42,16 @@ var FLAG_CONFIG = [{
|
|
|
42
42
|
tooltip: '粘性匹配 (sticky) - 从 lastIndex 位置开始匹配'
|
|
43
43
|
}];
|
|
44
44
|
|
|
45
|
-
/**
|
|
46
|
-
* 标志选择器组件
|
|
47
|
-
*
|
|
48
|
-
* @example
|
|
49
|
-
* ```tsx
|
|
50
|
-
* <FlagsSelector
|
|
51
|
-
* value={{ global: true, ignoreCase: true }}
|
|
52
|
-
* onChange={(flags) => console.log(flags)}
|
|
53
|
-
* />
|
|
54
|
-
* ```
|
|
45
|
+
/**
|
|
46
|
+
* 标志选择器组件
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```tsx
|
|
50
|
+
* <FlagsSelector
|
|
51
|
+
* value={{ global: true, ignoreCase: true }}
|
|
52
|
+
* onChange={(flags) => console.log(flags)}
|
|
53
|
+
* />
|
|
54
|
+
* ```
|
|
55
55
|
*/
|
|
56
56
|
export var FlagsSelector = function FlagsSelector(_ref) {
|
|
57
57
|
var _ref$value = _ref.value,
|
|
@@ -59,8 +59,8 @@ export var FlagsSelector = function FlagsSelector(_ref) {
|
|
|
59
59
|
onChange = _ref.onChange,
|
|
60
60
|
_ref$disabled = _ref.disabled,
|
|
61
61
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled;
|
|
62
|
-
/**
|
|
63
|
-
* 处理标志变化
|
|
62
|
+
/**
|
|
63
|
+
* 处理标志变化
|
|
64
64
|
*/
|
|
65
65
|
var handleChange = function handleChange(key) {
|
|
66
66
|
return function (e) {
|
|
@@ -4,11 +4,11 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
4
4
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
5
5
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
6
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
|
-
/**
|
|
8
|
-
* MatchItem 组件
|
|
9
|
-
*
|
|
10
|
-
* @module RegexEditor/visualizer/MatchItem
|
|
11
|
-
* @description 匹配结果项组件
|
|
7
|
+
/**
|
|
8
|
+
* MatchItem 组件
|
|
9
|
+
*
|
|
10
|
+
* @module RegexEditor/visualizer/MatchItem
|
|
11
|
+
* @description 匹配结果项组件
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
14
|
import React, { useState } from 'react';
|
|
@@ -18,21 +18,21 @@ var Text = Typography.Text,
|
|
|
18
18
|
Paragraph = Typography.Paragraph;
|
|
19
19
|
var Panel = Collapse.Panel;
|
|
20
20
|
|
|
21
|
-
/**
|
|
22
|
-
* 匹配项组件
|
|
23
|
-
*
|
|
24
|
-
* @example
|
|
25
|
-
* ```tsx
|
|
26
|
-
* <MatchItem
|
|
27
|
-
* match={{
|
|
28
|
-
* index: 0,
|
|
29
|
-
* lastIndex: 3,
|
|
30
|
-
* fullMatch: 'abc',
|
|
31
|
-
* groups: ['abc', 'ab', 'c'],
|
|
32
|
-
* }}
|
|
33
|
-
* index={0}
|
|
34
|
-
* />
|
|
35
|
-
* ```
|
|
21
|
+
/**
|
|
22
|
+
* 匹配项组件
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```tsx
|
|
26
|
+
* <MatchItem
|
|
27
|
+
* match={{
|
|
28
|
+
* index: 0,
|
|
29
|
+
* lastIndex: 3,
|
|
30
|
+
* fullMatch: 'abc',
|
|
31
|
+
* groups: ['abc', 'ab', 'c'],
|
|
32
|
+
* }}
|
|
33
|
+
* index={0}
|
|
34
|
+
* />
|
|
35
|
+
* ```
|
|
36
36
|
*/
|
|
37
37
|
export var MatchItem = function MatchItem(_ref) {
|
|
38
38
|
var match = _ref.match,
|
|
@@ -8,11 +8,11 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
8
8
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
9
9
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
10
10
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
11
|
-
/**
|
|
12
|
-
* RegexRailroadDiagram 组件
|
|
13
|
-
*
|
|
14
|
-
* @module RegexEditor/visualizer/RegexRailroadDiagram
|
|
15
|
-
* @description 使用 Railroad Diagram 可视化正则表达式结构
|
|
11
|
+
/**
|
|
12
|
+
* RegexRailroadDiagram 组件
|
|
13
|
+
*
|
|
14
|
+
* @module RegexEditor/visualizer/RegexRailroadDiagram
|
|
15
|
+
* @description 使用 Railroad Diagram 可视化正则表达式结构
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
18
|
import React, { useEffect, useRef, useState } from 'react';
|
|
@@ -20,16 +20,16 @@ import { Card, Alert, Empty, Spin } from 'antd';
|
|
|
20
20
|
import { parseRegex } from "../validation/parser";
|
|
21
21
|
import { createRailroadDiagram } from "./astToRailroad";
|
|
22
22
|
import 'railroad-diagrams/railroad-diagrams.css';
|
|
23
|
-
/**
|
|
24
|
-
* Railroad Diagram 可视化组件
|
|
25
|
-
*
|
|
26
|
-
* @example
|
|
27
|
-
* ```tsx
|
|
28
|
-
* <RegexRailroadDiagram
|
|
29
|
-
* pattern="\d{3}-\d{4}"
|
|
30
|
-
* showTitle={true}
|
|
31
|
-
* />
|
|
32
|
-
* ```
|
|
23
|
+
/**
|
|
24
|
+
* Railroad Diagram 可视化组件
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```tsx
|
|
28
|
+
* <RegexRailroadDiagram
|
|
29
|
+
* pattern="\d{3}-\d{4}"
|
|
30
|
+
* showTitle={true}
|
|
31
|
+
* />
|
|
32
|
+
* ```
|
|
33
33
|
*/
|
|
34
34
|
export var RegexRailroadDiagram = function RegexRailroadDiagram(_ref) {
|
|
35
35
|
var pattern = _ref.pattern,
|
|
@@ -4,11 +4,11 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
4
4
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
5
5
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
6
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
|
-
/**
|
|
8
|
-
* RegexTester 组件
|
|
9
|
-
*
|
|
10
|
-
* @module RegexEditor/visualizer/RegexTester
|
|
11
|
-
* @description 正则表达式测试面板组件
|
|
7
|
+
/**
|
|
8
|
+
* RegexTester 组件
|
|
9
|
+
*
|
|
10
|
+
* @module RegexEditor/visualizer/RegexTester
|
|
11
|
+
* @description 正则表达式测试面板组件
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
14
|
import React, { useState } from 'react';
|
|
@@ -19,18 +19,18 @@ import { FlagsSelector } from "./FlagsSelector";
|
|
|
19
19
|
import { MatchItem } from "./MatchItem";
|
|
20
20
|
var TextArea = Input.TextArea;
|
|
21
21
|
|
|
22
|
-
/**
|
|
23
|
-
* 正则测试器组件
|
|
24
|
-
*
|
|
25
|
-
* @example
|
|
26
|
-
* ```tsx
|
|
27
|
-
* <RegexTester
|
|
28
|
-
* pattern="\d+"
|
|
29
|
-
* flags={{ global: true }}
|
|
30
|
-
* onMatchResults={(results) => console.log(results)}
|
|
31
|
-
* enableReplace={true}
|
|
32
|
-
* />
|
|
33
|
-
* ```
|
|
22
|
+
/**
|
|
23
|
+
* 正则测试器组件
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```tsx
|
|
27
|
+
* <RegexTester
|
|
28
|
+
* pattern="\d+"
|
|
29
|
+
* flags={{ global: true }}
|
|
30
|
+
* onMatchResults={(results) => console.log(results)}
|
|
31
|
+
* enableReplace={true}
|
|
32
|
+
* />
|
|
33
|
+
* ```
|
|
34
34
|
*/
|
|
35
35
|
export var RegexTester = function RegexTester(_ref) {
|
|
36
36
|
var pattern = _ref.pattern,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
/**
|
|
3
|
-
* AST to Railroad Diagram Converter
|
|
4
|
-
*
|
|
5
|
-
* @module RegexEditor/visualizer/astToRailroad
|
|
6
|
-
* @description 将 regexp-tree 的 AST 转换为 railroad-diagrams 格式
|
|
2
|
+
/**
|
|
3
|
+
* AST to Railroad Diagram Converter
|
|
4
|
+
*
|
|
5
|
+
* @module RegexEditor/visualizer/astToRailroad
|
|
6
|
+
* @description 将 regexp-tree 的 AST 转换为 railroad-diagrams 格式
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import { Diagram, Sequence, Choice, Optional, OneOrMore, ZeroOrMore, Terminal, NonTerminal, Skip } from 'railroad-diagrams';
|
|
10
|
-
/**
|
|
11
|
-
* 将 regexp-tree AST 节点转换为 railroad-diagram 节点
|
|
10
|
+
/**
|
|
11
|
+
* 将 regexp-tree AST 节点转换为 railroad-diagram 节点
|
|
12
12
|
*/
|
|
13
13
|
export function convertASTToRailroad(ast) {
|
|
14
14
|
if (!ast || !ast.type) {
|
|
@@ -119,8 +119,8 @@ export function convertASTToRailroad(ast) {
|
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
121
|
|
|
122
|
-
/**
|
|
123
|
-
* 辅助函数:将字符节点转换为字符串
|
|
122
|
+
/**
|
|
123
|
+
* 辅助函数:将字符节点转换为字符串
|
|
124
124
|
*/
|
|
125
125
|
function convertCharNode(node) {
|
|
126
126
|
if (node.type === 'Char') {
|
|
@@ -129,8 +129,8 @@ function convertCharNode(node) {
|
|
|
129
129
|
return String(node.value || '');
|
|
130
130
|
}
|
|
131
131
|
|
|
132
|
-
/**
|
|
133
|
-
* 创建完整的 Railroad Diagram
|
|
132
|
+
/**
|
|
133
|
+
* 创建完整的 Railroad Diagram
|
|
134
134
|
*/
|
|
135
135
|
export function createRailroadDiagram(ast) {
|
|
136
136
|
try {
|
|
@@ -4,24 +4,24 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
4
4
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
5
5
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
6
6
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
7
|
-
/**
|
|
8
|
-
* 正则表达式可视化 - 工具函数
|
|
9
|
-
*
|
|
10
|
-
* @module RegexEditor/visualizer/utils
|
|
11
|
-
* @description 提供匹配、标志转换等工具函数
|
|
7
|
+
/**
|
|
8
|
+
* 正则表达式可视化 - 工具函数
|
|
9
|
+
*
|
|
10
|
+
* @module RegexEditor/visualizer/utils
|
|
11
|
+
* @description 提供匹配、标志转换等工具函数
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
|
-
/**
|
|
15
|
-
* 将标志对象转换为标志字符串
|
|
16
|
-
*
|
|
17
|
-
* @param flags - 标志对象
|
|
18
|
-
* @returns 标志字符串 (如 "gim")
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```ts
|
|
22
|
-
* flagsToString({ global: true, ignoreCase: true })
|
|
23
|
-
* // => "gi"
|
|
24
|
-
* ```
|
|
14
|
+
/**
|
|
15
|
+
* 将标志对象转换为标志字符串
|
|
16
|
+
*
|
|
17
|
+
* @param flags - 标志对象
|
|
18
|
+
* @returns 标志字符串 (如 "gim")
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```ts
|
|
22
|
+
* flagsToString({ global: true, ignoreCase: true })
|
|
23
|
+
* // => "gi"
|
|
24
|
+
* ```
|
|
25
25
|
*/
|
|
26
26
|
export function flagsToString(flags) {
|
|
27
27
|
if (!flags) return '';
|
|
@@ -35,17 +35,17 @@ export function flagsToString(flags) {
|
|
|
35
35
|
return result;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
/**
|
|
39
|
-
* 将标志字符串转换为标志对象
|
|
40
|
-
*
|
|
41
|
-
* @param flagsStr - 标志字符串 (如 "gim")
|
|
42
|
-
* @returns 标志对象
|
|
43
|
-
*
|
|
44
|
-
* @example
|
|
45
|
-
* ```ts
|
|
46
|
-
* stringToFlags("gi")
|
|
47
|
-
* // => { global: true, ignoreCase: true }
|
|
48
|
-
* ```
|
|
38
|
+
/**
|
|
39
|
+
* 将标志字符串转换为标志对象
|
|
40
|
+
*
|
|
41
|
+
* @param flagsStr - 标志字符串 (如 "gim")
|
|
42
|
+
* @returns 标志对象
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```ts
|
|
46
|
+
* stringToFlags("gi")
|
|
47
|
+
* // => { global: true, ignoreCase: true }
|
|
48
|
+
* ```
|
|
49
49
|
*/
|
|
50
50
|
export function stringToFlags(flagsStr) {
|
|
51
51
|
return {
|
|
@@ -58,24 +58,24 @@ export function stringToFlags(flagsStr) {
|
|
|
58
58
|
};
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
/**
|
|
62
|
-
* 执行正则匹配并返回所有匹配结果
|
|
63
|
-
*
|
|
64
|
-
* @param pattern - 正则表达式模式
|
|
65
|
-
* @param text - 测试文本
|
|
66
|
-
* @param flags - 标志
|
|
67
|
-
* @param maxMatches - 最大匹配数量限制
|
|
68
|
-
* @param timeout - 超时时间 (毫秒)
|
|
69
|
-
* @returns 匹配结果数组,如果出错返回 null
|
|
70
|
-
*
|
|
71
|
-
* @example
|
|
72
|
-
* ```ts
|
|
73
|
-
* const results = performMatch('\\d+', 'abc 123 def 456', { global: true });
|
|
74
|
-
* // => [
|
|
75
|
-
* // { index: 4, lastIndex: 7, fullMatch: '123', groups: ['123'] },
|
|
76
|
-
* // { index: 12, lastIndex: 15, fullMatch: '456', groups: ['456'] }
|
|
77
|
-
* // ]
|
|
78
|
-
* ```
|
|
61
|
+
/**
|
|
62
|
+
* 执行正则匹配并返回所有匹配结果
|
|
63
|
+
*
|
|
64
|
+
* @param pattern - 正则表达式模式
|
|
65
|
+
* @param text - 测试文本
|
|
66
|
+
* @param flags - 标志
|
|
67
|
+
* @param maxMatches - 最大匹配数量限制
|
|
68
|
+
* @param timeout - 超时时间 (毫秒)
|
|
69
|
+
* @returns 匹配结果数组,如果出错返回 null
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```ts
|
|
73
|
+
* const results = performMatch('\\d+', 'abc 123 def 456', { global: true });
|
|
74
|
+
* // => [
|
|
75
|
+
* // { index: 4, lastIndex: 7, fullMatch: '123', groups: ['123'] },
|
|
76
|
+
* // { index: 12, lastIndex: 15, fullMatch: '456', groups: ['456'] }
|
|
77
|
+
* // ]
|
|
78
|
+
* ```
|
|
79
79
|
*/
|
|
80
80
|
export function performMatch(pattern, text, flags) {
|
|
81
81
|
var maxMatches = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1000;
|
|
@@ -137,20 +137,20 @@ export function performMatch(pattern, text, flags) {
|
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
-
/**
|
|
141
|
-
* 执行正则替换并返回结果
|
|
142
|
-
*
|
|
143
|
-
* @param pattern - 正则表达式模式
|
|
144
|
-
* @param text - 原始文本
|
|
145
|
-
* @param replaceText - 替换文本 (支持 $1, $2 等)
|
|
146
|
-
* @param flags - 标志
|
|
147
|
-
* @returns 替换后的文本,如果出错返回 null
|
|
148
|
-
*
|
|
149
|
-
* @example
|
|
150
|
-
* ```ts
|
|
151
|
-
* performReplace('(\\d+)', 'abc 123 def', 'NUM:$1', { global: true })
|
|
152
|
-
* // => "abc NUM:123 def"
|
|
153
|
-
* ```
|
|
140
|
+
/**
|
|
141
|
+
* 执行正则替换并返回结果
|
|
142
|
+
*
|
|
143
|
+
* @param pattern - 正则表达式模式
|
|
144
|
+
* @param text - 原始文本
|
|
145
|
+
* @param replaceText - 替换文本 (支持 $1, $2 等)
|
|
146
|
+
* @param flags - 标志
|
|
147
|
+
* @returns 替换后的文本,如果出错返回 null
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* ```ts
|
|
151
|
+
* performReplace('(\\d+)', 'abc 123 def', 'NUM:$1', { global: true })
|
|
152
|
+
* // => "abc NUM:123 def"
|
|
153
|
+
* ```
|
|
154
154
|
*/
|
|
155
155
|
export function performReplace(pattern, text, replaceText, flags) {
|
|
156
156
|
try {
|
|
@@ -163,20 +163,20 @@ export function performReplace(pattern, text, replaceText, flags) {
|
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
|
|
166
|
-
/**
|
|
167
|
-
* 高亮文本中的匹配部分
|
|
168
|
-
*
|
|
169
|
-
* @param text - 原始文本
|
|
170
|
-
* @param matches - 匹配结果数组
|
|
171
|
-
* @returns 带高亮标记的 HTML 字符串
|
|
172
|
-
*
|
|
173
|
-
* @example
|
|
174
|
-
* ```ts
|
|
175
|
-
* highlightMatches('abc 123 def', [
|
|
176
|
-
* { index: 4, lastIndex: 7, fullMatch: '123', groups: ['123'] }
|
|
177
|
-
* ])
|
|
178
|
-
* // => 'abc <mark class="regex-match">123</mark> def'
|
|
179
|
-
* ```
|
|
166
|
+
/**
|
|
167
|
+
* 高亮文本中的匹配部分
|
|
168
|
+
*
|
|
169
|
+
* @param text - 原始文本
|
|
170
|
+
* @param matches - 匹配结果数组
|
|
171
|
+
* @returns 带高亮标记的 HTML 字符串
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* ```ts
|
|
175
|
+
* highlightMatches('abc 123 def', [
|
|
176
|
+
* { index: 4, lastIndex: 7, fullMatch: '123', groups: ['123'] }
|
|
177
|
+
* ])
|
|
178
|
+
* // => 'abc <mark class="regex-match">123</mark> def'
|
|
179
|
+
* ```
|
|
180
180
|
*/
|
|
181
181
|
export function highlightMatches(text, matches) {
|
|
182
182
|
if (!matches || matches.length === 0) {
|
|
@@ -207,8 +207,8 @@ export function highlightMatches(text, matches) {
|
|
|
207
207
|
return result;
|
|
208
208
|
}
|
|
209
209
|
|
|
210
|
-
/**
|
|
211
|
-
* 转义 HTML 特殊字符
|
|
210
|
+
/**
|
|
211
|
+
* 转义 HTML 特殊字符
|
|
212
212
|
*/
|
|
213
213
|
function escapeHtml(text) {
|
|
214
214
|
var map = {
|
|
@@ -223,28 +223,28 @@ function escapeHtml(text) {
|
|
|
223
223
|
});
|
|
224
224
|
}
|
|
225
225
|
|
|
226
|
-
/**
|
|
227
|
-
* 格式化匹配位置
|
|
228
|
-
*
|
|
229
|
-
* @param match - 匹配结果
|
|
230
|
-
* @returns 格式化的位置字符串
|
|
231
|
-
*
|
|
232
|
-
* @example
|
|
233
|
-
* ```ts
|
|
234
|
-
* formatPosition({ index: 10, lastIndex: 15, ... })
|
|
235
|
-
* // => "10-15"
|
|
236
|
-
* ```
|
|
226
|
+
/**
|
|
227
|
+
* 格式化匹配位置
|
|
228
|
+
*
|
|
229
|
+
* @param match - 匹配结果
|
|
230
|
+
* @returns 格式化的位置字符串
|
|
231
|
+
*
|
|
232
|
+
* @example
|
|
233
|
+
* ```ts
|
|
234
|
+
* formatPosition({ index: 10, lastIndex: 15, ... })
|
|
235
|
+
* // => "10-15"
|
|
236
|
+
* ```
|
|
237
237
|
*/
|
|
238
238
|
export function formatPosition(match) {
|
|
239
239
|
return "".concat(match.index, "-").concat(match.lastIndex);
|
|
240
240
|
}
|
|
241
241
|
|
|
242
|
-
/**
|
|
243
|
-
* 检查正则表达式是否有效
|
|
244
|
-
*
|
|
245
|
-
* @param pattern - 正则表达式模式
|
|
246
|
-
* @param flags - 标志
|
|
247
|
-
* @returns 是否有效
|
|
242
|
+
/**
|
|
243
|
+
* 检查正则表达式是否有效
|
|
244
|
+
*
|
|
245
|
+
* @param pattern - 正则表达式模式
|
|
246
|
+
* @param flags - 标志
|
|
247
|
+
* @returns 是否有效
|
|
248
248
|
*/
|
|
249
249
|
export function isValidRegex(pattern, flags) {
|
|
250
250
|
try {
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
.react-dashboard-toolbar {
|
|
2
|
-
display: flex;
|
|
3
|
-
align-items: center;
|
|
4
|
-
justify-content: space-between;
|
|
5
|
-
// width: 100%;
|
|
6
|
-
padding: 0 10px;
|
|
7
|
-
padding-bottom: 10px;
|
|
8
|
-
// background: var(--component-background);
|
|
9
|
-
|
|
10
|
-
&:after {
|
|
11
|
-
display: block;
|
|
12
|
-
clear: both;
|
|
13
|
-
content: '';
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
&-left {
|
|
17
|
-
float: left;
|
|
18
|
-
|
|
19
|
-
button {
|
|
20
|
-
margin-right: 10px;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
&-right {
|
|
25
|
-
float: right;
|
|
26
|
-
|
|
27
|
-
button {
|
|
28
|
-
margin-left: 10px;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
&-space {
|
|
33
|
-
flex: auto;
|
|
34
|
-
height: 1px;
|
|
35
|
-
margin: 0 !important;
|
|
36
|
-
padding: 0 !important;
|
|
37
|
-
border: 0 !important;
|
|
38
|
-
-webkit-box-flex: 1;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
&-fixed {
|
|
42
|
-
position: fixed;
|
|
43
|
-
right: 0;
|
|
44
|
-
bottom: 0;
|
|
45
|
-
z-index: 9;
|
|
46
|
-
border-top: 1px solid rgba(128, 128, 128, 0.1);
|
|
47
|
-
box-shadow: 0 -1px 2px rgba(128, 128, 128, 0.03);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
1
|
+
.react-dashboard-toolbar {
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
justify-content: space-between;
|
|
5
|
+
// width: 100%;
|
|
6
|
+
padding: 0 10px;
|
|
7
|
+
padding-bottom: 10px;
|
|
8
|
+
// background: var(--component-background);
|
|
9
|
+
|
|
10
|
+
&:after {
|
|
11
|
+
display: block;
|
|
12
|
+
clear: both;
|
|
13
|
+
content: '';
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&-left {
|
|
17
|
+
float: left;
|
|
18
|
+
|
|
19
|
+
button {
|
|
20
|
+
margin-right: 10px;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
&-right {
|
|
25
|
+
float: right;
|
|
26
|
+
|
|
27
|
+
button {
|
|
28
|
+
margin-left: 10px;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
&-space {
|
|
33
|
+
flex: auto;
|
|
34
|
+
height: 1px;
|
|
35
|
+
margin: 0 !important;
|
|
36
|
+
padding: 0 !important;
|
|
37
|
+
border: 0 !important;
|
|
38
|
+
-webkit-box-flex: 1;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&-fixed {
|
|
42
|
+
position: fixed;
|
|
43
|
+
right: 0;
|
|
44
|
+
bottom: 0;
|
|
45
|
+
z-index: 9;
|
|
46
|
+
border-top: 1px solid rgba(128, 128, 128, 0.1);
|
|
47
|
+
box-shadow: 0 -1px 2px rgba(128, 128, 128, 0.03);
|
|
48
|
+
}
|
|
49
|
+
}
|