@kdcloudjs/kdesign 1.7.19 → 1.7.20

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 (74) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/kdesign-complete.less +331 -239
  3. package/dist/kdesign.css +266 -239
  4. package/dist/kdesign.css.map +1 -1
  5. package/dist/kdesign.js +512 -625
  6. package/dist/kdesign.js.map +1 -1
  7. package/dist/kdesign.min.css +2 -2
  8. package/dist/kdesign.min.js +9 -9
  9. package/dist/kdesign.min.js.map +1 -1
  10. package/es/button/style/token.less +1 -0
  11. package/es/checkbox/checkbox.js +5 -5
  12. package/es/checkbox/style/index.css +2 -0
  13. package/es/checkbox/style/index.less +2 -0
  14. package/es/checkbox/style/token.less +1 -1
  15. package/es/city-picker/city-picker.d.ts +3 -23
  16. package/es/city-picker/city-picker.js +351 -124
  17. package/es/city-picker/interface.d.ts +57 -0
  18. package/es/city-picker/interface.js +3 -0
  19. package/es/city-picker/option.d.ts +4 -0
  20. package/es/city-picker/option.js +42 -0
  21. package/es/city-picker/style/index.css +264 -239
  22. package/es/city-picker/style/index.less +262 -218
  23. package/es/city-picker/style/mixin.less +26 -3
  24. package/es/city-picker/style/token.less +42 -14
  25. package/es/config-provider/compDefaultProps.d.ts +13 -0
  26. package/es/config-provider/compDefaultProps.js +13 -0
  27. package/es/input/style/token.less +2 -8
  28. package/lib/button/style/token.less +1 -0
  29. package/lib/checkbox/checkbox.js +4 -4
  30. package/lib/checkbox/style/index.css +2 -0
  31. package/lib/checkbox/style/index.less +2 -0
  32. package/lib/checkbox/style/token.less +1 -1
  33. package/lib/city-picker/city-picker.d.ts +3 -23
  34. package/lib/city-picker/city-picker.js +350 -123
  35. package/lib/city-picker/interface.d.ts +57 -0
  36. package/lib/city-picker/interface.js +11 -0
  37. package/lib/city-picker/option.d.ts +4 -0
  38. package/lib/city-picker/option.js +55 -0
  39. package/lib/city-picker/style/index.css +264 -239
  40. package/lib/city-picker/style/index.less +262 -218
  41. package/lib/city-picker/style/mixin.less +26 -3
  42. package/lib/city-picker/style/token.less +42 -14
  43. package/lib/config-provider/compDefaultProps.d.ts +13 -0
  44. package/lib/config-provider/compDefaultProps.js +13 -0
  45. package/lib/input/style/token.less +2 -8
  46. package/package.json +1 -1
  47. package/es/city-picker/city-group.d.ts +0 -8
  48. package/es/city-picker/city-group.js +0 -38
  49. package/es/city-picker/city-list.d.ts +0 -12
  50. package/es/city-picker/city-list.js +0 -55
  51. package/es/city-picker/city-panel-item.d.ts +0 -13
  52. package/es/city-picker/city-panel-item.js +0 -22
  53. package/es/city-picker/city-panel.d.ts +0 -17
  54. package/es/city-picker/city-panel.js +0 -153
  55. package/es/city-picker/city-search-panel.d.ts +0 -9
  56. package/es/city-picker/city-search-panel.js +0 -44
  57. package/es/city-picker/no-data.d.ts +0 -3
  58. package/es/city-picker/no-data.js +0 -18
  59. package/es/city-picker/utils/grouping.d.ts +0 -7
  60. package/es/city-picker/utils/grouping.js +0 -24
  61. package/lib/city-picker/city-group.d.ts +0 -8
  62. package/lib/city-picker/city-group.js +0 -51
  63. package/lib/city-picker/city-list.d.ts +0 -12
  64. package/lib/city-picker/city-list.js +0 -68
  65. package/lib/city-picker/city-panel-item.d.ts +0 -13
  66. package/lib/city-picker/city-panel-item.js +0 -35
  67. package/lib/city-picker/city-panel.d.ts +0 -17
  68. package/lib/city-picker/city-panel.js +0 -166
  69. package/lib/city-picker/city-search-panel.d.ts +0 -9
  70. package/lib/city-picker/city-search-panel.js +0 -57
  71. package/lib/city-picker/no-data.d.ts +0 -3
  72. package/lib/city-picker/no-data.js +0 -31
  73. package/lib/city-picker/utils/grouping.d.ts +0 -7
  74. package/lib/city-picker/utils/grouping.js +0 -30
