@kne/react-form-antd 4.1.7 → 4.1.9

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/README.md CHANGED
@@ -251,8 +251,8 @@ const InputExample = () => {
251
251
  placeholder="请再次输入密码"
252
252
  />
253
253
  <Divider>带前缀/后缀</Divider>
254
- <Input name="price" label="价格" addonBefore="¥" placeholder="请输入金额" />
255
- <Input name="website" label="网址" addonAfter=".com" placeholder="请输入网站名称" />
254
+ <Input name="price" label="价格" prefix="¥" placeholder="请输入金额" />
255
+ <Input name="website" label="网址" suffix=".com" placeholder="请输入网站名称" />
256
256
  </Flex>
257
257
  </Form>
258
258
  </Card>
@@ -1188,6 +1188,55 @@ render(<ButtonsExample />);
1188
1188
 
1189
1189
  ```
1190
1190
 
1191
+ - 移动端布局
1192
+ - 移动端默认采用纵向卡片布局(label 在上、字段分隔线、按钮整宽);登录等场景可用 mobile={false} 关闭布局适配,Select 弹层遮罩、16px 字号等字段级优化仍生效
1193
+ - _ReactFormAntd(@kne/current-lib_react-form-antd),(@kne/current-lib_react-form-antd/dist/index.css),antd(antd)
1194
+
1195
+ ```jsx
1196
+ const {default: Form, Input, Select, DatePicker, InputNumber, SubmitButton, useFormIsMobile} = _ReactFormAntd;
1197
+ const {Flex, Card, Tag} = antd;
1198
+
1199
+ const LayoutState = () => {
1200
+ const isMobile = useFormIsMobile();
1201
+ return <Tag color={isMobile ? 'blue' : 'default'}>{isMobile ? '移动端布局' : 'PC 布局'}</Tag>;
1202
+ };
1203
+
1204
+ const MobileExample = () => {
1205
+ return (<Flex vertical gap={24}>
1206
+ <Card title="移动端自动适配(默认)" size="small">
1207
+ <Form type="default" onSubmit={data => console.log('提交报销单', data)}>
1208
+ <LayoutState/>
1209
+ <Input name="title" label="报销事由" rule="REQ" placeholder="如:上海客户拜访差旅"/>
1210
+ <Select name="category" label="费用类型" rule="REQ" options={[
1211
+ {label: '交通费', value: 'traffic'},
1212
+ {label: '住宿费', value: 'hotel'},
1213
+ {label: '餐饮费', value: 'meal'}
1214
+ ]}/>
1215
+ <InputNumber name="amount" label="金额(元)" rule="REQ" min={0} precision={2}/>
1216
+ <DatePicker name="date" label="发生日期" rule="REQ"/>
1217
+ <SubmitButton>提交报销</SubmitButton>
1218
+ </Form>
1219
+ </Card>
1220
+
1221
+ <Card title="登录场景:mobile={false} 关闭移动端布局" size="small">
1222
+ <Form type="inner" mobile={false} onSubmit={data => console.log('登录', data)}>
1223
+ <LayoutState/>
1224
+ <Input name="account" label="账号" rule="REQ" placeholder="手机号 / 邮箱"/>
1225
+ <Input.Password name="password" label="密码" rule="REQ" placeholder="请输入密码"/>
1226
+ <Select name="tenant" label="登录租户" options={[
1227
+ {label: '总部', value: 'hq'},
1228
+ {label: '华东分公司', value: 'east'}
1229
+ ]}/>
1230
+ <SubmitButton block>登录</SubmitButton>
1231
+ </Form>
1232
+ </Card>
1233
+ </Flex>);
1234
+ };
1235
+
1236
+ render(<MobileExample/>);
1237
+
1238
+ ```
1239
+
1191
1240
  ### API
1192
1241
 
1193
1242
  #### 属性
@@ -1201,8 +1250,13 @@ render(<ButtonsExample />);
1201
1250
  | enterSubmit | `boolean` | `false` | 是否支持回车提交 |
1202
1251
  | scrollToError | `boolean` | `true` | 校验失败时是否滚动到错误字段 |
1203
1252
  | scrollProps | `object` | `{block: 'center'}` | 滚动配置,参考 Element.scrollIntoView |
1253
+ | mobile | `boolean` | - | 传 `false` 关闭本表单的移动端布局(如登录页);只影响布局,Select 弹层遮罩、16px 字号等字段级移动端优化仍按设备生效。不传时继承外层 Form,再回退到 preset 与设备判断 |
1204
1254
  | onSubmit | `function` | - | 表单提交回调函数 |
1205
1255
 
1256
+ #### useFormIsMobile
1257
+
1258
+ 在 Form 内部获取当前是否应使用移动端布局:Form 设置了 `mobile={false}` 时返回 `false`,否则按设备判断。`useFormMobile` 返回 Form 上 `mobile` 的原始值,`FormMobileContext` 为对应 Context。
1259
+
1206
1260
  ---
1207
1261
 
1208
1262
  ### Input 输入框
@@ -1528,6 +1582,7 @@ import {preset} from '@kne/react-form-antd';
1528
1582
  preset({
1529
1583
  type: 'default', // 默认表单类型
1530
1584
  size: 'middle', // 默认表单尺寸
1585
+ mobile: undefined, // 全局设为 false 可关闭所有表单的移动端布局
1531
1586
  rules: { // 自定义校验规则
1532
1587
  PHONE: {
1533
1588
  reg: /^1[3-9]\d{9}$/,
package/dist/index.css CHANGED
@@ -96,10 +96,10 @@
96
96
  .react-form__field.is-req-error .react-form__field-component:focus, .react-form__field.is-error .react-form__field-component:focus {
97
97
  box-shadow: 0 0 0 2px rgba(252, 51, 51, 0.2);
98
98
  }
99
- .react-form__field.is-req-error .react-form__field-component .ant-select-selection, .react-form__field.is-req-error .react-form__field-component .ant-input, .react-form__field.is-req-error .react-form__field-component .ant-radio-inner, .react-form__field.is-error .react-form__field-component .ant-select-selection, .react-form__field.is-error .react-form__field-component .ant-input, .react-form__field.is-error .react-form__field-component .ant-radio-inner {
99
+ .react-form__field.is-req-error .react-form__field-component .ant-input, .react-form__field.is-req-error .react-form__field-component .ant-radio-inner, .react-form__field.is-error .react-form__field-component .ant-input, .react-form__field.is-error .react-form__field-component .ant-radio-inner {
100
100
  border-color: #fc3333;
101
101
  }
102
- .react-form__field.is-req-error .react-form__field-component .ant-select-selection:focus, .react-form__field.is-req-error .react-form__field-component .ant-input:focus, .react-form__field.is-req-error .react-form__field-component .ant-radio-inner:focus, .react-form__field.is-error .react-form__field-component .ant-select-selection:focus, .react-form__field.is-error .react-form__field-component .ant-input:focus, .react-form__field.is-error .react-form__field-component .ant-radio-inner:focus {
102
+ .react-form__field.is-req-error .react-form__field-component .ant-input:focus, .react-form__field.is-req-error .react-form__field-component .ant-radio-inner:focus, .react-form__field.is-error .react-form__field-component .ant-input:focus, .react-form__field.is-error .react-form__field-component .ant-radio-inner:focus {
103
103
  box-shadow: 0 0 0 2px rgba(252, 51, 51, 0.2);
104
104
  }
105
105
  .react-form__field.is-req-error .react-form__field-component .ant-upload.ant-upload-select-picture-card, .react-form__field.is-error .react-form__field-component .ant-upload.ant-upload-select-picture-card {
@@ -111,10 +111,10 @@
111
111
  .react-form__field.is-req-error .react-form__field-component.ant-input-affix-wrapper-focused, .react-form__field.is-error .react-form__field-component.ant-input-affix-wrapper-focused {
112
112
  box-shadow: 0 0 0 2px rgba(252, 51, 51, 0.2);
113
113
  }
114
- .react-form__field.is-req-error .react-form__field-component.ant-select > .ant-select-selector, .react-form__field.is-error .react-form__field-component.ant-select > .ant-select-selector {
115
- border-color: #fc3333;
114
+ .react-form__field.is-req-error .react-form__field-component.ant-select, .react-form__field.is-error .react-form__field-component.ant-select {
115
+ --ant-select-border-color: #fc3333 !important;
116
116
  }
117
- .react-form__field.is-req-error .react-form__field-component.ant-select.ant-select-focused > .ant-select-selector, .react-form__field.is-error .react-form__field-component.ant-select.ant-select-focused > .ant-select-selector {
117
+ .react-form__field.is-req-error .react-form__field-component.ant-select.ant-select-focused, .react-form__field.is-error .react-form__field-component.ant-select.ant-select-focused {
118
118
  box-shadow: 0 0 0 2px rgba(252, 51, 51, 0.2);
119
119
  }
120
120
  .react-form__field-error {
@@ -289,9 +289,6 @@
289
289
  font-size: 16px !important;
290
290
  }
291
291
 
292
- .react-form.is-mobile .react-form__field-label {
293
- font-size: 16px !important;
294
- }
295
292
  .react-form.is-mobile .ant-input,
296
293
  .react-form.is-mobile textarea.ant-input,
297
294
  .react-form.is-mobile .ant-input-number,
@@ -302,10 +299,7 @@
302
299
  .react-form.is-mobile .ant-select-content,
303
300
  .react-form.is-mobile .ant-select-content-value,
304
301
  .react-form.is-mobile .ant-select-selection-item,
305
- .react-form.is-mobile .ant-select-selection-placeholder,
306
- .react-form.is-mobile .ant-select-selection-search-input,
307
302
  .react-form.is-mobile .ant-picker-input > input,
308
- .react-form.is-mobile .ant-cascader-input,
309
303
  .react-form.is-mobile .ant-radio-wrapper,
310
304
  .react-form.is-mobile .ant-checkbox-wrapper,
311
305
  .react-form.is-mobile .date-picker-today-container .ant-input {
@@ -316,9 +310,6 @@
316
310
  }
317
311
 
318
312
  @container kne-responsive (max-width: 768px) {
319
- .react-form .react-form__field-label {
320
- font-size: 16px !important;
321
- }
322
313
  .react-form .ant-input,
323
314
  .react-form textarea.ant-input,
324
315
  .react-form .ant-input-number,
@@ -329,10 +320,7 @@
329
320
  .react-form .ant-select-content,
330
321
  .react-form .ant-select-content-value,
331
322
  .react-form .ant-select-selection-item,
332
- .react-form .ant-select-selection-placeholder,
333
- .react-form .ant-select-selection-search-input,
334
323
  .react-form .ant-picker-input > input,
335
- .react-form .ant-cascader-input,
336
324
  .react-form .ant-radio-wrapper,
337
325
  .react-form .ant-checkbox-wrapper,
338
326
  .react-form .date-picker-today-container .ant-input {
@@ -342,6 +330,406 @@
342
330
  --ant-select-font-size: 16px;
343
331
  }
344
332
  }
333
+ .kne-responsive-boundary {
334
+ position: relative;
335
+ }
336
+
337
+ .kne-responsive-scroll {
338
+ overflow: auto;
339
+ }
340
+
341
+ :root {
342
+ --kne-viewport-width: 100vw;
343
+ --kne-viewport-height: 100dvh;
344
+ --kne-viewport-inline-size: 100vw;
345
+ --kne-viewport-block-size: 100dvh;
346
+ }
347
+
348
+ .kne-responsive-boundary {
349
+ --kne-viewport-width: 100vw;
350
+ --kne-viewport-height: 100dvh;
351
+ --kne-viewport-inline-size: 100vw;
352
+ --kne-viewport-block-size: 100dvh;
353
+ }
354
+
355
+ .react-form.is-mobile {
356
+ --react-form-choice-label-height: 30px;
357
+ --react-form-choice-offset: calc((var(--react-form-choice-label-height) - 44px) / 2);
358
+ --react-form-choice-button-offset: calc((var(--react-form-choice-label-height) - 40px) / 2);
359
+ }
360
+ .react-form.is-mobile.react-form--small {
361
+ --react-form-choice-label-height: 24px;
362
+ }
363
+ .react-form.is-mobile.react-form--large, .react-form.is-mobile.react-form--inline--large {
364
+ --react-form-choice-label-height: 34px;
365
+ }
366
+ .react-form.is-mobile[class*=react-form--inner] {
367
+ --react-form-choice-offset: 0px;
368
+ --react-form-choice-button-offset: 0px;
369
+ }
370
+ .react-form.is-mobile .react-form__field-input > .ant-checkbox-wrapper {
371
+ margin-block: var(--react-form-choice-offset);
372
+ }
373
+ .react-form.is-mobile .react-form__field-input > .ant-checkbox-group > .ant-checkbox-wrapper:first-child,
374
+ .react-form.is-mobile .react-form__field-input > .ant-radio-group > .ant-radio-wrapper:first-child {
375
+ margin-top: var(--react-form-choice-offset);
376
+ }
377
+ .react-form.is-mobile .react-form__field-input > .ant-checkbox-group > .ant-checkbox-wrapper:last-child,
378
+ .react-form.is-mobile .react-form__field-input > .ant-radio-group > .ant-radio-wrapper:last-child {
379
+ margin-bottom: var(--react-form-choice-offset);
380
+ }
381
+ .react-form.is-mobile .react-form__field-input > .ant-radio-group > .ant-radio-button-wrapper {
382
+ margin-block: var(--react-form-choice-button-offset);
383
+ }
384
+ .react-form.is-mobile .ant-checkbox-wrapper,
385
+ .react-form.is-mobile .ant-radio-wrapper {
386
+ --ant-control-interactive-size: 20px;
387
+ --ant-radio-radio-size: 20;
388
+ --ant-radio-dot-size: 10;
389
+ align-items: center;
390
+ min-height: 44px;
391
+ margin-inline: 0;
392
+ }
393
+ .react-form.is-mobile .ant-checkbox-group,
394
+ .react-form.is-mobile .ant-radio-group {
395
+ display: flex;
396
+ flex-wrap: wrap;
397
+ width: 100%;
398
+ -moz-column-gap: 0;
399
+ column-gap: 0;
400
+ }
401
+ .react-form.is-mobile .ant-checkbox-group > .ant-checkbox-wrapper,
402
+ .react-form.is-mobile .ant-radio-group > .ant-radio-wrapper {
403
+ flex: 0 0 100%;
404
+ }
405
+ .react-form.is-mobile .ant-radio-group > .ant-radio-button-wrapper {
406
+ flex: 1 1 0;
407
+ min-width: 0;
408
+ height: 40px;
409
+ line-height: 38px;
410
+ padding-inline: 8px;
411
+ font-size: 16px;
412
+ text-align: center;
413
+ white-space: nowrap;
414
+ overflow: hidden;
415
+ text-overflow: ellipsis;
416
+ }
417
+
418
+ @container kne-responsive (max-width: 768px) {
419
+ .react-form {
420
+ --react-form-choice-label-height: 30px;
421
+ --react-form-choice-offset: calc((var(--react-form-choice-label-height) - 44px) / 2);
422
+ --react-form-choice-button-offset: calc((var(--react-form-choice-label-height) - 40px) / 2);
423
+ }
424
+ .react-form.react-form--small {
425
+ --react-form-choice-label-height: 24px;
426
+ }
427
+ .react-form.react-form--large, .react-form.react-form--inline--large {
428
+ --react-form-choice-label-height: 34px;
429
+ }
430
+ .react-form[class*=react-form--inner] {
431
+ --react-form-choice-offset: 0px;
432
+ --react-form-choice-button-offset: 0px;
433
+ }
434
+ .react-form .react-form__field-input > .ant-checkbox-wrapper {
435
+ margin-block: var(--react-form-choice-offset);
436
+ }
437
+ .react-form .react-form__field-input > .ant-checkbox-group > .ant-checkbox-wrapper:first-child,
438
+ .react-form .react-form__field-input > .ant-radio-group > .ant-radio-wrapper:first-child {
439
+ margin-top: var(--react-form-choice-offset);
440
+ }
441
+ .react-form .react-form__field-input > .ant-checkbox-group > .ant-checkbox-wrapper:last-child,
442
+ .react-form .react-form__field-input > .ant-radio-group > .ant-radio-wrapper:last-child {
443
+ margin-bottom: var(--react-form-choice-offset);
444
+ }
445
+ .react-form .react-form__field-input > .ant-radio-group > .ant-radio-button-wrapper {
446
+ margin-block: var(--react-form-choice-button-offset);
447
+ }
448
+ .react-form .ant-checkbox-wrapper,
449
+ .react-form .ant-radio-wrapper {
450
+ --ant-control-interactive-size: 20px;
451
+ --ant-radio-radio-size: 20;
452
+ --ant-radio-dot-size: 10;
453
+ align-items: center;
454
+ min-height: 44px;
455
+ margin-inline: 0;
456
+ }
457
+ .react-form .ant-checkbox-group,
458
+ .react-form .ant-radio-group {
459
+ display: flex;
460
+ flex-wrap: wrap;
461
+ width: 100%;
462
+ -moz-column-gap: 0;
463
+ column-gap: 0;
464
+ }
465
+ .react-form .ant-checkbox-group > .ant-checkbox-wrapper,
466
+ .react-form .ant-radio-group > .ant-radio-wrapper {
467
+ flex: 0 0 100%;
468
+ }
469
+ .react-form .ant-radio-group > .ant-radio-button-wrapper {
470
+ flex: 1 1 0;
471
+ min-width: 0;
472
+ height: 40px;
473
+ line-height: 38px;
474
+ padding-inline: 8px;
475
+ font-size: 16px;
476
+ text-align: center;
477
+ white-space: nowrap;
478
+ overflow: hidden;
479
+ text-overflow: ellipsis;
480
+ }
481
+ }
482
+ .kne-responsive-boundary {
483
+ position: relative;
484
+ }
485
+
486
+ .kne-responsive-scroll {
487
+ overflow: auto;
488
+ }
489
+
490
+ :root {
491
+ --kne-viewport-width: 100vw;
492
+ --kne-viewport-height: 100dvh;
493
+ --kne-viewport-inline-size: 100vw;
494
+ --kne-viewport-block-size: 100dvh;
495
+ }
496
+
497
+ .kne-responsive-boundary {
498
+ --kne-viewport-width: 100vw;
499
+ --kne-viewport-height: 100dvh;
500
+ --kne-viewport-inline-size: 100vw;
501
+ --kne-viewport-block-size: 100dvh;
502
+ }
503
+
504
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field {
505
+ display: block;
506
+ margin-right: 0;
507
+ margin-bottom: 0 !important;
508
+ padding: 12px 0;
509
+ border-bottom: 1px solid #eee;
510
+ }
511
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field:last-child {
512
+ border-bottom: none;
513
+ }
514
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-main {
515
+ flex-direction: column;
516
+ }
517
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-label {
518
+ min-width: auto !important;
519
+ margin: 0 0 6px;
520
+ padding-left: 0;
521
+ text-align: left;
522
+ font-size: 15px !important;
523
+ font-weight: normal !important;
524
+ line-height: 1.5;
525
+ color: #666;
526
+ }
527
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-label.is-req:before {
528
+ position: static;
529
+ transform: none;
530
+ margin-right: 2px;
531
+ color: #ff3141;
532
+ font-weight: normal;
533
+ }
534
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input {
535
+ align-self: stretch;
536
+ width: 100%;
537
+ }
538
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field.is-error {
539
+ padding-bottom: 2px;
540
+ }
541
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-error {
542
+ position: static;
543
+ margin-top: -6px;
544
+ font-size: 12px;
545
+ line-height: 16px;
546
+ color: #ff3141 !important;
547
+ }
548
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-input,
549
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-input-affix-wrapper,
550
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-input-number:not(.react-form-antd-mobile-stepper),
551
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-picker {
552
+ border-color: transparent !important;
553
+ box-shadow: none !important;
554
+ outline: none !important;
555
+ background: transparent !important;
556
+ padding-inline: 0 !important;
557
+ color: #333;
558
+ }
559
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .date-picker-today-inputs {
560
+ border-color: transparent !important;
561
+ box-shadow: none !important;
562
+ outline: none !important;
563
+ background: transparent !important;
564
+ padding-inline: 0 !important;
565
+ }
566
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-input-affix-wrapper .ant-input {
567
+ padding-inline: 0 !important;
568
+ }
569
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-input-number:not(.react-form-antd-mobile-stepper) .ant-input-number-input {
570
+ padding-inline: 0 !important;
571
+ }
572
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .react-form-antd-mobile-stepper.ant-input-number-mode-spinner {
573
+ gap: 2px;
574
+ border-color: transparent !important;
575
+ box-shadow: none !important;
576
+ background: transparent !important;
577
+ }
578
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .react-form-antd-mobile-stepper.ant-input-number-mode-spinner .ant-input-number-action {
579
+ border: none !important;
580
+ border-radius: 2px;
581
+ background: #f5f5f5;
582
+ color: #333;
583
+ }
584
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .react-form-antd-mobile-stepper.ant-input-number-mode-spinner .ant-input-number-input {
585
+ border-radius: 2px;
586
+ background: #f5f5f5;
587
+ text-align: center;
588
+ }
589
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-select {
590
+ --ant-select-border-color: transparent !important;
591
+ --ant-select-background-color: transparent !important;
592
+ --ant-select-padding-horizontal: 0px !important;
593
+ box-shadow: none !important;
594
+ outline: none !important;
595
+ }
596
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input input::-moz-placeholder, .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input textarea::-moz-placeholder {
597
+ color: #ccc !important;
598
+ }
599
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input input::placeholder,
600
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input textarea::placeholder,
601
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-select-placeholder {
602
+ color: #ccc !important;
603
+ }
604
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-input-disabled,
605
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-input[disabled],
606
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-picker-disabled,
607
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-select-disabled,
608
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__field-input .ant-input-number-disabled {
609
+ color: #ccc !important;
610
+ }
611
+ .react-form.is-mobile:not(.is-mobile-disabled) .react-form__action-button {
612
+ width: 100%;
613
+ height: 48px;
614
+ font-size: 17px;
615
+ border-radius: 4px;
616
+ }
617
+
618
+ @container kne-responsive (max-width: 768px) {
619
+ .react-form:not(.is-mobile-disabled) .react-form__field {
620
+ display: block;
621
+ margin-right: 0;
622
+ margin-bottom: 0 !important;
623
+ padding: 12px 0;
624
+ border-bottom: 1px solid #eee;
625
+ }
626
+ .react-form:not(.is-mobile-disabled) .react-form__field:last-child {
627
+ border-bottom: none;
628
+ }
629
+ .react-form:not(.is-mobile-disabled) .react-form__field-main {
630
+ flex-direction: column;
631
+ }
632
+ .react-form:not(.is-mobile-disabled) .react-form__field-label {
633
+ min-width: auto !important;
634
+ margin: 0 0 6px;
635
+ padding-left: 0;
636
+ text-align: left;
637
+ font-size: 15px !important;
638
+ font-weight: normal !important;
639
+ line-height: 1.5;
640
+ color: #666;
641
+ }
642
+ .react-form:not(.is-mobile-disabled) .react-form__field-label.is-req:before {
643
+ position: static;
644
+ transform: none;
645
+ margin-right: 2px;
646
+ color: #ff3141;
647
+ font-weight: normal;
648
+ }
649
+ .react-form:not(.is-mobile-disabled) .react-form__field-input {
650
+ align-self: stretch;
651
+ width: 100%;
652
+ }
653
+ .react-form:not(.is-mobile-disabled) .react-form__field.is-error {
654
+ padding-bottom: 2px;
655
+ }
656
+ .react-form:not(.is-mobile-disabled) .react-form__field-error {
657
+ position: static;
658
+ margin-top: -6px;
659
+ font-size: 12px;
660
+ line-height: 16px;
661
+ color: #ff3141 !important;
662
+ }
663
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-input,
664
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-input-affix-wrapper,
665
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-input-number:not(.react-form-antd-mobile-stepper),
666
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-picker {
667
+ border-color: transparent !important;
668
+ box-shadow: none !important;
669
+ outline: none !important;
670
+ background: transparent !important;
671
+ padding-inline: 0 !important;
672
+ color: #333;
673
+ }
674
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .date-picker-today-inputs {
675
+ border-color: transparent !important;
676
+ box-shadow: none !important;
677
+ outline: none !important;
678
+ background: transparent !important;
679
+ padding-inline: 0 !important;
680
+ }
681
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-input-affix-wrapper .ant-input {
682
+ padding-inline: 0 !important;
683
+ }
684
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-input-number:not(.react-form-antd-mobile-stepper) .ant-input-number-input {
685
+ padding-inline: 0 !important;
686
+ }
687
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .react-form-antd-mobile-stepper.ant-input-number-mode-spinner {
688
+ gap: 2px;
689
+ border-color: transparent !important;
690
+ box-shadow: none !important;
691
+ background: transparent !important;
692
+ }
693
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .react-form-antd-mobile-stepper.ant-input-number-mode-spinner .ant-input-number-action {
694
+ border: none !important;
695
+ border-radius: 2px;
696
+ background: #f5f5f5;
697
+ color: #333;
698
+ }
699
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .react-form-antd-mobile-stepper.ant-input-number-mode-spinner .ant-input-number-input {
700
+ border-radius: 2px;
701
+ background: #f5f5f5;
702
+ text-align: center;
703
+ }
704
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-select {
705
+ --ant-select-border-color: transparent !important;
706
+ --ant-select-background-color: transparent !important;
707
+ --ant-select-padding-horizontal: 0px !important;
708
+ box-shadow: none !important;
709
+ outline: none !important;
710
+ }
711
+ .react-form:not(.is-mobile-disabled) .react-form__field-input input::-moz-placeholder, .react-form:not(.is-mobile-disabled) .react-form__field-input textarea::-moz-placeholder {
712
+ color: #ccc !important;
713
+ }
714
+ .react-form:not(.is-mobile-disabled) .react-form__field-input input::placeholder,
715
+ .react-form:not(.is-mobile-disabled) .react-form__field-input textarea::placeholder,
716
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-select-placeholder {
717
+ color: #ccc !important;
718
+ }
719
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-input-disabled,
720
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-input[disabled],
721
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-picker-disabled,
722
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-select-disabled,
723
+ .react-form:not(.is-mobile-disabled) .react-form__field-input .ant-input-number-disabled {
724
+ color: #ccc !important;
725
+ }
726
+ .react-form:not(.is-mobile-disabled) .react-form__action-button {
727
+ width: 100%;
728
+ height: 48px;
729
+ font-size: 17px;
730
+ border-radius: 4px;
731
+ }
732
+ }
345
733
  @keyframes react-form-antd-mobile-expand-down {
346
734
  from {
347
735
  max-height: 0;
@@ -385,10 +773,8 @@
385
773
  .react-form-antd-mobile-anchor.is-mobile .ant-select-placeholder,
386
774
  .react-form-antd-mobile-anchor.is-mobile .ant-select-content,
387
775
  .react-form-antd-mobile-anchor.is-mobile .ant-select-content-value,
388
- .react-form-antd-mobile-anchor.is-mobile .ant-select-selection-search-input,
389
776
  .react-form-antd-mobile-anchor.is-mobile .ant-picker-input > input,
390
- .react-form-antd-mobile-anchor.is-mobile .ant-select-selection-item,
391
- .react-form-antd-mobile-anchor.is-mobile .ant-select-selection-placeholder {
777
+ .react-form-antd-mobile-anchor.is-mobile .ant-select-selection-item {
392
778
  font-size: 16px !important;
393
779
  }
394
780
  .react-form-antd-mobile-anchor.is-mobile .ant-select {
@@ -677,4 +1063,28 @@
677
1063
  pointer-events: none !important;
678
1064
  animation: react-form-antd-mobile-collapse-up 120ms ease-out both !important;
679
1065
  }
1066
+ .react-form-antd-mobile-stepper.ant-input-number {
1067
+ width: 100%;
1068
+ }
1069
+ .react-form-antd-mobile-stepper.ant-input-number.ant-input-number-lg {
1070
+ border-radius: var(--ant-border-radius-lg, 8px);
1071
+ }
1072
+ .react-form-antd-mobile-stepper.ant-input-number.ant-input-number-mode-spinner {
1073
+ overflow: hidden;
1074
+ }
1075
+ .react-form-antd-mobile-stepper.ant-input-number.ant-input-number-mode-spinner .ant-input-number-action {
1076
+ display: flex;
1077
+ align-items: center;
1078
+ justify-content: center;
1079
+ align-self: stretch;
1080
+ width: calc(1em * var(--ant-line-height, 1.5714) + 2 * var(--ant-input-number-input-padding-block, 4px));
1081
+ padding-inline: 0;
1082
+ font-size: inherit;
1083
+ }
1084
+ .react-form-antd-mobile-stepper.ant-input-number.ant-input-number-mode-spinner .ant-input-number-action .anticon {
1085
+ font-size: 14px;
1086
+ }
1087
+ .react-form-antd-mobile-stepper.ant-input-number.ant-input-number-mode-spinner.ant-input-number-lg .ant-input-number-action {
1088
+ width: calc(1em * var(--ant-line-height-lg, 1.5) + 2 * var(--ant-input-number-input-padding-block, 7px));
1089
+ }
680
1090
  /*# sourceMappingURL=index.css.map */