@hw-component/form 0.0.5-beta-v9 → 0.0.6-beta-v1

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 (115) hide show
  1. package/es/CheckboxGroup/CheckBox/index.js +42 -0
  2. package/es/CheckboxGroup/hooks.js +120 -0
  3. package/es/CheckboxGroup/index.js +93 -0
  4. package/es/DialogForm/DrawerForm/Footer.js +27 -0
  5. package/es/DialogForm/DrawerForm/Title.js +21 -0
  6. package/es/DialogForm/DrawerForm/index.js +137 -0
  7. package/es/DialogForm/ModalForm.js +118 -0
  8. package/es/DialogForm/hooks.js +148 -0
  9. package/es/Form/Context/FormConfigProvider.js +24 -3
  10. package/es/Form/FormItem/BasicItem.js +92 -0
  11. package/es/Form/FormItem/Helper.js +26 -0
  12. package/es/Form/FormItem/RegularFormItem.js +24 -0
  13. package/es/Form/FormItem/UpFormItem.js +42 -0
  14. package/es/Form/FormItem/hooks.js +38 -0
  15. package/es/Form/FormItem/index.js +21 -0
  16. package/es/Form/InitSet.js +16 -0
  17. package/es/Form/Label.js +49 -0
  18. package/es/Form/config.js +45 -0
  19. package/es/Form/hooks/index.js +157 -0
  20. package/es/Form/hooks/useDefaultRender.js +48 -0
  21. package/es/Form/hooks/useHForm.js +193 -0
  22. package/es/Form/hooks/useInitConfigData.js +169 -0
  23. package/es/Form/index.js +102 -0
  24. package/es/Input/ButtonInput.js +94 -0
  25. package/es/Input/ColorInput/Picker.js +22 -0
  26. package/es/Input/ColorInput/data.js +5 -0
  27. package/es/Input/ColorInput/index.js +94 -0
  28. package/es/Input/InputNumber.js +29 -0
  29. package/es/Input/SelectInput.js +95 -0
  30. package/es/Input/defaultConfig.js +11 -0
  31. package/es/Input/index.js +23 -0
  32. package/es/PageHandler/ErrorComponent.js +38 -0
  33. package/es/PageHandler/LoadingComponent.js +19 -0
  34. package/es/PageHandler/index.js +26 -0
  35. package/es/RadioGroup/index.js +58 -0
  36. package/es/Select/index.js +5 -5
  37. package/es/Submit/index.js +54 -0
  38. package/es/Switch/index.js +59 -0
  39. package/es/TDPicker/RangePicker.js +125 -0
  40. package/es/TDPicker/TimePicker.js +44 -0
  41. package/es/TDPicker/hooks.js +132 -0
  42. package/es/TDPicker/index.js +47 -0
  43. package/es/TextArea/index.js +30 -0
  44. package/es/Upload/Btn.js +36 -0
  45. package/es/Upload/MediaTypeEle/TypeEle.js +42 -0
  46. package/es/Upload/MediaTypeEle/index.js +36 -0
  47. package/es/Upload/Preview/index.js +22 -0
  48. package/es/Upload/UrlUpload/index.js +133 -0
  49. package/es/Upload/enums.js +10 -0
  50. package/es/Upload/hooks/change.js +107 -0
  51. package/es/Upload/hooks/customRequest.js +131 -0
  52. package/es/Upload/hooks/propsMaker.js +36 -0
  53. package/es/Upload/index.js +145 -0
  54. package/es/Upload/util.js +17 -1
  55. package/es/index.d.ts +23 -0
  56. package/es/index.js +29 -3
  57. package/lib/CheckboxGroup/CheckBox/index.js +45 -0
  58. package/lib/CheckboxGroup/hooks.js +121 -0
  59. package/lib/CheckboxGroup/index.js +96 -0
  60. package/lib/DialogForm/DrawerForm/Footer.js +30 -0
  61. package/lib/DialogForm/DrawerForm/Title.js +24 -0
  62. package/lib/DialogForm/DrawerForm/index.js +140 -0
  63. package/lib/DialogForm/ModalForm.js +121 -0
  64. package/lib/DialogForm/hooks.js +152 -0
  65. package/lib/Form/Context/FormConfigProvider.js +26 -2
  66. package/lib/Form/FormItem/BasicItem.js +95 -0
  67. package/lib/Form/FormItem/Helper.js +29 -0
  68. package/lib/Form/FormItem/RegularFormItem.js +27 -0
  69. package/lib/Form/FormItem/UpFormItem.js +45 -0
  70. package/lib/Form/FormItem/hooks.js +41 -0
  71. package/lib/Form/FormItem/index.js +24 -0
  72. package/lib/Form/InitSet.js +19 -0
  73. package/lib/Form/Label.js +52 -0
  74. package/lib/Form/config.js +49 -0
  75. package/lib/Form/hooks/index.js +161 -0
  76. package/lib/Form/hooks/useDefaultRender.js +49 -0
  77. package/lib/Form/hooks/useHForm.js +196 -0
  78. package/lib/Form/hooks/useInitConfigData.js +172 -0
  79. package/lib/Form/index.js +105 -0
  80. package/lib/Input/ButtonInput.js +97 -0
  81. package/lib/Input/ColorInput/Picker.js +25 -0
  82. package/lib/Input/ColorInput/data.js +6 -0
  83. package/lib/Input/ColorInput/index.js +97 -0
  84. package/lib/Input/InputNumber.js +32 -0
  85. package/lib/Input/SelectInput.js +99 -0
  86. package/lib/Input/defaultConfig.js +13 -0
  87. package/lib/Input/index.js +26 -0
  88. package/lib/PageHandler/ErrorComponent.js +41 -0
  89. package/lib/PageHandler/LoadingComponent.js +22 -0
  90. package/lib/PageHandler/index.js +29 -0
  91. package/lib/RadioGroup/index.js +61 -0
  92. package/lib/Select/index.js +2 -2
  93. package/lib/Submit/index.js +57 -0
  94. package/lib/Switch/index.js +62 -0
  95. package/lib/TDPicker/RangePicker.js +128 -0
  96. package/lib/TDPicker/TimePicker.js +47 -0
  97. package/lib/TDPicker/hooks.js +139 -0
  98. package/lib/TDPicker/index.js +50 -0
  99. package/lib/TextArea/index.js +33 -0
  100. package/lib/Upload/Btn.js +39 -0
  101. package/lib/Upload/MediaTypeEle/TypeEle.js +45 -0
  102. package/lib/Upload/MediaTypeEle/index.js +39 -0
  103. package/lib/Upload/Preview/index.js +25 -0
  104. package/lib/Upload/UrlUpload/index.js +136 -0
  105. package/lib/Upload/enums.js +9 -0
  106. package/lib/Upload/hooks/change.js +108 -0
  107. package/lib/Upload/hooks/customRequest.js +132 -0
  108. package/lib/Upload/hooks/propsMaker.js +37 -0
  109. package/lib/Upload/index.js +148 -0
  110. package/lib/Upload/util.js +19 -0
  111. package/lib/index.d.ts +23 -0
  112. package/lib/index.js +51 -2
  113. package/package.json +1 -1
  114. package/src/components/Input/ColorInput/index.tsx +1 -1
  115. package/src/components/index.tsx +28 -2
