tntd 3.0.43-beta.1 → 3.0.43

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.
Files changed (129) hide show
  1. package/es/form/style/index.less +5 -5
  2. package/es/index.js +0 -7
  3. package/es/index.js.map +1 -1
  4. package/es/query-form/Field/Checkbox.js +1 -1
  5. package/es/query-form/Field/Checkbox.js.map +1 -1
  6. package/es/query-form/Field/SelectInput.js +6 -21
  7. package/es/query-form/Field/SelectInput.js.map +1 -1
  8. package/es/query-form/Field/fieldsMap.js +2 -2
  9. package/es/query-form/Field/fieldsMap.js.map +1 -1
  10. package/es/query-form/Field/index.js +1 -3
  11. package/es/query-form/Field/index.js.map +1 -1
  12. package/es/query-form/index.js +357 -226
  13. package/es/query-form/index.js.map +1 -1
  14. package/es/query-form/index.less +60 -26
  15. package/es/query-list-scene/List.js +3 -16
  16. package/es/query-list-scene/List.js.map +1 -1
  17. package/es/query-list-scene/QueryForm.js +13 -35
  18. package/es/query-list-scene/QueryForm.js.map +1 -1
  19. package/es/query-list-scene/index.js +1 -2
  20. package/es/query-list-scene/index.js.map +1 -1
  21. package/es/table/hooks/use-column-setting.js.map +1 -1
  22. package/es/table/resizableTable/index.js +5 -34
  23. package/es/table/resizableTable/index.js.map +1 -1
  24. package/es/table/resizableTable/index.less +1 -9
  25. package/es/table/table.js +2 -8
  26. package/es/table/table.js.map +1 -1
  27. package/es/tntd-select/index.js.map +1 -1
  28. package/es/tntd-virtual-tree/index.js +3 -0
  29. package/es/tntd-virtual-tree/index.js.map +1 -1
  30. package/lib/form/style/index.less +5 -5
  31. package/lib/index.d.ts +0 -1
  32. package/lib/index.d.ts.map +1 -1
  33. package/lib/index.js +0 -7
  34. package/lib/index.js.map +1 -1
  35. package/lib/query-form/Field/Checkbox.js +1 -1
  36. package/lib/query-form/Field/Checkbox.js.map +1 -1
  37. package/lib/query-form/Field/Composition/FieldPopover.js +25 -70
  38. package/lib/query-form/Field/Composition/FieldPopover.js.map +1 -1
  39. package/lib/query-form/Field/Composition/Select.js +24 -31
  40. package/lib/query-form/Field/Composition/ValueTag.d.ts.map +1 -1
  41. package/lib/query-form/Field/Composition/ValueTag.js +20 -24
  42. package/lib/query-form/Field/Composition/ValueTag.js.map +1 -1
  43. package/lib/query-form/Field/Composition/index.d.ts +0 -2
  44. package/lib/query-form/Field/Composition/index.js +46 -69
  45. package/lib/query-form/Field/Composition/index.js.map +1 -1
  46. package/lib/query-form/Field/Composition/utils.d.ts +1 -1
  47. package/lib/query-form/Field/Composition/utils.d.ts.map +1 -1
  48. package/lib/query-form/Field/Composition/utils.js +49 -50
  49. package/lib/query-form/Field/Composition/utils.js.map +1 -1
  50. package/lib/query-form/Field/SelectInput.d.ts.map +1 -1
  51. package/lib/query-form/Field/SelectInput.js +6 -21
  52. package/lib/query-form/Field/SelectInput.js.map +1 -1
  53. package/lib/query-form/Field/fieldsMap.d.ts +3 -6
  54. package/lib/query-form/Field/fieldsMap.d.ts.map +1 -1
  55. package/lib/query-form/Field/fieldsMap.js +2 -2
  56. package/lib/query-form/Field/fieldsMap.js.map +1 -1
  57. package/lib/query-form/Field/index.d.ts.map +1 -1
  58. package/lib/query-form/Field/index.js +1 -3
  59. package/lib/query-form/Field/index.js.map +1 -1
  60. package/lib/query-form/index.d.ts +36 -1
  61. package/lib/query-form/index.d.ts.map +1 -1
  62. package/lib/query-form/index.js +417 -263
  63. package/lib/query-form/index.js.map +1 -1
  64. package/lib/query-form/index.less +60 -26
  65. package/lib/query-list-scene/List.d.ts.map +1 -1
  66. package/lib/query-list-scene/List.js +3 -16
  67. package/lib/query-list-scene/List.js.map +1 -1
  68. package/lib/query-list-scene/QueryForm.d.ts +4 -5
  69. package/lib/query-list-scene/QueryForm.d.ts.map +1 -1
  70. package/lib/query-list-scene/QueryForm.js +13 -35
  71. package/lib/query-list-scene/QueryForm.js.map +1 -1
  72. package/lib/query-list-scene/index.d.ts.map +1 -1
  73. package/lib/query-list-scene/index.js +1 -2
  74. package/lib/query-list-scene/index.js.map +1 -1
  75. package/lib/scroll-bar/Bar.js +17 -18
  76. package/lib/scroll-bar/Context.js +3 -3
  77. package/lib/scroll-bar/ScrollBar.js +3 -3
  78. package/lib/scroll-bar/Thumb.js +17 -18
  79. package/lib/scroll-bar/index.js +3 -3
  80. package/lib/scroll-bar/util.js +7 -13
  81. package/lib/segmented/index.d.ts +1 -1
  82. package/lib/table/hooks/use-column-setting.d.ts +0 -1
  83. package/lib/table/hooks/use-column-setting.d.ts.map +1 -1
  84. package/lib/table/hooks/use-column-setting.js.map +1 -1
  85. package/lib/table/resizableTable/index.d.ts +0 -3
  86. package/lib/table/resizableTable/index.d.ts.map +1 -1
  87. package/lib/table/resizableTable/index.js +5 -34
  88. package/lib/table/resizableTable/index.js.map +1 -1
  89. package/lib/table/resizableTable/index.less +1 -9
  90. package/lib/table/table.d.ts.map +1 -1
  91. package/lib/table/table.js +2 -8
  92. package/lib/table/table.js.map +1 -1
  93. package/lib/tntd-select/index.d.ts.map +1 -1
  94. package/lib/tntd-select/index.js.map +1 -1
  95. package/lib/tntd-virtual-tree/index.js +3 -0
  96. package/lib/tntd-virtual-tree/index.js.map +1 -1
  97. package/package.json +1 -2
  98. package/es/query-form/Field/Composition/FieldPopover.js +0 -361
  99. package/es/query-form/Field/Composition/FieldPopover.js.map +0 -1
  100. package/es/query-form/Field/Composition/FieldPopover.less +0 -35
  101. package/es/query-form/Field/Composition/Select.js +0 -157
  102. package/es/query-form/Field/Composition/Select.js.map +0 -1
  103. package/es/query-form/Field/Composition/SelectInput.js +0 -34
  104. package/es/query-form/Field/Composition/SelectInput.js.map +0 -1
  105. package/es/query-form/Field/Composition/ValueTag.js +0 -162
  106. package/es/query-form/Field/Composition/ValueTag.js.map +0 -1
  107. package/es/query-form/Field/Composition/index.js +0 -337
  108. package/es/query-form/Field/Composition/index.js.map +0 -1
  109. package/es/query-form/Field/Composition/index.less +0 -145
  110. package/es/query-form/Field/Composition/utils.js +0 -169
  111. package/es/query-form/Field/Composition/utils.js.map +0 -1
  112. package/es/query-form-v2/index.less +0 -133
  113. package/es/scroll-bar/Bar.js +0 -91
  114. package/es/scroll-bar/Bar.js.map +0 -1
  115. package/es/scroll-bar/Context.js +0 -13
  116. package/es/scroll-bar/Context.js.map +0 -1
  117. package/es/scroll-bar/ScrollBar.js +0 -97
  118. package/es/scroll-bar/ScrollBar.js.map +0 -1
  119. package/es/scroll-bar/Thumb.js +0 -125
  120. package/es/scroll-bar/Thumb.js.map +0 -1
  121. package/es/scroll-bar/index.js +0 -10
  122. package/es/scroll-bar/index.js.map +0 -1
  123. package/es/scroll-bar/scrollBar.less +0 -59
  124. package/es/scroll-bar/util.js +0 -39
  125. package/es/scroll-bar/util.js.map +0 -1
  126. package/lib/query-form/Field/Composition/SelectInput.d.ts +0 -3
  127. package/lib/query-form/Field/Composition/SelectInput.d.ts.map +0 -1
  128. package/lib/query-form/Field/Composition/SelectInput.js +0 -112
  129. package/lib/query-form/Field/Composition/SelectInput.js.map +0 -1
