@tplc/business 0.0.27 → 0.0.29

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 (94) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/components/lcb-area-picker/api/index.ts +45 -0
  3. package/components/lcb-area-picker/lcb-area-picker.vue +77 -0
  4. package/components/lcb-area-picker/types.ts +3 -0
  5. package/components/lcb-banner-block/lcb-banner-block.vue +2 -2
  6. package/components/lcb-calendar/lcb-calendar.vue +3 -3
  7. package/components/lcb-calendar-search/lcb-calendar-search.vue +5 -2
  8. package/components/lcb-city-select/api/index.ts +15 -1
  9. package/components/lcb-city-select/components/lcb-city-letter/index.vue +171 -0
  10. package/components/lcb-city-select/components/lcb-city-list/index.vue +127 -0
  11. package/components/lcb-city-select/components/lcb-city-list/types.ts +6 -0
  12. package/components/lcb-city-select/images/hot.png +0 -0
  13. package/components/lcb-city-select/lcb-city-select.vue +95 -118
  14. package/components/lcb-dynamic-data/lcb-dynamic-data.vue +25 -0
  15. package/components/lcb-dynamic-data/types.ts +7 -0
  16. package/components/lcb-home-search/lcb-home-search.vue +16 -7
  17. package/components/lcb-image/lcb-image.vue +35 -23
  18. package/components/lcb-image/types.ts +1 -1
  19. package/components/lcb-img-nav/lcb-img-nav.vue +70 -30
  20. package/components/lcb-img-nav/types.ts +3 -3
  21. package/components/{lcb-filter → lcb-list}/api.ts +20 -9
  22. package/components/{lcb-filter → lcb-list}/components/ComponentGroup/index.vue +1 -1
  23. package/components/lcb-list/components/FilterList/index.vue +85 -0
  24. package/components/lcb-list/components/FilterList/type.ts +9 -0
  25. package/components/{lcb-filter → lcb-list}/components/FilterSlider/index.vue +2 -1
  26. package/components/lcb-list/components/FilterSlider/types.ts +3 -0
  27. package/components/lcb-list/components/FilterTabs/index.vue +27 -0
  28. package/components/lcb-list/components/FilterTabs/type.ts +6 -0
  29. package/components/{lcb-filter → lcb-list}/index.scss +23 -0
  30. package/components/lcb-list/lcb-list.vue +179 -0
  31. package/components/{lcb-filter → lcb-list}/types.ts +6 -1
  32. package/components/lcb-nav/lcb-nav.vue +10 -22
  33. package/components/lcb-notice/Item/index.vue +4 -4
  34. package/components/lcb-notice/lcb-notice.vue +10 -8
  35. package/components/lcb-notice/types.ts +4 -1
  36. package/components/lcb-product/lcb-product.vue +7 -7
  37. package/components/lcb-product/types.ts +3 -3
  38. package/components/lcb-product-item/lcb-product-item.vue +24 -12
  39. package/components/lcb-user-order/lcb-user-order.vue +44 -23
  40. package/components/lcb-user-top/lcb-user-top.vue +77 -48
  41. package/global.d.ts +3 -1
  42. package/hooks/usePageScroll.ts +10 -0
  43. package/iconfonts/index.css +1 -175
  44. package/package.json +5 -2
  45. package/types/components/lcb-area-picker/api/index.d.ts +38 -0
  46. package/types/components/lcb-area-picker/lcb-area-picker.vue.d.ts +67 -0
  47. package/types/components/lcb-area-picker/types.d.ts +1 -0
  48. package/types/components/lcb-calendar-search/lcb-calendar-search.vue.d.ts +1 -1
  49. package/types/components/lcb-city-select/api/index.d.ts +14 -1
  50. package/types/components/lcb-city-select/components/lcb-city-letter/index.vue.d.ts +53 -0
  51. package/types/components/{lcb-filter/lcb-filter.vue.d.ts → lcb-city-select/components/lcb-city-list/index.vue.d.ts} +9 -18
  52. package/types/components/lcb-city-select/components/lcb-city-list/types.d.ts +5 -0
  53. package/types/components/lcb-city-select/lcb-city-select.vue.d.ts +13 -4
  54. package/types/components/lcb-dynamic-data/lcb-dynamic-data.vue.d.ts +44 -0
  55. package/types/components/lcb-dynamic-data/types.d.ts +7 -0
  56. package/types/components/lcb-home-search/lcb-home-search.vue.d.ts +1 -1
  57. package/types/components/lcb-image/lcb-image.vue.d.ts +1 -1
  58. package/types/components/lcb-img-nav/types.d.ts +2 -2
  59. package/types/components/{lcb-filter → lcb-list}/api.d.ts +18 -7
  60. package/types/components/lcb-list/components/FilterList/index.vue.d.ts +28 -0
  61. package/types/components/lcb-list/components/FilterList/type.d.ts +9 -0
  62. package/types/components/lcb-list/components/FilterSlider/types.d.ts +2 -0
  63. package/types/components/lcb-list/components/FilterTabs/index.vue.d.ts +36 -0
  64. package/types/components/lcb-list/components/FilterTabs/type.d.ts +5 -0
  65. package/types/components/lcb-list/lcb-list.vue.d.ts +74 -0
  66. package/types/components/{lcb-filter → lcb-list}/types.d.ts +5 -1
  67. package/types/components/lcb-notice/lcb-notice.vue.d.ts +3 -0
  68. package/types/components/lcb-notice/types.d.ts +3 -0
  69. package/types/hooks/usePageScroll.d.ts +2 -0
  70. package/components/lcb-filter/components/FilterSlider/types.ts +0 -3
  71. package/components/lcb-filter/lcb-filter.vue +0 -147
  72. package/types/components/lcb-filter/components/FilterSlider/types.d.ts +0 -2
  73. /package/components/{lcb-filter → lcb-list}/components/ActionView/index.vue +0 -0
  74. /package/components/{lcb-filter → lcb-list}/components/ComponentGroup/type.ts +0 -0
  75. /package/components/{lcb-filter → lcb-list}/components/FilterSelect/index.vue +0 -0
  76. /package/components/{lcb-filter → lcb-list}/components/FilterSelect/type.ts +0 -0
  77. /package/components/{lcb-filter → lcb-list}/components/SelectTagView/index.vue +0 -0
  78. /package/components/{lcb-filter → lcb-list}/components/TagSelect/index.vue +0 -0
  79. /package/components/{lcb-filter → lcb-list}/components/TagSelect/type.ts +0 -0
  80. /package/components/{lcb-filter → lcb-list}/components/TreeSelect/index.vue +0 -0
  81. /package/components/{lcb-filter → lcb-list}/components/TreeSelect/type.ts +0 -0
  82. /package/components/{lcb-filter → lcb-list}/hooks/useSelect.ts +0 -0
  83. /package/types/components/{lcb-filter → lcb-list}/components/ActionView/index.vue.d.ts +0 -0
  84. /package/types/components/{lcb-filter → lcb-list}/components/ComponentGroup/index.vue.d.ts +0 -0
  85. /package/types/components/{lcb-filter → lcb-list}/components/ComponentGroup/type.d.ts +0 -0
  86. /package/types/components/{lcb-filter → lcb-list}/components/FilterSelect/index.vue.d.ts +0 -0
  87. /package/types/components/{lcb-filter → lcb-list}/components/FilterSelect/type.d.ts +0 -0
  88. /package/types/components/{lcb-filter → lcb-list}/components/FilterSlider/index.vue.d.ts +0 -0
  89. /package/types/components/{lcb-filter → lcb-list}/components/SelectTagView/index.vue.d.ts +0 -0
  90. /package/types/components/{lcb-filter → lcb-list}/components/TagSelect/index.vue.d.ts +0 -0
  91. /package/types/components/{lcb-filter → lcb-list}/components/TagSelect/type.d.ts +0 -0
  92. /package/types/components/{lcb-filter → lcb-list}/components/TreeSelect/index.vue.d.ts +0 -0
  93. /package/types/components/{lcb-filter → lcb-list}/components/TreeSelect/type.d.ts +0 -0
  94. /package/types/components/{lcb-filter → lcb-list}/hooks/useSelect.d.ts +0 -0