@@ -0,0 +1,136 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
6
+ var _toConsumableArray = require('@babel/runtime-corejs3/helpers/toConsumableArray');
7
+ var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
8
+ var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
9
+ require('core-js/modules/es.object.to-string.js');
10
+ require('core-js/modules/es.regexp.to-string.js');
11
+ require('core-js/modules/es.string.trim.js');
12
+ require('core-js/modules/es.array.map.js');
13
+ require('core-js/modules/es.array.from.js');
14
+ require('core-js/modules/es.string.iterator.js');
15
+ require('core-js/modules/es.function.name.js');
16
+ require('core-js/modules/es.object.keys.js');
17
+ require('core-js/modules/es.symbol.js');
18
+ require('core-js/modules/es.array.filter.js');
19
+ require('core-js/modules/es.object.get-own-property-descriptor.js');
20
+ require('core-js/modules/web.dom-collections.for-each.js');
21
+ require('core-js/modules/es.object.get-own-property-descriptors.js');
22
+ var jsxRuntime = require('react/jsx-runtime');
23
+ var antd = require('antd');
24
+ var Input = require('antd/es/input/Input');
25
+ var index = require('../index.js');
26
+ var TypeEle = require('../MediaTypeEle/TypeEle.js');
27
+ var React = require('react');
28
+
29
+ var _excluded = ["placeholder", "value", "onChange", "mediaType"];
30
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
31
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
32
+ var Index = function Index(_ref) {
33
+ var _ref$placeholder = _ref.placeholder,
34
+ placeholder = _ref$placeholder === void 0 ? "请输入文件地址" : _ref$placeholder,
35
+ _ref$value = _ref.value,
36
+ value = _ref$value === void 0 ? [] : _ref$value,
37
+ onChange = _ref.onChange,
38
+ mediaType = _ref.mediaType,
39
+ props = _objectWithoutProperties(_ref, _excluded);
40
+ var _useState = React.useState(""),
41
+ _useState2 = _slicedToArray(_useState, 2),
42
+ url = _useState2[0],
43
+ setUrl = _useState2[1];
44
+ var _useState3 = React.useState(false),
45
+ _useState4 = _slicedToArray(_useState3, 2),
46
+ load = _useState4[0],
47
+ setLoad = _useState4[1];
48
+ var ref = React.useRef(null);
49
+ var onReady = function onReady() {
50
+ var newFileList = _toConsumableArray(value);
51
+ newFileList.push({
52
+ url: url,
53
+ uid: new Date().valueOf().toString(),
54
+ name: url,
55
+ fileName: url,
56
+ thumbUrl: url,
57
+ response: {
58
+ url: url
59
+ }
60
+ });
61
+ onChange === null || onChange === void 0 || onChange(newFileList);
62
+ setUrl("");
63
+ setLoad(false);
64
+ };
65
+ var onError = function onError() {
66
+ antd.message.error("文件错误!");
67
+ setUrl("");
68
+ setLoad(false);
69
+ };
70
+ var onBlur = function onBlur(e) {
71
+ if (e.target.value.trim() === "") {
72
+ return;
73
+ }
74
+ setLoad(true);
75
+ };
76
+ var onPaste = function onPaste(e) {
77
+ var _ref$current;
78
+ var files = e.clipboardData.files;
79
+ if (!files.length) {
80
+ return;
81
+ }
82
+ e.preventDefault();
83
+ var newFileList = Array.from(files).map(function (item) {
84
+ var name = item.name,
85
+ size = item.size,
86
+ type = item.type;
87
+ return {
88
+ name: name,
89
+ size: size,
90
+ status: "uploading",
91
+ uid: new Date().valueOf().toString(),
92
+ originFileObj: item,
93
+ type: type
94
+ };
95
+ });
96
+ (_ref$current = ref.current) === null || _ref$current === void 0 || _ref$current.change({
97
+ fileList: newFileList,
98
+ file: newFileList[0]
99
+ });
100
+ setUrl("");
101
+ setLoad(false);
102
+ };
103
+ return jsxRuntime.jsxs(antd.Space, {
104
+ direction: "vertical",
105
+ style: {
106
+ width: "100%"
107
+ },
108
+ size: "middle",
109
+ children: [jsxRuntime.jsx(Input, {
110
+ placeholder: placeholder,
111
+ onBlur: onBlur,
112
+ value: url,
113
+ onPaste: onPaste,
114
+ onChange: function onChange(e) {
115
+ setUrl(e.target.value);
116
+ }
117
+ }), jsxRuntime.jsx(index.default, _objectSpread(_objectSpread({}, props), {}, {
118
+ ref: ref,
119
+ value: value,
120
+ onChange: onChange
121
+ })), load && jsxRuntime.jsx("div", {
122
+ style: {
123
+ display: "none"
124
+ },
125
+ children: jsxRuntime.jsx(TypeEle.default, {
126
+ url: url,
127
+ mediaType: mediaType,
128
+ onReady: onReady,
129
+ onError: onError
130
+ })
131
+ })]
132
+ });
133
+ };
134
+
135
+ exports.default = Index;
136
+ // powered by h
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ exports.MediaTypeEnum = void 0;
4
+ (function (MediaTypeEnum) {
5
+ MediaTypeEnum[MediaTypeEnum["video"] = 0] = "video";
6
+ MediaTypeEnum[MediaTypeEnum["audio"] = 1] = "audio";
7
+ MediaTypeEnum[MediaTypeEnum["img"] = 2] = "img";
8
+ })(exports.MediaTypeEnum || (exports.MediaTypeEnum = {}));
9
+ // powered by h
@@ -0,0 +1,108 @@
1
+ 'use strict';
2
+
3
+ var _asyncToGenerator = require('@babel/runtime-corejs3/helpers/asyncToGenerator');
4
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
5
+ var _regeneratorRuntime = require('@babel/runtime-corejs3/regenerator');
6
+ require('core-js/modules/es.object.to-string.js');
7
+ require('core-js/modules/web.dom-collections.for-each.js');
8
+ require('core-js/modules/es.object.keys.js');
9
+ require('core-js/modules/es.symbol.js');
10
+ require('core-js/modules/es.array.filter.js');
11
+ require('core-js/modules/es.object.get-own-property-descriptor.js');
12
+ require('core-js/modules/es.object.get-own-property-descriptors.js');
13
+ var ahooks = require('ahooks');
14
+ var customRequest = require('./customRequest.js');
15
+ var util = require('../util.js');
16
+ var antd = require('antd');
17
+
18
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
20
+ var checkFile = function checkFile(item) {
21
+ var oldFile = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
22
+ return oldFile.every(function (oldItem) {
23
+ return item.uid !== oldItem.uid;
24
+ });
25
+ };
26
+ var matchFile = function matchFile(newFile) {
27
+ var oldFile = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
28
+ var exFiles = arguments.length > 2 ? arguments[2] : undefined;
29
+ var maxSize = arguments.length > 3 ? arguments[3] : undefined;
30
+ var newResultFileList = [];
31
+ var addFile = [];
32
+ var errList = [];
33
+ newFile.forEach(function (item) {
34
+ if (!util.checkFileSize(item, maxSize)) {
35
+ return errList.push(new Error("超出限制大小!"));
36
+ }
37
+ if (!util.checkFileType(item, exFiles)) {
38
+ return errList.push(new Error("文件格式错误!"));
39
+ }
40
+ if (checkFile(item, oldFile)) {
41
+ addFile.push(item);
42
+ newResultFileList.push(_objectSpread(_objectSpread({}, item), {}, {
43
+ status: "uploading"
44
+ }));
45
+ } else {
46
+ newResultFileList.push(item);
47
+ }
48
+ });
49
+ return {
50
+ addFile: addFile,
51
+ fileList: newResultFileList,
52
+ errList: errList
53
+ };
54
+ };
55
+ var useChange = function useChange(_ref) {
56
+ var value = _ref.value,
57
+ onChange = _ref.onChange,
58
+ _ref$maxCount = _ref.maxCount,
59
+ maxCount = _ref$maxCount === void 0 ? 1 : _ref$maxCount,
60
+ request = _ref.request,
61
+ exFiles = _ref.exFiles,
62
+ maxSize = _ref.maxSize;
63
+ var customRequest$1 = customRequest.useCustomRequest({
64
+ request: request,
65
+ onChange: onChange,
66
+ value: value
67
+ });
68
+ var _useRequest = ahooks.useRequest( /*#__PURE__*/function () {
69
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref2) {
70
+ var fileList, _matchFile, addFile, newFileList, errList;
71
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
72
+ while (1) switch (_context.prev = _context.next) {
73
+ case 0:
74
+ fileList = _ref2.fileList;
75
+ if (!(fileList.length > maxCount)) {
76
+ _context.next = 4;
77
+ break;
78
+ }
79
+ antd.message.error("超出最多文件限制!");
80
+ return _context.abrupt("return");
81
+ case 4:
82
+ _matchFile = matchFile(fileList, value, exFiles, maxSize), addFile = _matchFile.addFile, newFileList = _matchFile.fileList, errList = _matchFile.errList;
83
+ if (errList.length) {
84
+ antd.message.error(errList[0].message);
85
+ }
86
+ onChange === null || onChange === void 0 || onChange(newFileList);
87
+ customRequest$1(addFile);
88
+ case 8:
89
+ case "end":
90
+ return _context.stop();
91
+ }
92
+ }, _callee);
93
+ }));
94
+ return function (_x) {
95
+ return _ref3.apply(this, arguments);
96
+ };
97
+ }(), {
98
+ manual: true,
99
+ debounceInterval: 100
100
+ }),
101
+ run = _useRequest.run;
102
+ return function (info) {
103
+ run(info);
104
+ };
105
+ };
106
+
107
+ exports.useChange = useChange;
108
+ // powered by h
@@ -0,0 +1,132 @@
1
+ 'use strict';
2
+
3
+ require('core-js/modules/es.object.keys.js');
4
+ require('core-js/modules/es.symbol.js');
5
+ require('core-js/modules/es.object.get-own-property-descriptor.js');
6
+ require('core-js/modules/es.object.get-own-property-descriptors.js');
7
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
8
+ var _asyncToGenerator = require('@babel/runtime-corejs3/helpers/asyncToGenerator');
9
+ require('core-js/modules/es.array.filter.js');
10
+ require('core-js/modules/es.object.to-string.js');
11
+ require('core-js/modules/es.array.map.js');
12
+ require('core-js/modules/web.dom-collections.for-each.js');
13
+ var _regeneratorRuntime = require('@babel/runtime-corejs3/regenerator');
14
+ var React = require('react');
15
+ var antd = require('antd');
16
+
17
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
+ var subReq = /*#__PURE__*/function () {
20
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {
21
+ var request, file, _yield$request, url;
22
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
23
+ while (1) switch (_context.prev = _context.next) {
24
+ case 0:
25
+ request = _ref.request, file = _ref.file;
26
+ if (request) {
27
+ _context.next = 3;
28
+ break;
29
+ }
30
+ return _context.abrupt("return", {
31
+ url: "",
32
+ status: "done"
33
+ });
34
+ case 3:
35
+ _context.prev = 3;
36
+ _context.next = 6;
37
+ return request(file);
38
+ case 6:
39
+ _yield$request = _context.sent;
40
+ url = _yield$request.url;
41
+ return _context.abrupt("return", {
42
+ url: url,
43
+ status: "done"
44
+ });
45
+ case 11:
46
+ _context.prev = 11;
47
+ _context.t0 = _context["catch"](3);
48
+ antd.message.error(_context.t0.message);
49
+ return _context.abrupt("return", {
50
+ url: "",
51
+ status: "error"
52
+ });
53
+ case 15:
54
+ case "end":
55
+ return _context.stop();
56
+ }
57
+ }, _callee, null, [[3, 11]]);
58
+ }));
59
+ return function subReq(_x) {
60
+ return _ref2.apply(this, arguments);
61
+ };
62
+ }();
63
+ var fileListProvider = function fileListProvider(changeFile, files) {
64
+ var status = changeFile.status,
65
+ url = changeFile.url,
66
+ uid = changeFile.uid;
67
+ if (status === "error") {
68
+ return files === null || files === void 0 ? void 0 : files.filter(function (item) {
69
+ return item.uid !== uid;
70
+ });
71
+ }
72
+ return files === null || files === void 0 ? void 0 : files.map(function (item) {
73
+ var resultUrl = url || item.thumbUrl;
74
+ if (item.uid === uid) {
75
+ item.status = status;
76
+ item.response = {
77
+ url: resultUrl
78
+ };
79
+ return item;
80
+ }
81
+ return item;
82
+ });
83
+ };
84
+ var useCustomRequest = function useCustomRequest(_ref3) {
85
+ var value = _ref3.value,
86
+ request = _ref3.request,
87
+ onChange = _ref3.onChange;
88
+ var valObj = React.useMemo(function () {
89
+ return {
90
+ value: value
91
+ };
92
+ }, []);
93
+ React.useEffect(function () {
94
+ valObj.value = value;
95
+ }, [value]);
96
+ var sendFile = /*#__PURE__*/function () {
97
+ var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(file) {
98
+ var uid, result, fileList;
99
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
100
+ while (1) switch (_context2.prev = _context2.next) {
101
+ case 0:
102
+ uid = file.uid;
103
+ _context2.next = 3;
104
+ return subReq({
105
+ request: request,
106
+ file: file
107
+ });
108
+ case 3:
109
+ result = _context2.sent;
110
+ fileList = fileListProvider(_objectSpread(_objectSpread({}, result), {}, {
111
+ uid: uid
112
+ }), valObj.value);
113
+ onChange === null || onChange === void 0 || onChange(fileList || []);
114
+ case 6:
115
+ case "end":
116
+ return _context2.stop();
117
+ }
118
+ }, _callee2);
119
+ }));
120
+ return function sendFile(_x2) {
121
+ return _ref4.apply(this, arguments);
122
+ };
123
+ }();
124
+ return function (fileList) {
125
+ fileList.forEach(function (item) {
126
+ sendFile(item);
127
+ });
128
+ };
129
+ };
130
+
131
+ exports.useCustomRequest = useCustomRequest;
132
+ // powered by h
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ require('core-js/modules/es.symbol.js');
4
+ require('core-js/modules/es.array.filter.js');
5
+ require('core-js/modules/es.object.get-own-property-descriptor.js');
6
+ require('core-js/modules/es.object.get-own-property-descriptors.js');
7
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
8
+ require('core-js/modules/es.object.keys.js');
9
+ require('core-js/modules/es.object.to-string.js');
10
+ require('core-js/modules/web.dom-collections.for-each.js');
11
+ var FormConfigProvider = require('../../Form/Context/FormConfigProvider.js');
12
+
13
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
+ var useProps = function useProps(_ref) {
16
+ var request = _ref.request,
17
+ exFiles = _ref.exFiles,
18
+ maxSize = _ref.maxSize;
19
+ var configUploadProps = FormConfigProvider.useFormConfigContext("uploadProps");
20
+ var inputProps = {
21
+ request: request,
22
+ exFiles: exFiles,
23
+ maxSize: maxSize
24
+ };
25
+ var keys = Object.keys(inputProps);
26
+ var resultProps = _objectSpread({}, configUploadProps);
27
+ keys.forEach(function (key) {
28
+ if (inputProps[key]) {
29
+ resultProps[key] = inputProps[key];
30
+ return;
31
+ }
32
+ });
33
+ return resultProps;
34
+ };
35
+
36
+ exports.useProps = useProps;
37
+ // powered by h
@@ -0,0 +1,148 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('core-js/modules/es.object.keys.js');
6
+ require('core-js/modules/es.symbol.js');
7
+ require('core-js/modules/es.array.filter.js');
8
+ require('core-js/modules/es.object.to-string.js');
9
+ require('core-js/modules/es.object.get-own-property-descriptor.js');
10
+ require('core-js/modules/web.dom-collections.for-each.js');
11
+ require('core-js/modules/es.object.get-own-property-descriptors.js');
12
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
13
+ var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
14
+ var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
15
+ require('core-js/modules/es.number.constructor.js');
16
+ require('core-js/modules/es.function.name.js');
17
+ require('core-js/modules/es.array.map.js');
18
+ var jsxRuntime = require('react/jsx-runtime');
19
+ var React = require('react');
20
+ var propsMaker = require('./hooks/propsMaker.js');
21
+ var index = require('./Preview/index.js');
22
+ var change = require('./hooks/change.js');
23
+ var antd = require('antd');
24
+ var Btn = require('./Btn.js');
25
+ var HFormConnect = require('../Form/HFormConnect.js');
26
+
27
+ var _excluded = ["value", "onChange", "listType", "exFiles", "maxCount", "maxRowNum", "onPreview", "request", "maxSize", "addFormat"];
28
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
30
+ var Index = function Index(_ref, ref) {
31
+ var _ref$value = _ref.value,
32
+ value = _ref$value === void 0 ? [] : _ref$value,
33
+ onChange = _ref.onChange,
34
+ _ref$listType = _ref.listType,
35
+ listType = _ref$listType === void 0 ? "picture-card" : _ref$listType,
36
+ exFiles = _ref.exFiles,
37
+ _ref$maxCount = _ref.maxCount,
38
+ maxCount = _ref$maxCount === void 0 ? 1 : _ref$maxCount,
39
+ _ref$maxRowNum = _ref.maxRowNum,
40
+ maxRowNum = _ref$maxRowNum === void 0 ? 3 : _ref$maxRowNum,
41
+ onPreview = _ref.onPreview,
42
+ request = _ref.request,
43
+ maxSize = _ref.maxSize,
44
+ addFormat = _ref.addFormat,
45
+ props = _objectWithoutProperties(_ref, _excluded);
46
+ var matchProps = propsMaker.useProps({
47
+ request: request,
48
+ exFiles: exFiles,
49
+ maxSize: maxSize
50
+ });
51
+ var _useState = React.useState({}),
52
+ _useState2 = _slicedToArray(_useState, 2),
53
+ previewModal = _useState2[0],
54
+ setPreviewModal = _useState2[1];
55
+ var change$1 = change.useChange(_objectSpread(_objectSpread({}, matchProps), {}, {
56
+ value: value,
57
+ maxCount: maxCount,
58
+ onChange: onChange
59
+ }));
60
+ React.useImperativeHandle(ref, function () {
61
+ return {
62
+ change: change$1
63
+ };
64
+ });
65
+ var contentStyle = React.useMemo(function () {
66
+ if (listType !== "picture-card") {
67
+ return {};
68
+ }
69
+ return {
70
+ width: 112 * maxRowNum,
71
+ maxWidth: "100%"
72
+ };
73
+ }, [maxRowNum, listType]);
74
+ var preview = function preview(file) {
75
+ if (onPreview) {
76
+ onPreview(file);
77
+ return;
78
+ }
79
+ setPreviewModal({
80
+ visible: true,
81
+ file: file
82
+ });
83
+ };
84
+ var maxNum = maxCount === 1 ? maxCount : Number.MAX_VALUE;
85
+ var visible = previewModal.visible,
86
+ previewFile = previewModal.file;
87
+ addFormat === null || addFormat === void 0 || addFormat({
88
+ float: {
89
+ inputValue: function inputValue(item, initValue) {
90
+ var _item$name = item.name,
91
+ name = _item$name === void 0 ? "" : _item$name;
92
+ var initFileList = initValue[name] || [];
93
+ var relInitFileList = typeof initFileList === "string" ? [initFileList] : initFileList;
94
+ var fileList = relInitFileList.map(function (url, index) {
95
+ return {
96
+ name: url,
97
+ response: {
98
+ url: url
99
+ },
100
+ status: "done",
101
+ uid: "init-".concat(index),
102
+ thumbUrl: url
103
+ };
104
+ });
105
+ return _defineProperty({}, name, fileList);
106
+ },
107
+ outputValue: function outputValue(item, _outputValue) {
108
+ var _item$name2 = item.name,
109
+ valueName = _item$name2 === void 0 ? "" : _item$name2;
110
+ var _outputValue$valueNam = _outputValue[valueName],
111
+ itemVal = _outputValue$valueNam === void 0 ? [] : _outputValue$valueNam;
112
+ var urls = itemVal.map(function (fileItem) {
113
+ return fileItem.response.url;
114
+ });
115
+ return _defineProperty({}, valueName, maxCount === 1 ? urls[0] : urls);
116
+ }
117
+ }
118
+ });
119
+ return jsxRuntime.jsxs("div", {
120
+ style: contentStyle,
121
+ children: [jsxRuntime.jsx(antd.Upload, _objectSpread(_objectSpread({
122
+ listType: listType,
123
+ maxCount: maxNum,
124
+ fileList: value,
125
+ onPreview: preview,
126
+ onChange: change$1,
127
+ beforeUpload: function beforeUpload() {
128
+ return false;
129
+ }
130
+ }, props), {}, {
131
+ children: jsxRuntime.jsx(Btn.default, {
132
+ value: value,
133
+ maxCount: maxCount,
134
+ listType: listType
135
+ })
136
+ })), jsxRuntime.jsx(index.default, {
137
+ visible: visible,
138
+ file: previewFile,
139
+ onCancel: function onCancel() {
140
+ setPreviewModal({});
141
+ }
142
+ })]
143
+ });
144
+ };
145
+ var HUpload = HFormConnect.default( /*#__PURE__*/React.forwardRef(Index));
146
+
147
+ exports.default = HUpload;
148
+ // powered by h
@@ -4,6 +4,22 @@ require('core-js/modules/es.function.name.js');
4
4
  require('core-js/modules/es.object.to-string.js');