@@ -1,145 +0,0 @@
1
- @import '../../../style/themes/index';
2
- @import '../../../style/mixins/index';
3
- @import '../../../input/style/mixin';
4
-
5
- .tnt-queryform-composition-input {
6
- // width: 100%;
7
- max-height: 162px;
8
- overflow-x: hidden;
9
- cursor: text;
10
- padding: 2px @padding-xl;
11
- position: relative;
12
- box-sizing: border-box;
13
- background-color: @select-background;
14
- border: @border-width-base @border-style-base @select-border-color;
15
- border-top-width: calc(@border-width-base + 0.02px);
16
- border-radius: @border-radius-base;
17
- outline: none;
18
- transition: all 0.3s @ease-in-out;
19
- user-select: none;
20
- margin-bottom: @margin-sm;
21
-
22
- &-prefix {
23
- position: absolute;
24
- left: @padding-sm;
25
- top: 50%;
26
- transform: translateY(-50%);
27
- i.anticon {
28
- color: #8B919E;
29
- }
30
- }
31
-
32
- &-width {
33
- height: 0;
34
- opacity: 0;
35
- width: auto;
36
- position: absolute;
37
- max-width: 100%;
38
- }
39
-
40
- &-items {
41
- display: flex;
42
- flex-wrap: wrap;
43
- padding: 0;
44
- list-style: none;
45
- margin: 0;
46
- width: 100%;
47
- &-item {
48
- padding: 3px 0;
49
- }
50
- li {
51
- line-height: 1;
52
- }
53
- &-input {
54
- flex: 1;
55
- min-width: 160px;
56
- .inputClass {
57
- background: none;
58
- border: none !important;
59
- outline: none;
60
- box-shadow: none !important;
61
- width: 100% !important;
62
- height: 26px;
63
- line-height: 26px;
64
- padding: 0;
65
- input {
66
- border: none !important;
67
- outline: none !important;
68
- box-shadow: none !important;
69
- height: 26px;
70
- line-height: 26px;
71
- padding: 0;
72
- }
73
- textarea {
74
- padding: 0;
75
- }
76
- }
77
- .inputClass-with-placeholder {
78
- min-width: 398px !important;
79
- }
80
- }
81
- }
82
- &-clear {
83
- position: absolute;
84
- // right: @margin-sm;
85
- right: calc(@margin-sm + 30px);
86
- top: 50%;
87
- transform: translateY(-50%);
88
- display: none;
89
- i.anticon {
90
- color: tint(@bg-color-spotilight, 50%);
91
- }
92
- &:hover {
93
- .anticon {
94
- color: @text-color-secondary !important;
95
- }
96
- }
97
- }
98
- &-search {
99
- position: absolute;
100
- right: 0;
101
- top: 0;
102
- height: 100%;
103
- border-left: @border-width-base @border-style-base @select-border-color;
104
- background-color: @fill-color-quaternary;
105
- display: flex;
106
- width: 30px;
107
- justify-content: center;
108
- align-items: center;
109
- transition: border-color 0.3s @ease-in-out;
110
- cursor: pointer;
111
- &:hover {
112
- background-color: #E6F4FF;
113
- i.anticon {
114
- color: @primary-color;
115
- }
116
- }
117
- }
118
- &:hover,
119
- &:focus,
120
- &:active {
121
- border-color: @primary-color;
122
- box-shadow: 0px 0px 4px 0px rgba(18, 107, 251, 0.10), 0px 0px 5px 0px rgba(18, 107, 251, 0.30);
123
- outline: 0;
124
- .tnt-queryform-composition-input-prefix {
125
- i.anticon {
126
- color: @text-color;
127
- }
128
- }
129
- .tnt-queryform-composition-input-clear {
130
- display: block;
131
- }
132
- .tnt-queryform-composition-input-search {
133
- border-color: @primary-color;
134
- }
135
- }
136
- .ant-tag {
137
- padding: 0 @padding-xs;
138
- border: none;
139
- background: @fill-color-tertiary;
140
- height: 20px;
141
- .ant-tag-addon-wrap {
142
- margin-top: -2px;
143
- }
144
- }
145
- }
@@ -1,169 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.formatLabel = formatLabel;
7
- exports.getLabel = getLabel;
8
- exports.getLabelByValue = getLabelByValue;
9
- exports.highlightSubstring = highlightSubstring;
10
- exports.isInput = void 0;
11
- exports.parseArrayToObject = parseArrayToObject;
12
- exports.parseObjectToArray = parseObjectToArray;
13
- var _flatten2 = _interopRequireDefault(require("lodash/flatten"));
14
- var _isString2 = _interopRequireDefault(require("lodash/isString"));
15
- var _isArray2 = _interopRequireDefault(require("lodash/isArray"));
16
- var _react = _interopRequireDefault(require("react"));
17
- var _moment = _interopRequireDefault(require("moment"));
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
- function highlightSubstring(str, substring) {
20
- var highlighted = "<span class=\"tnt-highlight\">".concat(substring, "</span>");
21
- return str.replace(new RegExp(substring, 'g'), highlighted);
22
- }
23
- function getLabelByValue(_ref) {
24
- var value = _ref.value,
25
- options = _ref.options,
26
- _ref$fieldNames = _ref.fieldNames,
27
- fieldNames = _ref$fieldNames === void 0 ? {
28
- label: 'label',
29
- value: 'value'
30
- } : _ref$fieldNames;
31
- var getLabel = function getLabel(value) {
32
- var target = options === null || options === void 0 ? void 0 : options.find(function (item) {
33
- var valueKey = fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value;
34
- var itemValue = item instanceof Object ? item[valueKey] : item;
35
- return itemValue === value;
36
- });
37
- if (target) {
38
- return target instanceof Object ? target === null || target === void 0 ? void 0 : target[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label] : target;
39
- } else {
40
- return value;
41
- }
42
- };
43
- if ((0, _isArray2["default"])(value)) {
44
- return value.map(getLabel).join(' | ');
45
- } else {
46
- return getLabel(value);
47
- }
48
- }
49
- function formatLabel(reactDom) {
50
- return (0, _flatten2["default"])(_react["default"].Children.map(reactDom.props.children, function (child) {
51
- if (_react["default"].isValidElement(child)) {
52
- return formatLabel(child);
53
- } else if ((0, _isString2["default"])(child)) {
54
- return child;
55
- }
56
- return '';
57
- })).join('');
58
- }
59
- function parseObjectToArray(value, data) {
60
- var _a, _b;
61
- return (_b = (_a = Object.keys(value || {})) === null || _a === void 0 ? void 0 : _a.map(function (key) {
62
- var target = data === null || data === void 0 ? void 0 : data.find(function (item) {
63
- var _a, _b;
64
- return ((_a = item.props) === null || _a === void 0 ? void 0 : _a.name) === key || ((_b = item.props) === null || _b === void 0 ? void 0 : _b.pName) === key;
65
- });
66
- if (!target) return null;
67
- var dataItem = (target === null || target === void 0 ? void 0 : target.props) || {};
68
- var _ref2 = dataItem || {},
69
- _ref2$type = _ref2.type,
70
- type = _ref2$type === void 0 ? 'input' : _ref2$type,
71
- component = _ref2.component,
72
- setLabel = _ref2.setLabel;
73
- if (!type && component && !setLabel) {
74
- console.error('自定义组件需要传入setLabel()方法');
75
- }
76
- return {
77
- key: key,
78
- value: value[key]
79
- };
80
- })) === null || _b === void 0 ? void 0 : _b.filter(function (item) {
81
- return !!item;
82
- });
83
- }
84
- function parseArrayToObject(value) {
85
- return value === null || value === void 0 ? void 0 : value.reduce(function (acc, v) {
86
- acc[v.key] = v.value;
87
- return acc;
88
- }, {});
89
- }
90
- function getLabel(_ref3, data, locale) {
91
- var key = _ref3.key,
92
- value = _ref3.value;
93
- var _a, _b, _c, _d;
94
- var otherTarget = data === null || data === void 0 ? void 0 : data.find(function (item) {
95
- var _a;
96
- return ((_a = item.props) === null || _a === void 0 ? void 0 : _a.pName) === key;
97
- });
98
- if (otherTarget) {
99
- // otherInput
100
- var selectKey = (_a = Object.keys(value || {})) === null || _a === void 0 ? void 0 : _a[0];
101
- if (!selectKey) {
102
- // 17. inputSelect组件,初始值{},展示undefined:undefined
103
- return false;
104
- }
105
- var otherTargetObj = data.find(function (item) {
106
- return item.props.pName === key && item.props.cName === selectKey;
107
- });
108
- if (!otherTargetObj) {
109
- return false;
110
- }
111
- return otherTargetObj.props.title + ':' + (value[selectKey] || '');
112
- }
113
- var target = data === null || data === void 0 ? void 0 : data.find(function (item) {
114
- var _a;
115
- return ((_a = item.props) === null || _a === void 0 ? void 0 : _a.name) === key;
116
- });
117
- if (!target) return null;
118
- var dataItem = (target === null || target === void 0 ? void 0 : target.props) || {};
119
- var _ref4 = dataItem || {},
120
- _ref4$type = _ref4.type,
121
- type = _ref4$type === void 0 ? 'input' : _ref4$type,
122
- setLabel = _ref4.setLabel,
123
- fieldProps = _ref4.props,
124
- propsTitle = _ref4.propsTitle,
125
- title = _ref4.title,
126
- name = _ref4.name;
127
- var _propsTitle = propsTitle || title || name;
128
- var _ref5 = fieldProps || {},
129
- options = _ref5.options,
130
- format = _ref5.format;
131
- var labelValue = value;
132
- if (setLabel) {
133
- // setLabel: 对于自定义组件,无法控制label的显示,可以通过setLabel方法控制
134
- labelValue = setLabel(value);
135
- } else if (options) {
136
- if (type === 'selectInput') {
137
- var _selectKey = (_b = Object.keys(value || {})) === null || _b === void 0 ? void 0 : _b[0];
138
- if (!_selectKey) {
139
- // 17. inputSelect组件,初始值{},展示undefined:undefined
140
- return false;
141
- }
142
- var inputValue = value[_selectKey];
143
- var selectLabel = (_c = options === null || options === void 0 ? void 0 : options.find(function (v) {
144
- return v.value === _selectKey;
145
- })) === null || _c === void 0 ? void 0 : _c.label;
146
- return selectLabel + ':' + inputValue;
147
- }
148
- labelValue = getLabelByValue({
149
- value: value,
150
- options: options,
151
- fieldNames: ((_d = dataItem === null || dataItem === void 0 ? void 0 : dataItem.props) === null || _d === void 0 ? void 0 : _d.fieldNames) || {
152
- label: 'label',
153
- value: 'value'
154
- }
155
- });
156
- } else if (type === 'checkbox') {
157
- labelValue = value ? locale.yes : locale.no;
158
- } else if (type === 'dateRange' && format) {
159
- if (value === null || value === void 0 ? void 0 : value.length) {
160
- labelValue = [(0, _moment["default"])(value === null || value === void 0 ? void 0 : value[0]).format(format), (0, _moment["default"])(value === null || value === void 0 ? void 0 : value[1]).format(format)].join('~');
161
- }
162
- } else if (type === 'date' && format) {
163
- labelValue = value ? (0, _moment["default"])(value).format(format) : undefined;
164
- }
165
- return _propsTitle + ':' + (labelValue === undefined ? '' : labelValue);
166
- }
167
- var isInput = exports.isInput = function isInput(type) {
168
- return ['input', 'string', 'search', 'aloneSearch', 'number', 'inputNumber', 'otherInput'].includes(type);
169
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/utils.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react'\nimport { isArray, isString, flatten } from 'lodash'\nimport moment from 'moment'\n\nexport function highlightSubstring(str, substring) {\n const highlighted = `<span class=\"tnt-highlight\">${substring}</span>`\n return str.replace(new RegExp(substring, 'g'), highlighted)\n}\n\nexport function getLabelByValue({\n value,\n options,\n fieldNames = {\n label: 'label',\n value: 'value',\n },\n}) {\n const getLabel = (value) => {\n const target = options?.find((item) => {\n const valueKey = fieldNames?.value\n const itemValue = item instanceof Object ? item[valueKey] : item\n return itemValue === value\n })\n if (target) {\n return target instanceof Object ? target?.[fieldNames?.label] : target\n } else {\n return value\n }\n }\n if (isArray(value)) {\n return value.map(getLabel).join(' | ')\n } else {\n return getLabel(value)\n }\n}\n\nexport function formatLabel(reactDom) {\n return flatten(\n React.Children.map(reactDom.props.children, (child) => {\n if (React.isValidElement(child)) {\n return formatLabel(child)\n } else if (isString(child)) {\n return child\n }\n return ''\n })\n ).join('')\n}\n\nexport function parseObjectToArray(value, data) {\n return Object.keys(value || {})\n ?.map((key) => {\n const target = data?.find((item) => item.props?.name === key || item.props?.pName === key)\n if (!target) return null\n const dataItem = target?.props || {}\n const { type = 'input', component, setLabel } = dataItem || {}\n if (!type && component && !setLabel) {\n console.error('自定义组件需要传入setLabel()方法')\n }\n return {\n key,\n value: value[key],\n }\n })\n ?.filter((item) => !!item)\n}\n\nexport function parseArrayToObject(value) {\n return value?.reduce((acc, v) => {\n acc[v.key] = v.value\n return acc\n }, {})\n}\n\nexport function getLabel({ key, value }, data, locale) {\n const otherTarget = data?.find((item) => item.props?.pName === key)\n if (otherTarget) {\n // otherInput\n const selectKey = Object.keys(value || {})?.[0]\n if (!selectKey) {\n // 17. inputSelect组件,初始值{},展示undefined:undefined\n return false\n }\n const otherTargetObj = data.find(\n (item) => item.props.pName === key && item.props.cName === selectKey\n )\n if (!otherTargetObj) {\n return false\n }\n return otherTargetObj.props.title + ':' + (value[selectKey] || '')\n }\n\n const target = data?.find((item) => item.props?.name === key)\n if (!target) return null\n const dataItem = target?.props || {}\n const { type = 'input', setLabel, props: fieldProps, propsTitle, title, name } = dataItem || {}\n const _propsTitle = propsTitle || title || name\n const { options, format } = fieldProps || {}\n let labelValue = value\n if (setLabel) {\n // setLabel: 对于自定义组件,无法控制label的显示,可以通过setLabel方法控制\n labelValue = setLabel(value)\n } else if (options) {\n if (type === 'selectInput') {\n const selectKey = Object.keys(value || {})?.[0]\n if (!selectKey) {\n // 17. inputSelect组件,初始值{},展示undefined:undefined\n return false\n }\n const inputValue = value[selectKey]\n const selectLabel = options?.find((v) => v.value === selectKey)?.label\n return selectLabel + ':' + inputValue\n }\n labelValue = getLabelByValue({\n value,\n options,\n fieldNames: dataItem?.props?.fieldNames || {\n label: 'label',\n value: 'value',\n },\n })\n } else if (type === 'checkbox') {\n labelValue = value ? locale.yes : locale.no\n } else if (type === 'dateRange' && format) {\n if (value?.length) {\n labelValue = [moment(value?.[0]).format(format), moment(value?.[1]).format(format)].join('~')\n }\n } else if (type === 'date' && format) {\n labelValue = value ? moment(value).format(format) : undefined\n }\n return _propsTitle + ':' + (labelValue === undefined ? '' : labelValue)\n}\n\nexport const isInput = (type) =>\n ['input', 'string', 'search', 'aloneSearch', 'number', 'inputNumber', 'otherInput'].includes(type)\n"]}
@@ -1,133 +0,0 @@
1
- .tnt-queryform {
2
- display: flex;
3
-
4
- &-extra {
5
- line-height: 32px;
6
- margin-left: 12px;
7
- & > * {
8
- margin-left: 8px;
9
- }
10
- }
11
-
12
- &-actions {
13
- align-items: center;
14
- display: inline-block;
15
- height: 32px;
16
- line-height: 32px;
17
-
18
- & > *:not(.expand-link) {
19
- margin-right: 10px;
20
- }
21
- & > .expand-link {
22
- padding: 0;
23
- margin-right: 0;
24
- }
25
- & > .ant-badge {
26
- .tnt-icon {
27
- margin-right: 8px;
28
- }
29
- }
30
- }
31
-
32
- .ant-form {
33
- display: inline-block;
34
- margin-bottom: 12px;
35
- display: flex;
36
- flex: 1;
37
- &.ant-form-inline {
38
- flex-wrap: unset;
39
- }
40
-
41
- & > div:nth-child(1) {
42
- height: 32px;
43
- overflow: hidden;
44
- .ant-form-item-label {
45
- label {
46
- // bottom: 4px;
47
- }
48
- }
49
- }
50
-
51
- &.expanded {
52
- & > div:nth-child(1) {
53
- height: auto !important;
54
- }
55
- }
56
-
57
- &.showMore {
58
- & > div:nth-child(1) {
59
- .ant-form-item {
60
- margin-bottom: 12px;
61
- }
62
- }
63
- }
64
-
65
- & > div:nth-child(2) {
66
- display: flex;
67
- }
68
-
69
- &.ant-form-inline .ant-form-item {
70
- margin-right: 10px;
71
- display: inline-block;
72
- }
73
-
74
- .ant-form-item-control {
75
- // min-width: 160px;
76
- line-height: unset;
77
- .ant-calendar-picker-input {
78
- padding: 0 11px;
79
- }
80
- .ant-form-item-children {
81
- & > .ant-input,
82
- & > .ant-input-affix-wrapper {
83
- width: 160px;
84
- // width: 200px;
85
- }
86
- }
87
- }
88
- }
89
-
90
- &-drawer {
91
- margin-top: 50px;
92
- &.large-size {
93
- margin-top: 60px;
94
- }
95
-
96
- &.ant-drawer.ant-drawer-open {
97
- .ant-drawer-mask {
98
- opacity: 0;
99
- background: unset;
100
- }
101
- }
102
- .ant-drawer-body {
103
- .ant-form-item {
104
- display: block;
105
- margin-right: 0;
106
- margin-bottom: 20px;
107
- width: 100%;
108
- }
109
- .ant-form-item-label {
110
- display: block;
111
- text-align: left;
112
- line-height: 22px;
113
- margin-bottom: 10px;
114
- }
115
- .ant-form-item-control-wrapper,
116
- .ant-form-item-control,
117
- .ant-calendar-picker,
118
- .ant-input {
119
- min-width: 100%;
120
- width: 100%;
121
- }
122
-
123
- & > .ant-btn {
124
- display: block;
125
- width: 100%;
126
- margin-bottom: 10px;
127
- &.ant-btn-primary {
128
- margin-top: 20px;
129
- }
130
- }
131
- }
132
- }
133
- }
@@ -1,91 +0,0 @@
1
- "use strict";
2
-
3
- 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); }
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports["default"] = void 0;
8
- var _react = _interopRequireWildcard(require("react"));
9
- var _Context = _interopRequireDefault(require("./Context"));
10
- var _Thumb = _interopRequireDefault(require("./Thumb"));
11
- var _util = require("./util");
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
- 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); }
14
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
15
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
16
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
17
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
18
- 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; }
19
- 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; } }
20
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
21
- var _default = exports["default"] = (0, _react.forwardRef)(function (props, ref) {
22
- var _useContext = (0, _react.useContext)(_Context["default"]),
23
- wrapElement = _useContext.wrapElement;
24
- var _useState = (0, _react.useState)(0),
25
- _useState2 = _slicedToArray(_useState, 2),
26
- moveX = _useState2[0],
27
- setMoveX = _useState2[1];
28
- var _useState3 = (0, _react.useState)(0),
29
- _useState4 = _slicedToArray(_useState3, 2),
30
- moveY = _useState4[0],
31
- setMoveY = _useState4[1];
32
- var _useState5 = (0, _react.useState)(0),
33
- _useState6 = _slicedToArray(_useState5, 2),
34
- sizeWidth = _useState6[0],
35
- setSizeWidth = _useState6[1];
36
- var _useState7 = (0, _react.useState)(0),
37
- _useState8 = _slicedToArray(_useState7, 2),
38
- sizeHeight = _useState8[0],
39
- setSizeHeight = _useState8[1];
40
- var _useState9 = (0, _react.useState)(1),
41
- _useState10 = _slicedToArray(_useState9, 2),
42
- ratioX = _useState10[0],
43
- setRatioX = _useState10[1];
44
- var _useState11 = (0, _react.useState)(1),
45
- _useState12 = _slicedToArray(_useState11, 2),
46
- ratioY = _useState12[0],
47
- setRatioY = _useState12[1];
48
- (0, _react.useImperativeHandle)(ref, function () {
49
- return {
50
- update: update,
51
- handleScroll: handleScroll
52
- };
53
- });
54
- function handleScroll() {
55
- var wrap = wrapElement.current;
56
- if (!wrap) return;
57
- var offsetHeight = wrap.offsetHeight - _util.GAP;
58
- var offsetWidth = wrap.offsetWidth - _util.GAP;
59
- setMoveY(wrap.scrollTop * 100 / offsetHeight * ratioY);
60
- setMoveX(wrap.scrollLeft * 100 / offsetWidth * ratioX);
61
- }
62
- function update() {
63
- var wrap = wrapElement.current;
64
- if (!wrap) return;
65
- // 滚动窗口的高度
66
- var offsetHeight = wrap.offsetHeight - _util.GAP;
67
- var offsetWidth = wrap.offsetWidth - _util.GAP;
68
- // 滚动条的逻辑高度
69
- var originalHeight = Math.pow(offsetHeight, 2) / wrap.scrollHeight;
70
- var originalWidth = Math.pow(offsetWidth, 2) / wrap.scrollWidth;
71
- // 滚动条的实际高度,因为如果内容太长会导致滚动条非常短,可能难以点击拖拽,所以设置了最小高度
72
- var height = Math.max(originalHeight, props.minSize);
73
- var width = Math.max(originalWidth, props.minSize);
74
- setRatioY(originalHeight / (offsetHeight - originalHeight) / (height / (offsetHeight - height)));
75
- setRatioX(originalWidth / (offsetWidth - originalWidth) / (width / (offsetWidth - width)));
76
- setSizeHeight(height + _util.GAP < offsetHeight ? height : 0);
77
- setSizeWidth(width + _util.GAP < offsetWidth ? width : 0);
78
- }
79
- return _react["default"].createElement(_react["default"].Fragment, null, _react["default"].createElement(_Thumb["default"], {
80
- always: props.always,
81
- move: moveX,
82
- size: sizeWidth,
83
- ratio: ratioX
84
- }), _react["default"].createElement(_Thumb["default"], {
85
- always: props.always,
86
- move: moveY,
87
- size: sizeHeight,
88
- ratio: ratioY,
89
- vertical: true
90
- }));
91
- });
@@ -1 +0,0 @@
1
- {"version":3,"file":"Bar.js","sourceRoot":"","sources":["../../src/scroll-bar/Bar.js"],"names":[],"mappings":"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","sourcesContent":["import React, { forwardRef, useContext, useImperativeHandle, useState } from 'react'\nimport Context from './Context'\nimport Thumb from './Thumb'\nimport { GAP } from './util'\n\nexport default forwardRef((props, ref) => {\n const { wrapElement } = useContext(Context)\n\n const [moveX, setMoveX] = useState(0)\n const [moveY, setMoveY] = useState(0)\n const [sizeWidth, setSizeWidth] = useState(0)\n const [sizeHeight, setSizeHeight] = useState(0)\n const [ratioX, setRatioX] = useState(1)\n const [ratioY, setRatioY] = useState(1)\n\n useImperativeHandle(ref, () => ({\n update,\n handleScroll,\n }))\n\n function handleScroll() {\n const wrap = wrapElement.current\n if (!wrap) return\n const offsetHeight = wrap.offsetHeight - GAP\n const offsetWidth = wrap.offsetWidth - GAP\n setMoveY(((wrap.scrollTop * 100) / offsetHeight) * ratioY)\n setMoveX(((wrap.scrollLeft * 100) / offsetWidth) * ratioX)\n }\n\n function update() {\n const wrap = wrapElement.current\n if (!wrap) return\n // 滚动窗口的高度\n const offsetHeight = wrap.offsetHeight - GAP\n const offsetWidth = wrap.offsetWidth - GAP\n // 滚动条的逻辑高度\n const originalHeight = offsetHeight ** 2 / wrap.scrollHeight\n const originalWidth = offsetWidth ** 2 / wrap.scrollWidth\n // 滚动条的实际高度,因为如果内容太长会导致滚动条非常短,可能难以点击拖拽,所以设置了最小高度\n const height = Math.max(originalHeight, props.minSize)\n const width = Math.max(originalWidth, props.minSize)\n\n setRatioY(originalHeight / (offsetHeight - originalHeight) / (height / (offsetHeight - height)))\n setRatioX(originalWidth / (offsetWidth - originalWidth) / (width / (offsetWidth - width)))\n setSizeHeight(height + GAP < offsetHeight ? height : 0)\n setSizeWidth(width + GAP < offsetWidth ? width : 0)\n }\n\n return (\n <>\n <Thumb always={props.always} move={moveX} size={sizeWidth} ratio={ratioX} />\n <Thumb always={props.always} move={moveY} size={sizeHeight} ratio={ratioY} vertical />\n </>\n )\n})\n"]}
@@ -1,13 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
- var Context = _react["default"].createContext({
10
- scrollbarElement: null,
11
- wrapElement: null
12
- });
13
- var _default = exports["default"] = Context;
@@ -1 +0,0 @@
1
- {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../src/scroll-bar/Context.js"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC;IAClC,gBAAgB,EAAE,IAAI;IACtB,WAAW,EAAE,IAAI;CAClB,CAAC,CAAA;AAEF,eAAe,OAAO,CAAA","sourcesContent":["import React from 'react'\n\nconst Context = React.createContext({\n scrollbarElement: null,\n wrapElement: null,\n})\n\nexport default Context\n"]}