iglooform 2.3.3 → 2.3.7

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 (137) hide show
  1. package/es/admin-upload/modal.js +1 -1
  2. package/es/card-detail/card-group.js +2 -1
  3. package/es/card-detail/card-item.js +7 -0
  4. package/es/card-detail/card.d.ts +2 -2
  5. package/es/card-detail/card.js +3 -3
  6. package/es/card-detail/style/index.less +28 -2
  7. package/es/card-detail/utils.d.ts +2 -2
  8. package/es/card-detail/utils.js +24 -11
  9. package/es/detail-panel/style/index.less +3 -2
  10. package/es/filter/customize.d.ts +9 -0
  11. package/es/filter/customize.js +21 -0
  12. package/es/filter/index.d.ts +6 -4
  13. package/es/filter/index.js +82 -42
  14. package/es/filter/style/index.less +1 -1
  15. package/es/form/context.d.ts +2 -0
  16. package/es/form/context.js +2 -1
  17. package/es/form/element/index.js +54 -2
  18. package/es/form/index.js +63 -13
  19. package/es/form/page/index.js +31 -2
  20. package/es/form/pages/index.js +46 -26
  21. package/es/form/render/index.js +3 -2
  22. package/es/form/steps/index.js +47 -30
  23. package/es/free-form/context.d.ts +19 -0
  24. package/es/free-form/context.js +7 -0
  25. package/es/free-form/element/index.d.ts +11 -0
  26. package/es/free-form/element/index.js +262 -0
  27. package/es/free-form/element/style/index.d.ts +1 -0
  28. package/es/free-form/element/style/index.js +1 -0
  29. package/es/free-form/element/style/index.less +116 -0
  30. package/es/free-form/index.d.ts +7 -0
  31. package/es/free-form/index.js +203 -0
  32. package/es/free-form/messages.d.ts +48 -0
  33. package/es/free-form/messages.js +49 -0
  34. package/es/free-form/page/index.d.ts +11 -0
  35. package/es/free-form/page/index.js +144 -0
  36. package/es/free-form/page/style/index.d.ts +1 -0
  37. package/es/free-form/page/style/index.js +1 -0
  38. package/es/free-form/page/style/index.less +55 -0
  39. package/es/free-form/style/index.d.ts +1 -0
  40. package/es/free-form/style/index.js +1 -0
  41. package/es/free-form/style/index.less +40 -0
  42. package/es/free-form/utils.d.ts +73 -0
  43. package/es/free-form/utils.js +370 -0
  44. package/es/global-message/style/index.less +30 -0
  45. package/es/index.d.ts +3 -0
  46. package/es/index.js +4 -1
  47. package/es/input/input-date.js +18 -9
  48. package/es/input/phone-number.js +9 -9
  49. package/es/input/style/index.less +17 -14
  50. package/es/layout/index.js +10 -2
  51. package/es/layout/style/index.less +2 -0
  52. package/es/locale/en-US/messages.json +1 -1
  53. package/es/locale/id-ID/messages.json +1 -1
  54. package/es/locale/th-TH/messages.json +1 -1
  55. package/es/locale/vi-VN/messages.json +1 -1
  56. package/es/locale/zh-CN/messages.json +1 -1
  57. package/es/media/media.js +0 -1
  58. package/es/media/preview.js +0 -1
  59. package/es/select/attached-select.js +2 -2
  60. package/es/table/index.js +33 -9
  61. package/es/typography/index.js +2 -2
  62. package/es/typography/style/index.less +4 -1
  63. package/es/upload/index.d.ts +3 -3
  64. package/es/upload/index.js +2 -2
  65. package/es/upload-photo/index.d.ts +2 -2
  66. package/es/upload-photo/index.js +2 -2
  67. package/es/upload-photo/media.js +0 -1
  68. package/es/upload-preview/media.js +0 -1
  69. package/lib/admin-upload/modal.js +1 -1
  70. package/lib/card-detail/card-group.js +2 -1
  71. package/lib/card-detail/card-item.js +7 -0
  72. package/lib/card-detail/card.d.ts +2 -2
  73. package/lib/card-detail/card.js +3 -3
  74. package/lib/card-detail/style/index.less +28 -2
  75. package/lib/card-detail/utils.d.ts +2 -2
  76. package/lib/card-detail/utils.js +25 -12
  77. package/lib/detail-panel/style/index.less +3 -2
  78. package/lib/filter/customize.d.ts +9 -0
  79. package/lib/filter/customize.js +33 -0
  80. package/lib/filter/index.d.ts +6 -4
  81. package/lib/filter/index.js +83 -42
  82. package/lib/filter/style/index.less +1 -1
  83. package/lib/form/context.d.ts +2 -0
  84. package/lib/form/context.js +2 -1
  85. package/lib/form/element/index.js +53 -1
  86. package/lib/form/index.js +62 -12
  87. package/lib/form/page/index.js +29 -1
  88. package/lib/form/pages/index.js +45 -25
  89. package/lib/form/render/index.js +2 -1
  90. package/lib/form/steps/index.js +46 -29
  91. package/lib/free-form/context.d.ts +19 -0
  92. package/lib/free-form/context.js +19 -0
  93. package/lib/free-form/element/index.d.ts +11 -0
  94. package/lib/free-form/element/index.js +288 -0
  95. package/lib/free-form/element/style/index.d.ts +1 -0
  96. package/lib/free-form/element/style/index.js +3 -0
  97. package/lib/free-form/element/style/index.less +116 -0
  98. package/lib/free-form/index.d.ts +7 -0
  99. package/lib/free-form/index.js +220 -0
  100. package/lib/free-form/messages.d.ts +48 -0
  101. package/lib/free-form/messages.js +56 -0
  102. package/lib/free-form/page/index.d.ts +11 -0
  103. package/lib/free-form/page/index.js +164 -0
  104. package/lib/free-form/page/style/index.d.ts +1 -0
  105. package/lib/free-form/page/style/index.js +3 -0
  106. package/lib/free-form/page/style/index.less +55 -0
  107. package/lib/free-form/style/index.d.ts +1 -0
  108. package/lib/free-form/style/index.js +3 -0
  109. package/lib/free-form/style/index.less +40 -0
  110. package/lib/free-form/utils.d.ts +73 -0
  111. package/lib/free-form/utils.js +403 -0
  112. package/lib/global-message/style/index.less +30 -0
  113. package/lib/index.d.ts +3 -0
  114. package/lib/index.js +28 -1
  115. package/lib/input/input-date.js +18 -9
  116. package/lib/input/phone-number.js +9 -9
  117. package/lib/input/style/index.less +17 -14
  118. package/lib/layout/index.js +10 -2
  119. package/lib/layout/style/index.less +2 -0
  120. package/lib/locale/en-US/messages.json +1 -1
  121. package/lib/locale/id-ID/messages.json +1 -1
  122. package/lib/locale/th-TH/messages.json +1 -1
  123. package/lib/locale/vi-VN/messages.json +1 -1
  124. package/lib/locale/zh-CN/messages.json +1 -1
  125. package/lib/media/media.js +0 -1
  126. package/lib/media/preview.js +0 -1
  127. package/lib/select/attached-select.js +2 -2
  128. package/lib/table/index.js +32 -8
  129. package/lib/typography/index.js +2 -2
  130. package/lib/typography/style/index.less +4 -1
  131. package/lib/upload/index.d.ts +3 -3
  132. package/lib/upload/index.js +2 -2
  133. package/lib/upload-photo/index.d.ts +2 -2
  134. package/lib/upload-photo/index.js +2 -2
  135. package/lib/upload-photo/media.js +0 -1
  136. package/lib/upload-preview/media.js +0 -1
  137. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ import './index.less';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+
