@1money/component-ui 0.0.20 → 0.0.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/.claude/settings.local.json +2 -1
- package/AGENTS.md +7 -1
- package/es/components/ProForm/ProForm.js +93 -116
- package/es/components/ProForm/ProFormDependency.js +2 -4
- package/es/components/ProForm/ProFormItem.d.ts +4 -0
- package/es/components/ProForm/ProFormItem.js +213 -0
- package/es/components/ProForm/ProFormList.js +5 -6
- package/es/components/ProForm/Submitter.js +2 -2
- package/es/components/ProForm/context.d.ts +10 -2
- package/es/components/ProForm/context.js +17 -14
- package/es/components/{Form → ProForm/core}/constants.d.ts +1 -1
- package/es/components/ProForm/core/constants.js +18 -0
- package/es/components/ProForm/core/hooks/useForm.js +541 -0
- package/es/components/ProForm/core/hooks/useFormCore.js +347 -0
- package/es/components/ProForm/core/index.d.ts +6 -0
- package/es/components/ProForm/core/index.js +6 -0
- package/es/components/{Form → ProForm/core}/interface.d.ts +21 -60
- package/es/components/ProForm/core/interface.js +2 -0
- package/es/components/ProForm/core/useFormItem.d.ts +20 -0
- package/es/components/ProForm/core/useFormItem.js +121 -0
- package/es/components/ProForm/fields/ProFormFieldSet.js +7 -6
- package/es/components/ProForm/fields/createProFormField.js +76 -151
- package/es/components/ProForm/index.d.ts +12 -5
- package/es/components/ProForm/index.js +20 -8
- package/es/components/ProForm/interface.d.ts +76 -41
- package/es/components/ProForm/style/ProForm.css +1 -1
- package/es/index.css +1 -1
- package/es/index.d.ts +3 -4
- package/es/index.js +2 -3
- package/lib/components/ProForm/ProForm.js +94 -117
- package/lib/components/ProForm/ProFormDependency.js +2 -4
- package/lib/components/ProForm/ProFormItem.d.ts +4 -0
- package/lib/components/ProForm/ProFormItem.js +222 -0
- package/lib/components/ProForm/ProFormList.js +4 -5
- package/lib/components/ProForm/Submitter.js +2 -2
- package/lib/components/ProForm/context.d.ts +10 -2
- package/lib/components/ProForm/context.js +18 -15
- package/lib/components/{Form → ProForm/core}/constants.d.ts +1 -1
- package/lib/components/ProForm/core/constants.js +24 -0
- package/lib/components/ProForm/core/hooks/useForm.js +551 -0
- package/lib/components/ProForm/core/hooks/useFormCore.js +354 -0
- package/lib/components/ProForm/core/index.d.ts +6 -0
- package/lib/components/ProForm/core/index.js +56 -0
- package/lib/components/{Form → ProForm/core}/interface.d.ts +21 -60
- package/lib/components/ProForm/core/interface.js +6 -0
- package/lib/components/ProForm/core/useFormItem.d.ts +20 -0
- package/lib/components/ProForm/core/useFormItem.js +131 -0
- package/lib/components/ProForm/fields/ProFormFieldSet.js +7 -6
- package/lib/components/ProForm/fields/createProFormField.js +76 -151
- package/lib/components/ProForm/index.d.ts +12 -5
- package/lib/components/ProForm/index.js +41 -28
- package/lib/components/ProForm/interface.d.ts +76 -41
- package/lib/components/ProForm/style/ProForm.css +1 -1
- package/lib/index.css +1 -1
- package/lib/index.d.ts +3 -4
- package/lib/index.js +49 -50
- package/package.json +1 -1
- package/es/components/Form/Form.d.ts +0 -4
- package/es/components/Form/Form.js +0 -73
- package/es/components/Form/FormItem.d.ts +0 -4
- package/es/components/Form/FormItem.js +0 -183
- package/es/components/Form/constants.js +0 -19
- package/es/components/Form/context.d.ts +0 -5
- package/es/components/Form/context.js +0 -19
- package/es/components/Form/hooks/useForm.js +0 -541
- package/es/components/Form/hooks/useFormCore.js +0 -348
- package/es/components/Form/index.d.ts +0 -10
- package/es/components/Form/index.js +0 -17
- package/es/components/Form/interface.js +0 -2
- package/es/components/Form/style/Form.css +0 -1
- package/es/components/Form/style/css.js +0 -2
- package/es/components/Form/style/index.d.ts +0 -1
- package/es/components/Form/style/index.js +0 -2
- package/lib/components/Form/Form.d.ts +0 -4
- package/lib/components/Form/Form.js +0 -80
- package/lib/components/Form/FormItem.d.ts +0 -4
- package/lib/components/Form/FormItem.js +0 -193
- package/lib/components/Form/constants.js +0 -25
- package/lib/components/Form/context.d.ts +0 -5
- package/lib/components/Form/context.js +0 -25
- package/lib/components/Form/hooks/useForm.js +0 -551
- package/lib/components/Form/hooks/useFormCore.js +0 -355
- package/lib/components/Form/index.d.ts +0 -10
- package/lib/components/Form/index.js +0 -83
- package/lib/components/Form/interface.js +0 -6
- package/lib/components/Form/style/Form.css +0 -1
- package/lib/components/Form/style/css.js +0 -4
- package/lib/components/Form/style/index.d.ts +0 -1
- package/lib/components/Form/style/index.js +0 -4
- /package/es/components/{Form → ProForm/core}/hooks/useForm.d.ts +0 -0
- /package/es/components/{Form → ProForm/core}/hooks/useFormCore.d.ts +0 -0
- /package/lib/components/{Form → ProForm/core}/hooks/useForm.d.ts +0 -0
- /package/lib/components/{Form → ProForm/core}/hooks/useFormCore.d.ts +0 -0
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = exports.FormItem = void 0;
|
|
9
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
10
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
-
var _hooks = require("@1money/hooks");
|
|
13
|
-
var _Typography = require("../Typography");
|
|
14
|
-
var _classnames = _interopRequireWildcard(require("../../utils/classnames"));
|
|
15
|
-
var _context = require("./context");
|
|
16
|
-
var _constants = require("./constants");
|
|
17
|
-
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); }
|
|
18
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof3(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; }
|
|
19
|
-
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
20
|
-
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
21
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
22
|
-
// ---------------------------------------------------------------------------
|
|
23
|
-
// Nested path helper for reading dot-separated paths (e.g. "items.0.title")
|
|
24
|
-
// ---------------------------------------------------------------------------
|
|
25
|
-
function getNestedValue(obj, path) {
|
|
26
|
-
var keys = path.split('.');
|
|
27
|
-
var current = obj;
|
|
28
|
-
var _iterator = _createForOfIteratorHelper(keys),
|
|
29
|
-
_step;
|
|
30
|
-
try {
|
|
31
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
32
|
-
var key = _step.value;
|
|
33
|
-
if (current === null || current === undefined || (0, _typeof2["default"])(current) !== 'object') return undefined;
|
|
34
|
-
current = current[key];
|
|
35
|
-
}
|
|
36
|
-
} catch (err) {
|
|
37
|
-
_iterator.e(err);
|
|
38
|
-
} finally {
|
|
39
|
-
_iterator.f();
|
|
40
|
-
}
|
|
41
|
-
return current;
|
|
42
|
-
}
|
|
43
|
-
var FormItemBase = function FormItemBase(props) {
|
|
44
|
-
var children = props.children,
|
|
45
|
-
_props$className = props.className,
|
|
46
|
-
className = _props$className === void 0 ? '' : _props$className,
|
|
47
|
-
_props$prefixCls = props.prefixCls,
|
|
48
|
-
prefixCls = _props$prefixCls === void 0 ? 'form-item' : _props$prefixCls,
|
|
49
|
-
label = props.label,
|
|
50
|
-
name = props.name,
|
|
51
|
-
_props$rules = props.rules,
|
|
52
|
-
rules = _props$rules === void 0 ? [] : _props$rules,
|
|
53
|
-
required = props.required,
|
|
54
|
-
help = props.help,
|
|
55
|
-
validateStatus = props.validateStatus,
|
|
56
|
-
itemColon = props.colon,
|
|
57
|
-
_props$hidden = props.hidden,
|
|
58
|
-
hidden = _props$hidden === void 0 ? false : _props$hidden;
|
|
59
|
-
var formContext = (0, _context.useFormContext)();
|
|
60
|
-
var values = formContext.values,
|
|
61
|
-
errors = formContext.errors,
|
|
62
|
-
setFieldValue = formContext.setFieldValue,
|
|
63
|
-
validateField = formContext.validateField,
|
|
64
|
-
registerField = formContext.registerField,
|
|
65
|
-
unregisterField = formContext.unregisterField,
|
|
66
|
-
size = formContext.size,
|
|
67
|
-
labelAlign = formContext.labelAlign,
|
|
68
|
-
formColon = formContext.colon,
|
|
69
|
-
requiredMark = formContext.requiredMark,
|
|
70
|
-
validateTrigger = formContext.validateTrigger;
|
|
71
|
-
var classes = (0, _classnames["default"])(prefixCls);
|
|
72
|
-
var finalColon = itemColon !== undefined ? itemColon : formColon;
|
|
73
|
-
var isRequired = required || rules.some(function (rule) {
|
|
74
|
-
return rule.required;
|
|
75
|
-
});
|
|
76
|
-
var fieldValue = name ? name.includes('.') ? getNestedValue(values, name) : values[name] : undefined;
|
|
77
|
-
var fieldError = name ? name.includes('.') ? getNestedValue(errors, name) : errors[name] : undefined;
|
|
78
|
-
var finalValidateStatus = validateStatus || (fieldError ? 'error' : undefined);
|
|
79
|
-
var handleValidate = (0, _hooks.useEventCallback)(function (value) {
|
|
80
|
-
if (name && rules.length > 0) {
|
|
81
|
-
return validateField(name, rules, value);
|
|
82
|
-
}
|
|
83
|
-
return true;
|
|
84
|
-
});
|
|
85
|
-
var handleFieldChange = (0, _hooks.useEventCallback)(function (value) {
|
|
86
|
-
if (name) {
|
|
87
|
-
setFieldValue(name, value);
|
|
88
|
-
if (validateTrigger === 'onChange') {
|
|
89
|
-
handleValidate(value);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
var handleFieldBlur = (0, _hooks.useEventCallback)(function () {
|
|
94
|
-
if (validateTrigger === 'onBlur') {
|
|
95
|
-
handleValidate(fieldValue);
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
(0, _react.useEffect)(function () {
|
|
99
|
-
if (name && registerField) {
|
|
100
|
-
registerField(name, rules);
|
|
101
|
-
}
|
|
102
|
-
return function () {
|
|
103
|
-
if (name && unregisterField) {
|
|
104
|
-
unregisterField(name);
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
}, [name]); // Only re-register when field name changes
|
|
108
|
-
var renderChildren = function renderChildren() {
|
|
109
|
-
if (!children) return null;
|
|
110
|
-
return _react["default"].Children.map(children, function (child) {
|
|
111
|
-
var _a;
|
|
112
|
-
if (! /*#__PURE__*/_react["default"].isValidElement(child)) {
|
|
113
|
-
return child;
|
|
114
|
-
}
|
|
115
|
-
if (name) {
|
|
116
|
-
var safeValue = fieldValue;
|
|
117
|
-
var childProps = child.props;
|
|
118
|
-
var displayName = (_a = child.type) === null || _a === void 0 ? void 0 : _a.displayName;
|
|
119
|
-
var isFormComponent = _constants.FORM_COMPONENT_NAMES.includes(displayName) || childProps.placeholder !== undefined || childProps.value !== undefined;
|
|
120
|
-
if (isFormComponent) {
|
|
121
|
-
if (safeValue === null || safeValue === undefined) {
|
|
122
|
-
if (['Input', 'TextArea', 'InputNumber'].includes(displayName || '') || childProps.placeholder !== undefined) {
|
|
123
|
-
safeValue = '';
|
|
124
|
-
} else if (['Checkbox', 'Switch'].includes(displayName || '')) {
|
|
125
|
-
safeValue = false;
|
|
126
|
-
}
|
|
127
|
-
} else if (['Input', 'TextArea'].includes(displayName || '') && typeof safeValue !== 'string' && typeof safeValue !== 'number') {
|
|
128
|
-
safeValue = '';
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
var injectedProps = Object.assign({
|
|
132
|
-
value: safeValue,
|
|
133
|
-
onChange: function onChange(e) {
|
|
134
|
-
var actualValue = e && (0, _typeof2["default"])(e) === 'object' && 'target' in e ? e.target.value : e;
|
|
135
|
-
handleFieldChange(actualValue);
|
|
136
|
-
if (typeof childProps.onChange === 'function') {
|
|
137
|
-
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
138
|
-
args[_key - 1] = arguments[_key];
|
|
139
|
-
}
|
|
140
|
-
childProps.onChange.apply(childProps, [e].concat(args));
|
|
141
|
-
}
|
|
142
|
-
},
|
|
143
|
-
onBlur: function onBlur() {
|
|
144
|
-
handleFieldBlur();
|
|
145
|
-
if (typeof childProps.onBlur === 'function') {
|
|
146
|
-
childProps.onBlur.apply(childProps, arguments);
|
|
147
|
-
}
|
|
148
|
-
},
|
|
149
|
-
size: childProps.size || size
|
|
150
|
-
}, finalValidateStatus === 'error' && {
|
|
151
|
-
status: 'error'
|
|
152
|
-
});
|
|
153
|
-
return /*#__PURE__*/_react["default"].cloneElement(child, injectedProps);
|
|
154
|
-
}
|
|
155
|
-
return child;
|
|
156
|
-
});
|
|
157
|
-
};
|
|
158
|
-
if (hidden) {
|
|
159
|
-
return null;
|
|
160
|
-
}
|
|
161
|
-
return (0, _jsxRuntime.jsxs)("div", {
|
|
162
|
-
className: classes(undefined, (0, _classnames.joinCls)(size === 'small' && classes('small'), className)),
|
|
163
|
-
children: [label && (0, _jsxRuntime.jsx)("div", {
|
|
164
|
-
className: classes('label-wrapper', (0, _classnames.joinCls)(classes('label-wrapper-vertical'), labelAlign && classes("label-wrapper-".concat(labelAlign)))),
|
|
165
|
-
children: (0, _jsxRuntime.jsx)(_Typography.TypographyLabel, {
|
|
166
|
-
as: "label",
|
|
167
|
-
size: _constants.FORM_LABEL_SIZE,
|
|
168
|
-
color: _constants.FORM_LABEL_COLOR,
|
|
169
|
-
className: classes('label', (0, _classnames.joinCls)(isRequired && requiredMark && classes('label-required'))),
|
|
170
|
-
children: label
|
|
171
|
-
})
|
|
172
|
-
}), (0, _jsxRuntime.jsxs)("div", {
|
|
173
|
-
className: classes('control'),
|
|
174
|
-
children: [renderChildren(), fieldError && (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
|
|
175
|
-
as: "div",
|
|
176
|
-
className: classes('error'),
|
|
177
|
-
size: _constants.FORM_ERROR_SIZE,
|
|
178
|
-
color: _constants.FORM_ERROR_COLOR,
|
|
179
|
-
children: fieldError
|
|
180
|
-
}), !fieldError && help && (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
|
|
181
|
-
as: "div",
|
|
182
|
-
className: classes('help'),
|
|
183
|
-
size: _constants.FORM_HELP_SIZE,
|
|
184
|
-
color: _constants.FORM_HELP_COLOR,
|
|
185
|
-
children: help
|
|
186
|
-
})]
|
|
187
|
-
})]
|
|
188
|
-
});
|
|
189
|
-
};
|
|
190
|
-
FormItemBase.displayName = 'FormItem';
|
|
191
|
-
var FormItem = exports.FormItem = /*#__PURE__*/(0, _react.memo)(FormItemBase);
|
|
192
|
-
var _default = exports["default"] = FormItem;
|
|
193
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRm9ybS9Gb3JtSXRlbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRm9ybS9Gb3JtSXRlbS50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfaG9va3MiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX2NvbnRleHQiLCJfY29uc3RhbnRzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mMyIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJBcnJheSIsImlzQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJsZW5ndGgiLCJfbiIsIkYiLCJzIiwiZG9uZSIsInZhbHVlIiwiZiIsIlR5cGVFcnJvciIsIm8iLCJuZXh0IiwiX2FycmF5TGlrZVRvQXJyYXkiLCJ0b1N0cmluZyIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiZnJvbSIsInRlc3QiLCJnZXROZXN0ZWRWYWx1ZSIsIm9iaiIsInBhdGgiLCJrZXlzIiwic3BsaXQiLCJjdXJyZW50IiwiX2l0ZXJhdG9yIiwiX3N0ZXAiLCJrZXkiLCJ1bmRlZmluZWQiLCJfdHlwZW9mMiIsImVyciIsIkZvcm1JdGVtQmFzZSIsInByb3BzIiwiY2hpbGRyZW4iLCJfcHJvcHMkY2xhc3NOYW1lIiwiY2xhc3NOYW1lIiwiX3Byb3BzJHByZWZpeENscyIsInByZWZpeENscyIsImxhYmVsIiwiX3Byb3BzJHJ1bGVzIiwicnVsZXMiLCJyZXF1aXJlZCIsImhlbHAiLCJ2YWxpZGF0ZVN0YXR1cyIsIml0ZW1Db2xvbiIsImNvbG9uIiwiX3Byb3BzJGhpZGRlbiIsImhpZGRlbiIsImZvcm1Db250ZXh0IiwidXNlRm9ybUNvbnRleHQiLCJ2YWx1ZXMiLCJlcnJvcnMiLCJzZXRGaWVsZFZhbHVlIiwidmFsaWRhdGVGaWVsZCIsInJlZ2lzdGVyRmllbGQiLCJ1bnJlZ2lzdGVyRmllbGQiLCJzaXplIiwibGFiZWxBbGlnbiIsImZvcm1Db2xvbiIsInJlcXVpcmVkTWFyayIsInZhbGlkYXRlVHJpZ2dlciIsImNsYXNzZXMiLCJjbGFzc25hbWVzIiwiZmluYWxDb2xvbiIsImlzUmVxdWlyZWQiLCJzb21lIiwicnVsZSIsImZpZWxkVmFsdWUiLCJpbmNsdWRlcyIsImZpZWxkRXJyb3IiLCJmaW5hbFZhbGlkYXRlU3RhdHVzIiwiaGFuZGxlVmFsaWRhdGUiLCJ1c2VFdmVudENhbGxiYWNrIiwiaGFuZGxlRmllbGRDaGFuZ2UiLCJoYW5kbGVGaWVsZEJsdXIiLCJ1c2VFZmZlY3QiLCJyZW5kZXJDaGlsZHJlbiIsIlJlYWN0IiwiQ2hpbGRyZW4iLCJtYXAiLCJjaGlsZCIsIl9hIiwiaXNWYWxpZEVsZW1lbnQiLCJzYWZlVmFsdWUiLCJjaGlsZFByb3BzIiwiZGlzcGxheU5hbWUiLCJ0eXBlIiwiaXNGb3JtQ29tcG9uZW50IiwiRk9STV9DT01QT05FTlRfTkFNRVMiLCJwbGFjZWhvbGRlciIsImluamVjdGVkUHJvcHMiLCJhc3NpZ24iLCJvbkNoYW5nZSIsImFjdHVhbFZhbHVlIiwidGFyZ2V0IiwiX2xlbiIsImFyZ3VtZW50cyIsImFyZ3MiLCJfa2V5IiwiYXBwbHkiLCJjb25jYXQiLCJvbkJsdXIiLCJzdGF0dXMiLCJjbG9uZUVsZW1lbnQiLCJfanN4cyIsImpvaW5DbHMiLCJfanN4IiwiVHlwb2dyYXBoeUxhYmVsIiwiYXMiLCJGT1JNX0xBQkVMX1NJWkUiLCJjb2xvciIsIkZPUk1fTEFCRUxfQ09MT1IiLCJUeXBvZ3JhcGh5Qm9keSIsIkZPUk1fRVJST1JfU0laRSIsIkZPUk1fRVJST1JfQ09MT1IiLCJGT1JNX0hFTFBfU0laRSIsIkZPUk1fSEVMUF9DT0xPUiIsIkZvcm1JdGVtIiwiZXhwb3J0cyIsIm1lbW8iLCJfZGVmYXVsdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDQUEsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBSCx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQU0sUUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sVUFBQSxHQUFBUCxPQUFBO0FBUXFCLFNBQUFRLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBUCx3QkFBQU8sQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxRQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsT0FBQVEsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZCxDQUFBLG9CQUFBYyxDQUFBLE9BQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBaEIsQ0FBQSxFQUFB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QkFBZTtRQUFBbkYsUUFBQSxFQUFHUztNQUFJLENBQUEsQ0FBa0I7SUFBQSxDQUFBLENBQzlJO0VBQUEsQ0FBQSxDQUNGO0FBRVYsQ0FBQztBQUVEWCxZQUFZLENBQUNzRCxXQUFXLEdBQUcsVUFBVTtBQUU5QixJQUFNZ0MsUUFBUSxHQUFBQyxPQUFBLENBQUFELFFBQUEsZ0JBQUcsSUFBQUUsV0FBSSxFQUFDeEYsWUFBWSxDQUFDO0FBQUMsSUFBQXlGLFFBQUEsR0FBQUYsT0FBQSxjQUU1QkQsUUFBUSIsImZpbGUiOiJjb21wb25lbnRzL0Zvcm0vRm9ybUl0ZW0uanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IFJlYWN0LCB7IG1lbW8sIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUV2ZW50Q2FsbGJhY2sgfSBmcm9tICdAMW1vbmV5L2hvb2tzJztcbmltcG9ydCB7IFR5cG9ncmFwaHlCb2R5LCBUeXBvZ3JhcGh5TGFiZWwgfSBmcm9tICcuLi9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IGRlZmF1bHQgYXMgY2xhc3NuYW1lcywgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgdXNlRm9ybUNvbnRleHQgfSBmcm9tICcuL2NvbnRleHQnO1xuaW1wb3J0IHsgRk9STV9DT01QT05FTlRfTkFNRVMsIEZPUk1fRVJST1JfQ09MT1IsIEZPUk1fRVJST1JfU0laRSwgRk9STV9IRUxQX0NPTE9SLCBGT1JNX0hFTFBfU0laRSwgRk9STV9MQUJFTF9DT0xPUiwgRk9STV9MQUJFTF9TSVpFLCB9IGZyb20gJy4vY29uc3RhbnRzJztcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTmVzdGVkIHBhdGggaGVscGVyIGZvciByZWFkaW5nIGRvdC1zZXBhcmF0ZWQgcGF0aHMgKGUuZy4gXCJpdGVtcy4wLnRpdGxlXCIpXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmZ1bmN0aW9uIGdldE5lc3RlZFZhbHVlKG9iaiwgcGF0aCkge1xuICAgIGNvbnN0IGtleXMgPSBwYXRoLnNwbGl0KCcuJyk7XG4gICAgbGV0IGN1cnJlbnQgPSBvYmo7XG4gICAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgICAgICBpZiAoY3VycmVudCA9PT0gbnVsbCB8fCBjdXJyZW50ID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGN1cnJlbnQgIT09ICdvYmplY3QnKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgY3VycmVudCA9IGN1cnJlbnRba2V5XTtcbiAgICB9XG4gICAgcmV0dXJuIGN1cnJlbnQ7XG59XG5jb25zdCBGb3JtSXRlbUJhc2UgPSAocHJvcHMpID0+IHtcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBjbGFzc05hbWUgPSAnJywgcHJlZml4Q2xzID0gJ2Zvcm0taXRlbScsIGxhYmVsLCBuYW1lLCBydWxlcyA9IFtdLCByZXF1aXJlZCwgaGVscCwgdmFsaWRhdGVTdGF0dXMsIGNvbG9uOiBpdGVtQ29sb24sIGhpZGRlbiA9IGZhbHNlLCB9ID0gcHJvcHM7XG4gICAgY29uc3QgZm9ybUNvbnRleHQgPSB1c2VGb3JtQ29udGV4dCgpO1xuICAgIGNvbnN0IHsgdmFsdWVzLCBlcnJvcnMsIHNldEZpZWxkVmFsdWUsIHZhbGlkYXRlRmllbGQsIHJlZ2lzdGVyRmllbGQsIHVucmVnaXN0ZXJGaWVsZCwgc2l6ZSwgbGFiZWxBbGlnbiwgY29sb246IGZvcm1Db2xvbiwgcmVxdWlyZWRNYXJrLCB2YWxpZGF0ZVRyaWdnZXIsIH0gPSBmb3JtQ29udGV4dDtcbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhwcmVmaXhDbHMpO1xuICAgIGNvbnN0IGZpbmFsQ29sb24gPSBpdGVtQ29sb24gIT09IHVuZGVmaW5lZCA/IGl0ZW1Db2xvbiA6IGZvcm1Db2xvbjtcbiAgICBjb25zdCBpc1JlcXVpcmVkID0gcmVxdWlyZWQgfHwgcnVsZXMuc29tZSgocnVsZSkgPT4gcnVsZS5yZXF1aXJlZCk7XG4gICAgY29uc3QgZmllbGRWYWx1ZSA9IG5hbWVcbiAgICAgICAgPyAobmFtZS5pbmNsdWRlcygnLicpID8gZ2V0TmVzdGVkVmFsdWUodmFsdWVzLCBuYW1lKSA6IHZhbHVlc1tuYW1lXSlcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgZmllbGRFcnJvciA9IG5hbWVcbiAgICAgICAgPyAobmFtZS5pbmNsdWRlcygnLicpID8gZ2V0TmVzdGVkVmFsdWUoZXJyb3JzLCBuYW1lKSA6IGVycm9yc1tuYW1lXSlcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgZmluYWxWYWxpZGF0ZVN0YXR1cyA9IHZhbGlkYXRlU3RhdHVzIHx8IChmaWVsZEVycm9yID8gJ2Vycm9yJyA6IHVuZGVmaW5lZCk7XG4gICAgY29uc3QgaGFuZGxlVmFsaWRhdGUgPSB1c2VFdmVudENhbGxiYWNrKCh2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAobmFtZSAmJiBydWxlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsaWRhdGVGaWVsZChuYW1lLCBydWxlcywgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZUZpZWxkQ2hhbmdlID0gdXNlRXZlbnRDYWxsYmFjaygodmFsdWUpID0+IHtcbiAgICAgICAgaWYgKG5hbWUpIHtcbiAgICAgICAgICAgIHNldEZpZWxkVmFsdWUobmFtZSwgdmFsdWUpO1xuICAgICAgICAgICAgaWYgKHZhbGlkYXRlVHJpZ2dlciA9PT0gJ29uQ2hhbmdlJykge1xuICAgICAgICAgICAgICAgIGhhbmRsZVZhbGlkYXRlKHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZUZpZWxkQmx1ciA9IHVzZUV2ZW50Q2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBpZiAodmFsaWRhdGVUcmlnZ2VyID09PSAnb25CbHVyJykge1xuICAgICAgICAgICAgaGFuZGxlVmFsaWRhdGUoZmllbGRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAobmFtZSAmJiByZWdpc3RlckZpZWxkKSB7XG4gICAgICAgICAgICByZWdpc3RlckZpZWxkKG5hbWUsIHJ1bGVzKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKG5hbWUgJiYgdW5yZWdpc3RlckZpZWxkKSB7XG4gICAgICAgICAgICAgICAgdW5yZWdpc3RlckZpZWxkKG5hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH0sIFtuYW1lXSk7IC8vIE9ubHkgcmUtcmVnaXN0ZXIgd2hlbiBmaWVsZCBuYW1lIGNoYW5nZXNcbiAgICBjb25zdCByZW5kZXJDaGlsZHJlbiA9ICgpID0+IHtcbiAgICAgICAgaWYgKCFjaGlsZHJlbilcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICByZXR1cm4gUmVhY3QuQ2hpbGRyZW4ubWFwKGNoaWxkcmVuLCAoY2hpbGQpID0+IHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIGlmICghUmVhY3QuaXNWYWxpZEVsZW1lbnQoY2hpbGQpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNoaWxkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKG5hbWUpIHtcbiAgICAgICAgICAgICAgICBsZXQgc2FmZVZhbHVlID0gZmllbGRWYWx1ZTtcbiAgICAgICAgICAgICAgICBjb25zdCBjaGlsZFByb3BzID0gY2hpbGQucHJvcHM7XG4gICAgICAgICAgICAgICAgY29uc3QgZGlzcGxheU5hbWUgPSAoX2EgPSBjaGlsZC50eXBlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZGlzcGxheU5hbWU7XG4gICAgICAgICAgICAgICAgY29uc3QgaXNGb3JtQ29tcG9uZW50ID0gRk9STV9DT01QT05FTlRfTkFNRVMuaW5jbHVkZXMoZGlzcGxheU5hbWUpIHx8XG4gICAgICAgICAgICAgICAgICAgIGNoaWxkUHJvcHMucGxhY2Vob2xkZXIgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICBjaGlsZFByb3BzLnZhbHVlICE9PSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgaWYgKGlzRm9ybUNvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoc2FmZVZhbHVlID09PSBudWxsIHx8IHNhZmVWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoWydJbnB1dCcsICdUZXh0QXJlYScsICdJbnB1dE51bWJlciddLmluY2x1ZGVzKGRpc3BsYXlOYW1lIHx8ICcnKSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkUHJvcHMucGxhY2Vob2xkZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhZmVWYWx1ZSA9ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoWydDaGVja2JveCcsICdTd2l0Y2gnXS5pbmNsdWRlcyhkaXNwbGF5TmFtZSB8fCAnJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYWZlVmFsdWUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChbJ0lucHV0JywgJ1RleHRBcmVhJ10uaW5jbHVkZXMoZGlzcGxheU5hbWUgfHwgJycpICYmXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlb2Ygc2FmZVZhbHVlICE9PSAnc3RyaW5nJyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW9mIHNhZmVWYWx1ZSAhPT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNhZmVWYWx1ZSA9ICcnO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IGluamVjdGVkUHJvcHMgPSBPYmplY3QuYXNzaWduKHsgdmFsdWU6IHNhZmVWYWx1ZSwgb25DaGFuZ2U6IChlLCAuLi5hcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhY3R1YWxWYWx1ZSA9IGUgJiYgdHlwZW9mIGUgPT09ICdvYmplY3QnICYmICd0YXJnZXQnIGluIGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGUudGFyZ2V0LnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlRmllbGRDaGFuZ2UoYWN0dWFsVmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjaGlsZFByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRQcm9wcy5vbkNoYW5nZShlLCAuLi5hcmdzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgb25CbHVyOiAoLi4uYXJncykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlRmllbGRCbHVyKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGNoaWxkUHJvcHMub25CbHVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRQcm9wcy5vbkJsdXIoLi4uYXJncyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sIHNpemU6IGNoaWxkUHJvcHMuc2l6ZSB8fCBzaXplIH0sIChmaW5hbFZhbGlkYXRlU3RhdHVzID09PSAnZXJyb3InICYmIHsgc3RhdHVzOiAnZXJyb3InIH0pKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gUmVhY3QuY2xvbmVFbGVtZW50KGNoaWxkLCBpbmplY3RlZFByb3BzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBjaGlsZDtcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICBpZiAoaGlkZGVuKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gKF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKHVuZGVmaW5lZCwgam9pbkNscyhzaXplID09PSAnc21hbGwnICYmIGNsYXNzZXMoJ3NtYWxsJyksIGNsYXNzTmFtZSkpLCBjaGlsZHJlbjogW2xhYmVsICYmIChfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdsYWJlbC13cmFwcGVyJywgam9pbkNscyhjbGFzc2VzKCdsYWJlbC13cmFwcGVyLXZlcnRpY2FsJyksIGxhYmVsQWxpZ24gJiYgY2xhc3NlcyhgbGFiZWwtd3JhcHBlci0ke2xhYmVsQWxpZ259YCkpKSwgY2hpbGRyZW46IF9qc3goVHlwb2dyYXBoeUxhYmVsLCB7IGFzOiBcImxhYmVsXCIsIHNpemU6IEZPUk1fTEFCRUxfU0laRSwgY29sb3I6IEZPUk1fTEFCRUxfQ09MT1IsIGNsYXNzTmFtZTogY2xhc3NlcygnbGFiZWwnLCBqb2luQ2xzKGlzUmVxdWlyZWQgJiYgcmVxdWlyZWRNYXJrICYmIGNsYXNzZXMoJ2xhYmVsLXJlcXVpcmVkJykpKSwgY2hpbGRyZW46IGxhYmVsIH0pIH0pKSwgX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2NvbnRyb2wnKSwgY2hpbGRyZW46IFtyZW5kZXJDaGlsZHJlbigpLCBmaWVsZEVycm9yICYmIF9qc3goVHlwb2dyYXBoeUJvZHksIHsgYXM6IFwiZGl2XCIsIGNsYXNzTmFtZTogY2xhc3NlcygnZXJyb3InKSwgc2l6ZTogRk9STV9FUlJPUl9TSVpFLCBjb2xvcjogRk9STV9FUlJPUl9DT0xPUiwgY2hpbGRyZW46IGZpZWxkRXJyb3IgfSksICFmaWVsZEVycm9yICYmIGhlbHAgJiYgX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBhczogXCJkaXZcIiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdoZWxwJyksIHNpemU6IEZPUk1fSEVMUF9TSVpFLCBjb2xvcjogRk9STV9IRUxQX0NPTE9SLCBjaGlsZHJlbjogaGVscCB9KV0gfSldIH0pKTtcbn07XG5Gb3JtSXRlbUJhc2UuZGlzcGxheU5hbWUgPSAnRm9ybUl0ZW0nO1xuZXhwb3J0IGNvbnN0IEZvcm1JdGVtID0gbWVtbyhGb3JtSXRlbUJhc2UpO1xuZXhwb3J0IGRlZmF1bHQgRm9ybUl0ZW07IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.VALIDATE_TRIGGERS = exports.VALIDATE_STATUSES = exports.LABEL_ALIGNS = exports.FORM_SIZES = exports.FORM_LAYOUTS = exports.FORM_LABEL_SIZE = exports.FORM_LABEL_COLOR = exports.FORM_ITEM_SPACING = exports.FORM_HELP_SIZE = exports.FORM_HELP_COLOR = exports.FORM_ERROR_SIZE = exports.FORM_ERROR_COLOR = exports.FORM_COMPONENT_NAMES = void 0;
|
|
7
|
-
var FORM_SIZES = exports.FORM_SIZES = ['large', 'middle', 'small'];
|
|
8
|
-
var FORM_LAYOUTS = exports.FORM_LAYOUTS = ['vertical'];
|
|
9
|
-
var LABEL_ALIGNS = exports.LABEL_ALIGNS = ['left', 'right'];
|
|
10
|
-
var VALIDATE_STATUSES = exports.VALIDATE_STATUSES = ['success', 'warning', 'error', 'validating'];
|
|
11
|
-
var VALIDATE_TRIGGERS = exports.VALIDATE_TRIGGERS = ['onChange', 'onBlur'];
|
|
12
|
-
var FORM_ITEM_SPACING = exports.FORM_ITEM_SPACING = {
|
|
13
|
-
large: '300',
|
|
14
|
-
middle: '300',
|
|
15
|
-
small: '200'
|
|
16
|
-
};
|
|
17
|
-
// ── Typography ──
|
|
18
|
-
var FORM_LABEL_SIZE = exports.FORM_LABEL_SIZE = 'md';
|
|
19
|
-
var FORM_LABEL_COLOR = exports.FORM_LABEL_COLOR = 'default';
|
|
20
|
-
var FORM_ERROR_SIZE = exports.FORM_ERROR_SIZE = 'sm';
|
|
21
|
-
var FORM_ERROR_COLOR = exports.FORM_ERROR_COLOR = 'danger';
|
|
22
|
-
var FORM_HELP_SIZE = exports.FORM_HELP_SIZE = 'sm';
|
|
23
|
-
var FORM_HELP_COLOR = exports.FORM_HELP_COLOR = 'default-tertiary';
|
|
24
|
-
var FORM_COMPONENT_NAMES = exports.FORM_COMPONENT_NAMES = ['Input', 'InputNumber', 'Select', 'BaseSelect', 'DatePicker', 'TimePicker', 'Checkbox', 'Radio', 'Switch', 'TextArea'];
|
|
25
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRm9ybS9jb25zdGFudHMudHMiLCJjb21wb25lbnRzL0Zvcm0vY29uc3RhbnRzLmpzIl0sIm5hbWVzIjpbIkZPUk1fU0laRVMiLCJleHBvcnRzIiwiRk9STV9MQVlPVVRTIiwiTEFCRUxfQUxJR05TIiwiVkFMSURBVEVfU1RBVFVTRVMiLCJWQUxJREFURV9UUklHR0VSUyIsIkZPUk1fSVRFTV9TUEFDSU5HIiwibGFyZ2UiLCJtaWRkbGUiLCJzbWFsbCIsIkZPUk1fTEFCRUxfU0laRSIsIkZPUk1fTEFCRUxfQ09MT1IiLCJGT1JNX0VSUk9SX1NJWkUiLCJGT1JNX0VSUk9SX0NPTE9SIiwiRk9STV9IRUxQX1NJWkUiLCJGT1JNX0hFTFBfQ09MT1IiLCJGT1JNX0NPTVBPTkVOVF9OQU1FUyJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRU8sSUFBTUEsVUFBVSxHQUFBQyxPQUFBLENBQUFELFVBQUEsR0FBRyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFVO0FBQ3hELElBQU1FLFlBQVksR0FBQUQsT0FBQSxDQUFBQyxZQUFBLEdBQUcsQ0FBQyxVQUFVLENBQVU7QUFDMUMsSUFBTUMsWUFBWSxHQUFBRixPQUFBLENBQUFFLFlBQUEsR0FBRyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQVU7QUFDL0MsSUFBTUMsaUJBQWlCLEdBQUFILE9BQUEsQ0FBQUcsaUJBQUEsR0FBRyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFlBQVksQ0FBVTtBQUNoRixJQUFNQyxpQkFBaUIsR0FBQUosT0FBQSxDQUFBSSxpQkFBQSxHQUFHLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBVTtBQVF6RCxJQUFNQyxpQkFBaUIsR0FBQUwsT0FBQSxDQUFBSyxpQkFBQSxHQUE2QjtFQUN6REMsS0FBSyxFQUFFLEtBQUs7RUFDWkMsTUFBTSxFQUFFLEtBQUs7RUFDYkMsS0FBSyxFQUFFO0FDUlQsQ0RTQztBQUdEO0FBQ08sSUFBTUMsZUFBZSxHQUFBVCxPQUFBLENBQUFTLGVBQUEsR0FBd0IsSUFBSTtBQUNqRCxJQUFNQyxnQkFBZ0IsR0FBQVYsT0FBQSxDQUFBVSxnQkFBQSxHQUFvQixTQUFTO0FBQ25ELElBQU1DLGVBQWUsR0FBQVgsT0FBQSxDQUFBVyxlQUFBLEdBQXVCLElBQUk7QUFDaEQsSUFBTUMsZ0JBQWdCLEdBQUFaLE9BQUEsQ0FBQVksZ0JBQUEsR0FBb0IsUUFBUTtBQUNsRCxJQUFNQyxjQUFjLEdBQUFiLE9BQUEsQ0FBQWEsY0FBQSxHQUF1QixJQUFJO0FBQy9DLElBQU1DLGVBQWUsR0FBQWQsT0FBQSxDQUFBYyxlQUFBLEdBQW9CLGtCQUFrQjtBQUUzRCxJQUFNQyxvQkFBb0IsR0FBQWYsT0FBQSxDQUFBZSxvQkFBQSxHQUFHLENBQ2xDLE9BQU8sRUFDUCxhQUFhLEVBQ2IsUUFBUSxFQUNSLFlBQVksRUFDWixZQUFZLEVBQ1osWUFBWSxFQUNaLFVBQVUsRUFDVixPQUFPLEVBQ1AsUUFBUSxFQUNSLFVBQVUsQ0FDRiIsImZpbGUiOiJjb21wb25lbnRzL0Zvcm0vY29uc3RhbnRzLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCJleHBvcnQgY29uc3QgRk9STV9TSVpFUyA9IFsnbGFyZ2UnLCAnbWlkZGxlJywgJ3NtYWxsJ107XG5leHBvcnQgY29uc3QgRk9STV9MQVlPVVRTID0gWyd2ZXJ0aWNhbCddO1xuZXhwb3J0IGNvbnN0IExBQkVMX0FMSUdOUyA9IFsnbGVmdCcsICdyaWdodCddO1xuZXhwb3J0IGNvbnN0IFZBTElEQVRFX1NUQVRVU0VTID0gWydzdWNjZXNzJywgJ3dhcm5pbmcnLCAnZXJyb3InLCAndmFsaWRhdGluZyddO1xuZXhwb3J0IGNvbnN0IFZBTElEQVRFX1RSSUdHRVJTID0gWydvbkNoYW5nZScsICdvbkJsdXInXTtcbmV4cG9ydCBjb25zdCBGT1JNX0lURU1fU1BBQ0lORyA9IHtcbiAgICBsYXJnZTogJzMwMCcsXG4gICAgbWlkZGxlOiAnMzAwJyxcbiAgICBzbWFsbDogJzIwMCcsXG59O1xuLy8g4pSA4pSAIFR5cG9ncmFwaHkg4pSA4pSAXG5leHBvcnQgY29uc3QgRk9STV9MQUJFTF9TSVpFID0gJ21kJztcbmV4cG9ydCBjb25zdCBGT1JNX0xBQkVMX0NPTE9SID0gJ2RlZmF1bHQnO1xuZXhwb3J0IGNvbnN0IEZPUk1fRVJST1JfU0laRSA9ICdzbSc7XG5leHBvcnQgY29uc3QgRk9STV9FUlJPUl9DT0xPUiA9ICdkYW5nZXInO1xuZXhwb3J0IGNvbnN0IEZPUk1fSEVMUF9TSVpFID0gJ3NtJztcbmV4cG9ydCBjb25zdCBGT1JNX0hFTFBfQ09MT1IgPSAnZGVmYXVsdC10ZXJ0aWFyeSc7XG5leHBvcnQgY29uc3QgRk9STV9DT01QT05FTlRfTkFNRVMgPSBbXG4gICAgJ0lucHV0JyxcbiAgICAnSW5wdXROdW1iZXInLFxuICAgICdTZWxlY3QnLFxuICAgICdCYXNlU2VsZWN0JyxcbiAgICAnRGF0ZVBpY2tlcicsXG4gICAgJ1RpbWVQaWNrZXInLFxuICAgICdDaGVja2JveCcsXG4gICAgJ1JhZGlvJyxcbiAgICAnU3dpdGNoJyxcbiAgICAnVGV4dEFyZWEnLFxuXTsiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { FormContextValue, FormCoreInstance } from './interface';
|
|
2
|
-
export declare const FormContext: import("react").Context<FormContextValue | null>;
|
|
3
|
-
export declare const useFormContext: () => FormContextValue;
|
|
4
|
-
/** Read the FormCoreInstance from the nearest <Form> context (like Ant Design's Form.useFormInstance) */
|
|
5
|
-
export declare const useFormInstance: () => FormCoreInstance;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useFormInstance = exports.useFormContext = exports.FormContext = void 0;
|
|
7
|
-
var _react = require("react");
|
|
8
|
-
var FormContext = exports.FormContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
9
|
-
FormContext.displayName = 'FormContext';
|
|
10
|
-
var useFormContext = exports.useFormContext = function useFormContext() {
|
|
11
|
-
var context = (0, _react.useContext)(FormContext);
|
|
12
|
-
if (!context) {
|
|
13
|
-
throw new Error('useFormContext must be used within a <Form> component');
|
|
14
|
-
}
|
|
15
|
-
return context;
|
|
16
|
-
};
|
|
17
|
-
/** Read the FormCoreInstance from the nearest <Form> context (like Ant Design's Form.useFormInstance) */
|
|
18
|
-
var useFormInstance = exports.useFormInstance = function useFormInstance() {
|
|
19
|
-
var context = (0, _react.useContext)(FormContext);
|
|
20
|
-
if (!context) {
|
|
21
|
-
throw new Error('useFormInstance must be used within a <Form> component');
|
|
22
|
-
}
|
|
23
|
-
return context.formInstance;
|
|
24
|
-
};
|
|
25
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRm9ybS9jb250ZXh0LnRzIl0sIm5hbWVzIjpbIl9yZWFjdCIsInJlcXVpcmUiLCJGb3JtQ29udGV4dCIsImV4cG9ydHMiLCJjcmVhdGVDb250ZXh0IiwiZGlzcGxheU5hbWUiLCJ1c2VGb3JtQ29udGV4dCIsImNvbnRleHQiLCJ1c2VDb250ZXh0IiwiRXJyb3IiLCJ1c2VGb3JtSW5zdGFuY2UiLCJmb3JtSW5zdGFuY2UiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsT0FBQTtBQUdPLElBQU1DLFdBQVcsR0FBQUMsT0FBQSxDQUFBRCxXQUFBLGdCQUFHLElBQUFFLG9CQUFhLEVBQTBCLElBQUksQ0FBQztBQUV2RUYsV0FBVyxDQUFDRyxXQUFXLEdBQUcsYUFBYTtBQUVoQyxJQUFNQyxjQUFjLEdBQUFILE9BQUEsQ0FBQUcsY0FBQSxHQUFHLFNBQWpCQSxjQUFjQSxDQUFBLEVBQTBCO0VBQ25ELElBQU1DLE9BQU8sR0FBRyxJQUFBQyxpQkFBVSxFQUFDTixXQUFXLENBQUM7RUFDdkMsSUFBSSxDQUFDSyxPQUFPLEVBQUU7SUFDWixNQUFNLElBQUlFLEtBQUssQ0FBQyx1REFBdUQsQ0FBQztFQUMxRTtFQUNBLE9BQU9GLE9BQU87QUFDaEIsQ0FBQztBQUVEO0FBQ08sSUFBTUcsZUFBZSxHQUFBUCxPQUFBLENBQUFPLGVBQUEsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBQSxFQUEwQjtFQUNwRCxJQUFNSCxPQUFPLEdBQUcsSUFBQUMsaUJBQVUsRUFBQ04sV0FBVyxDQUFDO0VBQ3ZDLElBQUksQ0FBQ0ssT0FBTyxFQUFFO0lBQ1osTUFBTSxJQUFJRSxLQUFLLENBQUMsd0RBQXdELENBQUM7RUFDM0U7RUFDQSxPQUFPRixPQUFPLENBQUNJLFlBQVk7QUFDN0IsQ0FBQyIsImZpbGUiOiJjb21wb25lbnRzL0Zvcm0vY29udGV4dC5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|