@@ -1408,6 +1408,7 @@
1408
1408
  @btn-middle-height: var(~'@{button-custom-prefix}-sizing-height-middle', 28px); // 中号 高度 高度配置
1409
1409
  @btn-middle-min-width: var(~'@{button-custom-prefix}-sizing-min-width-middle', 60px); // 中号 最小宽度
1410
1410
  @btn-large-height: var(~'@{button-custom-prefix}-sizing-height-large', 32px); // 大号 高度
1411
+ @btn-middle-max-width: var(~'@{button-custom-prefix}-sizing-max-width-middle'); // 中号 最大宽度
1411
1412
  @btn-large-min-width: var(~'@{button-custom-prefix}-sizing-min-width-large', 80px); // 大号 最小宽度
1412
1413
  @btn-group-dropdown-item-height: var(~'@{button-custom-prefix}--group-dropdown-item-height', 30px);
1413
1414
  @btn-group-dropdown-min-width: var(~'@{button-custom-prefix}-group-dropdown-min-width', 80px);
@@ -2198,6 +2199,8 @@
2198
2199
  width: 100%;
2199
2200
  cursor: inherit;
2200
2201
  opacity: 0;
2202
+ inset: 0;
2203
+ z-index: 1;
2201
2204
  }
2202
2205
  &-children {
2203
2206
  display: inline-flex;
@@ -2432,7 +2435,7 @@
2432
2435
 
2433
2436
  @checkbox-prefix: '--@{kd-prefix}-c-checkbox';
2434
2437
 
2435
- // colors
2438
+ // color
2436
2439
  @checkbox-color-theme: var(~'@{checkbox-prefix}-color-theme', @color-theme);
2437
2440
  @checkbox-font-color: var(~'@{checkbox-prefix}-color-text-primary', #212121);
2438
2441
  @checkbox-border-color: var(~'@{checkbox-prefix}-color-border', #d9d9d9);
@@ -2481,321 +2484,416 @@
2481
2484
 
2482
2485
 
2483
2486
  @city-picker-prefix-cls: ~'@{kd-prefix}-city-picker';
2487
+ @tabs-prefix-cls: ~'@{kd-prefix}-tabs';
2484
2488
 
2485
- .@{city-picker-prefix-cls}-container {
2489
+ .@{city-picker-prefix-cls} {
2490
+ position: relative;
2491
+ box-sizing: border-box;
2492
+ background-color: transparent;
2493
+ cursor: pointer;
2494
+ vertical-align: middle;
2486
2495
  display: flex;
2487
2496
  flex-direction: column;
2488
- position: relative;
2489
- border-bottom: 1px solid #999;
2490
2497
 
2491
- .@{city-picker-prefix-cls}-content {
2492
- position: relative;
2493
- display: flex;
2494
- align-items: center;
2495
- justify-content: space-between;
2496
- font-size: 14px;
2497
- color: #999999;
2498
- letter-spacing: 0;
2499
- line-height: 21px;
2498
+ &-selector:hover {
2499
+ .@{city-picker-prefix-cls}-icon-active {
2500
+ color: #3761ca;
2501
+ }
2500
2502
  }
2501
2503
 
2502
- .@{city-picker-prefix-cls}-title {
2503
- margin-bottom: 9px;
2504
- font-size: 12px;
2504
+ &-description {
2505
2505
  color: #666666;
2506
- letter-spacing: 0;
2507
- line-height: 18px;
2506
+ font-size: 12px;
2508
2507
  }
2509
2508
 
2510
- .@{city-picker-prefix-cls}-info {
2511
- margin-right: 20px;
2509
+ &-visible {
2510
+ .@{city-picker-prefix-cls}-icon-active {
2511
+ color: #3761ca;
2512
+ }
2513
+
2514
+ & div.@{city-picker-prefix-cls}-show-search .@{city-picker-prefix-cls}-selection-item {
2515
+ color: @city-picker-placeholder-color;
2516
+ }
2512
2517
  }
2513
2518
 
2514
- .@{city-picker-prefix-cls}-input {
2515
- border: 0;
2516
- outline: none;
2517
- flex-grow: 1;
2518
- width: 50%;
2519
- color: #212121;
2519
+ &-icon {
2520
+ &-arrow {
2521
+ display: inline-flex;
2522
+ align-items: center;
2523
+ vertical-align: middle;
2524
+ &-up {
2525
+ transform: rotate(180deg);
2526
+ transition: transform calc(@transition-duration - 0.1s) @ease;
2527
+ }
2528
+
2529
+ &-down {
2530
+ transform: rotate(0deg);
2531
+ transition: transform calc(@transition-duration - 0.1s) @ease;
2532
+ }
2533
+ }
2534
+
2535
+ &-clear {
2536
+ opacity: 0;
2537
+ z-index: 1;
2538
+ position: absolute;
2539
+ background: #fff;
2540
+ transition: opacity 0.15s ease;
2541
+ &:hover {
2542
+ color: @city-picker-g-color-border-hover;
2543
+ }
2544
+ }
2520
2545
  }
2521
2546
 
2522
- .@{city-picker-prefix-cls}-arrow {
2523
- font-size: 16px;
2547
+ &-placeholder {
2524
2548
  position: absolute;
2525
- right: 0;
2526
- bottom: 0;
2527
- transition: transform .2s ease;
2528
- &.arrow-up {
2529
- transform: rotate(180deg);
2530
- }
2549
+ color: @city-picker-placeholder-color;
2550
+ overflow: hidden;
2551
+ white-space: nowrap;
2552
+ text-overflow: ellipsis;
2553
+ right: 24px;
2554
+ left: 0;
2531
2555
  }
2532
- }
2533
2556
 
2534
- .@{city-picker-prefix-cls}-panel {
2535
- &.hidden {
2536
- opacity: 0;
2537
- visibility: hidden;
2538
- transition: all calc(0.3s - 0.1s) cubic-bezier(0.4, 0, 0.6, 1);
2557
+ &-borderless {
2558
+ border: none;
2539
2559
  }
2540
- }
2541
2560
 
2542
- .@{city-picker-prefix-cls}-panel-container {
2543
- width: @city-picker-panel-sizing-width;
2544
- height: @city-picker-panel-sizing-height;
2545
- font-size: @city-picker-panel-font-size;
2546
- line-height: 18px;
2547
- letter-spacing: 0;
2561
+ &-underline {
2562
+ border-bottom: 1px solid @city-picker-g-color-border;
2563
+ &:hover:not(.@{city-picker-prefix-cls}-disabled) {
2564
+ border-bottom: 1px solid @city-picker-g-color-border-hover;
2565
+ }
2566
+ }
2548
2567
 
2549
- .@{city-picker-prefix-cls}-header {
2568
+ &-bordered {
2569
+ border: 1px solid @city-picker-border-g-color-border;
2570
+ padding-left: @city-picker-bordered !important;
2571
+ border-radius: @city-picker-border-radius-border;
2572
+ &:hover:not(.@{city-picker-prefix-cls}-disabled) {
2573
+ border: 1px solid @city-picker-g-color-border-hover;
2574
+ }
2575
+
2576
+ .@{city-picker-prefix-cls}-suffix {
2577
+ padding-right: 8px;
2578
+ }
2579
+
2580
+ .@{city-picker-prefix-cls}-placeholder {
2581
+ padding-left: @city-picker-bordered;
2582
+ }
2583
+ }
2584
+
2585
+ &-wrapper {
2586
+ transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
2587
+ padding: @city-picker-wrapper-padding;
2588
+ max-width: 100%;
2589
+ color: #212121;
2550
2590
  display: flex;
2591
+ flex-wrap: wrap;
2551
2592
  align-items: center;
2552
- text-align: center;
2593
+ cursor: pointer;
2594
+ box-sizing: border-box;
2595
+ overflow-y: auto;
2596
+ overflow-x: hidden;
2597
+ position: relative;
2553
2598
 
2554
- .@{city-picker-prefix-cls}-tab-item {
2555
- position: relative;
2556
- cursor: pointer;
2557
- padding: 3px 0;
2599
+ &:hover .@{city-picker-prefix-cls}-icon-clear {
2600
+ opacity: 1;
2601
+ }
2558
2602
 
2559
- &.active {
2560
- color: @city-picker-theme-color;
2561
- z-index: 1;
2603
+ .@{city-picker-prefix-cls}-icon-clear {
2604
+ color: @city-picker-clear-color;
2605
+ &:hover {
2606
+ color: @city-picker-clear-color-hover;
2607
+ }
2608
+ }
2609
+ }
2562
2610
 
2563
- &::before {
2564
- z-index: -1;
2565
- background: #fff;
2611
+ &-show-search {
2612
+ cursor: text;
2613
+ }
2614
+
2615
+ &-dropdown {
2616
+ display: block;
2617
+ left: 0;
2618
+ z-index: @city-picker-z-index;
2619
+ box-sizing: border-box;
2620
+ margin: 0;
2621
+ overflow: auto;
2622
+ font-size: @city-picker-list-font-size;
2623
+ font-variant: initial;
2624
+ background-color: @city-picker-dropdown-bg;
2625
+ border-radius: @city-picker-g-radius-border;
2626
+ outline: none;
2627
+ box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
2628
+
2629
+ // 调整tabs样式
2630
+ .@{tabs-prefix-cls}-tab-list {
2631
+ width: 100%;
2632
+
2633
+ & > span {
2634
+ width: 50%;
2635
+ }
2636
+
2637
+ .@{kd-prefix}-tab-pane {
2638
+ text-align: center;
2639
+
2640
+ &-type-line {
2641
+ padding: 0 12px;
2642
+ font-size: 12px;
2566
2643
  }
2567
2644
  }
2568
2645
  }
2569
2646
 
2570
- .@{city-picker-prefix-cls}-header-domestic {
2571
- width: 94px;
2572
- &::before {
2573
- position: absolute;
2574
- content: '';
2575
- top: 0;
2576
- left: 0;
2577
- right: 0;
2578
- bottom: 0;
2579
- z-index: -2;
2580
- background: @city-picker-background-color;
2581
- border-radius: 2px 4px 0 0;
2582
- transform: scaleY(1.25) perspective(18px) rotateX(10deg);
2583
- transform-origin: bottom left;
2584
- box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, 0.2);
2585
- }
2647
+ .@{tabs-prefix-cls}-noContainer {
2648
+ height: unset;
2586
2649
  }
2587
2650
 
2588
- .@{city-picker-prefix-cls}-header-internation {
2589
- width: 108px;
2590
- margin-left: -13px;
2591
- &::before {
2592
- position: absolute;
2593
- content: '';
2594
- top: 0;
2595
- left: 0;
2596
- right: 0;
2597
- bottom: 0;
2598
- z-index: -2;
2599
- background: @city-picker-background-color;
2600
- border-radius: 4px 4px 0 0;
2601
- transform: scaleY(1.25) perspective(18px) rotateX(10deg);
2602
- transform-origin: bottom;
2603
- box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, 0.2);
2604
- }
2651
+ .@{tabs-prefix-cls}-right-arrows {
2652
+ display: none;
2605
2653
  }
2606
- }
2607
- }
2608
2654
 
2609
- .@{city-picker-prefix-cls}-panel-item {
2610
- margin: 4px 6px;
2611
- padding: 3px 6px;
2612
- color: #212121;
2613
- width: 72px;
2614
- cursor: pointer;
2655
+ &-empty {
2656
+ height: 48px;
2657
+ display: flex;
2658
+ align-items: center;
2659
+ justify-content: center;
2660
+ color: #b2b2b2;
2661
+ font-size: 14px;
2662
+ }
2615
2663
 
2616
- &:hover {
2617
- background: @city-picker-background-hover-color;
2618
- border-radius: 2px;
2664
+ &-common {
2665
+ height: 32px;
2666
+ line-height: 32px;
2667
+ padding: 0 12px;
2668
+ background: #fafafa;
2669
+ color: @city-picker-font-color;
2670
+ }
2671
+
2672
+ &-loading {
2673
+ height: 48px;
2674
+ display: flex;
2675
+ align-items: center;
2676
+ justify-content: center;
2677
+ }
2619
2678
  }
2620
- }
2621
2679
 
2622
- .@{city-picker-prefix-cls}-content-container {
2623
- height: 349px;
2624
- padding: 0 20px 12px 20px;
2625
- background: #fff;
2626
- box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.2);
2627
- border-radius: 0 @city-picker-panel-radius-border @city-picker-panel-radius-border @city-picker-panel-radius-border;
2628
- }
2680
+ &-list {
2681
+ padding: 8px 0;
2682
+ max-height: 320px;
2683
+ overflow-y: auto;
2629
2684
 
2630
- .@{city-picker-prefix-cls}-group-container {
2631
- display: flex;
2632
- align-items: center;
2633
- justify-content: space-around;
2634
- }
2685
+ // 下拉列表选项
2686
+ &-item {
2687
+ .item();
2688
+ display: flex;
2689
+ cursor: pointer;
2635
2690
 
2636
- .@{city-picker-prefix-cls}-group-item {
2637
- flex-grow: 1;
2638
- flex-shrink: 1;
2639
- padding: 10px 0;
2640
- max-height: 39px;
2641
- box-sizing: border-box;
2642
- border-bottom: 2px solid #F5F5F5;
2643
- cursor: pointer;
2644
- text-align: center;
2691
+ &-content {
2692
+ .over();
2693
+ }
2645
2694
 
2646
- &:hover {
2647
- color: @city-picker-theme-color;
2648
- }
2695
+ &-info {
2696
+ color: @city-picker-placeholder-color;
2697
+ white-space: nowrap;
2698
+ }
2649
2699
 
2650
- &.active {
2651
- color: @city-picker-theme-color;
2652
- border-bottom: 2px solid @city-picker-theme-color;
2700
+ &:hover {
2701
+ background-color: @city-picker-item-active-bg;
2702
+ }
2703
+
2704
+ &-selected:not(&-disabled) {
2705
+ background-color: @city-picker-item-selected-bg;
2706
+ }
2707
+
2708
+ &-disabled {
2709
+ color: @city-picker-g-item-text-color-disabled;
2710
+ cursor: not-allowed;
2711
+ background-color: @city-picker-disabled-option-bg;
2712
+ }
2713
+ }
2653
2714
  }
2654
2715
 
2655
- &.last {
2656
- flex-shrink: 1;
2716
+ &-highlight {
2717
+ color: #5582f3;
2657
2718
  }
2658
- }
2659
2719
 
2660
- .@{city-picker-prefix-cls}-city-table {
2661
- display: flex;
2662
- flex-wrap: wrap;
2663
- margin-top: 10px;
2664
- max-height: ~'calc(100% - 39px - 10px)';
2665
- overflow: scroll;
2720
+ // 选择器框大小
2721
+ &-size-small {
2722
+ .select-input-size(@city-picker-small-height, @city-picker-small-height, @city-picker-small-line-height, @city-picker-small-font-size);
2723
+ }
2666
2724
 
2667
- .@{city-picker-prefix-cls}-city-table-group {
2668
- display: flex;
2725
+ &-size-middle {
2726
+ .select-input-size(@city-picker-middle-height, @city-picker-middle-height, @city-picker-middle-line-height, @city-picker-middle-font-size);
2727
+ }
2669
2728
 
2670
- .@{city-picker-prefix-cls}-city-table-key {
2671
- display: flex;
2672
- align-items: center;
2673
- justify-content: center;
2674
- width: 32px;
2675
- height: 32px;
2676
- color: #999;
2677
- margin-right: 32px;
2678
- flex-shrink: 0;
2679
- flex-grow: 0;
2680
- }
2729
+ &-size-large {
2730
+ .select-input-size(@city-picker-large-height, @city-picker-large-height, @city-picker-large-line-height, @city-picker-large-font-size);
2681
2731
  }
2682
2732
 
2683
- .@{city-picker-prefix-cls}-city-table-item-container {
2733
+ &-suffix {
2734
+ right: 0;
2735
+ position: absolute;
2684
2736
  display: flex;
2737
+ flex: 0;
2685
2738
  flex-wrap: wrap;
2739
+ align-items: center;
2740
+ justify-content: center;
2741
+ margin-left: 8px;
2742
+ cursor: pointer;
2686
2743
  }
2687
2744
 
2688
- .@{city-picker-prefix-cls}-city-table-cell {
2689
- margin: 4px 6px;
2690
- padding: 3px 6px;
2691
- color: @city-picker-panel-item-color;
2692
- cursor: pointer;
2693
- width: 60px;
2694
- overflow: hidden;
2695
- white-space: nowrap;
2696
- -o-text-overflow: ellipsis;
2697
- text-overflow: ellipsis;
2745
+ &-focused {
2746
+ .focusColor();
2698
2747
 
2699
- &:hover {
2700
- background: @city-picker-background-hover-color;
2701
- border-radius: 2px;
2748
+ .@{city-picker-prefix-cls}-content-item {
2749
+ color: @city-picker-placeholder-color;
2702
2750
  }
2703
2751
  }
2704
- }
2705
2752
 
2706
- .@{city-picker-prefix-cls}-search-panel {
2707
- display: flex;
2708
- flex-direction: column;
2709
- width: 256px;
2710
- height: 320px;
2711
- padding: 8px 0;
2712
- font-size: 12px;
2713
- color: #212121;
2714
- letter-spacing: 0;
2715
- line-height: 18px;
2716
- overflow: scroll;
2717
- box-shadow: 0 4px 10px 0 rgba(0,0,0,0.20);
2718
- border-radius: 2px;
2719
- background: #fff;
2753
+ &-disabled {
2754
+ background-color: @city-picker-color-background-disabled;
2755
+ color: @city-picker-color-text-disabled;
2756
+ padding-right: 0;
2757
+ border-color: #e5e5e5;
2758
+ &:hover {
2759
+ cursor: not-allowed;
2760
+ }
2720
2761
 
2721
- .@{city-picker-prefix-cls}-search-panel-item {
2722
- display: flex;
2723
- justify-content: space-between;
2724
- align-items: center;
2725
- padding: 7px 8px;
2726
- cursor: pointer;
2762
+ .@{city-picker-prefix-cls}-suffix {
2763
+ color: @city-picker-arrow-icon-color-text-disabled;
2764
+ }
2727
2765
 
2728
- &:hover {
2729
- background: @city-picker-background-hover-color;
2766
+ &.@{city-picker-prefix-cls}-bordered {
2767
+ padding-right: @city-picker-bordered;
2730
2768
  }
2769
+ }
2731
2770
 
2732
- .@{city-picker-prefix-cls}-search-panel-item-left {
2733
- overflow: hidden;
2734
- white-space: nowrap;
2735
- -o-text-overflow: ellipsis;
2736
- text-overflow: ellipsis;
2737
- flex-grow: 0;
2738
- flex-shrink: 0;
2739
- max-width: 168px;
2771
+ &-content {
2772
+ display: flex;
2773
+ width: 100%;
2774
+ font-size: 14px;
2775
+
2776
+ &-search {
2777
+ flex: 1;
2778
+ position: relative;
2779
+ &-input {
2780
+ outline: 0;
2781
+ border-radius: 0;
2782
+ border: none;
2783
+ background: transparent;
2784
+ height: 100%;
2785
+ width: 100%;
2786
+ cursor: pointer;
2787
+ }
2788
+ }
2789
+ &-item {
2790
+ display: inline-block;
2791
+ position: absolute;
2792
+ left: 0;
2793
+ right: 0;
2794
+ .over();
2740
2795
  }
2741
2796
 
2742
- .@{city-picker-prefix-cls}-search-panel-item-right {
2743
- flex-grow: 0;
2744
- flex-shrink: 0;
2745
- max-width: 112px;
2746
- overflow: hidden;
2747
- white-space: nowrap;
2748
- -o-text-overflow: ellipsis;
2749
- text-overflow: ellipsis;
2797
+ &-info {
2798
+ flex: 1;
2750
2799
  text-align: right;
2751
- color: #999999;
2800
+ color: @city-picker-placeholder-color;
2801
+ .over();
2752
2802
  }
2753
2803
  }
2754
- }
2755
2804
 
2756
- .@{city-picker-prefix-cls}-search-keyword {
2757
- color: @city-picker-theme-color;
2805
+ &.topLeft.hidden,
2806
+ &.bottomLeft.hidden,
2807
+ &.topRight.hidden,
2808
+ &.bottomRight.hidden {
2809
+ opacity: 0;
2810
+ visibility: hidden;
2811
+ transition: all calc(@transition-duration - 0.1s) @ease;
2812
+ }
2758
2813
  }
2759
2814
 
2760
- .@{city-picker-prefix-cls}-no-data {
2761
- width: 100%;
2762
- height: 100%;
2763
- display: flex;
2764
- align-items: center;
2765
- justify-content: center;
2766
- }
2767
2815
 
2768
2816
 
2769
- // code component mixin here
2770
- .test() {
2771
- display: inline;
2817
+ .item() {
2818
+ position: relative;
2819
+ display: block;
2820
+ font-weight: normal;
2821
+ font-size: @city-picker-list-font-size;
2822
+ min-height: @city-picker-dropdown-height;
2823
+ padding: 5px 12px;
2824
+ color: @city-picker-font-color;
2825
+ line-height: @city-picker-dropdown-line-height;
2772
2826
  }
2773
2827
 
2828
+ .focusColor() {
2829
+ border-color: @city-picker-g-color-border-foucs !important;
2830
+ }
2774
2831
 
2832
+ .select-input-size(@height, @maxHeight, @lineHeight, @fontSize) {
2833
+ min-height: @height;
2834
+ max-height: calc(@maxHeight * 3 - 10px);
2835
+ font-size: @fontSize;
2836
+ }
2837
+
2838
+ .over() {
2839
+ overflow: hidden;
2840
+ white-space: nowrap;
2841
+ text-overflow: ellipsis;
2842
+ }
2775
2843
 
2776
- @city-picker-prefix: '--@{kd-prefix}-c-city-picker';
2777
2844
 
2778
2845
 
2846
+ @city-picker-custom-prefix: ~'--@{kd-prefix}-c-city-picker';
2779
2847
 
2780
2848
  // color
2781
- @city-picker-theme-color: var(~'@{city-picker-prefix}-color', @color-theme);
2782
- @city-picker-panel-item-color: var(~'@{city-picker-prefix}-panel-item-color', @color-text-primary);
2783
- @city-picker-background-color: var(~'@{city-picker-prefix}-color-background', @color-background-contain);
2784
- @city-picker-background-hover-color: var(~'@{city-picker-prefix}-color-background-hover', @color-hover);
2785
-
2849
+ @city-picker-dropdown-bg: var(~'@{city-picker-custom-prefix}-dropdown-color-background', @color-background);
2850
+ @city-picker-disabled-option-bg: var(~'@{city-picker-custom-prefix}-item-color-background-disabled', #fff);
2851
+ @city-picker-item-active-bg: var(~'@{city-picker-custom-prefix}-color-background', #f5f5f5);
2852
+ @city-picker-item-selected-bg: var(~'@{city-picker-custom-prefix}-color-background-selected', #f2f6ff);
2853
+ @city-picker-g-color-border: var(~'@{city-picker-custom-prefix}-color-border', @color-input);
2854
+ @city-picker-g-color-border-foucs: var(~'@{city-picker-custom-prefix}-color-border-foucs', @color-theme);
2855
+ @city-picker-g-color-border-hover: var(~'@{city-picker-custom-prefix}-color-border-hover', @color-theme);
2856
+ @city-picker-border-g-color-border: var(~'@{city-picker-custom-prefix}-border-color-border', @color-border-strong);
2857
+ @city-picker-placeholder-color: var(~'@{city-picker-custom-prefix}-placeholder-color-text', #b2b2b2);
2858
+ @city-picker-font-color: var(~'@{city-picker-custom-prefix}-footer-color-text', @color-text-primary);
2859
+ @city-picker-g-item-text-color-disabled: var(~'@{city-picker-custom-prefix}-item-color-text-disabled', @color-disabled);
2860
+ @city-picker-color-background-disabled: var(~'@{city-picker-custom-prefix}-color-background-disabled', #fff);
2861
+ @city-picker-color-text-disabled: var(~'@{city-picker-custom-prefix}-color-text-disabled', @color-disabled);
2862
+ @city-picker-arrow-icon-color-text-disabled: var(
2863
+ ~'@{city-picker-custom-prefix}-arrow-icon-color-text-disabled',
2864
+ #b2b2b2
2865
+ );
2866
+ @city-picker-clear-color: var(~'@{city-picker-custom-prefix}-icon-clear-color-text', #d9d9d9);
2867
+ @city-picker-clear-color-hover: var(~'@{city-picker-custom-prefix}-icon-clear-color-text-hover', #999);
2786
2868
 
2787
2869
  // font
2788
- @city-picker-panel-font-size: var(~'@{city-picker-prefix}-panel-font-size', 12px);
2870
+ @city-picker-list-font-size: var(~'@{city-picker-custom-prefix}-dropdown-font-size', 12px); // 下拉列表文字大小
2871
+ @city-picker-large-font-size: var(~'@{city-picker-custom-prefix}-font-size-large', 16px); // 大号字体
2872
+ @city-picker-middle-font-size: var(~'@{city-picker-custom-prefix}-font-size-middle', 14px); // 中号高度
2873
+ @city-picker-small-font-size: var(~'@{city-picker-custom-prefix}-font-size-small', 12px); // 小号高度
2789
2874
 
2790
- // radius
2791
- @city-picker-panel-radius-border: var(~'@{city-picker-prefix}-panel-radius-border', @radius-border);
2875
+ // line-height
2876
+ @city-picker-dropdown-line-height: var(~'@{city-picker-custom-prefix}-dropdown-line-height', 22px);
2877
+ @city-picker-large-line-height: var(~'@{city-picker-custom-prefix}-line-height-large', 28px);
2878
+ @city-picker-middle-line-height: var(~'@{city-picker-custom-prefix}-line-height-middle', 22px);
2879
+ @city-picker-small-line-height: var(~'@{city-picker-custom-prefix}-line-height-small', 14px);
2792
2880
 
2793
2881
  // sizing
2794
- @city-picker-panel-sizing-width: var(~'@{city-picker-prefix}-panel-sizing-width', 460px);
2795
- @city-picker-panel-sizing-height: var(~'@{city-picker-prefix}-panel-sizing-height', 373px);
2882
+ @city-picker-dropdown-height: var(~'@{city-picker-custom-prefix}-item-sizing-height', 22px);
2883
+ @city-picker-large-height: var(~'@{city-picker-custom-prefix}-sizing-height-large', 36px); // 大号高度 lh:28px
2884
+ @city-picker-middle-height: var(~'@{city-picker-custom-prefix}-sizing-height-middle', 30px); // 中号高度lh:22px
2885
+ @city-picker-small-height: var(~'@{city-picker-custom-prefix}-sizing-height-small', 24px); // 小号高度lh:12px
2796
2886
 
2887
+ // spacing
2888
+ @city-picker-bordered: var(~'@{city-picker-custom-prefix}-bordered-spacing-padding-left', 8px);
2889
+ @city-picker-wrapper-padding: var(~'@{city-picker-custom-prefix}-wrapper-spacing-padding', 1px 24px 1px 0);
2797
2890
 
2891
+ // radius
2892
+ @city-picker-g-radius-border: var(~'@{city-picker-custom-prefix}-radius-border', @radius-border);
2893
+ @city-picker-border-radius-border: var(~'@{city-picker-custom-prefix}-bordered-radius-border', 2px);
2798
2894
 
2895
+ // z-index
2896
+ @city-picker-z-index: var(~'@{city-picker-custom-prefix}-z-index', @z-index-popper);
2799
2897
 
2800
2898
 
2801
2899
 
@@ -6030,16 +6128,10 @@ textarea {
6030
6128
  @input-clear-color: var(~'@{input-prefix}-clear-color', #d9d9d9);
6031
6129
  @input-clear-color-hover: var(~'@{input-prefix}-clear-color-hover', #999);
6032
6130
  @input-background-color-inner: var(~'@{input-prefix}-color-background', @color-white);
6033
- @input-background-color-disabled-inner: var(
6034
- ~'@{input-prefix}-color-background-disabled',
6035
- @color-background-contain-disabled
6036
- );
6131
+ @input-background-color-disabled-inner: var(~'@{input-prefix}-color-background-disabled', @color-background-contain-disabled);
6037
6132
  @input-border-color-focused: var(~'@{input-prefix}-color-border-focused', @color-theme);
6038
6133
  @input-border-color-disabled-inner: var(~'@{input-prefix}-color-border-disabled', @color-border-strong);
6039
- @input-underline-border-color-disabled-inner: var(
6040
- ~'@{input-prefix}-underline-color-border-disabled',
6041
- @color-border-weak
6042
- );
6134
+ @input-underline-border-color-disabled-inner: var(~'@{input-prefix}-underline-color-border-disabled', @color-border-weak);
6043
6135
  @input-color-disabled-inner: var(~'@{input-prefix}-color-disabled', @color-disabled);
6044
6136
  @input-affix-color: var(~'@{input-prefix}-affix-color-text', #666);
6045
6137
  @input-error-color: var(~'@{input-prefix}-color-error', @color-error);