@trionesdev/antd-taro-react 0.0.2-beta.2 → 0.0.2-beta.21
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/dist/ActionSheet/ActionSheet.d.ts +25 -0
- package/dist/ActionSheet/ActionSheet.js +77 -0
- package/dist/ActionSheet/index.d.ts +1 -1
- package/dist/ActionSheet/index.js +1 -1
- package/dist/ActionSheet/style.scss +52 -0
- package/dist/Button/button.d.ts +2 -1
- package/dist/Button/button.js +2 -3
- package/dist/Button/style.scss +65 -50
- package/dist/Calendar/calendar-grid.d.ts +10 -9
- package/dist/Calendar/calendar-grid.js +37 -62
- package/dist/Calendar/calendar-header.d.ts +3 -2
- package/dist/Calendar/calendar-header.js +9 -6
- package/dist/Calendar/calendar-range.d.ts +4 -3
- package/dist/Calendar/calendar-range.js +22 -18
- package/dist/Calendar/calendar.d.ts +5 -4
- package/dist/Calendar/calendar.js +30 -17
- package/dist/Calendar/style.scss +8 -5
- package/dist/Calendar/touchable-calendar-grid.d.ts +6 -5
- package/dist/Calendar/touchable-calendar-grid.js +87 -86
- package/dist/CalendarDatetimePicker/CalendarDatetimePicker.d.ts +3 -2
- package/dist/CalendarDatetimePicker/CalendarDatetimePicker.js +40 -57
- package/dist/CalendarDatetimePicker/DateTimeSwitch.d.ts +3 -2
- package/dist/CalendarDatetimePicker/DateTimeSwitch.js +2 -2
- package/dist/CalendarDatetimePicker/style.scss +11 -3
- package/dist/CalendarDatetimePickerCell/CalendarDatetimePickerCell.d.ts +9 -0
- package/dist/CalendarDatetimePickerCell/CalendarDatetimePickerCell.js +60 -0
- package/dist/CalendarDatetimePickerCell/index.d.ts +3 -0
- package/dist/CalendarDatetimePickerCell/index.js +2 -0
- package/dist/CalendarPicker/{calendar-picker.js → CalendarPicker.js} +10 -6
- package/dist/CalendarPicker/{calendar-range-picker.js → CalendarRangePicker.js} +8 -6
- package/dist/CalendarPicker/index.d.ts +3 -4
- package/dist/CalendarPicker/index.js +2 -2
- package/dist/CalendarPicker/style.scss +7 -6
- package/dist/CalendarPicker/types.d.ts +8 -6
- package/dist/CalendarPicker/types.js +1 -1
- package/dist/CalendarPickerCell/CalendarPickerCell.d.ts +11 -0
- package/dist/CalendarPickerCell/CalendarPickerCell.js +54 -0
- package/dist/CalendarPickerCell/CalendarRangePickerCell.d.ts +11 -0
- package/dist/CalendarPickerCell/CalendarRangePickerCell.js +56 -0
- package/dist/CalendarPickerCell/index.d.ts +8 -0
- package/dist/CalendarPickerCell/index.js +5 -0
- package/dist/CascaderPicker/cascader-picker.d.ts +27 -0
- package/dist/CascaderPicker/cascader-picker.js +90 -0
- package/dist/CascaderPicker/index.d.ts +1 -1
- package/dist/CascaderPicker/index.js +1 -1
- package/dist/CascaderPicker/style.scss +45 -0
- package/dist/CascaderPickerCell/CascaderPickerCell.d.ts +20 -0
- package/dist/CascaderPickerCell/CascaderPickerCell.js +70 -0
- package/dist/CascaderPickerCell/index.d.ts +3 -0
- package/dist/CascaderPickerCell/index.js +2 -0
- package/dist/DatePicker/DatePicker.d.ts +18 -0
- package/dist/DatePicker/DatePicker.js +310 -0
- package/dist/DatePicker/index.d.ts +4 -0
- package/dist/DatePicker/index.js +3 -0
- package/dist/DatePicker/style.scss +41 -0
- package/dist/DatePicker/types.d.ts +1 -0
- package/dist/DatePicker/types.js +1 -0
- package/dist/DatePickerCell/DatePickerCell.d.ts +16 -0
- package/dist/DatePickerCell/DatePickerCell.js +78 -0
- package/dist/DatePickerCell/index.d.ts +3 -0
- package/dist/DatePickerCell/index.js +2 -0
- package/dist/FetchPicker/FetchPicker.d.ts +78 -0
- package/dist/FetchPicker/FetchPicker.js +310 -0
- package/dist/FetchPicker/index.d.ts +4 -0
- package/dist/FetchPicker/index.js +3 -0
- package/dist/FetchPicker/styles.scss +130 -0
- package/dist/FloatButton/FloatButton.d.ts +19 -0
- package/dist/FloatButton/FloatButton.js +60 -0
- package/dist/FloatButton/FloatButtonGroup.d.ts +21 -0
- package/dist/FloatButton/FloatButtonGroup.js +141 -0
- package/dist/FloatButton/context.d.ts +10 -0
- package/dist/FloatButton/context.js +2 -0
- package/dist/FloatButton/index.d.ts +10 -0
- package/dist/FloatButton/index.js +5 -0
- package/dist/FloatButton/style.scss +126 -0
- package/dist/Form/FormItem/form-item-content.d.ts +17 -0
- package/dist/Form/FormItem/form-item-content.js +39 -0
- package/dist/Form/FormItem/form-item-label.d.ts +13 -0
- package/dist/Form/FormItem/form-item-label.js +29 -0
- package/dist/Form/FormItem/form-item.d.ts +23 -0
- package/dist/Form/FormItem/form-item.js +77 -0
- package/dist/Form/FormItem/index.d.ts +5 -0
- package/dist/Form/FormItem/index.js +3 -0
- package/dist/Form/index.d.ts +9 -2
- package/dist/Form/index.js +5 -1
- package/dist/Form/style.scss +100 -0
- package/dist/FormCell/index.d.ts +3 -0
- package/dist/FormCell/index.js +2 -0
- package/dist/ImagesPreview/ImagesPreview.js +4 -3
- package/dist/ImagesWall/ImagesWall.js +1 -1
- package/dist/Input/index.d.ts +17 -2
- package/dist/Input/index.js +13 -1
- package/dist/Input/index.scss +282 -0
- package/dist/Input/input-affix-wrapper.d.ts +13 -0
- package/dist/Input/input-affix-wrapper.js +37 -0
- package/dist/Input/input-digit.d.ts +7 -0
- package/dist/Input/input-digit.js +53 -0
- package/dist/Input/input-number.d.ts +7 -0
- package/dist/Input/input-number.js +50 -0
- package/dist/Input/input-opt.d.ts +16 -0
- package/dist/Input/input-opt.js +87 -0
- package/dist/Input/input-password.d.ts +8 -0
- package/dist/Input/input-password.js +49 -0
- package/dist/Input/input.d.ts +3 -0
- package/dist/Input/input.js +7 -0
- package/dist/Input/taro-input.d.ts +8 -0
- package/dist/Input/taro-input.js +70 -0
- package/dist/Input/textarea.d.ts +15 -0
- package/dist/Input/textarea.js +52 -0
- package/dist/Input/types.d.ts +20 -0
- package/dist/Input/types.js +2 -0
- package/dist/Loading/index.d.ts +4 -0
- package/dist/Loading/index.js +3 -0
- package/dist/Overlay/Overlay.d.ts +17 -0
- package/dist/Overlay/Overlay.js +100 -0
- package/dist/Overlay/index.d.ts +4 -0
- package/dist/Overlay/index.js +3 -0
- package/dist/Overlay/style.scss +20 -0
- package/dist/Picker/Picker.d.ts +27 -0
- package/dist/Picker/Picker.js +100 -0
- package/dist/Picker/index.d.ts +1 -1
- package/dist/Picker/index.js +1 -1
- package/dist/Picker/style.scss +41 -0
- package/dist/PickerView/PickerView.d.ts +4 -0
- package/dist/PickerView/PickerView.js +71 -0
- package/dist/PickerView/index.d.ts +2 -2
- package/dist/PickerView/index.js +1 -1
- package/dist/PickerView/style.scss +13 -0
- package/dist/PickerView/types.d.ts +15 -0
- package/dist/PickerView/types.js +1 -0
- package/dist/Popup/Popup.d.ts +48 -0
- package/dist/Popup/Popup.js +135 -0
- package/dist/Popup/index.d.ts +2 -1
- package/dist/Popup/index.js +2 -1
- package/dist/Popup/style.scss +126 -0
- package/dist/Progress/index.d.ts +1 -1
- package/dist/Progress/index.js +1 -1
- package/dist/Segmented/index.d.ts +3 -0
- package/dist/Segmented/index.js +2 -0
- package/dist/SideBar/side-bar.js +3 -2
- package/dist/SideBar/style.scss +6 -6
- package/dist/Stepper/index.d.ts +3 -0
- package/dist/Stepper/index.js +2 -0
- package/dist/Toast/Toast.d.ts +18 -0
- package/dist/Toast/Toast.js +112 -0
- package/dist/Toast/index.d.ts +1 -1
- package/dist/Toast/index.js +1 -1
- package/dist/Toast/style.scss +63 -0
- package/dist/VerificationCodeInput/index.d.ts +2 -2
- package/dist/VerificationCodeInput/index.js +1 -1
- package/dist/VerificationCodeInput/style.scss +20 -0
- package/dist/VerificationCodeInput/verification-code-input.d.ts +24 -0
- package/dist/VerificationCodeInput/verification-code-input.js +99 -0
- package/dist/index.d.ts +28 -7
- package/dist/index.js +12 -2
- package/dist/style/variable.scss +33 -0
- package/dist/types.d.ts +0 -1
- package/dist/utils/dayjs.d.ts +4 -0
- package/dist/utils/dayjs.js +42 -0
- package/package.json +25 -30
- package/dist/Mask/index.d.ts +0 -3
- package/dist/Mask/index.js +0 -2
- package/dist/Progress/Progress.d.ts +0 -38
- package/dist/Progress/Progress.js +0 -53
- package/dist/Progress/ProgressCircle.d.ts +0 -16
- package/dist/Progress/ProgressCircle.js +0 -147
- package/dist/Progress/ProgressLine.d.ts +0 -15
- package/dist/Progress/ProgressLine.js +0 -87
- package/dist/Progress/style.scss +0 -33
- package/dist/Progress/types.d.ts +0 -4
- package/dist/Progress/types.js +0 -2
- package/dist/SpinLoading/index.d.ts +0 -3
- package/dist/SpinLoading/index.js +0 -2
- /package/dist/CalendarPicker/{calendar-picker.d.ts → CalendarPicker.d.ts} +0 -0
- /package/dist/CalendarPicker/{calendar-range-picker.d.ts → CalendarRangePicker.d.ts} +0 -0
|
@@ -0,0 +1,141 @@
|
|
|
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
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
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
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
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
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _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 _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; } }
|
|
12
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
13
|
+
import classNames from 'classnames';
|
|
14
|
+
import { CloseOutline } from "@trionesdev/antd-mobile-icons-react";
|
|
15
|
+
import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
16
|
+
import { FloatButton } from "./FloatButton";
|
|
17
|
+
import { FloatButtonGroupContext } from "./context";
|
|
18
|
+
import "./style.scss";
|
|
19
|
+
import { RootPortal, View } from "@tarojs/components";
|
|
20
|
+
import { useTaro } from "../hooks";
|
|
21
|
+
var groupCls = 'triones-antm-float-button-group';
|
|
22
|
+
export var FloatButtonGroup = function FloatButtonGroup(_ref) {
|
|
23
|
+
var _ref$shape = _ref.shape,
|
|
24
|
+
shape = _ref$shape === void 0 ? 'circle' : _ref$shape,
|
|
25
|
+
_ref$type = _ref.type,
|
|
26
|
+
type = _ref$type === void 0 ? 'default' : _ref$type,
|
|
27
|
+
icon = _ref.icon,
|
|
28
|
+
trigger = _ref.trigger,
|
|
29
|
+
openProp = _ref.open,
|
|
30
|
+
onOpenChange = _ref.onOpenChange,
|
|
31
|
+
closeIcon = _ref.closeIcon,
|
|
32
|
+
_ref$placement = _ref.placement,
|
|
33
|
+
placement = _ref$placement === void 0 ? 'top' : _ref$placement,
|
|
34
|
+
onClick = _ref.onClick,
|
|
35
|
+
className = _ref.className,
|
|
36
|
+
style = _ref.style,
|
|
37
|
+
children = _ref.children,
|
|
38
|
+
_ref$right = _ref.right,
|
|
39
|
+
right = _ref$right === void 0 ? 24 : _ref$right,
|
|
40
|
+
_ref$bottom = _ref.bottom,
|
|
41
|
+
bottom = _ref$bottom === void 0 ? 24 : _ref$bottom,
|
|
42
|
+
_ref$zIndex = _ref.zIndex,
|
|
43
|
+
zIndex = _ref$zIndex === void 0 ? 100 : _ref$zIndex;
|
|
44
|
+
var _useTaro = useTaro(),
|
|
45
|
+
isTaroWeb = _useTaro.isTaroWeb,
|
|
46
|
+
isTaroEnv = _useTaro.isTaroEnv;
|
|
47
|
+
var rootRef = useRef(null);
|
|
48
|
+
var isMenu = trigger === 'click' || trigger === 'hover';
|
|
49
|
+
var _useState = useState(false),
|
|
50
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
51
|
+
uncontrolledOpen = _useState2[0],
|
|
52
|
+
setUncontrolledOpen = _useState2[1];
|
|
53
|
+
var mergedOpen = openProp !== null && openProp !== void 0 ? openProp : uncontrolledOpen;
|
|
54
|
+
var setOpen = useCallback(function (next) {
|
|
55
|
+
if (openProp === undefined) {
|
|
56
|
+
setUncontrolledOpen(next);
|
|
57
|
+
}
|
|
58
|
+
onOpenChange === null || onOpenChange === void 0 || onOpenChange(next);
|
|
59
|
+
}, [openProp, onOpenChange]);
|
|
60
|
+
var triggerOpen = useCallback(function (next) {
|
|
61
|
+
if (mergedOpen !== next) {
|
|
62
|
+
setOpen(next);
|
|
63
|
+
}
|
|
64
|
+
}, [mergedOpen, setOpen]);
|
|
65
|
+
|
|
66
|
+
/** H5:document 捕获点击;小程序无 document,见下方全屏透明遮罩 */
|
|
67
|
+
useEffect(function () {
|
|
68
|
+
if (!isMenu || trigger !== 'click' || !isTaroWeb) return;
|
|
69
|
+
var onDoc = function onDoc(e) {
|
|
70
|
+
var _rootRef$current;
|
|
71
|
+
if ((_rootRef$current = rootRef.current) !== null && _rootRef$current !== void 0 && _rootRef$current.contains(e.target)) return;
|
|
72
|
+
triggerOpen(false);
|
|
73
|
+
};
|
|
74
|
+
document.addEventListener('click', onDoc, true);
|
|
75
|
+
return function () {
|
|
76
|
+
document.removeEventListener('click', onDoc, true);
|
|
77
|
+
};
|
|
78
|
+
}, [isMenu, trigger, triggerOpen, isTaroWeb]);
|
|
79
|
+
|
|
80
|
+
/** 小程序:页面没有全局 tap 回调,用全屏透明层(zIndex 低于按钮组)模拟「点击页面其它区域」关闭 */
|
|
81
|
+
var showWeappOutsideMask = !isTaroWeb && !!isTaroEnv && isMenu && trigger === 'click' && mergedOpen;
|
|
82
|
+
var onMouseEnter = function onMouseEnter() {
|
|
83
|
+
if (trigger === 'hover') triggerOpen(true);
|
|
84
|
+
};
|
|
85
|
+
var onMouseLeave = function onMouseLeave() {
|
|
86
|
+
if (trigger === 'hover') triggerOpen(false);
|
|
87
|
+
};
|
|
88
|
+
var onTriggerClick = function onTriggerClick(e) {
|
|
89
|
+
if (trigger === 'click') {
|
|
90
|
+
triggerOpen(!mergedOpen);
|
|
91
|
+
}
|
|
92
|
+
onClick === null || onClick === void 0 || onClick(e);
|
|
93
|
+
};
|
|
94
|
+
var mergedCloseIcon = closeIcon !== null && closeIcon !== void 0 ? closeIcon : /*#__PURE__*/React.createElement(CloseOutline, null);
|
|
95
|
+
var listVisible = !isMenu || mergedOpen;
|
|
96
|
+
var listNode = /*#__PURE__*/React.createElement("div", {
|
|
97
|
+
className: classNames("".concat(groupCls, "-list"), _defineProperty({}, "".concat(groupCls, "-list--hidden"), !listVisible)),
|
|
98
|
+
"aria-hidden": !listVisible
|
|
99
|
+
}, children);
|
|
100
|
+
var triggerNode = /*#__PURE__*/React.createElement(FloatButton, {
|
|
101
|
+
type: type,
|
|
102
|
+
shape: shape,
|
|
103
|
+
icon: mergedOpen ? mergedCloseIcon : icon,
|
|
104
|
+
onClick: onTriggerClick
|
|
105
|
+
});
|
|
106
|
+
var ctxValue = useMemo(function () {
|
|
107
|
+
return {
|
|
108
|
+
inGroup: true,
|
|
109
|
+
shape: shape,
|
|
110
|
+
individual: shape === 'circle'
|
|
111
|
+
};
|
|
112
|
+
}, [shape]);
|
|
113
|
+
var rootClass = classNames(groupCls, "".concat(groupCls, "--placement-").concat(placement), _defineProperty({}, "".concat(groupCls, "--menu"), isMenu), className);
|
|
114
|
+
return /*#__PURE__*/React.createElement(RootPortal, null, showWeappOutsideMask && /*#__PURE__*/React.createElement(View, {
|
|
115
|
+
className: "".concat(groupCls, "-weapp-outside-mask"),
|
|
116
|
+
style: {
|
|
117
|
+
position: 'fixed',
|
|
118
|
+
left: 0,
|
|
119
|
+
top: 0,
|
|
120
|
+
right: 0,
|
|
121
|
+
bottom: 0,
|
|
122
|
+
zIndex: zIndex - 1
|
|
123
|
+
},
|
|
124
|
+
catchMove: true,
|
|
125
|
+
onClick: function onClick() {
|
|
126
|
+
return triggerOpen(false);
|
|
127
|
+
}
|
|
128
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
129
|
+
ref: rootRef,
|
|
130
|
+
className: rootClass,
|
|
131
|
+
style: _objectSpread({
|
|
132
|
+
zIndex: zIndex,
|
|
133
|
+
right: "".concat(right, "Px"),
|
|
134
|
+
bottom: "calc(".concat(bottom, "Px + env(safe-area-inset-bottom, 0px))")
|
|
135
|
+
}, style),
|
|
136
|
+
onMouseEnter: onMouseEnter,
|
|
137
|
+
onMouseLeave: onMouseLeave
|
|
138
|
+
}, /*#__PURE__*/React.createElement(FloatButtonGroupContext.Provider, {
|
|
139
|
+
value: ctxValue
|
|
140
|
+
}, isMenu ? /*#__PURE__*/React.createElement(React.Fragment, null, placement === 'bottom' ? /*#__PURE__*/React.createElement(React.Fragment, null, triggerNode, listNode) : placement === 'right' ? /*#__PURE__*/React.createElement(React.Fragment, null, triggerNode, listNode) : /*#__PURE__*/React.createElement(React.Fragment, null, listNode, triggerNode)) : children)));
|
|
141
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type FloatButtonGroupContextValue = {
|
|
3
|
+
/** 是否在 FloatButton.Group 内(组内子按钮不使用 fixed 定位) */
|
|
4
|
+
inGroup: boolean;
|
|
5
|
+
/** 组级 shape,覆盖子项 */
|
|
6
|
+
shape?: 'circle' | 'square';
|
|
7
|
+
/** 与 antd 一致:circle 组为 true */
|
|
8
|
+
individual?: boolean;
|
|
9
|
+
};
|
|
10
|
+
export declare const FloatButtonGroupContext: React.Context<FloatButtonGroupContextValue | null>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FloatButton as InternalFloatButton, FloatButtonProps } from "./FloatButton";
|
|
2
|
+
import { FloatButtonGroup } from "./FloatButtonGroup";
|
|
3
|
+
type InternalFloatButtonType = typeof InternalFloatButton;
|
|
4
|
+
type CompoundedComponent = InternalFloatButtonType & {
|
|
5
|
+
Group: typeof FloatButtonGroup;
|
|
6
|
+
};
|
|
7
|
+
declare const FloatButton: CompoundedComponent;
|
|
8
|
+
export type { FloatButtonProps };
|
|
9
|
+
export type { FloatButtonGroupProps } from "./FloatButtonGroup";
|
|
10
|
+
export default FloatButton;
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
@use "../style/variable" as variable;
|
|
2
|
+
|
|
3
|
+
$floatButtonCls: "triones-antm-float-button";
|
|
4
|
+
$floatButtonGroupCls: "triones-antm-float-button-group";
|
|
5
|
+
|
|
6
|
+
$floatButtonSize: 48Px;
|
|
7
|
+
$floatButtonShadow: 0 6Px 16Px 0 rgba(0, 0, 0, 0.08),
|
|
8
|
+
0 3Px 6Px -4Px rgba(0, 0, 0, 0.12), 0 9Px 28Px 8Px rgba(0, 0, 0, 0.05);
|
|
9
|
+
|
|
10
|
+
.#{$floatButtonCls} {
|
|
11
|
+
position: fixed;
|
|
12
|
+
display: inline-flex;
|
|
13
|
+
flex-shrink: 0;
|
|
14
|
+
box-sizing: border-box;
|
|
15
|
+
|
|
16
|
+
&--embedded {
|
|
17
|
+
position: relative;
|
|
18
|
+
right: auto;
|
|
19
|
+
bottom: auto;
|
|
20
|
+
z-index: auto;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
&-body {
|
|
24
|
+
box-sizing: border-box;
|
|
25
|
+
margin: 0;
|
|
26
|
+
padding: 0;
|
|
27
|
+
display: inline-flex;
|
|
28
|
+
align-items: center;
|
|
29
|
+
justify-content: center;
|
|
30
|
+
gap: 8Px;
|
|
31
|
+
min-width: $floatButtonSize;
|
|
32
|
+
min-height: $floatButtonSize;
|
|
33
|
+
border: none;
|
|
34
|
+
border-radius: 50%;
|
|
35
|
+
cursor: pointer;
|
|
36
|
+
font-size: 20Px;
|
|
37
|
+
line-height: 1;
|
|
38
|
+
color: rgba(0, 0, 0, 0.88);
|
|
39
|
+
background: #fff;
|
|
40
|
+
box-shadow: $floatButtonShadow;
|
|
41
|
+
transition: color 0.2s, background 0.2s, box-shadow 0.2s;
|
|
42
|
+
-webkit-tap-highlight-color: transparent;
|
|
43
|
+
text-decoration: none;
|
|
44
|
+
|
|
45
|
+
&:active {
|
|
46
|
+
filter: brightness(0.95);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
&--shape-square &-body {
|
|
51
|
+
border-radius: variable.$trionesBorderRadius;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
&--has-content &-body {
|
|
55
|
+
min-height: $floatButtonSize;
|
|
56
|
+
display: inline-flex;
|
|
57
|
+
flex-direction: column;
|
|
58
|
+
align-items: center;
|
|
59
|
+
justify-content: center;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
&--type-primary &-body {
|
|
63
|
+
color: #fff;
|
|
64
|
+
background: variable.$trionesColorPrimary;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
&-icon {
|
|
68
|
+
display: inline-flex;
|
|
69
|
+
align-items: center;
|
|
70
|
+
justify-content: center;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
&-content {
|
|
74
|
+
font-size: variable.$trionesFontSizeSm;
|
|
75
|
+
font-weight: 500;
|
|
76
|
+
white-space: nowrap;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.#{$floatButtonGroupCls} {
|
|
81
|
+
position: fixed;
|
|
82
|
+
display: flex;
|
|
83
|
+
gap: 12Px;
|
|
84
|
+
align-items: flex-end;
|
|
85
|
+
box-sizing: border-box;
|
|
86
|
+
|
|
87
|
+
&--placement {
|
|
88
|
+
&-top {
|
|
89
|
+
flex-direction: column;
|
|
90
|
+
}
|
|
91
|
+
&-bottom {
|
|
92
|
+
flex-direction: column;
|
|
93
|
+
}
|
|
94
|
+
&-left {
|
|
95
|
+
flex-direction: row;
|
|
96
|
+
}
|
|
97
|
+
&-right {
|
|
98
|
+
flex-direction: row;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
&--menu {
|
|
103
|
+
align-items: center;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
&-list {
|
|
107
|
+
display: flex;
|
|
108
|
+
flex-direction: column;
|
|
109
|
+
gap: 12Px;
|
|
110
|
+
align-items: flex-end;
|
|
111
|
+
|
|
112
|
+
&--hidden {
|
|
113
|
+
display: none;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
&--placement-left &-list,
|
|
118
|
+
&--placement-right &-list {
|
|
119
|
+
flex-direction: column;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/** 小程序点击外部关闭:全屏遮罩;极淡背景避免部分机型不响应 tap */
|
|
123
|
+
&-weapp-outside-mask {
|
|
124
|
+
background: rgba(0, 0, 0, 0.001);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Rule } from 'rc-field-form/lib/interface';
|
|
2
|
+
import React, { FC } from 'react';
|
|
3
|
+
import { FormHorizontalAlign } from "@trionesdev/antd-mobile-base-react";
|
|
4
|
+
type FormItemInputProps = {
|
|
5
|
+
children?: React.ReactElement;
|
|
6
|
+
className?: string;
|
|
7
|
+
name?: string;
|
|
8
|
+
rules?: Rule[];
|
|
9
|
+
initialValue?: any;
|
|
10
|
+
wrapperAlign?: FormHorizontalAlign;
|
|
11
|
+
valuePropName?: string;
|
|
12
|
+
errors?: React.ReactNode[];
|
|
13
|
+
errorRender?: (errors?: any[]) => React.ReactNode;
|
|
14
|
+
hiddenError?: boolean;
|
|
15
|
+
};
|
|
16
|
+
export declare const FormItemContent: FC<FormItemInputProps>;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
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."); }
|
|
3
|
+
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); }
|
|
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
|
+
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
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
|
+
import classNames from 'classnames';
|
|
8
|
+
import { isEmpty } from 'lodash-es';
|
|
9
|
+
import React, { useState } from 'react';
|
|
10
|
+
import { Field } from "@trionesdev/antd-mobile-base-react";
|
|
11
|
+
export var FormItemContent = function FormItemContent(_ref) {
|
|
12
|
+
var children = _ref.children,
|
|
13
|
+
className = _ref.className,
|
|
14
|
+
name = _ref.name,
|
|
15
|
+
rules = _ref.rules,
|
|
16
|
+
initialValue = _ref.initialValue,
|
|
17
|
+
valuePropName = _ref.valuePropName,
|
|
18
|
+
errorRender = _ref.errorRender,
|
|
19
|
+
hiddenError = _ref.hiddenError;
|
|
20
|
+
var _useState = useState(),
|
|
21
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
22
|
+
meta = _useState2[0],
|
|
23
|
+
setMeta = _useState2[1];
|
|
24
|
+
var clsPrefix = 'triones-antm-form-item';
|
|
25
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
26
|
+
className: classNames(className)
|
|
27
|
+
}, /*#__PURE__*/React.createElement(Field, {
|
|
28
|
+
name: name,
|
|
29
|
+
rules: rules,
|
|
30
|
+
valuePropName: valuePropName,
|
|
31
|
+
trigger: 'onChange',
|
|
32
|
+
onMetaChange: function onMetaChange(meta) {
|
|
33
|
+
setMeta(meta);
|
|
34
|
+
},
|
|
35
|
+
initialValue: initialValue
|
|
36
|
+
}, children), !hiddenError && !isEmpty(meta === null || meta === void 0 ? void 0 : meta.errors) && /*#__PURE__*/React.createElement("div", {
|
|
37
|
+
className: classNames("".concat(clsPrefix, "-error"))
|
|
38
|
+
}, (errorRender === null || errorRender === void 0 ? void 0 : errorRender(meta === null || meta === void 0 ? void 0 : meta.errors)) || (meta === null || meta === void 0 ? void 0 : meta.errors.join(','))));
|
|
39
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React, { CSSProperties, FC } from "react";
|
|
2
|
+
import { NamePath } from "rc-field-form/lib/interface";
|
|
3
|
+
import { FormItemLayout } from "@trionesdev/antd-mobile-base-react";
|
|
4
|
+
type FormItemLabelProps = {
|
|
5
|
+
className?: string;
|
|
6
|
+
style?: CSSProperties;
|
|
7
|
+
label?: React.ReactNode;
|
|
8
|
+
layout?: FormItemLayout;
|
|
9
|
+
name?: NamePath;
|
|
10
|
+
required?: boolean;
|
|
11
|
+
};
|
|
12
|
+
export declare const FormItemLabel: FC<FormItemLabelProps>;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
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; }
|
|
3
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
4
|
+
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); }
|
|
5
|
+
import React from "react";
|
|
6
|
+
import classNames from "classnames";
|
|
7
|
+
import { isFunction } from "lodash-es";
|
|
8
|
+
import { useFormContext } from "@trionesdev/antd-mobile-base-react";
|
|
9
|
+
export var FormItemLabel = function FormItemLabel(_ref) {
|
|
10
|
+
var className = _ref.className,
|
|
11
|
+
style = _ref.style,
|
|
12
|
+
label = _ref.label,
|
|
13
|
+
layout = _ref.layout,
|
|
14
|
+
required = _ref.required;
|
|
15
|
+
var _useFormContext = useFormContext(),
|
|
16
|
+
requiredMark = _useFormContext.requiredMark,
|
|
17
|
+
colon = _useFormContext.colon;
|
|
18
|
+
var clsPrefix = "triones-antm-form-item-label";
|
|
19
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
20
|
+
className: classNames(className, _defineProperty({}, "".concat(clsPrefix, "-required"), required)),
|
|
21
|
+
style: style
|
|
22
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
23
|
+
className: classNames("".concat(clsPrefix, "-wrapper"))
|
|
24
|
+
}, required && /*#__PURE__*/React.createElement("div", {
|
|
25
|
+
className: "".concat(clsPrefix, "-required-mark")
|
|
26
|
+
}, isFunction(requiredMark) ? requiredMark(label, {
|
|
27
|
+
required: required
|
|
28
|
+
}) : '*'), label, layout == 'horizontal' && colon && ':'));
|
|
29
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React, { CSSProperties, FC, ReactElement, ReactNode } from "react";
|
|
2
|
+
import { NamePath, Rule } from "rc-field-form/lib/interface";
|
|
3
|
+
import { FormItemLayout, FormHorizontalAlign } from "@trionesdev/antd-mobile-base-react";
|
|
4
|
+
export type FormItemProps = {
|
|
5
|
+
className?: string;
|
|
6
|
+
style?: CSSProperties;
|
|
7
|
+
children?: ReactElement;
|
|
8
|
+
layout?: FormItemLayout;
|
|
9
|
+
label?: ReactNode;
|
|
10
|
+
labelAlign?: FormHorizontalAlign;
|
|
11
|
+
labelWidth?: number;
|
|
12
|
+
contentAlign?: FormHorizontalAlign;
|
|
13
|
+
name?: NamePath;
|
|
14
|
+
required?: boolean;
|
|
15
|
+
hidden?: boolean;
|
|
16
|
+
noStyle?: boolean;
|
|
17
|
+
rules?: Rule[];
|
|
18
|
+
initialValue?: any;
|
|
19
|
+
valuePropName?: string;
|
|
20
|
+
errorRender?: (errors?: any[]) => React.ReactNode;
|
|
21
|
+
extra?: ReactNode;
|
|
22
|
+
};
|
|
23
|
+
export declare const FormItem: FC<FormItemProps>;
|
|
@@ -0,0 +1,77 @@
|
|
|
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
|
+
var _excluded = ["className", "style", "children", "layout", "label", "labelAlign", "labelWidth", "contentAlign", "name", "required", "hidden", "noStyle", "rules", "initialValue", "valuePropName", "errorRender", "extra"];
|
|
3
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
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
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
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
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
8
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
9
|
+
import React from "react";
|
|
10
|
+
import { FormItemLabel } from "./form-item-label";
|
|
11
|
+
import { FormItemContent } from "./form-item-content";
|
|
12
|
+
import classNames from "classnames";
|
|
13
|
+
import { Field, useFormContext } from "@trionesdev/antd-mobile-base-react";
|
|
14
|
+
import { useTaro } from "../../hooks";
|
|
15
|
+
export var FormItem = function FormItem(_ref) {
|
|
16
|
+
var className = _ref.className,
|
|
17
|
+
style = _ref.style,
|
|
18
|
+
children = _ref.children,
|
|
19
|
+
layout = _ref.layout,
|
|
20
|
+
label = _ref.label,
|
|
21
|
+
labelAlign = _ref.labelAlign,
|
|
22
|
+
labelWidth = _ref.labelWidth,
|
|
23
|
+
contentAlign = _ref.contentAlign,
|
|
24
|
+
name = _ref.name,
|
|
25
|
+
required = _ref.required,
|
|
26
|
+
_ref$hidden = _ref.hidden,
|
|
27
|
+
hidden = _ref$hidden === void 0 ? false : _ref$hidden,
|
|
28
|
+
_ref$noStyle = _ref.noStyle,
|
|
29
|
+
noStyle = _ref$noStyle === void 0 ? false : _ref$noStyle,
|
|
30
|
+
rules = _ref.rules,
|
|
31
|
+
initialValue = _ref.initialValue,
|
|
32
|
+
valuePropName = _ref.valuePropName,
|
|
33
|
+
errorRender = _ref.errorRender,
|
|
34
|
+
extra = _ref.extra,
|
|
35
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
36
|
+
var _useTaro = useTaro(),
|
|
37
|
+
isTaroWeApp = _useTaro.isTaroWeApp,
|
|
38
|
+
isTaroWeb = _useTaro.isTaroWeb;
|
|
39
|
+
// const { layout: formLayout, labelAlign: formLayoutAlign, labelWidth: formLabelWidth, hiddenError, extra: formExtra } = useFormContext()
|
|
40
|
+
var ctx = useFormContext();
|
|
41
|
+
var formItemLayout = layout ? layout : ctx.layout === 'inline' ? 'horizontal' : ctx.layout;
|
|
42
|
+
var formItemAlign = labelAlign ? labelAlign : ctx.labelAlign || 'left';
|
|
43
|
+
var formItemLabelWidth = labelWidth ? labelWidth : ctx.labelWidth;
|
|
44
|
+
var formItemExtra = extra !== undefined ? extra : ctx.extra;
|
|
45
|
+
var formItemWrapperAlign = contentAlign ? contentAlign : ctx.contentAlign;
|
|
46
|
+
var clsPrefix = "triones-antm-form-item";
|
|
47
|
+
if (noStyle) {
|
|
48
|
+
return /*#__PURE__*/React.createElement(Field, {
|
|
49
|
+
name: name,
|
|
50
|
+
rules: rules,
|
|
51
|
+
valuePropName: valuePropName,
|
|
52
|
+
trigger: 'onChange',
|
|
53
|
+
initialValue: initialValue
|
|
54
|
+
}, children);
|
|
55
|
+
}
|
|
56
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
57
|
+
className: classNames(clsPrefix, "".concat(clsPrefix, "-").concat(formItemLayout), className, _defineProperty(_defineProperty(_defineProperty({}, "".concat(clsPrefix, "-hidden"), hidden), "h5", isTaroWeb), "wx", isTaroWeApp)),
|
|
58
|
+
style: style
|
|
59
|
+
}, label && /*#__PURE__*/React.createElement(FormItemLabel, {
|
|
60
|
+
className: classNames("".concat(clsPrefix, "-label"), "".concat(clsPrefix, "-label-").concat(formItemAlign)),
|
|
61
|
+
style: {
|
|
62
|
+
width: formItemLabelWidth
|
|
63
|
+
},
|
|
64
|
+
layout: formItemLayout,
|
|
65
|
+
label: label,
|
|
66
|
+
required: required
|
|
67
|
+
}), /*#__PURE__*/React.createElement(FormItemContent, _extends({
|
|
68
|
+
className: classNames("".concat(clsPrefix, "-content"), "".concat(clsPrefix, "-content-").concat(formItemWrapperAlign))
|
|
69
|
+
}, props, {
|
|
70
|
+
name: name,
|
|
71
|
+
rules: rules,
|
|
72
|
+
errorRender: errorRender,
|
|
73
|
+
initialValue: initialValue,
|
|
74
|
+
valuePropName: valuePropName,
|
|
75
|
+
hiddenError: ctx.hiddenError
|
|
76
|
+
}), children), formItemExtra);
|
|
77
|
+
};
|
package/dist/Form/index.d.ts
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
import { Form, FormProps,
|
|
2
|
-
|
|
1
|
+
import { Form as InternalForm, FormProps, FormInstance } from "@trionesdev/antd-mobile-base-react";
|
|
2
|
+
import FormItem, { FormItemProps } from "./FormItem";
|
|
3
|
+
import "./style.scss";
|
|
4
|
+
type InternalFormType = typeof InternalForm;
|
|
5
|
+
type CompoundedComponent = InternalFormType & {
|
|
6
|
+
Item: typeof FormItem;
|
|
7
|
+
};
|
|
8
|
+
declare const Form: CompoundedComponent;
|
|
9
|
+
export type { FormProps, FormItemProps, FormInstance };
|
|
3
10
|
export default Form;
|
package/dist/Form/index.js
CHANGED
|
@@ -1,2 +1,6 @@
|
|
|
1
|
-
import { Form } from "@trionesdev/antd-mobile-base-react";
|
|
1
|
+
import { Form as InternalForm } from "@trionesdev/antd-mobile-base-react";
|
|
2
|
+
import FormItem from "./FormItem";
|
|
3
|
+
import "./style.scss";
|
|
4
|
+
var Form = InternalForm;
|
|
5
|
+
Form.Item = FormItem;
|
|
2
6
|
export default Form;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
@use "../style/variable" as variable;
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
$cls-prefix-form-item: 'triones-antm-form-item';
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
.#{$cls-prefix-form-item} {
|
|
8
|
+
&.h5 {
|
|
9
|
+
@include variable.h5-line-height;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&.wx {
|
|
13
|
+
@include variable.wx-input-size;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&-label {
|
|
17
|
+
font-size: variable.$trionesFontSize;
|
|
18
|
+
color: #6F6F6F;
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
&-wrapper {
|
|
22
|
+
//display: flex;
|
|
23
|
+
//align-items: center;
|
|
24
|
+
height: 100%;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
&-required-mark {
|
|
28
|
+
display: inline-block;
|
|
29
|
+
color: variable.$trionesColorError;
|
|
30
|
+
width: 8Px;
|
|
31
|
+
margin-left: -8Px;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
&-content {
|
|
37
|
+
|
|
38
|
+
&-end {
|
|
39
|
+
text-align: end;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.#{$cls-prefix-form-item} {
|
|
43
|
+
&-error {
|
|
44
|
+
font-size: variable.$trionesFontSizeSm;
|
|
45
|
+
color: variable.$trionesColorError;
|
|
46
|
+
line-height: normal;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&-horizontal {
|
|
52
|
+
display: flex;
|
|
53
|
+
|
|
54
|
+
.#{$cls-prefix-form-item} {
|
|
55
|
+
&-label {
|
|
56
|
+
padding-block: 12Px;
|
|
57
|
+
flex-shrink: 1;
|
|
58
|
+
min-width: 0;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
&-content {
|
|
62
|
+
padding-block: 12Px;
|
|
63
|
+
flex: 1;
|
|
64
|
+
flex-shrink: 1;
|
|
65
|
+
min-width: 0;
|
|
66
|
+
|
|
67
|
+
&-end {
|
|
68
|
+
text-align: end;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
&.#{$cls-prefix-form-item} {
|
|
74
|
+
&-start {
|
|
75
|
+
align-items: flex-start;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
&-center {
|
|
79
|
+
//align-items: center;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
&-vertical {
|
|
85
|
+
.#{$cls-prefix-form-item} {
|
|
86
|
+
&-label {
|
|
87
|
+
margin-bottom: 4Px;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
&-content {
|
|
91
|
+
padding-block-end: 8Px;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
&-hidden {
|
|
98
|
+
display: none;
|
|
99
|
+
}
|
|
100
|
+
}
|