5
5
  require('core-js/modules/es.promise.js');
6
6
 
7
+ var getFileExt = function getFileExt(file) {
8
+ var name = file.name;
9
+ var index = name.lastIndexOf(".");
10
+ return name.substring(index + 1).toUpperCase();
11
+ };
12
+ var checkFileType = function checkFileType(file) {
13
+ var exFiles = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
14
+ var exName = getFileExt(file);
15
+ return exFiles.indexOf(exName) !== -1;
16
+ };
17
+ var checkFileSize = function checkFileSize(file) {
18
+ var maxSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
19
+ var _file$size = file.size,
20
+ size = _file$size === void 0 ? 0 : _file$size;
21
+ return size <= maxSize;
22
+ };
7
23
  var fileToBase64 = function fileToBase64(file) {
8
24
  return new Promise(function (resolve) {
9
25
  var reader = new FileReader();
@@ -15,5 +31,8 @@ var fileToBase64 = function fileToBase64(file) {
15
31
  });
16
32
  };
17
33
 
34
+ exports.checkFileSize = checkFileSize;
35
+ exports.checkFileType = checkFileType;
18
36
  exports.fileToBase64 = fileToBase64;
37
+ exports.getFileExt = getFileExt;
19
38
  // powered by h
package/lib/index.d.ts CHANGED
@@ -1,3 +1,26 @@
1
1
  /// <reference types="react" />
2
2
  import "./styles/index.less";
3
+ export { default as HForm } from "./Form";
4
+ export { default as useHForm } from "./Form/hooks/useHForm";
5
+ export { useHDialogForm } from "./DialogForm/hooks";
6
+ export { default as HFormConnect } from "./Form/HFormConnect";
7
+ export { default as HFormConfigProvider } from "./Form/Context/FormConfigProvider";
3
8
  export declare const HSelect: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
9
+ export declare const HInput: ({ ...props }: import("./Input/modal").HInputProps<any>) => JSX.Element;
10
+ export declare const HSelectInput: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
11
+ export declare const HUpload: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
12
+ export declare const HUrlUpload: ({ placeholder, value, onChange, mediaType, ...props }: import("./Upload/modal").IUrlUploadProps) => JSX.Element;
13
+ export declare const HButtonInput: import("react").FC<import("./Input/modal").HButtonInputProps>;
14
+ export declare const HCheckBox: import("react").FC<import("./CheckboxGroup/modal").HCheckboxProps>;
15
+ export declare const HSwitch: import("react").FC<import("./Switch").HSwitchProps>;
16
+ export declare const HCheckboxGroup: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
17
+ export declare const HDatePicker: import("react").FC<import("./TDPicker/modal").HDatePickerProps>;
18
+ export declare const HRangePicker: import("react").ForwardRefExoticComponent<import("./Form/modal").HFormItemProps & import("react").RefAttributes<any>>;
19
+ export declare const HRadioGroup: ({ value, options, onChange, fieldNames: propsFieldNames, ...props }: import("./RadioGroup").HRadioGroupProps) => JSX.Element;
20
+ export declare const HTimePicker: ({ value, format, onChange, disabledDate, ...props }: import("./TDPicker/modal").HTimePickerProps) => JSX.Element;
21
+ export declare const HInputNumber: ({ style, ...props }: import("antd").InputNumberProps<string | number>) => JSX.Element;
22
+ export declare const HPageHandler: import("react").FC<import("./PageHandler/modal").IHPageHandler<any>>;
23
+ export declare const HTextArea: ({ autoSize, ...props }: import("antd/es/input").TextAreaProps) => JSX.Element;
24
+ export declare const HColorInput: ({ value, onChange, ...props }: import("./Input/modal").HInputProps<any>) => JSX.Element;
25
+ export declare const HModalForm: ({ visible, title, onCancel, configData, infoRequest, request, afterClose, dialogForm, initialValues, onFinish, params, onOk, onValuesChange, ...props }: import("./DialogForm/modal").DialogFormProps<any, any>) => JSX.Element;
26
+ export declare const HDrawerForm: ({ visible, title, onCancel, configData, infoRequest, request, afterClose, dialogForm, closable, initialValues, labelWidth, onOk, onFinish, size, form, footer, params, onValuesChange, ...props }: import("./DialogForm/modal").DialogFormProps<any, any>) => JSX.Element;