@nutui/nutui-react 3.0.1 → 3.0.3-beta.0

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 (75) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/cjs/hooks/use-client-rect.js +1 -0
  3. package/dist/cjs/packages/datepicker/style/style.css +70 -0
  4. package/dist/cjs/packages/datepickerview/style/index.js +1 -0
  5. package/dist/cjs/packages/datepickerview/style/style.css +70 -0
  6. package/dist/cjs/packages/fixednav/fixednav.js +20 -14
  7. package/dist/cjs/packages/fixednav/style/fixednav.scss +0 -15
  8. package/dist/cjs/packages/fixednav/style/index.js +1 -0
  9. package/dist/cjs/packages/fixednav/style/style.css +97 -14
  10. package/dist/cjs/packages/form/__tests__/merge.spec.d.ts +1 -0
  11. package/dist/cjs/packages/form/__tests__/merge.spec.js +545 -0
  12. package/dist/cjs/packages/form/form.d.ts +2 -0
  13. package/dist/cjs/packages/form/form.js +9 -2
  14. package/dist/cjs/packages/form/index.d.ts +2 -1
  15. package/dist/cjs/packages/form/index.js +1 -0
  16. package/dist/cjs/packages/form/style/form.scss +0 -66
  17. package/dist/cjs/packages/form/style/style.css +31 -21
  18. package/dist/cjs/packages/form/types.d.ts +2 -1
  19. package/dist/cjs/packages/form/useform.d.ts +2 -1
  20. package/dist/cjs/packages/form/useform.js +342 -278
  21. package/dist/cjs/packages/formitem/formitem.d.ts +1 -0
  22. package/dist/cjs/packages/formitem/formitem.js +55 -44
  23. package/dist/cjs/packages/formitem/style/formitem.scss +101 -21
  24. package/dist/cjs/packages/formitem/style/style.css +89 -12
  25. package/dist/cjs/packages/picker/style/index.js +1 -0
  26. package/dist/cjs/packages/picker/style/style.css +70 -0
  27. package/dist/cjs/packages/swipe/style/style.css +3 -3
  28. package/dist/cjs/packages/swipe/style/swipe.scss +7 -3
  29. package/dist/cjs/utils/get-rect-by-taro.d.ts +1 -1
  30. package/dist/cjs/utils/get-rect-by-taro.js +4 -1
  31. package/dist/cjs/utils/get-system-info.js +4 -5
  32. package/dist/cjs/utils/merge.d.ts +14 -0
  33. package/dist/cjs/utils/merge.js +98 -0
  34. package/dist/cjs/utils/platform-taro.js +4 -5
  35. package/dist/cjs/utils/to-array.d.ts +1 -0
  36. package/dist/cjs/utils/to-array.js +18 -0
  37. package/dist/es/hooks/use-client-rect.js +1 -0
  38. package/dist/es/packages/datepicker/style/style.css +70 -0
  39. package/dist/es/packages/datepickerview/style/index.js +1 -0
  40. package/dist/es/packages/datepickerview/style/style.css +70 -0
  41. package/dist/es/packages/fixednav/fixednav.js +20 -14
  42. package/dist/es/packages/fixednav/style/fixednav.scss +0 -15
  43. package/dist/es/packages/fixednav/style/index.js +1 -0
  44. package/dist/es/packages/fixednav/style/style.css +97 -14
  45. package/dist/es/packages/form/__tests__/merge.spec.d.ts +1 -0
  46. package/dist/es/packages/form/__tests__/merge.spec.js +541 -0
  47. package/dist/es/packages/form/form.d.ts +10 -0
  48. package/dist/es/packages/form/form.js +9 -2
  49. package/dist/es/packages/form/index.d.ts +2 -1
  50. package/dist/es/packages/form/index.js +2 -1
  51. package/dist/es/packages/form/style/form.scss +0 -66
  52. package/dist/es/packages/form/style/style.css +31 -21
  53. package/dist/es/packages/form/types.d.ts +2 -1
  54. package/dist/es/packages/form/useform.d.ts +2 -1
  55. package/dist/es/packages/form/useform.js +340 -279
  56. package/dist/es/packages/formitem/formitem.d.ts +1 -0
  57. package/dist/es/packages/formitem/formitem.js +55 -44
  58. package/dist/es/packages/formitem/style/formitem.scss +101 -21
  59. package/dist/es/packages/formitem/style/style.css +89 -12
  60. package/dist/es/packages/picker/style/index.js +1 -0
  61. package/dist/es/packages/picker/style/style.css +70 -0
  62. package/dist/es/packages/swipe/style/style.css +3 -3
  63. package/dist/es/packages/swipe/style/swipe.scss +7 -3
  64. package/dist/es/utils/get-rect-by-taro.d.ts +1 -1
  65. package/dist/es/utils/get-rect-by-taro.js +4 -1
  66. package/dist/es/utils/get-system-info.js +4 -4
  67. package/dist/es/utils/merge.d.ts +14 -0
  68. package/dist/es/utils/merge.js +68 -0
  69. package/dist/es/utils/platform-taro.js +4 -4
  70. package/dist/es/utils/to-array.d.ts +1 -0
  71. package/dist/es/utils/to-array.js +8 -0
  72. package/dist/nutui.react.umd.js +555 -422
  73. package/dist/style.css +1 -1
  74. package/dist/style.scss +41 -41
  75. package/package.json +1 -1
@@ -142,32 +142,38 @@
142
142
 