@@ -1,31 +1,52 @@
1
1
  <template>
2
2
  <lcb-block v-bind="$props" customClass="flex flex-justify-between">
3
- <view class="flex flex-col flex-justify-center items-center" @click="onClick(item)" v-for="item in iconList"
4
- :key="item.id">
5
- <view class="position-relative" :style="{
6
- height: transformValueUnit(iconSize),
7
- width: transformValueUnit(iconSize),
8
- }" @click="onClick">
9
- <view v-if="item.iconType === 0">
10
- <wd-icon class-prefix="iconfont" v-bind="{
11
- name: item.iconName || '',
12
- size: transformValueUnit(iconSize),
13
- color: iconColor,
14
- }" />
15
- </view>
16
- <view v-if="item.iconType === 1" class="bg-no-repeat bg-contain" :style="{
3
+ <view
4
+ class="flex flex-col flex-justify-center items-center"
5
+ @click="onClick(item)"
6
+ v-for="item in iconList"
7
+ :key="item.id"
8
+ >
9
+ <view
10
+ class="position-relative"
11
+ :style="{
17
12
  height: transformValueUnit(iconSize),
18
13
  width: transformValueUnit(iconSize),
19
- color: iconColor,
20
- backgroundImage: `url('${item.iconUpload}')`,
21
- }" />
22
- <view v-if="item.id < 5" class="pos-absolute bg-#f23d3d pos-top-0 pos-right-0 w-8px h-8px rounded-4px" />
14
+ }"
15
+ @click="onClick"
16
+ >
17
+ <view v-if="item.iconType === 0">
18
+ <wd-icon
19
+ class-prefix="lcb"
20
+ v-bind="{
21
+ name: item.iconName || '',
22
+ size: transformValueUnit(iconSize),
23
+ color: iconColor,
24
+ }"
25
+ />
26
+ </view>
27
+ <view
28
+ v-if="item.iconType === 1"
29
+ class="bg-no-repeat bg-contain"
30
+ :style="{
31
+ height: transformValueUnit(iconSize),
32
+ width: transformValueUnit(iconSize),
33
+ color: iconColor,
34
+ backgroundImage: `url('${item.iconUpload}')`,
35
+ }"
36
+ />
37
+ <view
38
+ v-if="item.id < 5"
39
+ class="pos-absolute bg-#f23d3d pos-top-0 pos-right-0 w-8px h-8px rounded-4px"
40
+ />
23
41
  </view>
