@cloudbase/weda-ui 3.4.11 → 3.4.13

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 (168) hide show
  1. package/dist/configs/components/common/form-input-required.js +3 -3
  2. package/dist/configs/components/customer-service.js +3 -0
  3. package/dist/configs/components/dataView.js +20 -10
  4. package/dist/configs/components/form-checkbox.js +15 -2
  5. package/dist/configs/components/form-date.js +1 -1
  6. package/dist/configs/components/form-depart-tree-select.js +1 -1
  7. package/dist/configs/components/form-email.js +17 -2
  8. package/dist/configs/components/form-input.js +17 -2
  9. package/dist/configs/components/form-location.js +1 -1
  10. package/dist/configs/components/form-multi-region.js +1 -1
  11. package/dist/configs/components/form-phone.js +17 -2
  12. package/dist/configs/components/form-radio.js +15 -2
  13. package/dist/configs/components/form-rich-text.js +1 -1
  14. package/dist/configs/components/form-select-multiple.js +362 -0
  15. package/dist/configs/components/form-select.js +1 -1
  16. package/dist/configs/components/form-switch.js +16 -3
  17. package/dist/configs/components/form-text-area.js +15 -2
  18. package/dist/configs/components/form-time.js +1 -1
  19. package/dist/configs/components/form-url.js +17 -2
  20. package/dist/configs/components/form-user-tree-select.js +14 -1
  21. package/dist/configs/components/listView.js +32 -49
  22. package/dist/configs/components/table.json +1 -54
  23. package/dist/configs/components/wd-bubble.js +46 -8
  24. package/dist/configs/components/wd-button.js +3 -0
  25. package/dist/configs/components/wd-checkbox.js +464 -0
  26. package/dist/configs/components/wd-form.js +66 -10
  27. package/dist/configs/components/wd-input-email.js +37 -0
  28. package/dist/configs/components/wd-input-phone.js +43 -0
  29. package/dist/configs/components/wd-input-url.js +37 -0
  30. package/dist/configs/components/wd-input.js +94 -0
  31. package/dist/configs/components/wd-official-account.js +87 -0
  32. package/dist/configs/components/wd-radio.js +443 -0
  33. package/dist/configs/components/wd-switch.js +315 -0
  34. package/dist/configs/components/wd-table.js +11 -59
  35. package/dist/configs/components/wd-textarea.js +82 -0
  36. package/dist/configs/components/wd-tree.js +443 -0
  37. package/dist/configs/components/web-view.js +3 -0
  38. package/dist/configs/index.js +24 -1
  39. package/dist/configs/type-utils/type-form.js +681 -0
  40. package/dist/docs/common/components/json-schema-view.js +1 -1
  41. package/dist/docs/common/components/methods-view.js +1 -1
  42. package/dist/docs/common/components/properties-view.js +3 -1
  43. package/dist/docs/common/format.js +7 -7
  44. package/dist/docs/common/tableView.js +3 -1
  45. package/dist/enum/index.js +196 -0
  46. package/dist/style/index.scss +1 -1
  47. package/dist/web/actions/showMessage/index.js +4 -1
  48. package/dist/web/components/carousel/index.js +1 -1
  49. package/dist/web/components/customer-service/customer-service.js +19 -2
  50. package/dist/web/components/dataView/index.js +16 -3
  51. package/dist/web/components/flow/common/hooks/useCommonFlowData/flow-get.js +5 -1
  52. package/dist/web/components/flow/common/request.js +5 -5
  53. package/dist/web/components/flow/modules/operations/controls-items/flow-task-info-modal.js +90 -0
  54. package/dist/web/components/form/formcell/index.css +13 -1
  55. package/dist/web/components/form/formcell/index.js +1 -1
  56. package/dist/web/components/form/location/components/LocationH5/location.h5.js +1 -1
  57. package/dist/web/components/form/select/dropdown-select/index.js +9 -3
  58. package/dist/web/components/form/select/h5.js +18 -8
  59. package/dist/web/components/form/select/index.js +9 -10
  60. package/dist/web/components/form/select/region/index.js +1 -1
  61. package/dist/web/components/form/selectMultiple/dropdown-select/h5.js +111 -0
  62. package/dist/web/components/form/selectMultiple/dropdown-select/index.css +270 -0
  63. package/dist/web/components/form/selectMultiple/dropdown-select/index.js +206 -0
  64. package/dist/web/components/form/selectMultiple/dropdown-select/pc.js +115 -0
  65. package/dist/web/components/form/selectMultiple/dropdown-select/ui.js +113 -0
  66. package/dist/web/components/form/selectMultiple/h5.js +40 -0
  67. package/dist/web/components/form/selectMultiple/index.js +94 -0
  68. package/dist/web/components/form/selectMultiple/request.js +76 -0
  69. package/dist/web/components/form/selectMultiple/status/allEmpty.js +5 -0
  70. package/dist/web/components/form/selectMultiple/status/empty.js +19 -0
  71. package/dist/web/components/form/selectMultiple/status/index.css +63 -0
  72. package/dist/web/components/form/selectMultiple/status/index.js +7 -0
  73. package/dist/web/components/form/selectMultiple/status/loading.js +19 -0
  74. package/dist/web/components/form/selectMultiple/status/propsType.js +1 -0
  75. package/dist/web/components/form/selectMultiple/status/retry.js +19 -0
  76. package/dist/web/components/form/tips/index.css +9 -3
  77. package/dist/web/components/form/uploader/index.css +10 -0
  78. package/dist/web/components/form/uploader/uploader.h5.js +60 -62
  79. package/dist/web/components/form/uploader/uploader.pc.js +48 -41
  80. package/dist/web/components/form/uploaderFile/uploadFile.h5.js +8 -33
  81. package/dist/web/components/form/uploaderFile/uploadFile.pc.js +8 -37
  82. package/dist/web/components/form/userOrgSelect/common/fetch-data-service.js +76 -50
  83. package/dist/web/components/form/userOrgSelect/common/utils.js +24 -8
  84. package/dist/web/components/form/userOrgSelect/component/depart-select/depart-select-pc.js +3 -8
  85. package/dist/web/components/form/userOrgSelect/component/depart-select/index.js +14 -18
  86. package/dist/web/components/form/userOrgSelect/component/depart-select/org-modal-pc.js +20 -14
  87. package/dist/web/components/form/userOrgSelect/component/modal-select-h5.js +1 -1
  88. package/dist/web/components/form/userOrgSelect/component/org-tree.js +21 -9
  89. package/dist/web/components/form/userOrgSelect/component/user-select-h5/index.js +76 -15
  90. package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-model.js +2 -7
  91. package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-select-pc.js +6 -4
  92. package/dist/web/components/form/userOrgSelect/component/userOrgSelect.css +8 -2
  93. package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.h5.js +25 -51
  94. package/dist/web/components/form/userOrgSelect/hooks/use-depart-data.js +10 -6
  95. package/dist/web/components/form-input-hooks/index.js +41 -15
  96. package/dist/web/components/form-select-multiple/index.js +26 -0
  97. package/dist/web/components/form-upload-file/index.js +0 -1
  98. package/dist/web/components/form-user-tree-select/index.js +2 -2
  99. package/dist/web/components/formdetail/index.css +31 -1
  100. package/dist/web/components/formdetail/index.js +33 -1
  101. package/dist/web/components/index.js +27 -11
  102. package/dist/web/components/listView/index.js +20 -5
  103. package/dist/web/components/navigationBar/common.js +1 -1
  104. package/dist/web/components/navigationBar/horizontalMenu.js +1 -1
  105. package/dist/web/components/navigationBar/index.css +11 -0
  106. package/dist/web/components/navigationBar/index.js +8 -1
  107. package/dist/web/components/phone/index.js +26 -1
  108. package/dist/web/components/phoneCode/index.js +3 -1
  109. package/dist/web/components/richText/index.css +70 -67
  110. package/dist/web/components/richText/index.js +311 -251
  111. package/dist/web/components/richText/richtext.module.css +1 -0
  112. package/dist/web/components/richTextView/index.css +39 -0
  113. package/dist/web/components/richTextView/index.js +1 -1
  114. package/dist/web/components/share/index.js +26 -1
  115. package/dist/web/components/table/ImportFileModalByApi/uploadCSVFile.js +1 -1
  116. package/dist/web/components/wd-checkbox/checkbox.js +34 -0
  117. package/dist/web/components/wd-checkbox/index.js +3 -0
  118. package/dist/web/components/wd-checkbox-list/checkboxList.js +140 -0
  119. package/dist/web/components/wd-checkbox-list/index.js +3 -0
  120. package/dist/web/components/wd-form/hooks/use-remote-value.js +9 -2
  121. package/dist/web/components/wd-form/index.js +69 -34
  122. package/dist/web/components/wd-form/wd-form.js +42 -0
  123. package/dist/web/components/wd-form-cell/index.js +3 -0
  124. package/dist/web/components/wd-form-cell/wd-form-cell.js +42 -0
  125. package/dist/web/components/wd-form-item/index.js +4 -0
  126. package/dist/web/components/wd-form-item/wd-form-item.js +55 -0
  127. package/dist/web/components/wd-form-item/wd-input-group.js +24 -0
  128. package/dist/web/components/wd-icon/wd-icon.js +10 -2
  129. package/dist/web/components/wd-input/index.js +3 -0
  130. package/dist/web/components/wd-input/wd-input.js +155 -0
  131. package/dist/web/components/wd-input-email/index.js +3 -0
  132. package/dist/web/components/wd-input-email/wd-input-email.js +13 -0
  133. package/dist/web/components/wd-input-group/index.js +3 -0
  134. package/dist/web/components/wd-input-group/wd-input-group.js +10 -0
  135. package/dist/web/components/wd-input-phone/index.js +3 -0
  136. package/dist/web/components/wd-input-phone/wd-input-phone.js +14 -0
  137. package/dist/web/components/wd-input-url/index.js +3 -0
  138. package/dist/web/components/wd-input-url/wd-input-url.js +13 -0
  139. package/dist/web/components/wd-input-wrap/index.js +3 -0
  140. package/dist/web/components/wd-input-wrap/wd-input-wrap.js +18 -0
  141. package/dist/web/components/wd-official-account/index.css +29 -0
  142. package/dist/web/components/wd-official-account/index.js +36 -0
  143. package/dist/web/components/wd-radio/index.js +3 -0
  144. package/dist/web/components/wd-radio/wd-radio.js +30 -0
  145. package/dist/web/components/wd-radio-list/index.js +3 -0
  146. package/dist/web/components/wd-radio-list/wd-radio-list.js +104 -0
  147. package/dist/web/components/wd-switch/index.js +3 -0
  148. package/dist/web/components/wd-switch/wd-switch.js +52 -0
  149. package/dist/web/components/wd-table/components/FieldRender/index.js +5 -4
  150. package/dist/web/components/wd-table/components/FilterFieldsPanel/FilterFieldItem.js +4 -0
  151. package/dist/web/components/wd-table/components/Table/index.js +40 -9
  152. package/dist/web/components/wd-table/hooks/useQueryParams.js +4 -1
  153. package/dist/web/components/wd-table/hooks/useTableData.js +6 -1
  154. package/dist/web/components/wd-table/hooks/useViewFields.js +1 -1
  155. package/dist/web/components/wd-table/utils/index.js +6 -2
  156. package/dist/web/components/wd-table/wd-table.js +125 -99
  157. package/dist/web/components/wd-textarea/index.js +3 -0
  158. package/dist/web/components/wd-textarea/wd-textarea.js +78 -0
  159. package/dist/web/components/wd-tree/index.js +3 -0
  160. package/dist/web/components/wd-tree/utils.js +291 -0
  161. package/dist/web/components/wd-tree/wd-tree.js +193 -0
  162. package/dist/web/utils/constant.js +16 -0
  163. package/dist/web/utils/datasource.js +2 -2
  164. package/dist/web/utils/date.js +3 -3
  165. package/dist/web/utils/hooks/useFormLegacy.js +112 -0
  166. package/dist/web/utils/tool.js +12 -2
  167. package/dist/web/weda-ui.css +197 -3
  168. package/package.json +6 -5
