tntd 2.7.16 → 2.7.18
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/es/handle/handle.js +102 -0
- package/es/handle/handle.js.map +1 -0
- package/es/mention/index.js +4 -0
- package/es/mention/index.js.map +1 -0
- package/es/modal/modal.js +6 -6
- package/es/modal/modal.js.map +1 -1
- package/es/steps/style/nav.less +1 -1
- package/es/table/table.js +27 -9
- package/es/table/table.js.map +1 -1
- package/es/tabs/tabs.js +3 -29
- package/es/tabs/tabs.js.map +1 -1
- package/es/tntd-form/TntdForm/components/Item.js +55 -0
- package/es/tntd-form/TntdForm/components/Item.js.map +1 -0
- package/es/tntd-form/TntdForm/components/ItemComp.js +186 -0
- package/es/tntd-form/TntdForm/components/ItemComp.js.map +1 -0
- package/es/tntd-form/TntdForm/components/List.js +102 -0
- package/es/tntd-form/TntdForm/components/List.js.map +1 -0
- package/es/tntd-form/TntdForm/index.js +55 -0
- package/es/tntd-form/TntdForm/index.js.map +1 -0
- package/es/tntd-form/TntdForm/interface.js +1 -0
- package/es/tntd-form/TntdForm/interface.js.map +1 -0
- package/es/tntd-form/TntdForm/store.js +2 -0
- package/es/tntd-form/TntdForm/store.js.map +1 -0
- package/es/tntd-form/TntdForm/utils.js +219 -0
- package/es/tntd-form/TntdForm/utils.js.map +1 -0
- package/es/utils/lang.js +1 -0
- package/es/utils/lang.js.map +1 -1
- package/lib/handle/handle.d.ts +3 -0
- package/lib/handle/handle.d.ts.map +1 -0
- package/lib/handle/handle.js +130 -0
- package/lib/handle/handle.js.map +1 -0
- package/lib/mention/index.js +25 -0
- package/lib/modal/modal.d.ts +11 -10
- package/lib/modal/modal.d.ts.map +1 -1
- package/lib/modal/modal.js +25 -14
- package/lib/modal/modal.js.map +1 -1
- package/lib/steps/style/nav.less +1 -1
- package/lib/table/table.d.ts +1 -1
- package/lib/table/table.d.ts.map +1 -1
- package/lib/table/table.js +27 -9
- package/lib/table/table.js.map +1 -1
- package/lib/tabs/tabs.d.ts.map +1 -1
- package/lib/tabs/tabs.js +3 -29
- package/lib/tabs/tabs.js.map +1 -1
- package/lib/tntd-form/TntdForm/components/Item.js +65 -0
- package/lib/tntd-form/TntdForm/components/ItemComp.js +215 -0
- package/lib/tntd-form/TntdForm/components/List.js +123 -0
- package/lib/tntd-form/TntdForm/index.js +72 -0
- package/lib/tntd-form/TntdForm/interface.js +5 -0
- package/lib/tntd-form/TntdForm/store.js +10 -0
- package/lib/tntd-form/TntdForm/utils.js +239 -0
- package/lib/utils/lang.d.ts.map +1 -1
- package/lib/utils/lang.js +5 -1
- package/lib/utils/lang.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.validateFields = exports.recursionSort = exports.recursionCheck = exports.isValidKey = exports.handleCheckItem = exports.getNames = exports.getInitValue = exports.getFieldsValue = exports.getFieldValue = void 0;
|
|
7
|
+
function _toArray(arr) { return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest(); }
|
|
8
|
+
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."); }
|
|
9
|
+
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); }
|
|
10
|
+
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; }
|
|
11
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
12
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
13
|
+
var isValidKey = function isValidKey(key, object) {
|
|
14
|
+
return key in object;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* 将xx.xx.xx 转换为数组
|
|
18
|
+
* @param {*} name
|
|
19
|
+
* @returns
|
|
20
|
+
*/
|
|
21
|
+
exports.isValidKey = isValidKey;
|
|
22
|
+
var getNames = function getNames(name) {
|
|
23
|
+
var attrs = [];
|
|
24
|
+
if (Array.isArray(name)) {
|
|
25
|
+
var _name = _toArray(name),
|
|
26
|
+
str = _name[0],
|
|
27
|
+
rest = _name.slice(1);
|
|
28
|
+
attrs = str.split('.').concat(rest);
|
|
29
|
+
} else {
|
|
30
|
+
attrs = typeof name === 'string' ? name.split('.') : [];
|
|
31
|
+
}
|
|
32
|
+
return attrs;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* 对数据进行校验
|
|
36
|
+
* @param {*} list
|
|
37
|
+
* @param {*} dataLevel
|
|
38
|
+
* @param {*} formData
|
|
39
|
+
* @returns
|
|
40
|
+
*/
|
|
41
|
+
exports.getNames = getNames;
|
|
42
|
+
var recursionCheck = function recursionCheck(list, dataLevel, formData) {
|
|
43
|
+
var errorList = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
|
|
44
|
+
try {
|
|
45
|
+
if (Array.isArray(list)) {
|
|
46
|
+
list.forEach(function (item) {
|
|
47
|
+
var key = item.name;
|
|
48
|
+
var attrs = Object.keys(formData[key]);
|
|
49
|
+
attrs.forEach(function (attr) {
|
|
50
|
+
var _a;
|
|
51
|
+
var error = (_a = formData[item.name][attr]) === null || _a === void 0 ? void 0 : _a.checkItem();
|
|
52
|
+
if (error) {
|
|
53
|
+
errorList.push("".concat([item.name + '.' + attr], ":"), error);
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
if (dataLevel[key]) {
|
|
57
|
+
recursionCheck(dataLevel[key], dataLevel, formData, errorList);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
return errorList;
|
|
62
|
+
} catch (e) {
|
|
63
|
+
if (typeof e === 'string') {
|
|
64
|
+
throw e.toUpperCase();
|
|
65
|
+
} else if (e instanceof Error) {
|
|
66
|
+
throw e.message;
|
|
67
|
+
}
|
|
68
|
+
throw e;
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* 将数据进行排序
|
|
73
|
+
* @param {*} list
|
|
74
|
+
* @param {*} dataLevel
|
|
75
|
+
* @param {*} formData
|
|
76
|
+
* @param {*} errorList
|
|
77
|
+
* @returns
|
|
78
|
+
*/
|
|
79
|
+
exports.recursionCheck = recursionCheck;
|
|
80
|
+
var recursionSort = function recursionSort(list, dataLevel, formData) {
|
|
81
|
+
try {
|
|
82
|
+
if (Array.isArray(list)) {
|
|
83
|
+
var values = list.reduce(function (total, item, index) {
|
|
84
|
+
var attrObj = {};
|
|
85
|
+
var key = item.name;
|
|
86
|
+
var prefixs = key.split('.');
|
|
87
|
+
var attrs = formData[key] ? Object.keys(formData[key]) : [];
|
|
88
|
+
attrs.forEach(function (attr) {
|
|
89
|
+
var _a;
|
|
90
|
+
attrObj[attr] = (_a = formData[key][attr]) === null || _a === void 0 ? void 0 : _a.value;
|
|
91
|
+
});
|
|
92
|
+
var children = [];
|
|
93
|
+
if (dataLevel[key]) {
|
|
94
|
+
children = recursionSort(dataLevel[key], dataLevel, formData);
|
|
95
|
+
}
|
|
96
|
+
var len = prefixs.length - 2;
|
|
97
|
+
if (total[prefixs[len]]) {
|
|
98
|
+
total[prefixs[len]][index] = Object.assign(Object.assign({}, attrObj), children || []);
|
|
99
|
+
} else {
|
|
100
|
+
total[prefixs[len]] = [Object.assign(Object.assign({}, attrObj), children || [])];
|
|
101
|
+
}
|
|
102
|
+
return total;
|
|
103
|
+
}, {});
|
|
104
|
+
return values;
|
|
105
|
+
}
|
|
106
|
+
} catch (e) {
|
|
107
|
+
if (typeof e === 'string') {
|
|
108
|
+
console.error(e.toUpperCase());
|
|
109
|
+
throw e.toUpperCase();
|
|
110
|
+
} else if (e instanceof Error) {
|
|
111
|
+
console.error(e.message);
|
|
112
|
+
throw e.message;
|
|
113
|
+
}
|
|
114
|
+
throw e;
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
/**
|
|
118
|
+
* 获取form表单的value
|
|
119
|
+
* @param {*} formCurrent
|
|
120
|
+
* @returns
|
|
121
|
+
*/
|
|
122
|
+
exports.recursionSort = recursionSort;
|
|
123
|
+
var getFieldsValue = function getFieldsValue(formCurrent) {
|
|
124
|
+
try {
|
|
125
|
+
var formData = formCurrent.formData,
|
|
126
|
+
dataLevel = formCurrent.dataLevel;
|
|
127
|
+
var firstKey = '';
|
|
128
|
+
// 这里不直接用Object.keys的原因是Object.keys并不能保证一定是按照属性顺序
|
|
129
|
+
for (var i in dataLevel) {
|
|
130
|
+
if (Object.prototype.hasOwnProperty.call(dataLevel, i)) {
|
|
131
|
+
firstKey = i;
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
var recursionStart = dataLevel[firstKey];
|
|
136
|
+
var values = recursionSort(recursionStart, dataLevel, formData);
|
|
137
|
+
return values;
|
|
138
|
+
} catch (e) {
|
|
139
|
+
if (typeof e === 'string') {
|
|
140
|
+
console.error(e.toUpperCase());
|
|
141
|
+
return e.toUpperCase();
|
|
142
|
+
} else if (e instanceof Error) {
|
|
143
|
+
console.error(e.message);
|
|
144
|
+
return e.message;
|
|
145
|
+
}
|
|
146
|
+
return e;
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* 获取form表单的value
|
|
151
|
+
* @param {*} formCurrent
|
|
152
|
+
* @returns
|
|
153
|
+
*/
|
|
154
|
+
exports.getFieldsValue = getFieldsValue;
|
|
155
|
+
var getFieldValue = function getFieldValue(formCurrent, field) {
|
|
156
|
+
var _a, _b;
|
|
157
|
+
try {
|
|
158
|
+
var formData = formCurrent.formData;
|
|
159
|
+
return formData && ((_b = (_a = formData === null || formData === void 0 ? void 0 : formData[field[0]]) === null || _a === void 0 ? void 0 : _a[field[1]]) === null || _b === void 0 ? void 0 : _b.value);
|
|
160
|
+
} catch (e) {
|
|
161
|
+
if (typeof e === 'string') {
|
|
162
|
+
return e.toUpperCase();
|
|
163
|
+
} else if (e instanceof Error) {
|
|
164
|
+
return e.message;
|
|
165
|
+
}
|
|
166
|
+
return e;
|
|
167
|
+
}
|
|
168
|
+
};
|
|
169
|
+
/**
|
|
170
|
+
* 提交时候校验的方法
|
|
171
|
+
* @param {*} formCurrent
|
|
172
|
+
* @returns
|
|
173
|
+
*/
|
|
174
|
+
exports.getFieldValue = getFieldValue;
|
|
175
|
+
var validateFields = function validateFields(formCurrent) {
|
|
176
|
+
return new Promise(function (resolve) {
|
|
177
|
+
var formData = formCurrent.formData,
|
|
178
|
+
dataLevel = formCurrent.dataLevel;
|
|
179
|
+
var firstKey = '';
|
|
180
|
+
// 这里不直接用Object.keys的原因是Object.keys并不能保证一定是按照属性顺序
|
|
181
|
+
for (var i in dataLevel) {
|
|
182
|
+
if (Object.prototype.hasOwnProperty.call(dataLevel, i)) {
|
|
183
|
+
firstKey = i;
|
|
184
|
+
break;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
var recursionStart = dataLevel[firstKey];
|
|
188
|
+
var errorList = recursionCheck(recursionStart, dataLevel, formData);
|
|
189
|
+
if (Array.isArray(errorList) && errorList.length) {
|
|
190
|
+
console.error(JSON.stringify(errorList));
|
|
191
|
+
} else {
|
|
192
|
+
resolve(recursionSort(recursionStart, dataLevel, formData));
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
};
|
|
196
|
+
/** 获取初始化的值 */
|
|
197
|
+
exports.validateFields = validateFields;
|
|
198
|
+
var getInitValue = function getInitValue(initialValues, names) {
|
|
199
|
+
var keys = [];
|
|
200
|
+
if (Array.isArray(names)) {
|
|
201
|
+
var _names = _toArray(names),
|
|
202
|
+
str = _names[0],
|
|
203
|
+
rest = _names.slice(1);
|
|
204
|
+
keys = str.split('.').concat(rest);
|
|
205
|
+
}
|
|
206
|
+
if (Array.isArray(keys) && !!keys.length) {
|
|
207
|
+
keys.forEach(function (i) {
|
|
208
|
+
initialValues = ['', null, undefined].includes(initialValues === null || initialValues === void 0 ? void 0 : initialValues[i]) ? undefined : initialValues === null || initialValues === void 0 ? void 0 : initialValues[i];
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
return initialValues;
|
|
212
|
+
};
|
|
213
|
+
/** 校验表单是否正确的方法 */
|
|
214
|
+
exports.getInitValue = getInitValue;
|
|
215
|
+
var handleCheckItem = function handleCheckItem(value, rules) {
|
|
216
|
+
try {
|
|
217
|
+
if (Array.isArray(rules)) {
|
|
218
|
+
rules.forEach(function (i) {
|
|
219
|
+
// @ts-ignore
|
|
220
|
+
if (i.required && ['', null, undefined].includes(value)) {
|
|
221
|
+
throw new Error((i === null || i === void 0 ? void 0 : i.message) || 'error');
|
|
222
|
+
}
|
|
223
|
+
if (i === null || i === void 0 ? void 0 : i.validator) {
|
|
224
|
+
i.validator(rules, value, function (_errorMsg) {
|
|
225
|
+
throw new Error(_errorMsg);
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
return;
|
|
231
|
+
} catch (e) {
|
|
232
|
+
if (typeof e === 'string') {
|
|
233
|
+
return e.toUpperCase();
|
|
234
|
+
} else if (e instanceof Error) {
|
|
235
|
+
return e.message;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
exports.handleCheckItem = handleCheckItem;
|
package/lib/utils/lang.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lang.d.ts","sourceRoot":"","sources":["../../src/utils/lang.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lang.d.ts","sourceRoot":"","sources":["../../src/utils/lang.js"],"names":[],"mappings":"AAiGO,8CAiCN"}
|
package/lib/utils/lang.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.doUpperTitle = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
4
8
|
const prev_locale_1 = require("../prev-locale");
|
|
5
9
|
const prepositions = [
|
|
6
10
|
'about',
|
|
@@ -105,7 +109,7 @@ const doUpperTitle = (label) => {
|
|
|
105
109
|
return titleCaseUpper(label);
|
|
106
110
|
}
|
|
107
111
|
else {
|
|
108
|
-
if (
|
|
112
|
+
if (react_1.default.isValidElement(label)) {
|
|
109
113
|
if (((_a = label === null || label === void 0 ? void 0 : label.props) === null || _a === void 0 ? void 0 : _a.children) && Array.isArray((_b = label === null || label === void 0 ? void 0 : label.props) === null || _b === void 0 ? void 0 : _b.children)) {
|
|
110
114
|
return Object.assign(Object.assign({}, label), { props: Object.assign(Object.assign({}, label.props), { children: (_d = (_c = label === null || label === void 0 ? void 0 : label.props) === null || _c === void 0 ? void 0 : _c.children) === null || _d === void 0 ? void 0 : _d.map((subLabel) => {
|
|
111
115
|
return titleCaseUpper(subLabel);
|
package/lib/utils/lang.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lang.js","sourceRoot":"","sources":["../../src/utils/lang.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lang.js","sourceRoot":"","sources":["../../src/utils/lang.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react'\nimport { getLanguage } from '../prev-locale'\n\nconst prepositions = [\n 'about',\n 'above',\n 'across',\n 'after',\n 'against',\n 'along',\n 'among',\n 'around',\n 'as',\n 'at',\n 'before',\n 'behind',\n 'below',\n 'beneath',\n 'beside',\n 'between',\n 'beyond',\n 'by',\n 'down',\n 'during',\n 'except',\n 'for',\n 'from',\n 'in',\n 'inside',\n 'into',\n 'like',\n 'near',\n 'of',\n 'off',\n 'on',\n 'onto',\n 'out',\n 'outside',\n 'over',\n 'past',\n 'round',\n 'since',\n 'through',\n 'throughout',\n 'to',\n 'toward',\n 'under',\n 'underneath',\n 'until',\n 'up',\n 'upon',\n 'with',\n 'within',\n 'without',\n 'or'\n]\n\nconst articles = ['the', 'a', 'an']\n\nconst titleHandle = (str, upperCaseIgnore) => {\n const words = str.split(' ')\n const capitalizedWords = words.map((word, i) => {\n const lowerCaseWord = word.toLowerCase()\n let ignoreList = prepositions.concat(articles)\n if (upperCaseIgnore?.length) {\n ignoreList = ignoreList.concat(upperCaseIgnore)\n ignoreList = Array.from(new Set(ignoreList))\n }\n if (ignoreList.includes(lowerCaseWord) && i !== 0) {\n return lowerCaseWord\n } else {\n return word.charAt(0).toUpperCase() + word.slice(1)\n }\n })\n return capitalizedWords.join(' ')\n}\n\n// 表头转换为首字母大写\nconst titleCaseUpper = (str, upperCaseIgnore) => {\n if (!str) {\n return str\n }\n if (typeof str === 'string') {\n // 有斜杠根据斜杠划分\n if (str?.includes('/')) {\n const parWords = str.split('/')\n return parWords\n .map((str1) => {\n return titleHandle(str1, upperCaseIgnore)\n })\n .join('/')\n }\n return titleHandle(str, upperCaseIgnore)\n }\n return str\n}\n\nexport const doUpperTitle = (label) => {\n if (getLanguage() === 'cn') {\n return label\n }\n if (!label) {\n return label\n }\n if (typeof label === 'string') {\n return titleCaseUpper(label);\n } else {\n if (React.isValidElement(label)) {\n if (label?.props?.children && Array.isArray(label?.props?.children)) {\n return {\n ...label,\n props: {\n ...label.props,\n children: label?.props?.children?.map((subLabel) => {\n return titleCaseUpper(subLabel)\n }),\n },\n }\n } else if (typeof label?.props?.children === 'string') {\n label = {\n ...label,\n props: {\n ...label.props,\n children: titleCaseUpper(label?.props?.children),\n },\n }\n }\n }\n }\n return label\n};\n"]}
|