24
- <view class="flex flex-justify-between text-center" :style="{
25
- color: textColor,
26
- fontSize: transformValueUnit(textSize),
27
- marginTop: transformValueUnit((textSize || 0) / 3),
28
- }">
42
+ <view
43
+ class="flex flex-justify-between text-center"
44
+ :style="{
45
+ color: textColor,
46
+ fontSize: transformValueUnit(textSize),
47
+ marginTop: transformValueUnit((textSize || 0) / 3),
48
+ }"
49
+ >
29
50
  {{ item.iconTitle }}
30
51
  </view>
31
52
  </view>
@@ -1,69 +1,98 @@
1
1
  <template>
2
- <lcb-block v-bind="{
3
- paddingTop,
4
- paddingBottom,
5
- paddingHorizontal,
6
- backgroundColor: bgStyle === 1 ? backgroundColor : '',
7
- backgroundImage: bgStyle === 2 ? backgroundImage : '',
8
- }">
9
- <view class="anyTopGap" :style="{
10
- paddingTop: padTop,
11
- }" />
2
+ <lcb-block
3
+ v-bind="{
4
+ paddingTop,
5
+ paddingBottom,
6
+ paddingHorizontal,
7
+ backgroundColor: bgStyle === 1 ? backgroundColor : '',
8
+ backgroundImage: bgStyle === 2 ? backgroundImage : '',
9
+ }"
10
+ >
11
+ <view
12
+ class="anyTopGap"
13
+ :style="{
14
+ paddingTop: padTop,
15
+ }"
16
+ />
12
17
  <view class="flex flex-items-center">