@@ -0,0 +1,112 @@
1
+ import { useMemo, useRef } from 'react';
2
+ import { convertLegacyProps, convertLegacyEnum } from '../tool';
3
+ import { WD_INPUT_SIZE, WD_INPUT_LAYOUT, WD_INPUT_LABEL_ALIGN, } from '../../../enum';
4
+ import isEqual from '../isObjectEqual';
5
+ import lodashGet from 'lodash.get';
6
+ import { usePlatform, textToString } from '../platform';
7
+ const PROPS_VALUE_MAP = { size: { l: 'lg', m: 'md', s: 'sm' } };
8
+ // h5端固定为 md
9
+ export const useSize = (props) => {
10
+ const platform = usePlatform();
11
+ const _size = props.size;
12
+ const size = useMemo(() => {
13
+ const temp = convertLegacyProps(PROPS_VALUE_MAP, 'size', _size);
14
+ if (temp === 'xs')
15
+ return 'xs';
16
+ if (platform === 'h5')
17
+ return 'md';
18
+ return convertLegacyEnum(temp, WD_INPUT_SIZE, 'md');
19
+ }, [_size, platform]);
20
+ return size;
21
+ };
22
+ // 位置,需要从 WdForm 中同步,所以默认为空
23
+ export const useLayout = (props) => {
24
+ const { layout: _layout } = props || {};
25
+ const layout = useMemo(() => {
26
+ return convertLegacyEnum(_layout, WD_INPUT_LAYOUT, 'horizontal');
27
+ }, [_layout]);
28
+ return layout;
29
+ };
30
+ // 对齐
31
+ export const useLabelAlign = (props) => {
32
+ const { labelAlign: _labelAlign } = props || {};
33
+ const labelAlign = useMemo(() => {
34
+ return convertLegacyEnum(_labelAlign, WD_INPUT_LABEL_ALIGN, 'left');
35
+ }, [_labelAlign]);
36
+ return labelAlign;
37
+ };
38
+ // 兼容有前后缀时的必填校验
39
+ export const useRules = (props) => {
40
+ const { rules: _rules, required, before, after, requiredMsg } = props || {};
41
+ const [_before, _after] = [textToString(before), textToString(after)];
42
+ const rulesRef = useRef(_rules);
43
+ const rules = useMemo(() => {
44
+ let newRules = _rules;
45
+ if (required && (_before || _after)) {
46
+ const reg = `/^(?!(^${_before}${_after}$)).*$/`;
47
+ const rule = { message: requiredMsg, pattern: reg };
48
+ newRules = [..._rules, rule];
49
+ }
50
+ if (!isEqual(rulesRef.current, newRules)) {
51
+ rulesRef.current = newRules;
52
+ }
53
+ return rulesRef.current;
54
+ }, [_rules, required, _before, _after, requiredMsg]);
55
+ return rules;
56
+ };
57
+ // 兼容新旧状态
58
+ export const useStatus = (props) => {
59
+ const { disabled: _disabled, readOnly: _readOnly, status } = props || {};
60
+ const result = useMemo(() => {
61
+ const rawReadOnly = typeof _readOnly === 'boolean' ? _readOnly : !!_disabled;
62
+ const disabled = status == null ? !!_disabled : status === 'disabled';
63
+ const readOnly = status == null ? rawReadOnly : status === 'readOnly';
64
+ return { disabled, readOnly };
65
+ }, [_disabled, _readOnly, status]);
66
+ return result;
67
+ };
68
+ // 输入值添加前后缀,且兼容数字
69
+ export const converValueFix = (_inputValue, _before, _after, type) => {
70
+ const [inputValue, before, after] = [_inputValue, _before, _after].map((d) => textToString(d));
71
+ const fixValue = `${before}${inputValue}${after}`;
72
+ if (type && ['number', 'digit'].includes(type) && fixValue === '') {
73
+ return null;
74
+ }
75
+ return fixValue;
76
+ };
77
+ // 前后缀值转输入值
78
+ export const converInputValue = (_value, _before, _after) => {
79
+ const [value, before, after] = [_value, _before, _after].map((d) => textToString(d));
80
+ let inputValue = value;
81
+ if (before && inputValue.startsWith(before)) {
82
+ const beforeReg = new RegExp(`^${before}`);
83
+ inputValue = inputValue.replace(beforeReg, '');
84
+ }
85
+ if (after && inputValue.endsWith(after)) {
86
+ const afterReg = new RegExp(`${after}$`);
87
+ inputValue = inputValue.replace(afterReg, '');
88
+ }
89
+ return inputValue;
90
+ };
91
+ // 转换方法参数 {value} -> str
92
+ export const convertMethodParam = (val) => {
93
+ const methodValue = lodashGet(val, 'value');
94
+ return methodValue !== undefined ? methodValue : val;
95
+ };
96
+ // 将输入值转成字符串类型
97
+ export const useStringProp = (props) => {
98
+ const { inputValue: _inputValue, value: _value, before: _before, after: _after, } = props || {};
99
+ const result = useMemo(() => {
100
+ const inputValue = textToString(_inputValue);
101
+ const value = textToString(_value);
102
+ const before = textToString(_before);
103
+ const after = textToString(_after);
104
+ return { inputValue, value, before, after };
105
+ }, [_inputValue, _value, _before, _after]);
106
+ return result;
107
+ };
108
+ // 兼容 px 单位
109
+ export const convertPx = (val, unit = 'px') => {
110
+ const temp = /^\d+$/.test(`${val}`) ? `${val}${unit}` : val;
111
+ return typeof temp === 'string' ? temp : '';
112
+ };
@@ -30,8 +30,13 @@ export const getUuid = () => {
30
30
  /**
31
31
  * 转换枚举值
32
32
  */
33
- export const convertLegacyEnum = (prop, enumObj) => {
34
- return enumObj.map((i) => i.value).includes(prop) ? prop : enumObj[0].value;
33
+ export const convertLegacyEnum = (prop, enumObj, defaultValue) => {
34
+ const enumValue = enumObj.map((i) => i.value).includes(prop)
35
+ ? prop
36
+ : enumObj[0].value;
37
+ if (defaultValue !== undefined)
38
+ return enumValue || defaultValue;
39
+ return enumValue;
35
40
  };
36
41
  /**
37
42
  * 判断数据源字段类型名称
@@ -132,3 +137,8 @@ export const deepClone = (obj) => {
132
137
  });
133
138
  return newObj;
134
139
  };
140
+ /** 兼容旧属性 */
141
+ export const convertLegacyProps = (map, key, prop) => {
142
+ var _a;
143
+ return (_a = map[key][prop]) !== null && _a !== void 0 ? _a : prop;
144
+ };
@@ -46,6 +46,7 @@ body .weda-ui {
46
46
  font-size: 1em;
47
47
  }
48
48
  }
49
+
49
50
  @media (min-width: 1024px) {
50
51
  .weui .weui-cell_active:active {
51
52
  background-color: unset !important;
@@ -61,7 +62,8 @@ body .weda-ui {
61
62
  }
62
63
 
63
64
  .weda-ui .weui-cell {
64
- font-size: inherit; /* 要让内联样式生效 */
65
+ font-size: inherit;
66
+ /* 要让内联样式生效 */
65
67
  }
66
68
 
67
69
  .weda-ui .weui-cells {
@@ -73,13 +75,16 @@ body .weda-ui {
73
75
  }
74
76
 
75
77
  .weda-formcells__pc.vertical .wedatea2td-form__label label {
76
- width: auto; /* vertcal 情况下label不固定宽度 */
78
+ width: auto;
79
+ /* vertcal 情况下label不固定宽度 */
77
80
  }
78
81
 
79
82
  .weda-ui .weui-btn_input-clear {
80
- visibility: hidden; /* visibilty 防止居中而且宽度auto时,出现输入时宽度抖动 */
83
+ visibility: hidden;
84
+ /* visibilty 防止居中而且宽度auto时,出现输入时宽度抖动 */
81
85
  display: inline;
82
86
  }
87
+
83
88
  .weui-input:focus:not(:placeholder-shown) + .weui-btn_input-clear {
84
89
  visibility: visible;
85
90
  display: inline;
@@ -105,6 +110,7 @@ body .weda-ui {
105
110
  src: url(data:application/font-woff2;charset=utf-8;base64,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)
106
111
  format('woff2');
107
112
  }
113
+
108
114
  .lcap-icon {
109
115
  font-size: 34px;
110
116
  display: inline-block;
@@ -119,108 +125,296 @@ body .weda-ui {
119
125
  -webkit-font-smoothing: antialiased;
120
126
  -moz-osx-font-smoothing: grayscale;
121
127
  }
128
+
122
129
  .lcap-icon-nointernet:before {
123
130
  content: '\e900';
124
131
  }
132
+
125
133
  .lcap-icon-success:before {
126
134
  content: '\e901';
127
135
  }
136
+
128
137
  .lcap-icon-warning:before {
129
138
  content: '\e902';
130
139
  }
140
+
131
141
  .lcap-icon-pending:before {
132
142
  content: '\e903';
133
143
  }
144
+
134
145
  .lcap-icon-refresh:before {
135
146
  content: '\e904';
136
147
  }
148
+
137
149
  .lcap-icon-folder:before {
138
150
  content: '\e905';
139
151
  }
152
+
140
153
  .lcap-icon-arrowup:before {
141
154
  content: '\e906';
142
155
  }
156
+
143
157
  .lcap-icon-arrowdown:before {
144
158
  content: '\e907';
145
159
  }
160
+
146
161
  .lcap-icon-arrowleft:before {
147
162
  content: '\e908';
148
163
  }
164
+
149
165
  .lcap-icon-arrowright:before {
150
166
  content: '\e909';
151
167
  }
168
+
152
169
  .lcap-icon-chevronup:before {
153
170
  content: '\e90a';
154
171
  }
172
+
155
173
  .lcap-icon-chevrondown:before {
156
174
  content: '\e90b';
157
175
  }
176
+
158
177
  .lcap-icon-chevronleft:before {
159
178
  content: '\e90c';
160
179
  }
180
+
161
181
  .lcap-icon-chevronright:before {
162
182
  content: '\e90d';
163
183
  }
184
+
164
185
  .lcap-icon-delete:before {
165
186
  content: '\e90e';
166
187
  }
188
+
167
189
  .lcap-icon-edit:before {
168
190
  content: '\e90f';
169
191
  }
192
+
170
193
  .lcap-icon-search:before {
171
194
  content: '\e910';
172
195
  }
196
+
173
197
  .lcap-icon-check:before {
174
198
  content: '\e911';
175
199
  }
200
+
176
201
  .lcap-icon-close:before {
177
202
  content: '\e912';
178
203
  }
204
+
179
205
  .lcap-icon-add:before {
180
206
  content: '\e913';
181
207
  }
208
+
182
209
  .lcap-icon-download:before {
183
210
  content: '\e914';
184
211
  }
212
+
185
213
  .lcap-icon-success-fill:before {
186
214
  content: '\e915';
187
215
  }
216
+
188
217
  .lcap-icon-close-fill:before {
189
218
  content: '\e916';
190
219
  }
220
+
191
221
  .lcap-icon-minus-fill:before {
192
222
  content: '\e917';
193
223
  }
224
+
194
225
  .lcap-icon-add-fill:before {
195
226
  content: '\e918';
196
227
  }
228
+
197
229
  .lcap-icon-info-fill:before {
198
230
  content: '\e919';
199
231
  }
232
+
200
233
  .lcap-icon-pending-fill:before {
201
234
  content: '\e91a';
202
235
  }
236
+
203
237
  .lcap-icon-warning-fill:before {
204
238
  content: '\e91b';
205
239
  }
240
+
206
241
  .lcap-icon-more:before {
207
242
  content: '\e91c';
208
243
  }
244
+
209
245
  .lcap-icon-star:before {
210
246
  content: '\e91d';
211
247
  }
248
+
212
249
  .lcap-icon-star-fill:before {
213
250
  content: '\e91e';
214
251
  }
252
+
215
253
  .lcap-icon-location:before {
216
254
  content: '\e91f';
217
255
  }
256
+
218
257
  .lcap-icon-question:before {
219
258
  content: '\e920';
220
259
  }
260
+
221
261
  .weapps__toast p {
222
262
  display: -webkit-box;
223
263
  overflow: hidden;
224
264
  -webkit-line-clamp: 15;
225
265
  -webkit-box-orient: vertical;
226
266
  }
267
+
268
+ /* h5/pc 占位符 */
269
+ .weda-ui.gsd-h5-react-formitem .weui-input::placeholder,
270
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-input::placeholder {
271
+ color: var(--wd-color-text-placeholder);
272
+ }
273
+
274
+ .weda-ui.gsd-h5-react-formitem .weui-input::-webkit-input-placeholder,
275
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-input::-webkit-input-placeholder {
276
+ color: var(--wd-color-text-placeholder);
277
+ }
278
+
279
+ .weda-ui.gsd-h5-react-formitem .weui-input:-moz-placeholder,
280
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-input:-moz-placeholder {
281
+ color: var(--wd-color-text-placeholder);
282
+ }
283
+
284
+ .weda-ui.gsd-h5-react-formitem .weui-input::-moz-placeholder,
285
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-input::-moz-placeholder {
286
+ color: var(--wd-color-text-placeholder);
287
+ }
288
+
289
+ .weda-ui.gsd-h5-react-formitem .weui-input:-ms-input-placeholder,
290
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-input:-ms-input-placeholder {
291
+ color: var(--wd-color-text-placeholder);
292
+ }
293
+
294
+ .weda-ui.gsd-h5-react-formitem .form-select-pc .wedatea2td-text-weak {
295
+ color: var(--wd-color-text-placeholder) !important;
296
+ }
297
+
298
+ /* pc 字体 */
299
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-input,
300
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-textarea,
301
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-textarea-group,
302
+ .weda-ui.gsd-h5-react-formitem .form-select-pc .wedatea2td-dropdown__header {
303
+ font: inherit;
304
+ }
305
+
306
+ .weda-ui.gsd-h5-react-formitem .wedatea2td-input,
307
+ .weda-ui.gsd-h5-react-formitem .form-select-pc .wedatea2td-dropdown__header {
308
+ height: var(--wd-form-item-height-md);
309
+ }
310
+
311
+ .weda-ui.gsd-h5-react-formitem
312
+ .form-select-pc
313
+ .wedatea2td-dropdown__header
314
+ .wedatea2td-dropdown__value {
315
+ font: inherit;
316
+ line-height: var(--wd-form-item-height-md);
317
+ }
318
+
319
+ /* h5 外边框 */
320
+ .weui-cells__group_form .weui-cells::before,
321
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
322
+ .weui-cells::before {
323
+ border-top-color: transparent;
324
+ left: 0;
325
+ right: 0;
326
+ }
327
+
328
+ .weui-cells__group_form .weui-cells::after,
329
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
330
+ .weui-cells::after {
331
+ border-bottom: var(--wd-form-item-border-width) solid
332
+ var(--wd-form-item-border-color);
333
+ left: 0;
334
+ right: 0;
335
+ transform: none;
336
+ -webkit-transform: none;
337
+ }
338
+
339
+ /* h5/pc 标题 */
340
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
341
+ .weda-formcells.weui-flex
342
+ .weda-formcells__label,
343
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
344
+ .wedatea2td-form__item
345
+ .wedatea2td-form__label {
346
+ width: var(--wd-form-item-label-width);
347
+ padding-left: 0;
348
+ padding-right: 0;
349
+ margin-right: var(--wd-form-item-label-mr);
350
+ }
351
+
352
+ .weda-ui.gsd-h5-react-formitem.form-detail-wrap.pc-form-detail-wrap
353
+ .form-detail-group-label-container {
354
+ width: 98px;
355
+ }
356
+
357
+ /* h5 两边间距 */
358
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem > .weda-ui {
359
+ padding-left: var(--wd-form-item-pd);
360
+ padding-right: var(--wd-form-item-pd);
361
+ }
362
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
363
+ > .weda-ui.wedatea2td-form__item {
364
+ padding-left: 0;
365
+ padding-right: 0;
366
+ }
367
+
368
+ .weda-ui.gsd-h5-react-formitem.form-detail-wrap.pc-form-detail-wrap
369
+ .form-detail-group-parent-container {
370
+ width: calc(100% - 102px);
371
+ padding-left: 0;
372
+ padding-right: 0;
373
+ }
374
+
375
+ /* h5/pc 必填标识 */
376
+ .weda-ui.gsd-h5-react-formitem .weda-formcells__flag {
377
+ margin-right: var(--wd-space-base);
378
+ color: var(--wd-color-text-error);
379
+ margin-left: 0;
380
+ }
381
+
382
+ .weda-ui.gsd-h5-react-formitem
383
+ .wedatea2td-form__item
384
+ .wedatea2td-form__label.is-required
385
+ label::after {
386
+ content: '';
387
+ display: none;
388
+ }
389
+
390
+ .weda-ui.gsd-h5-react-formitem
391
+ .wedatea2td-form__item
392
+ .wedatea2td-form__label.is-required
393
+ label::before {
394
+ content: '*';
395
+ color: var(--wd-color-text-error);
396
+ margin-right: var(--wd-space-base);
397
+ }
398
+
399
+ /* h5 垂直时 */
400
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
401
+ .weda-formcells
402
+ .weda-formcells__label,
403
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
404
+ .weda-formcells
405
+ .weda-formcells__content
406
+ .weui-cell {
407
+ padding-left: 0;
408
+ }
409
+
410
+ /* 图片、文件、地图,垂直时*/
411
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
412
+ .weui-uploader.vertical
413
+ .weui-uploader__bd,
414
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
415
+ .weda-upload-file-mobile
416
+ .vertical,
417
+ .weda-ui.gsd-h5-react-formitem.wa-comp-CLOUDBASE_STANDARD-FormItem
418
+ .form-location-con_vertical {
419
+ padding-left: 0;
420
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/weda-ui",
3
- "version": "3.4.11",
3
+ "version": "3.4.13",
4
4
  "main": "./dist/index.js",
5
5
  "module": "./dist/index",
6
6
  "miniprogram": "mpdist",
@@ -32,7 +32,7 @@
32
32
  "pree2e:report": "npx mkdirp cypress/report && npx mochawesome-merge 'cypress/results/*.json' > cypress/report/mochawesome_full.json",
33
33
  "e2e:report": "npx marge -o storybook-static/e2e-report cypress/report/mochawesome_full.json",
34
34
  "test:all": "node tools/test-ci.mjs",
35
- "test:coverage": "node tools/test-coverage.mjs",
35
+ "test:coverage": "node tools/test-ci.mjs --coverage=true",
36
36
  "e2e": "npx cypress open --component",
37
37
  "pretest:all": "rimraf .nyc_output || true",
38
38
  "storybook": "start-storybook -p 6006",
@@ -43,7 +43,8 @@
43
43
  "postprepare": "npm run build-mp",
44
44
  "build-npm": "rimraf dist && mkdir dist && cp -r src/web dist/ && cp -r src/configs dist/ && cp src/index.js dist/",
45
45
  "build-mp": "rimraf mpdist && npx gulp -f tools/build-mp/gulpfile.mjs",
46
- "dev-mp": "npx gulp dev -- tools/build-mp/gulpfile.mjs",
46
+ "dev-mp:ide": "node tools/dev-mp-in-ide.mjs",
47
+ "dev-mp": "npx gulp dev -f tools/build-mp/gulpfile.mjs",
47
48
  "convert-rpx": "npx gulp -f tools/convert-rpx/gulpfile.mjs",
48
49
  "clear:snap": "rimraf ./src/test/__snapshots__",
49
50
  "size": "npm run build-mp && npm run build:cli && size-limit",
@@ -175,7 +176,7 @@
175
176
  "jest-preview": "^0.2.6",
176
177
  "json-schema-to-ts": "^2.5.5",
177
178
  "make-fetch-happen": "^11.0.1",
178
- "miniprogram-simulate": "^1.5.8",
179
+ "miniprogram-simulate": "^1.5.9",
179
180
  "mkdirp": "^1.0.4",
180
181
  "mochawesome": "^7.1.3",
181
182
  "mochawesome-merge": "^4.2.1",
@@ -227,7 +228,7 @@
227
228
  "!.temp/dist/*.map"
228
229
  ],
229
230
  "webpack": false,
230
- "limit": "520 KB"
231
+ "limit": "550 KB"
231
232
  }
232
233
  ],
233
234
  "nyc": {