3
+ require("./index.less");
@@ -0,0 +1,55 @@
1
+ .igloo-page-container {
2
+ width: 100%;
3
+ background-color: #fff;
4
+ padding: 32px;
5
+
6
+ .igloo-page-content {
7
+ width: 100%;
8
+ }
9
+
10
+ .igloo-page-footer {
11
+ margin-top: 24px;
12
+ display: flex;
13
+ justify-content: space-between;
14
+
15
+ .ant-form-item {
16
+ margin: 0;
17
+ }
18
+
19
+ .igloo-page-cancel-button {
20
+ min-width: 196px;
21
+ }
22
+
23
+ .igloo-page-submit-button {
24
+ min-width: 196px;
25
+ }
26
+ }
27
+ }
28
+
29
+ @media screen and (max-width: 768px) {
30
+ .igloo-page-container {
31
+ width: 100%;
32
+ background-color: #fff;
33
+ padding: 24px 16px;
34
+
35
+ .igloo-page-content {
36
+ width: 100%;
37
+ }
38
+
39
+ .igloo-page-footer {
40
+ display: flex;
41
+ flex-direction: column-reverse;
42
+ row-gap: 16px;
43
+
44
+ .igloo-page-cancel-button {
45
+ min-width: none;
46
+ width: 100%;
47
+ }
48
+
49
+ .igloo-page-submit-button {
50
+ min-width: none;
51
+ width: 100%;
52
+ }
53
+ }
54
+ }
55
+ }
@@ -0,0 +1 @@
1
+ import './index.less';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+
3
+ require("./index.less");
@@ -0,0 +1,40 @@
1
+ //form
2
+ .ant-form-item-label {
3
+ color: #666666;
4
+
5
+ & > label {
6
+ width: 100%;
7
+
8
+ &::before {
9
+ display: none !important;
10
+ }
11
+ }
12
+ }
13
+
14
+ .ant-form-item-explain,
15
+ .ant-form-item-extra {
16
+ font-size: 14px;
17
+ margin-top: 6px;
18
+ min-height: unset !important;
19
+ font-style: italic;
20
+ }
21
+
22
+ .ant-form-item-extra {
23
+ font-style: italic;
24
+ }
25
+
26
+ .ant-form-item-explain-error + .ant-form-item-extra {
27
+ margin-top: 4px;
28
+ }
29
+
30
+ .ant-form-item-with-help {
31
+ margin-bottom: 24px;
32
+ }
33
+
34
+ .ant-form-item-explain.ant-form-item-explain-error {
35
+ font-style: normal;
36
+ font-weight: normal;
37
+ font-size: 14px;
38
+ line-height: 20px;
39
+ color: @error-color;
40
+ }
@@ -0,0 +1,73 @@
1
+ import { FormInstance } from 'antd/es/form';
2
+ import { FormItemConfig, FormItemExtraConfig, FormItemName, FormItemCopyValue, FormItemSelectValue, FormItemAssert } from '../types';
3
+ import { NamePath } from 'antd/es/form/interface';
4
+ export declare const calcNamePath: (parentName: FormItemName | undefined, name: FormItemName | undefined) => (string | number)[];
5
+ export declare const testAssert: (form: FormInstance, assert: FormItemAssert) => boolean;
6
+ export declare const calcFormItemProps: (config: FormItemConfig, extraProps: FormItemExtraConfig, form?: FormInstance<any> | undefined, parentName?: NamePath | undefined) => {
7
+ colProps: {
8
+ span: number;
9
+ xs: number;
10
+ sm: number;
11
+ md: number;
12
+ halfRow: boolean | undefined;
13
+ };
14
+ formItemProps: {
15
+ name: (string | number)[];
16
+ className: string | undefined;
17
+ initialValue: any;
18
+ copiedValue: {
19
+ copied: boolean;
20
+ value?: undefined;
21
+ disabled?: undefined;
22
+ } | {
23
+ copied: boolean;
24
+ value: any;
25
+ disabled: boolean | undefined;
26
+ };
27
+ selectedValue: {
28
+ selected: boolean;
29
+ value?: undefined;
30
+ disabled?: undefined;
31
+ } | {
32
+ selected: boolean;
33
+ value: any;
34
+ disabled: boolean | undefined;
35
+ };
36
+ normalize: ((value: any, prevValue: any, allValues: import("rc-field-form/lib/interface").Store) => any) | undefined;
37
+ rules: import("rc-field-form/lib/interface").Rule[];
38
+ label: JSX.Element | null;
39
+ getValueFromEvent: ((...args: import("rc-field-form/lib/interface").EventArgs) => any) | undefined;
40
+ getValueProps: ((value: any) => object) | undefined;
41
+ extra: JSX.Element | null | undefined;
42
+ help: {} | null | undefined;
43
+ valuePropName: string | undefined;
44
+ messageVariables: {
45
+ label: string;
46
+ };
47
+ };
48
+ elementProps: {
49
+ [key: string]: any;
50
+ };
51
+ display: boolean;
52
+ previewFormater: ((value: any) => any) | undefined;
53
+ };
54
+ export declare const calcDisabled: (disabled?: boolean | FormItemAssert | FormItemAssert[] | undefined, form?: FormInstance<any> | undefined) => boolean;
55
+ export declare const calcCopyValue: (copyValue?: FormItemCopyValue | undefined, form?: FormInstance<any> | undefined) => {
56
+ copied: boolean;
57
+ value?: undefined;
58
+ disabled?: undefined;
59
+ } | {
60
+ copied: boolean;
61
+ value: any;
62
+ disabled: boolean | undefined;
63
+ };
64
+ export declare const calcSelectValue: (selectValue?: FormItemSelectValue[] | undefined, form?: FormInstance<any> | undefined) => {
65
+ selected: boolean;
66
+ value?: undefined;
67
+ disabled?: undefined;
68
+ } | {
69
+ selected: boolean;
70
+ value: any;
71
+ disabled: boolean | undefined;
72
+ };
73
+ export declare const calcShouldRender: (dependencies?: NamePath[], asserts?: FormItemAssert[], shouldRender?: ((form?: FormInstance<any> | undefined) => boolean) | undefined, form?: FormInstance<any> | undefined) => boolean;
@@ -0,0 +1,403 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.calcShouldRender = exports.calcSelectValue = exports.calcCopyValue = exports.calcDisabled = exports.calcFormItemProps = exports.testAssert = exports.calcNamePath = void 0;
7
+
8
+ var _jsxRuntime = require("react/jsx-runtime");
9
+
10
+ var _invariant = _interopRequireDefault(require("invariant"));
11
+
12
+ var _typography = _interopRequireDefault(require("../typography"));
13
+
14
+ var _formattedMessage = _interopRequireDefault(require("../locale/formatted-message"));
15
+
16
+ var _excluded = ["type", "name", "required", "showOptional", "rules", "initialValue", "normalize", "mergeRules", "getValueFromEvent", "getValueProps", "extra", "help", "label", "extraLabel", "copyValue", "selectValue", "span", "halfRow", "fullRow", "valuePropName", "dependencies", "asserts", "messageVariables", "requiredMessage", "previewFormater", "disabled", "ignore", "shouldRender", "valueFormater"],
17
+ _excluded2 = ["initialValue", "normalize", "rules", "extra", "help", "getValueFromEvent", "span", "valuePropName", "fullRow", "halfRow", "messageVariables", "requiredMessage", "previewFormater", "valueFormater", "required", "requiredMark", "className"];
18
+
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+
21
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, 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 normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
22
+
23
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
24
+
25
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
26
+
27
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
28
+
29
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
30
+
31
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
32
+
33
+ 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); }
34
+
35
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
36
+
37
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
38
+
39
+ 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; }
40
+
41
+ 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; }
42
+
43
+ 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; }
44
+
45
+ var calcNamePath = function calcNamePath(parentName, name) {
46
+ var names = [];
47
+
48
+ if (parentName) {
49
+ names.push(parentName);
50
+ }
51
+
52
+ if (name) {
53
+ names.push(name);
54
+ }
55
+
56
+ return names.flat();
57
+ };
58
+
59
+ exports.calcNamePath = calcNamePath;
60
+
61
+ var testAssert = function testAssert(form, assert) {
62
+ var field = assert.field,
63
+ value = assert.value,
64
+ _assert$operation = assert.operation,
65
+ operation = _assert$operation === void 0 ? 'eq' : _assert$operation;
66
+ var v = form.getFieldValue(field);
67
+
68
+ switch (operation) {
69
+ case 'ne':
70
+ if (v === value) return false;
71
+ break;
72
+
73
+ case 'in':
74
+ if (!Array.isArray(value) || !value.includes(v)) return false;
75
+ break;
76
+
77
+ case 'ni':
78
+ if (Array.isArray(value) && value.includes(v)) return false;
79
+ break;
80
+
81
+ case 'co':
82
+ if (!Array.isArray(v) || !v.includes(value)) return false;
83
+ break;
84
+
85
+ case 'nc':
86
+ if (Array.isArray(v) && v.includes(value)) return false;
87
+ break;
88
+
89
+ case 'lt':
90
+ if (v === undefined || v >= value) return false;
91
+ break;
92
+
93
+ case 'le':
94
+ if (v === undefined || v > value) return false;
95
+ break;
96
+
97
+ case 'gt':
98
+ if (v === undefined || v <= value) return false;
99
+ break;
100
+
101
+ case 'ge':
102
+ if (v === undefined || v < value) return false;
103
+ break;
104
+
105
+ case 'eq':
106
+ default:
107
+ if (v !== value) return false;
108
+ }
109
+
110
+ return true;
111
+ };
112
+
113
+ exports.testAssert = testAssert;
114
+
115
+ var calcFormItemProps = function calcFormItemProps(config, extraProps, form, parentName) {
116
+ var type = config.type,
117
+ nameProp = config.name,
118
+ _config$required = config.required,
119
+ required = _config$required === void 0 ? true : _config$required,
120
+ _config$showOptional = config.showOptional,
121
+ showOptional = _config$showOptional === void 0 ? false : _config$showOptional,
122
+ _config$rules = config.rules,
123
+ propsRules = _config$rules === void 0 ? [] : _config$rules,
124
+ initialValue = config.initialValue,
125
+ normalize = config.normalize,
126
+ _config$mergeRules = config.mergeRules,
127
+ mergeRules = _config$mergeRules === void 0 ? true : _config$mergeRules,
128
+ getValueFromEvent = config.getValueFromEvent,
129
+ getValueProps = config.getValueProps,
130
+ extra = config.extra,
131
+ help = config.help,
132
+ label = config.label,
133
+ extraLabel = config.extraLabel,
134
+ copyValue = config.copyValue,
135
+ selectValue = config.selectValue,
136
+ span = config.span,
137
+ halfRow = config.halfRow,
138
+ fullRow = config.fullRow,
139
+ valuePropName = config.valuePropName,
140
+ _config$dependencies = config.dependencies,
141
+ dependencies = _config$dependencies === void 0 ? [] : _config$dependencies,
142
+ _config$asserts = config.asserts,
143
+ asserts = _config$asserts === void 0 ? [] : _config$asserts,
144
+ messageVariables = config.messageVariables,
145
+ requiredMessage = config.requiredMessage,
146
+ previewFormater = config.previewFormater,
147
+ disabled = config.disabled,
148
+ ignore = config.ignore,
149
+ shouldRender = config.shouldRender,
150
+ valueFormater = config.valueFormater,
151
+ rest = _objectWithoutProperties(config, _excluded);
152
+
153
+ (0, _invariant.default)(nameProp || type === 'Divider' || type === 'Section' || !type, "name property is required for form item config (type: ".concat(type, ")"));
154
+ (0, _invariant.default)(!previewFormater || typeof previewFormater === 'function', 'previewFormater property should be a function');
155
+ (0, _invariant.default)(!shouldRender || typeof shouldRender === 'function', 'shouldRender property should be a function');
156
+
157
+ var extraInitialValue = extraProps.initialValue,
158
+ extraNormalize = extraProps.normalize,
159
+ _extraProps$rules = extraProps.rules,
160
+ extraRules = _extraProps$rules === void 0 ? [] : _extraProps$rules,
161
+ extraExtra = extraProps.extra,
162
+ extraHelp = extraProps.help,
163
+ extraGetValueFromEvent = extraProps.getValueFromEvent,
164
+ extraSpan = extraProps.span,
165
+ extraValuePropName = extraProps.valuePropName,
166
+ extraFullRow = extraProps.fullRow,
167
+ extraHalfRow = extraProps.halfRow,
168
+ extraMessageVariables = extraProps.messageVariables,
169
+ extraRequiredMessage = extraProps.requiredMessage,
170
+ extraPreviewFormater = extraProps.previewFormater,
171
+ _extraProps$valueForm = extraProps.valueFormater,
172
+ extraValueFormater = _extraProps$valueForm === void 0 ? function (value) {
173
+ return value;
174
+ } : _extraProps$valueForm,
175
+ _extraProps$required = extraProps.required,
176
+ extraRequired = _extraProps$required === void 0 ? true : _extraProps$required,
177
+ _extraProps$requiredM = extraProps.requiredMark,
178
+ requiredMark = _extraProps$requiredM === void 0 ? false : _extraProps$requiredM,
179
+ className = extraProps.className,
180
+ extraRest = _objectWithoutProperties(extraProps, _excluded2);
181
+
182
+ var rules = required === true && extraRequired ? [{
183
+ required: true,
184
+ message: requiredMessage || extraRequiredMessage
185
+ }].concat(_toConsumableArray(propsRules)) : propsRules;
186
+
187
+ if (mergeRules) {
188
+ rules.push.apply(rules, _toConsumableArray(extraRules));
189
+ }
190
+
191
+ var isRequired = required || rules.find(function (rule) {
192
+ return rule.required;
193
+ });
194
+ var name = calcNamePath(parentName, nameProp);
195
+ var copiedValue = calcCopyValue(copyValue, form);
196
+ var selectedValue = calcSelectValue(selectValue, form);
197
+ var elementProps = {};
198
+ Object.keys(_objectSpread(_objectSpread({}, extraRest), rest)).forEach(function (key) {
199
+ elementProps[key.replace('element-', '')] = rest[key];
200
+ });
201
+ elementProps.disabled = calcDisabled(disabled, form) || copiedValue.disabled || selectedValue.disabled;
202
+ return {
203
+ colProps: {
204
+ span: extraFullRow && fullRow === undefined || fullRow || extraHalfRow && halfRow === undefined || halfRow ? 24 : span || extraSpan || 12,
205
+ xs: 24,
206
+ sm: 24,
207
+ md: extraFullRow && fullRow === undefined || fullRow || extraHalfRow && halfRow === undefined || halfRow ? 24 : span || 12,
208
+ halfRow: halfRow === undefined ? extraHalfRow : halfRow
209
+ },
210
+ formItemProps: {
211
+ name: name,
212
+ className: className,
213
+ initialValue: (valueFormater || extraValueFormater)(initialValue || extraInitialValue),
214
+ copiedValue: copiedValue,
215
+ selectedValue: selectedValue,
216
+ normalize: normalize || extraNormalize,
217
+ rules: rules,
218
+ label: label ? (0, _jsxRuntime.jsxs)("div", Object.assign({
219
+ className: "igloo-form-label"
220
+ }, {
221
+ children: [(0, _jsxRuntime.jsxs)("div", Object.assign({
222
+ className: "igloo-form-label-text"
223
+ }, {
224
+ children: [(0, _jsxRuntime.jsx)(_typography.default, Object.assign({
225
+ level: "body1"
226
+ }, {
227
+ children: label
228
+ }), void 0), isRequired && requiredMark && (0, _jsxRuntime.jsx)("span", Object.assign({
229
+ className: "igloo-form-label-required"
230
+ }, {
231
+ children: "*"
232
+ }), void 0), showOptional && (0, _jsxRuntime.jsxs)("span", Object.assign({
233
+ className: "igloo-form-label-optional"
234
+ }, {
235
+ children: ["(", (0, _formattedMessage.default)({
236
+ id: 'Optional'
237
+ }), ")"]
238
+ }), void 0)]
239
+ }), void 0), extraLabel && (0, _jsxRuntime.jsx)("div", Object.assign({
240
+ className: "igloo-form-label-extra"
241
+ }, {
242
+ children: typeof extraLabel === 'function' ? extraLabel(form) : extraLabel
243
+ }), void 0)]
244
+ }), void 0) : null,
245
+ getValueFromEvent: getValueFromEvent || extraGetValueFromEvent,
246
+ getValueProps: getValueProps,
247
+ extra: (extra || extraExtra) && (0, _jsxRuntime.jsx)(_typography.default, Object.assign({
248
+ level: "caption2"
249
+ }, {
250
+ children: extra || extraExtra
251
+ }), void 0),
252
+ help: help || extraHelp,
253
+ valuePropName: valuePropName || extraValuePropName,
254
+ messageVariables: _objectSpread({
255
+ label: label
256
+ }, messageVariables || extraMessageVariables)
257
+ },
258
+ elementProps: elementProps,
259
+ display: !ignore && calcShouldRender(dependencies, asserts, shouldRender, form),
260
+ previewFormater: previewFormater || extraPreviewFormater
261
+ };
262
+ };
263
+
264
+ exports.calcFormItemProps = calcFormItemProps;
265
+
266
+ var calcDisabled = function calcDisabled(disabled, form) {
267
+ if (!form || !disabled) return false;
268
+ if (typeof disabled === 'boolean') return disabled;
269
+
270
+ if (Array.isArray(disabled)) {
271
+ var _iterator = _createForOfIteratorHelper(disabled),
272
+ _step;
273
+
274
+ try {
275
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
276
+ var assert = _step.value;
277
+
278
+ if (!testAssert(form, assert)) {
279
+ return false;
280
+ }
281
+ }
282
+ } catch (err) {
283
+ _iterator.e(err);
284
+ } finally {
285
+ _iterator.f();
286
+ }
287
+
288
+ return true;
289
+ }
290
+
291
+ return testAssert(form, disabled);
292
+ };
293
+
294
+ exports.calcDisabled = calcDisabled;
295
+
296
+ var calcCopyValue = function calcCopyValue(copyValue, form) {
297
+ if (!form) return {
298
+ copied: false
299
+ };
300
+ if (!copyValue) return {
301
+ copied: false
302
+ };
303
+ var copyFrom = copyValue.copyFrom,
304
+ assert = copyValue.assert,
305
+ disabled = copyValue.disabled;
306
+ return testAssert(form, assert) ? {
307
+ copied: true,
308
+ value: form.getFieldValue(copyFrom),
309
+ disabled: disabled
310
+ } : {
311
+ copied: false
312
+ };
313
+ };
314
+
315
+ exports.calcCopyValue = calcCopyValue;
316
+
317
+ var calcSelectValue = function calcSelectValue(selectValue, form) {
318
+ if (!form) return {
319
+ selected: false
320
+ };
321
+ if (!selectValue) return {
322
+ selected: false
323
+ };
324
+ (0, _invariant.default)(Array.isArray(selectValue), 'selectValue property should be an array.');
325
+
326
+ var _iterator2 = _createForOfIteratorHelper(selectValue),
327
+ _step2;
328
+
329
+ try {
330
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
331
+ var select = _step2.value;
332
+ var assert = select.assert,
333
+ value = select.value,
334
+ disabled = select.disabled;
335
+
336
+ if (testAssert(form, assert)) {
337
+ return {
338
+ selected: true,
339
+ value: value,
340
+ disabled: disabled
341
+ };
342
+ }
343
+ }
344
+ } catch (err) {
345
+ _iterator2.e(err);
346
+ } finally {
347
+ _iterator2.f();
348
+ }
349
+
350
+ return {
351
+ selected: false
352
+ };
353
+ };
354
+
355
+ exports.calcSelectValue = calcSelectValue;
356
+
357
+ var calcShouldRender = function calcShouldRender() {
358
+ var dependencies = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
359
+ var asserts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
360
+ var shouldRender = arguments.length > 2 ? arguments[2] : undefined;
361
+ var form = arguments.length > 3 ? arguments[3] : undefined;
362
+ if (!form) return true;
363
+
364
+ var _iterator3 = _createForOfIteratorHelper(dependencies),
365
+ _step3;
366
+
367
+ try {
368
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
369
+ var dep = _step3.value;
370
+
371
+ if (!form.getFieldValue(dep)) {
372
+ return false;
373
+ }
374
+ }
375
+ } catch (err) {
376
+ _iterator3.e(err);
377
+ } finally {
378
+ _iterator3.f();
379
+ }
380
+
381
+ var _iterator4 = _createForOfIteratorHelper(asserts),
382
+ _step4;
383
+
384
+ try {
385
+ for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
386
+ var assert = _step4.value;
387
+ var rst = testAssert(form, assert);
388
+ if (!rst) return rst;
389
+ }
390
+ } catch (err) {
391
+ _iterator4.e(err);
392
+ } finally {
393
+ _iterator4.f();
394
+ }
395
+
396
+ if (typeof shouldRender === 'function' && !shouldRender(form)) {
397
+ return false;
398
+ }
399
+
400
+ return true;
401
+ };
402
+
403
+ exports.calcShouldRender = calcShouldRender;