13
- <wd-img v-if="!!photoUrl" v-bind="{
14
- width: transformValueUnit(photoSize),
15
- height: transformValueUnit(photoSize),
16
- round: photoRound,
17
- src: photoUrl,
18
- }" class="mr-20rpx" />
19
- <view v-if="!photoUrl" :style="{
20
- width: transformValueUnit(photoSize),
21
- height: transformValueUnit(photoSize),
22
- borderRadius: photoRound ? '50%' : '',
23
- }" class="bg-#eee userPlace mr-40rpx">
18
+ <wd-img
19
+ v-if="!!photoUrl"
20
+ v-bind="{
21
+ width: transformValueUnit(photoSize),
22
+ height: transformValueUnit(photoSize),
23
+ round: photoRound,
24
+ src: photoUrl,
25
+ }"
26
+ class="mr-20rpx"
27
+ />
28
+ <view
29
+ v-if="!photoUrl"
30
+ :style="{
31
+ width: transformValueUnit(photoSize),
32
+ height: transformValueUnit(photoSize),
33
+ borderRadius: photoRound ? '50%' : '',
34
+ }"
35
+ class="bg-#eee userPlace mr-40rpx"
36
+ >
24
37
  <!-- flex justify-center items-center overflow-hidden relative -->
25
38
  <!-- <wd-icon name="user" :size="transformValueUnit(photoSize * 0.9)" color="#ddd" class="absolute photoIcon"></wd-icon> -->
26
39
  </view>
27
40
  <view class="flex-1">
28
- <view class="font-bold" :style="{
29
- fontSize: transformValueUnit(textSize),
30
- color: textColor,
31
- }">
41
+ <view
42
+ class="font-bold"
43
+ :style="{
44
+ fontSize: transformValueUnit(textSize),
45
+ color: textColor,
46
+ }"
47
+ >
32
48
  授权登录
33
49
  </view>
34
50
  <view class="flex" v-if="editBtn == true">
35
- <view class="flex flex-content-center flex-items-center mt-5px border-style-solid" :style="{
36
- color: textColor,
37
- borderWidth: editBorder ? transformValueUnit(1) : 0,
38
- borderColor: textColor,
39
- padding: editBorder ? `2px ${editSize / 2.5}px 2px ${editSize / 2.5}px` : '',
40
- borderRadius: transformValueUnit(30),
41
- fontSize: transformValueUnit(editSize),
42
- }">
51
+ <view
52
+ class="flex flex-content-center flex-items-center mt-5px border-style-solid"
53
+ :style="{
54
+ color: textColor,
55
+ borderWidth: editBorder ? transformValueUnit(1) : 0,
56
+ borderColor: textColor,
57
+ padding: editBorder ? `2px ${editSize / 2.5}px 2px ${editSize / 2.5}px` : '',
58
+ borderRadius: transformValueUnit(30),
59
+ fontSize: transformValueUnit(editSize),
60
+ }"
61
+ >
43
62
  <view>{{ editText }}</view>
44
63
  </view>
45
64
  </view>
46
65
  </view>
47
- <div v-if="moreIcon == true && iconType === 1" class="overflow-hidden bg-no-repeat bg-contain" :style="{
48
- height: transformValueUnit(textSize),
49
- width: transformValueUnit(textSize),
50
- color: textColor,
51
- backgroundImage: `url('${iconUpload}')`,
52
- }" />
53
- <view v-if="moreIcon == true && iconType === 0">
54
- <wd-icon class-prefix="iconfont" v-bind="{
55
- name: iconName,
56
- size: transformValueUnit(textSize),
66
+ <div
67
+ v-if="moreIcon == true && iconType === 1"
68
+ class="overflow-hidden bg-no-repeat bg-contain"
69
+ :style="{
70
+ height: transformValueUnit(textSize),
71
+ width: transformValueUnit(textSize),
57
72
  color: textColor,
58
- }" />
73
+ backgroundImage: `url('${iconUpload}')`,
74
+ }"
75
+ />
76
+ <view v-if="moreIcon == true && iconType === 0">
77
+ <wd-icon
78
+ class-prefix="lcb"
79
+ v-bind="{
80
+ name: iconName,
81
+ size: transformValueUnit(textSize),
82
+ color: textColor,
83
+ }"
84
+ />
59
85
  </view>
60
86
  </view>
61
- <view v-if="valuesCard == true || coupons == true || presales == true || memberPoints == true"
62
- class="flex flex-justify-between text-center" :style="{
87
+ <view
88
+ v-if="valuesCard == true || coupons == true || presales == true || memberPoints == true"
89
+ class="flex flex-justify-between text-center"
90
+ :style="{
63
91
  color: textColor,