143
143
  .nut-form-item {
144
144
  display: flex;
145
- align-items: center;
146
- padding: 4px 12px;
145
+ line-height: unset;
147
146
  }
148
- .nut-form-item.error.line::before {
149
- border-bottom: 1px solid var(--nutui-form-item-error-line-color, var(--nutui-color-primary, #ff0f23));
150
- transform: scaleX(1);
151
- transition: transform 200ms cubic-bezier(0, 0, 0.2, 1) 0ms;
147
+ .nut-form-item-disabled {
148
+ opacity: 0.4;
149
+ pointer-events: none;
152
150
  }
153
151
  .nut-form-item-label {
152
+ display: flex;
153
+ flex-direction: row;
154
154
  font-size: var(--nutui-form-item-label-font-size, var(--nutui-font-size-base, 14px));
155
155
  font-weight: normal;
156
156
  width: var(--nutui-form-item-label-width, 90px);
157
157
  margin-right: var(--nutui-form-item-label-margin-right, 10px);
158
- flex: none !important;
159
- display: inline-block !important;
158
+ flex: 0 0 auto;
160
159
  word-wrap: break-word;
161
160
  text-align: var(--nutui-form-item-label-text-align, left);
161
+ line-height: unset;
162
162
  }
163
- .nut-form-item-label .required::before {
164
- content: "*";
163
+ .nut-form-item-label-required {
165
164
  color: var(--nutui-form-item-required-color, var(--nutui-color-primary, #ff0f23));
166
165
  margin-right: var(--nutui-form-item-required-margin-right, 4px);
166
+ display: block;
167
+ position: absolute;
168
+ left: -10px;
169
+ }
170
+ .nut-form-item .nut-form-item-labeltxt {
171
+ position: relative;
172
+ font-size: 12px;
167
173
  }
168
174
  .nut-form-item-body {
169
175
  flex: 1;
170
- display: flex !important;
176
+ display: flex;
171
177
  flex-direction: column;
172
178
  }
173
179
  .nut-form-item-body-slots {
@@ -177,6 +183,9 @@
177
183
  padding: 0;
178
184
  border: 0;
179
185
  }
186
+ .nut-form-item-body-slots .nut-input-container {
187
+ height: auto;
188
+ }
180
189
  .nut-form-item-body-slots .nut-input-text {
181
190
  font-size: var(--nutui-form-item-body-font-size, var(--nutui-font-size-base, 14px));
182
191
  text-align: var(--nutui-form-item-body-input-text-align, left);
@@ -191,7 +200,7 @@
191
200
  min-height: 24px;
192
201
  }
193
202
  .nut-form-item-body-slots .nut-textarea {
194
- padding: 0 !important;
203
+ padding: 0;
195
204
  }
196
205
  .nut-form-item-body-slots .nut-textarea .nut-textarea-textarea {
197
206
  font: inherit;
@@ -237,38 +246,39 @@
237
246
  text-align: right;
238
247
  }
239
248
 
240
- .form-layout-right .nut-form-item-label {
241
- text-align: right;
249
+ /* position */
250
+ .nut-form-item-label-right {
251
+ justify-content: flex-end;
242
252
  padding-right: 24px;
243
253
  white-space: nowrap;
244
254
  }
245
255
 
246
- .form-layout-left .nut-form-item-label {
256
+ .nut-form-item-label-left {
247
257
  position: relative;
248
- text-align: left;
249
258
  padding-left: 12px;
250
259
  white-space: nowrap;
251
260
  }
252
- .form-layout-left .nut-form-item-label .required {
261
+
262
+ .nut-form-item-label-left-required {
253
263
  display: block;
254
264
  line-height: 1.5;
255
265
  position: absolute;
256
266
  left: 0.1em;
257
267
  }
258
268
 
259
- .form-layout-top .nut-form-item {
269
+ .nut-form-item-top {
260
270
  flex-direction: column;
261
271
  align-items: flex-start;
262
272
  white-space: nowrap;
263
273
  }
264
274
 
265
- .form-layout-top .nut-form-item-label {
266
- padding-bottom: 4px;
275
+ .nut-form-item-label-top {
267
276
  display: block;
277
+ padding-bottom: 4px;
268
278
  padding-right: 24px;
269
279
  }
270
280
 
271
- .form-layout-top .nut-form-item-body {
281
+ .nut-form-item-body-top {
272
282
  margin-left: 0;
273
283
  width: 100%;
274
284
  }
@@ -16,10 +16,11 @@ export interface Store {
16
16
  }
17
17
  export interface FormInstance<Values = any> {
18
18
  getFieldValue: (name: NamePath) => StoreValue;
19
+ setFieldValue: <T = any>(name: NamePath, value: T) => void;
19
20
  getFieldsValue: (nameList: NamePath[] | true) => {
20
21
  [key: NamePath]: any;
21
22
  };
22
- setFieldsValue: (value: any) => void;
23
+ setFieldsValue: (value: Store) => void;
23
24
  resetFields: (fields?: NamePath[]) => void;
24
25
  submit: () => void;
25
26
  getInternal: (secret: string) => any;
@@ -1,3 +1,4 @@
1
- import { FormInstance } from './types';
1
+ import { FormInstance, NamePath } from './types';
2
2
  export declare const SECRET = "NUT_FORM_INTERNAL";
3
3
  export declare const useForm: (form?: FormInstance) => [FormInstance];
4
+ export declare const useWatch: (path: NamePath, form: FormInstance) => any;