64
92
  marginTop: transformValueUnit(numsMarginTop),
65
93
  padding: `0 ${transformValueUnit(numsPadLR || 0)}`,
66
- }">
94
+ }"
95
+ >
67
96
  <Nums v-if="valuesCard == true" v-bind="$props" title="储值卡" />
68
97
  <Nums v-if="coupons == true" v-bind="$props" title="优惠券" />
69
98
  <Nums v-if="presales == true" v-bind="$props" title="预售券" />
@@ -89,7 +118,7 @@ import { LcbUserTopProps } from './types'
89
118
  import { transformValueUnit } from '../../utils/transform'
90
119
  import Nums from './Nums/index.vue'
91
120
  import { styleText } from 'util'
92
- import { computed } from 'vue';
121
+ import { computed } from 'vue'
93
122
  import { addUnit } from '@tplc/wot/components/common/util'
94
123
  const { statusBarHeight } = uni.getSystemInfoSync()
95
124
  defineOptions({
package/global.d.ts CHANGED
@@ -2,18 +2,20 @@ declare module 'vue' {
2
2
  // Helper for Volar
3
3
  export interface GlobalComponents {
4
4
  'lcb-action-view': (typeof import('./types/components/lcb-action-view/lcb-action-view.vue'))['default']
5
+ 'lcb-area-picker': (typeof import('./types/components/lcb-area-picker/lcb-area-picker.vue'))['default']
5
6
  'lcb-banner': (typeof import('./types/components/lcb-banner/lcb-banner.vue'))['default']
6
7
  'lcb-banner-block': (typeof import('./types/components/lcb-banner-block/lcb-banner-block.vue'))['default']
7
8
  'lcb-block': (typeof import('./types/components/lcb-block/lcb-block.vue'))['default']
8
9
  'lcb-calendar': (typeof import('./types/components/lcb-calendar/lcb-calendar.vue'))['default']
9
10
  'lcb-calendar-search': (typeof import('./types/components/lcb-calendar-search/lcb-calendar-search.vue'))['default']
10
11
  'lcb-city-select': (typeof import('./types/components/lcb-city-select/lcb-city-select.vue'))['default']
11
- 'lcb-filter': (typeof import('./types/components/lcb-filter/lcb-filter.vue'))['default']
12
+ 'lcb-dynamic-data': (typeof import('./types/components/lcb-dynamic-data/lcb-dynamic-data.vue'))['default']
12
13
  'lcb-gap': (typeof import('./types/components/lcb-gap/lcb-gap.vue'))['default']
13
14
  'lcb-grid': (typeof import('./types/components/lcb-grid/lcb-grid.vue'))['default']
14
15
  'lcb-home-search': (typeof import('./types/components/lcb-home-search/lcb-home-search.vue'))['default']
15
16
  'lcb-image': (typeof import('./types/components/lcb-image/lcb-image.vue'))['default']
16
17
  'lcb-img-nav': (typeof import('./types/components/lcb-img-nav/lcb-img-nav.vue'))['default']
18
+ 'lcb-list': (typeof import('./types/components/lcb-list/lcb-list.vue'))['default']
17
19
  'lcb-nav': (typeof import('./types/components/lcb-nav/lcb-nav.vue'))['default']
18
20
  'lcb-notice': (typeof import('./types/components/lcb-notice/lcb-notice.vue'))['default']
19
21
  'lcb-product': (typeof import('./types/components/lcb-product/lcb-product.vue'))['default']
@@ -0,0 +1,10 @@
1
+ import { onPageScroll } from '@dcloudio/uni-app'
2
+ import { ref } from 'vue'
3
+ const usePageScroll = () => {
4
+ const scrollTop = ref(0)
5
+ onPageScroll(({ scrollTop: top }) => {
6
+ scrollTop.value = top
7
+ })
8
+ return [scrollTop]
9
+ }
10
+ export default usePageScroll
@@ -1,175 +1 @@
1
- @font-face {
2
- font-family: 'iconfont'; /* Project id 4652744 */
3
- src:
4
- url('//at.alicdn.com/t/c/font_4652744_bhoie787kfq.woff2?t=1726152120892') format('woff2'),
5
- url('//at.alicdn.com/t/c/font_4652744_bhoie787kfq.woff?t=1726152120892') format('woff'),
6
- url('//at.alicdn.com/t/c/font_4652744_bhoie787kfq.ttf?t=1726152120892') format('truetype'),
7
- url('//at.alicdn.com/t/c/font_4652744_bhoie787kfq.svg?t=1726152120892#iconfont') format('svg');
8
- }
9
- .iconfont {
10
- font-family: 'iconfont' !important;
11
- font-size: 16px;
12
- font-style: normal;
13
- -webkit-font-smoothing: antialiased;
14
- -moz-osx-font-smoothing: grayscale;
15
- }
16
-
17
- .iconfont-a-xingzhuang23kaobei:before {
18
- content: '\e60f';
19
- }
20
-
21
- .iconfont-a-xingzhuang103:before {
22
- content: '\e610';
23
- }
24
-
25
- .iconfont-a-xingzhuang22:before {
26
- content: '\e611';
27
- }
28
-
29
- .iconfont-a-xingzhuang97:before {
30
- content: '\e612';
31
- }
32
-
33
- .iconfont-a-xingzhuang106:before {
34
- content: '\e613';
35
- }
36
-
37
- .iconfont-dingdanliebiao:before {
38
- content: '\e662';
39
- }
40
-
41
- .iconfont-minsuliebiao:before {
42
- content: '\e663';
43
- }
44
-
45
- .iconfont-minsufaxian:before {
46
- content: '\e664';
47
- }
48
-
49
- .iconfont-xiaoxi:before {
50
- content: '\e665';
51
- }
52
-
53
- .iconfont-tingshi:before {
54
- content: '\e653';
55
- }
56
-
57
- .iconfont-renshu:before {
58
- content: '\e654';
59
- }
60
-
61
- .iconfont-linyujian:before {
62
- content: '\e655';
63
- }
64
-
65
- .iconfont-xiayiye:before {
66
- content: '\e656';
67
- }
68
-
69
- .iconfont-youleyuan:before {
70
- content: '\e657';
71
- }
72
-
73
- .iconfont-yunxu:before {
74
- content: '\e658';
75
- }
76
-
77
- .iconfont-paizhao:before {
78
- content: '\e659';
79
- }
80
-
81
- .iconfont-shangchuanzhaopian:before {
82
- content: '\e65a';
83
- }
84
-
85
- .iconfont-shangchuanshipin:before {
86
- content: '\e65b';
87
- }
88
-
89
- .iconfont-biaoqing:before {
90
- content: '\e65c';
91
- }
92
-
93
- .iconfont-yuyin:before {
94
- content: '\e65d';
95
- }
96
-
97
- .iconfont-tianjia:before {
98
- content: '\e65e';
99
- }
100
-
101
- .iconfont-fuwubaozhang:before {
102
- content: '\e65f';
103
- }
104
-
105
- .iconfont-xiala:before {
106
- content: '\e660';
107
- }
108
-
109
- .iconfont-tijianyi:before {
110
- content: '\e661';
111
- }
112
-
113
- .iconfont-danrenchuang:before {
114
- content: '\e643';
115
- }
116
-
117
- .iconfont-buyunxu:before {
118
- content: '\e644';
119
- }
120
-
121
- .iconfont-fapiaoshuoming:before {
122
- content: '\e645';
123
- }
124
-
125
- .iconfont-fenxiang:before {
126
- content: '\e646';
127
- }
128
-
129
- .iconfont-kongtiaofang:before {
130
- content: '\e647';
131
- }
132
-
133
- .iconfont-rulishijian:before {
134
- content: '\e648';
135
- }
136
-
137
- .iconfont-pingmi:before {
138
- content: '\e649';
139
- }
140
-
141
- .iconfont-ruzhuxuzhi:before {
142
- content: '\e64a';
143
- }
144
-
145
- .iconfont-tatami:before {
146
- content: '\e64b';
147
- }
148
-
149
- .iconfont-dachuang:before {
150
- content: '\e64c';
151
- }
152
-
153
- .iconfont-mimasuo:before {
154
- content: '\e64d';
155
- }
156
-
157
- .iconfont-quxiaoguize:before {
158
- content: '\e64e';
159
- }
160
-
161
- .iconfont-tingchechang:before {
162
- content: '\e64f';
163
- }
164
-
165
- .iconfont-shuoming:before {
166
- content: '\e650';
167
- }
168
-
169
- .iconfont-xiyifang:before {
170
- content: '\e651';
171
- }
172
-
173
- .iconfont-yajinshuoming:before {
174
- content: '\e652';
175
- }
1
+ @import url(//at.alicdn.com/t/c/font_4710234_4pa59gffcpf.css);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tplc/business",
3
- "version": "0.0.27",
3
+ "version": "0.0.29",
4
4
  "keywords": [
5
5
  "业务组件"
6
6
  ],
@@ -11,12 +11,15 @@
11
11
  },
12
12
  "peerDependencies": {
13
13
  "vue": ">=3.2.47",
14
- "@tplc/wot": "0.1.12"
14
+ "@tplc/wot": "0.1.14"
15
15
  },
16
16
  "engines": {
17
17
  "node": ">=18",
18
18
  "pnpm": ">=7.30"
19
19
  },
20
+ "dependencies": {
21
+ "qs": "6.5.3"
22
+ },
20
23
  "scripts": {
21
24
  "pub": "pnpm dts && pnpm publish --no-git-checks",
22
25
  "dts": "rm -rf types && vue-tsc --project ./tsconfig.dts.json && pnpm prettier --write types",
@@ -0,0 +1,38 @@
1
+ export interface ProvinceCityArea {
2
+ cityList: CityList[]
3
+ provinceId: string
4
+ provinceName: string
5
+ }
6
+ interface CityList {
7
+ areaList?: AreaList[]
8
+ cityId: string
9
+ cityName: string
10
+ provinceId: string
11
+ }
12
+ interface AreaList {
13
+ areaId: string
14
+ areaName: string
15
+ cityId: string
16
+ }
17
+ export interface AreaOptions {
18
+ label: string
19
+ value: string
20
+ children?: AreaOptions[]
21
+ }
22
+ export declare const getProvinceCityArea: () => Promise<
23
+ {
24
+ label: string
25
+ value: string
26
+ children: {
27
+ label: string
28
+ value: string
29
+ children:
30
+ | {
31
+ label: string
32
+ value: string
33
+ }[]
34
+ | undefined
35
+ }[]
36
+ }[]
37
+ >
38
+ export {}
@@ -0,0 +1,67 @@
1
+ import { LcbAreaPickerProps } from './types'
2
+ import { AreaOptions } from './api'
3
+ declare let __VLS_typeProps: LcbAreaPickerProps
4
+ type __VLS_PublicProps = {
5
+ modelValue?: string[]
6
+ } & typeof __VLS_typeProps
7
+ declare function __VLS_template(): {
8
+ default?(_: { text: string[] | undefined }): any
9
+ }
10
+ declare const __VLS_component: import('vue').DefineComponent<
11
+ __VLS_WithDefaults<__VLS_TypePropsToOption<__VLS_PublicProps>, {}>,
12
+ {},
13
+ unknown,
14
+ {},
15
+ {},
16
+ import('vue').ComponentOptionsMixin,
17
+ import('vue').ComponentOptionsMixin,
18
+ {
19
+ 'update:modelValue': (modelValue: string[]) => void
20
+ confirm: (payload: AreaOptions[]) => void
21
+ },
22
+ string,
23
+ import('vue').PublicProps,
24
+ Readonly<
25
+ import('vue').ExtractPropTypes<
26
+ __VLS_WithDefaults<__VLS_TypePropsToOption<__VLS_PublicProps>, {}>
27
+ >
28
+ > & {
29
+ onConfirm?: ((payload: AreaOptions[]) => any) | undefined
30
+ 'onUpdate:modelValue'?: ((modelValue: string[]) => any) | undefined
31
+ },
32
+ {},
33
+ {}
34
+ >
35
+ declare const _default: __VLS_WithTemplateSlots<
36
+ typeof __VLS_component,
37
+ ReturnType<typeof __VLS_template>
38
+ >
39
+ export default _default
40
+ type __VLS_WithDefaults<P, D> = {
41
+ [K in keyof Pick<P, keyof P>]: K extends keyof D
42
+ ? __VLS_Prettify<
43
+ P[K] & {
44
+ default: D[K]
45
+ }
46
+ >
47
+ : P[K]
48
+ }
49
+ type __VLS_Prettify<T> = {
50
+ [K in keyof T]: T[K]
51
+ } & {}
52
+ type __VLS_WithTemplateSlots<T, S> = T & {
53
+ new (): {
54
+ $slots: S
55
+ }
56
+ }
57
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T
58
+ type __VLS_TypePropsToOption<T> = {
59
+ [K in keyof T]-?: {} extends Pick<T, K>
60
+ ? {
61
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>
62
+ }
63
+ : {
64
+ type: import('vue').PropType<T[K]>
65
+ required: true
66
+ }
67
+ }
@@ -0,0 +1 @@
1
+ export interface LcbAreaPickerProps {}
@@ -30,9 +30,9 @@ declare const _default: import('vue').DefineComponent<
30
30
  >
31
31
  >,
32
32
  {
33
+ placeholder: string
33
34
  marginHorizontal: number
34
35
  radius: number
35
- placeholder: string
36
36
  },
37
37
  {}
38
38
  >
@@ -1,6 +1,6 @@
1
1
  export interface HotAddress {
2
2
  categoryName: string
3
- hint: string
3
+ hint?: string
4
4
  childHotAddress: ChildHotAddress[]
5
5
  }
6
6
  export interface ChildHotAddress {
@@ -17,3 +17,16 @@ export interface ChildHotAddress {
17
17
  addressInfo?: string
18
18
  }
19
19
  export declare const getHotAddress: () => Promise<import('../../../action').IResData<HotAddress[]>>
20
+ export interface LcbAddress {
21
+ addr: string
22
+ addrFlag: boolean
23
+ categoryName: string
24
+ cityId: string
25
+ hotAddressId: string
26
+ provinceCityName: string
27
+ area: string
28
+ weightSort: string
29
+ }
30
+ export declare const getAddressList: (
31
+ addr: string,
32
+ ) => Promise<import('../../../action').IResData<LcbAddress[]>>
@@ -0,0 +1,53 @@
1
+ import { LcbCitySelectProps } from '../../../lcb-city-select/types'
2
+ import { ChildHotAddress } from '../../../lcb-city-select/api'
3
+ declare let __VLS_typeProps: LcbCitySelectProps
4
+ type __VLS_PublicProps = {
5
+ modelValue?: ChildHotAddress
6
+ } & typeof __VLS_typeProps
7
+ declare const _default: import('vue').DefineComponent<
8
+ __VLS_WithDefaults<__VLS_TypePropsToOption<__VLS_PublicProps>, {}>,
9
+ {},
10
+ unknown,
11
+ {},
12
+ {},
13
+ import('vue').ComponentOptionsMixin,
14
+ import('vue').ComponentOptionsMixin,
15
+ {
16
+ 'update:modelValue': (modelValue: ChildHotAddress) => void
17
+ },
18
+ string,
19
+ import('vue').PublicProps,
20
+ Readonly<
21
+ import('vue').ExtractPropTypes<
22
+ __VLS_WithDefaults<__VLS_TypePropsToOption<__VLS_PublicProps>, {}>
23
+ >
24
+ > & {
25
+ 'onUpdate:modelValue'?: ((modelValue: ChildHotAddress) => any) | undefined
26
+ },
27
+ {},
28
+ {}
29
+ >
30
+ export default _default
31
+ type __VLS_WithDefaults<P, D> = {
32
+ [K in keyof Pick<P, keyof P>]: K extends keyof D
33
+ ? __VLS_Prettify<
34
+ P[K] & {
35
+ default: D[K]
36
+ }
37
+ >
38
+ : P[K]
39
+ }
40
+ type __VLS_Prettify<T> = {
41
+ [K in keyof T]: T[K]
42
+ } & {}
43
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T
44
+ type __VLS_TypePropsToOption<T> = {
45
+ [K in keyof T]-?: {} extends Pick<T, K>
46
+ ? {
47
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>
48
+ }
49
+ : {
50
+ type: import('vue').PropType<T[K]>
51
+ required: true
52
+ }
53
+ }