@tplc/business 0.1.11 → 0.1.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.
@@ -1,8 +1,10 @@
1
1
  <script setup lang="ts">
2
2
  import { computed, provide, useAttrs } from 'vue'
3
- import { lcbProductItemContentTypes, LcbProductItemProps } from './types'
3
+ import { LcbProductItemProps } from './types'
4
4
  import ItemValue from './components/ItemValue.vue'
5
5
 
6
+ const isNumber = (value: any) => typeof value === 'number'
7
+
6
8
  defineOptions({
7
9
  name: 'LcbProductItem',
8
10
  options: {
@@ -14,36 +16,54 @@ defineOptions({
14
16
 
15
17
  const props = withDefaults(defineProps<LcbProductItemProps>(), {
16
18
  layoutType: 'horizontal',
19
+ titleLineClamp: 1,
20
+ tagOverflowWrap: false,
21
+ tagType: 'primary',
22
+ tagPlain: true,
23
+ tagMark: false,
24
+ tagRound: false,
25
+ distanceUnit: 'km',
26
+
17
27
  priceUnit: '¥',
18
28
  originPriceUnit: '¥',
19
29
  imageVisible: true,
20
30
  titleVisible: true,
21
- subTitleVisible: true,
31
+ subTitleVisible: false,
22
32
  priceVisible: true,
23
33
  priceUnitVisible: true,
24
34
  priceSuffixVisible: true,
25
35
  originPriceVisible: true,
26
36
  originPriceUnitVisible: true,
37
+ originPriceSuffixVisible: true,
27
38
  tagsVisible: true,
28
39
  locationVisible: true,
29
- distanceVisible: true,
40
+ distanceVisible: false,
30
41
  })
31
42
  const attrs = useAttrs()
32
43
 
33
44
  provide('lcb-product-item-props', props)
34
45
 
35
46
  defineSlots<{
36
- image(): any
37
- title(): any
38
- subTitle(): any
39
- price(): any
40
- priceUnit(): any
41
- priceSuffix(): any
42
- originPrice(): any
43
- originPriceUnit(): any
44
- tags(): any
45
- location(): any
46
- distance(): any
47
+ image(props: { value: any }): any
48
+ title(props: { value: any }): any
49
+ subTitle(props: { value: any }): any
50
+ price(props: { value: any }): any
51
+ priceUnit(props: { value: any }): any
52
+ priceSuffix(props: { value: any }): any
53
+ originPrice(props: { value: any }): any
54
+ originPriceUnit(props: { value: any }): any
55
+ originPriceSuffix(props: { value: any }): any
56
+ tags(props: { value: any }): any
57
+ location(props: { value: any }): any
58
+ distance(props: { value: any }): any
59
+
60
+ itemSection(): any
61
+ itemTopSection(): any
62
+ itemBottomSection(): any
63
+ itemLeftSection(): any
64
+ itemRightSection(): any
65
+ imageSection(): any
66
+ contentSection(): any
47
67
  }>()
48
68
 
49
69
  // console.log('attrs', attrs)
@@ -51,87 +71,246 @@ defineSlots<{
51
71
 
52
72
  <template>
53
73
  <!-- 横向布局 -->
54
- <view v-if="layoutType === 'horizontal'" :class="className" class="flex gap-3 px-2 py-3 bg-white">
55
- <ItemValue prop="image" className="w-1/3 h-220rpx bg-gray-100 rounded-sm overflow-hidden">
56
- <template
57
- v-for="slotName in lcbProductItemContentTypes"
58
- :key="slotName"
59
- #[slotName]="slotContext"
74
+ <view
75
+ v-if="layoutType === 'horizontal'"
76
+ :class="className"
77
+ class="flex flex-col gap-1 px-2 py-3 bg-white relative"
78
+ >
79
+ <slot name="itemSection" />
80
+ <slot name="itemTopSection" />
81
+ <view class="flex gap-2">
82
+ <slot name="itemLeftSection" />
83
+ <ItemValue
84
+ v-if="!!$slots?.['image']"
85
+ prop="image"
86
+ className="w-1/3 h-220rpx bg-gray-100 rounded-sm overflow-hidden relative"
60
87
  >
61
- <slot :name="slotName" v-bind="slotContext" />
62
- </template>
63
- </ItemValue>
64
- <view class="flex flex-col flex-1 gap-2 justify-between text-26rpx overflow-hidden">
65
- <view class="flex flex-col gap-2 overflow-hidden">
66
- <ItemValue v-for="prop in ['title', 'location', 'tags']" :prop="prop" :key="prop">
88
+ <template #default>
89
+ <slot name="imageSection" />
90
+ </template>
91
+ <template #image="{ value }">
92
+ <slot name="image" :value="value" />
93
+ </template>
94
+ </ItemValue>
95
+ <ItemValue
96
+ v-else
97
+ prop="image"
98
+ className="w-1/3 h-220rpx bg-gray-100 rounded-sm overflow-hidden relative"
99
+ >
100
+ <template #default>
101
+ <slot name="imageSection" />
102
+ </template>
103
+ </ItemValue>
104
+ <view class="flex flex-col flex-1 gap-2 justify-between text-26rpx overflow-hidden relative">
105
+ <slot name="contentSection" />
106
+ <view class="flex flex-col gap-2 overflow-hidden">
67
107
  <template
68
- v-for="slotName in lcbProductItemContentTypes"
69
- :key="slotName"
70
- #[slotName]="slotContext"
108
+ v-for="propName in ['title', 'subTitle', 'location', 'distance', 'tags']"
109
+ :key="propName"
71
110
  >
72
- <slot :name="slotName" v-bind="slotContext" />
111
+ <ItemValue :prop="propName" v-if="!!$slots?.[propName]">
112
+ <template #image="{ value }"><slot name="image" :value="value" /></template>
113
+ <template #title="{ value }"><slot name="title" :value="value" /></template>
114
+ <template #subTitle="{ value }"><slot name="subTitle" :value="value" /></template>
115
+ <template #price="{ value }"><slot name="price" :value="value" /></template>
116
+ <template #priceUnit="{ value }"><slot name="priceUnit" :value="value" /></template>
117
+ <template #priceSuffix="{ value }">
118
+ <slot name="priceSuffix" :value="value" />
119
+ </template>
120
+ <template #originPrice="{ value }">
121
+ <slot name="originPrice" :value="value" />
122
+ </template>
123
+ <template #originPriceUnit="{ value }">
124
+ <slot name="originPriceUnit" :value="value" />
125
+ </template>
126
+ <template #tags="{ value }"><slot name="tags" :value="value" /></template>
127
+ <template #location="{ value }"><slot name="location" :value="value" /></template>
128
+ <template #distance="{ value }"><slot name="distance" :value="value" /></template>
129
+ </ItemValue>
130
+ <ItemValue :prop="propName" v-else />
73
131
  </template>
74
- </ItemValue>
75
- </view>
132
+ </view>
76
133
 
77
- <view class="flex gap-2">
78
- <view class="flex gap-[4rpx] items-end">
79
- <ItemValue v-for="prop in ['priceUnit', 'price', 'priceSuffix']" :prop="prop" :key="prop">
134
+ <view class="flex gap-2">
135
+ <view class="flex gap-[4rpx] items-end" v-if="priceVisible && isNumber(price)">
136
+ <template v-for="propName in ['priceUnit', 'price', 'priceSuffix']" :key="propName">
137
+ <ItemValue :prop="propName" v-if="!!$slots?.[propName]">
138
+ <template #image="{ value }"><slot name="image" :value="value" /></template>
139
+ <template #title="{ value }"><slot name="title" :value="value" /></template>
140
+ <template #subTitle="{ value }"><slot name="subTitle" :value="value" /></template>
141
+ <template #price="{ value }"><slot name="price" :value="value" /></template>
142
+ <template #priceUnit="{ value }"><slot name="priceUnit" :value="value" /></template>
143
+ <template #priceSuffix="{ value }">
144
+ <slot name="priceSuffix" :value="value" />
145
+ </template>
146
+ <template #originPrice="{ value }">
147
+ <slot name="originPrice" :value="value" />
148
+ </template>
149
+ <template #originPriceUnit="{ value }">
150
+ <slot name="originPriceUnit" :value="value" />
151
+ </template>
152
+ <template #tags="{ value }"><slot name="tags" :value="value" /></template>
153
+ <template #location="{ value }"><slot name="location" :value="value" /></template>
154
+ <template #distance="{ value }"><slot name="distance" :value="value" /></template>
155
+ </ItemValue>
156
+ <ItemValue :prop="propName" v-else />
157
+ </template>
158
+ </view>
159
+ <view
160
+ class="flex gap-[2rpx] items-end line-through"
161
+ v-if="originPriceVisible && isNumber(originPrice)"
162
+ >
80
163
  <template
81
- v-for="slotName in lcbProductItemContentTypes"
82
- :key="slotName"
83
- #[slotName]="slotContext"
164
+ v-for="propName in ['originPriceUnit', 'originPrice', 'originPriceSuffix']"
165
+ :key="propName"
84
166
  >
85
- <slot :name="slotName" v-bind="slotContext" />
167
+ <ItemValue :prop="propName" v-if="!!$slots?.[propName]">
168
+ <template #image="{ value }"><slot name="image" :value="value" /></template>
169
+ <template #title="{ value }"><slot name="title" :value="value" /></template>
170
+ <template #subTitle="{ value }"><slot name="subTitle" :value="value" /></template>
171
+ <template #price="{ value }"><slot name="price" :value="value" /></template>
172
+ <template #priceUnit="{ value }"><slot name="priceUnit" :value="value" /></template>
173
+ <template #priceSuffix="{ value }">
174
+ <slot name="priceSuffix" :value="value" />
175
+ </template>
176
+ <template #originPrice="{ value }">
177
+ <slot name="originPrice" :value="value" />
178
+ </template>
179
+ <template #originPriceUnit="{ value }">
180
+ <slot name="originPriceUnit" :value="value" />
181
+ </template>
182
+ <template #originPriceSuffix="{ value }">
183
+ <slot name="originPriceSuffix" :value="value" />
184
+ </template>
185
+ <template #tags="{ value }"><slot name="tags" :value="value" /></template>
186
+ <template #location="{ value }"><slot name="location" :value="value" /></template>
187
+ <template #distance="{ value }"><slot name="distance" :value="value" /></template>
188
+ </ItemValue>
189
+ <ItemValue :prop="propName" v-else />
86
190
  </template>
87
- </ItemValue>
191
+ </view>
88
192
  </view>
89
193
  </view>
194
+ <slot name="itemRightSection" />
90
195
  </view>
196
+ <slot name="itemBottomSection" />
91
197
  </view>
92
198
 
93
199
  <!-- 竖向布局 -->
94
- <view v-if="layoutType === 'vertical'" :class="className" class="flex flex-col gap-2 bg-white">
95
- <ItemValue prop="image" className="overflow-hidden">
96
- <template
97
- v-for="slotName in lcbProductItemContentTypes"
98
- :key="slotName"
99
- #[slotName]="slotContext"
200
+ <view v-if="layoutType === 'vertical'" class="flex bg-white relative" :class="className">
201
+ <slot name="itemSection" />
202
+ <slot name="itemLeftSection" />
203
+ <view class="flex-1 flex flex-col w-full overflow-hidden">
204
+ <slot name="itemTopSection" />
205
+ <ItemValue v-if="!!$slots?.['image']" prop="image" className="overflow-hidden relative">
206
+ <template #default>
207
+ <slot name="imageSection" />
208
+ </template>
209
+ <template #image="{ value }">
210
+ <slot name="image" :value="value" />
211
+ </template>
212
+ </ItemValue>
213
+ <ItemValue v-else prop="image" className="overflow-hidden relative">
214
+ <template #default>
215
+ <slot name="imageSection" />
216
+ </template>
217
+ </ItemValue>
218
+ <view
219
+ :class="'p-2'"
220
+ class="flex flex-col flex-1 gap-2 justify-between text-26rpx overflow-hidden relative"
100
221
  >
101
- <slot :name="slotName" v-bind="slotContext" />
102
- </template>
103
- </ItemValue>
104
- <view
105
- :class="'p-2'"
106
- class="flex flex-col flex-1 gap-2 justify-between text-26rpx overflow-hidden"
107
- >
108
- <view class="flex flex-col gap-2 overflow-hidden">
109
- <!-- <ItemValue prop="title"></ItemValue> -->
110
- <ItemValue v-for="prop in ['title', 'location', 'tags']" :prop="prop" :key="prop">
222
+ <slot name="contentSection" />
223
+ <view class="flex flex-col gap-2 overflow-hidden">
111
224
  <template
112
- v-for="slotName in lcbProductItemContentTypes"
113
- :key="slotName"
114
- #[slotName]="slotContext"
225
+ v-for="propName in ['title', 'subTitle', 'location', 'distance', 'tags']"
226
+ :key="propName"
115
227
  >
116
- <slot :name="slotName" v-bind="slotContext" />
228
+ <ItemValue :prop="propName" v-if="!!$slots?.[propName]">
229
+ <template #image="{ value }"><slot name="image" :value="value" /></template>
230
+ <template #title="{ value }"><slot name="title" :value="value" /></template>
231
+ <template #subTitle="{ value }"><slot name="subTitle" :value="value" /></template>
232
+ <template #price="{ value }"><slot name="price" :value="value" /></template>
233
+ <template #priceUnit="{ value }"><slot name="priceUnit" :value="value" /></template>
234
+ <template #priceSuffix="{ value }">
235
+ <slot name="priceSuffix" :value="value" />
236
+ </template>
237
+ <template #originPrice="{ value }">
238
+ <slot name="originPrice" :value="value" />
239
+ </template>
240
+ <template #originPriceUnit="{ value }">
241
+ <slot name="originPriceUnit" :value="value" />
242
+ </template>
243
+ <template #tags="{ value }"><slot name="tags" :value="value" /></template>
244
+ <template #location="{ value }"><slot name="location" :value="value" /></template>
245
+ <template #distance="{ value }"><slot name="distance" :value="value" /></template>
246
+ </ItemValue>
247
+ <ItemValue :prop="propName" v-else />
117
248
  </template>
118
- </ItemValue>
119
- </view>
249
+ </view>
120
250
 
121
- <view class="flex gap-2">
122
- <view class="flex gap-[4rpx] items-end">
123
- <ItemValue v-for="prop in ['priceUnit', 'price', 'priceSuffix']" :prop="prop" :key="prop">
251
+ <view class="flex gap-2">
252
+ <view class="flex gap-[4rpx] items-end" v-if="priceVisible && isNumber(price)">
253
+ <template v-for="propName in ['priceUnit', 'price', 'priceSuffix']" :key="propName">
254
+ <ItemValue :prop="propName" v-if="!!$slots?.[propName]">
255
+ <template #image="{ value }"><slot name="image" :value="value" /></template>
256
+ <template #title="{ value }"><slot name="title" :value="value" /></template>
257
+ <template #subTitle="{ value }"><slot name="subTitle" :value="value" /></template>
258
+ <template #price="{ value }"><slot name="price" :value="value" /></template>
259
+ <template #priceUnit="{ value }"><slot name="priceUnit" :value="value" /></template>
260
+ <template #priceSuffix="{ value }">
261
+ <slot name="priceSuffix" :value="value" />
262
+ </template>
263
+ <template #originPrice="{ value }">
264
+ <slot name="originPrice" :value="value" />
265
+ </template>
266
+ <template #originPriceUnit="{ value }">
267
+ <slot name="originPriceUnit" :value="value" />
268
+ </template>
269
+ <template #tags="{ value }"><slot name="tags" :value="value" /></template>
270
+ <template #location="{ value }"><slot name="location" :value="value" /></template>
271
+ <template #distance="{ value }"><slot name="distance" :value="value" /></template>
272
+ </ItemValue>
273
+ <ItemValue :prop="propName" v-else />
274
+ </template>
275
+ </view>
276
+ <view
277
+ class="flex gap-[2rpx] items-end line-through"
278
+ v-if="originPriceVisible && isNumber(originPrice)"
279
+ >
124
280
  <template
125
- v-for="slotName in lcbProductItemContentTypes"
126
- :key="slotName"
127
- #[slotName]="slotContext"
281
+ v-for="propName in ['originPriceUnit', 'originPrice', 'originPriceSuffix']"
282
+ :key="propName"
128
283
  >
129
- <slot :name="slotName" v-bind="slotContext" />
284
+ <ItemValue :prop="propName" v-if="!!$slots?.[propName]">
285
+ <template #image="{ value }"><slot name="image" :value="value" /></template>
286
+ <template #title="{ value }"><slot name="title" :value="value" /></template>
287
+ <template #subTitle="{ value }"><slot name="subTitle" :value="value" /></template>
288
+ <template #price="{ value }"><slot name="price" :value="value" /></template>
289
+ <template #priceUnit="{ value }"><slot name="priceUnit" :value="value" /></template>
290
+ <template #priceSuffix="{ value }">
291
+ <slot name="priceSuffix" :value="value" />
292
+ </template>
293
+ <template #originPrice="{ value }">
294
+ <slot name="originPrice" :value="value" />
295
+ </template>
296
+ <template #originPriceUnit="{ value }">
297
+ <slot name="originPriceUnit" :value="value" />
298
+ </template>
299
+ <template #originPriceSuffix="{ value }">
300
+ <slot name="originPriceSuffix" :value="value" />
301
+ </template>
302
+ <template #tags="{ value }"><slot name="tags" :value="value" /></template>
303
+ <template #location="{ value }"><slot name="location" :value="value" /></template>
304
+ <template #distance="{ value }"><slot name="distance" :value="value" /></template>
305
+ </ItemValue>
306
+ <ItemValue :prop="propName" v-else />
130
307
  </template>
131
- </ItemValue>
308
+ </view>
132
309
  </view>
133
310
  </view>
311
+ <slot name="itemBottomSection" />
134
312
  </view>
313
+ <slot name="itemRightSection" />
135
314
  </view>
136
315
  </template>
137
316
 
@@ -1,23 +1,20 @@
1
1
  import { CSSProperties } from 'vue'
2
-
3
- export const lcbProductItemContentTypes = [
4
- 'image',
5
- 'title',
6
- 'subTitle',
7
- 'price',
8
- 'priceUnit',
9
- 'priceSuffix',
10
- 'originPrice',
11
- 'originPriceUnit',
12
- 'tags',
13
- 'location',
14
- 'distance',
15
- ] as const
2
+ import { TagType } from '@tplc/wot/components/wd-tag/types'
16
3
 
17
4
  export interface LcbProductItemProps {
18
5
  // Define the component's prop types here
19
6
  className?: string
20
7
  layoutType?: 'vertical' | 'horizontal'
8
+ titleLineClamp?: number
9
+ tagOverflowWrap?: boolean
10
+ tagType?: TagType
11
+ tagContentColor?: string
12
+ tagBgColor?: string
13
+ tagPlain?: boolean
14
+ tagMark?: boolean
15
+ tagRound?: boolean
16
+ distanceUnit?: string
17
+
21
18
  image?: any
22
19
  title?: any
23
20
  subTitle?: any
@@ -26,6 +23,7 @@ export interface LcbProductItemProps {
26
23
  priceSuffix?: any
27
24
  originPrice?: any
28
25
  originPriceUnit?: any
26
+ originPriceSuffix?: any
29
27
  tags?: any
30
28
  location?: any
31
29
  distance?: any
@@ -38,6 +36,7 @@ export interface LcbProductItemProps {
38
36
  priceSuffixVisible?: boolean
39
37
  originPriceVisible?: boolean
40
38
  originPriceUnitVisible?: boolean
39
+ originPriceSuffixVisible?: boolean
41
40
  tagsVisible?: boolean
42
41
  locationVisible?: boolean
43
42
  distanceVisible?: boolean
@@ -50,6 +49,7 @@ export interface LcbProductItemProps {
50
49
  priceSuffixClass?: string
51
50
  originPriceClass?: string
52
51
  originPriceUnitClass?: string
52
+ originPriceSuffixClass?: string
53
53
  tagsClass?: string
54
54
  tagsWrapperClass?: string
55
55
  locationClass?: string
@@ -63,6 +63,7 @@ export interface LcbProductItemProps {
63
63
  priceSuffixStyle?: CSSProperties
64
64
  originPriceStyle?: CSSProperties
65
65
  originPriceUnitStyle?: CSSProperties
66
+ originPriceSuffixStyle?: CSSProperties
66
67
  tagsStyle?: CSSProperties
67
68
  tagsWrapperStyle?: CSSProperties
68
69
  locationStyle?: CSSProperties
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tplc/business",
3
- "version": "0.1.11",
3
+ "version": "0.1.13",
4
4
  "keywords": [
5
5
  "业务组件"
6
6
  ],
@@ -0,0 +1,63 @@
1
+ declare const _default: {
2
+ code: string
3
+ count: number
4
+ data: {
5
+ address: string
6
+ agentId: string
7
+ areaId: string
8
+ areaName: string
9
+ auditDateTime: string
10
+ auditRemark: string
11
+ auditStatus: number
12
+ behindUnit: string
13
+ bigIcon: boolean
14
+ businessStatus: number
15
+ cityAreaName: string
16
+ cityId: string
17
+ cityName: string
18
+ clickCount: number
19
+ collectCount: number
20
+ collectFlag: boolean
21
+ commentCount: number
22
+ coverImg: string
23
+ createDate: string
24
+ distance: string
25
+ hideTags: string
26
+ hierarchy: number
27
+ lastModifyDate: string
28
+ latitude: string
29
+ level: string
30
+ longitude: string
31
+ mapShowFlag: boolean
32
+ marketingType: number
33
+ merchantHeadId: string
34
+ merchantId: string
35
+ orderCount: number
36
+ orderSkuCount: number
37
+ peopleNumScope: string
38
+ phone: string
39
+ poiId: string
40
+ poiName: string
41
+ poiNameI18n: string
42
+ poiType: string
43
+ praiseCount: number
44
+ praiseFlag: boolean
45
+ price: number
46
+ productId: string
47
+ productName: string
48
+ productNameI18n: string
49
+ productType: string
50
+ provinceId: string
51
+ provinceName: string
52
+ scribePrice: number
53
+ showDateFlag: boolean
54
+ startDateStr: string
55
+ startTime: string
56
+ status: number
57
+ tags: string
58
+ weightSort: string
59
+ }[]
60
+ dataClass: string
61
+ traceId: string
62
+ }
63
+ export default _default
@@ -1,7 +1,11 @@
1
1
  import { LcbListProps } from './types'
2
2
  import './index.scss'
3
- declare function __VLS_template(): {
4
- list?(_: { items: any[] }): any
3
+ declare function __VLS_template(): Readonly<{
4
+ list(props: { items: any }): any
5
+ item(props: { item: any }): any
6
+ }> & {
7
+ list(props: { items: any }): any
8
+ item(props: { item: any }): any
5
9
  }
6
10
  declare const __VLS_component: import('vue').DefineComponent<
7
11
  __VLS_WithDefaults<__VLS_TypePropsToOption<LcbListProps>, any>,
@@ -20,9 +24,9 @@ declare const __VLS_component: import('vue').DefineComponent<
20
24
  {
21
25
  listType: 'horizontal' | 'list' | 'grid' | 'waterfall'
22
26
  pageFilterType: string
27
+ pageListProps: import('./components/FilterList/type').PageListProps
23
28
  border: boolean
24
29
  styleMode: 'default' | 'plain'
25
- pageListProps: import('./components/FilterList/type').PageListProps
26
30
  },
27
31
  {}
28
32
  >
@@ -22,4 +22,3 @@ export interface FilterItemProps {
22
22
  options?: Option[]
23
23
  test?: 1
24
24
  }
25
- export declare const defaultLcbListProps: LcbListProps
@@ -1,28 +1,8 @@
1
1
  import { LcbProductProps } from './types'
2
2
  declare function __VLS_template(): Readonly<{
3
- image(): any
4
- title(): any
5
- subTitle(): any
6
- price(): any
7
- priceUnit(): any
8
- priceSuffix(): any
9
- originPrice(): any
10
- originPriceUnit(): any
11
- tags(): any
12
- location(): any
13
- distance(): any
3
+ item(props: { item: any }): any
14
4
  }> & {
15
- image(): any
16
- title(): any
17
- subTitle(): any
18
- price(): any
19
- priceUnit(): any
20
- priceSuffix(): any
21
- originPrice(): any
22
- originPriceUnit(): any
23
- tags(): any
24
- location(): any
25
- distance(): any
5
+ item(props: { item: any }): any
26
6
  }
27
7
  declare const __VLS_component: import('vue').DefineComponent<
28
8
  __VLS_WithDefaults<__VLS_TypePropsToOption<LcbProductProps>, any>,
@@ -1,11 +1,29 @@
1
- declare function __VLS_template(): {
2
- image?(_: { value: any }): any
3
- title?(_: { value: any }): any
4
- location?(_: { value: any }): any
5
- tags?(_: { value: any }): any
6
- priceUnit?(_: { value: any }): any
7
- price?(_: { value: any }): any
8
- priceSuffix?(_: { value: any }): any
1
+ declare function __VLS_template(): Readonly<{
2
+ image(props: { value: any }): any
3
+ title(props: { value: any }): any
4
+ subTitle(props: { value: any }): any
5
+ price(props: { value: any }): any
6
+ priceUnit(props: { value: any }): any
7
+ priceSuffix(props: { value: any }): any
8
+ originPrice(props: { value: any }): any
9
+ originPriceUnit(props: { value: any }): any
10
+ originPriceSuffix(props: { value: any }): any
11
+ tags(props: { value: any }): any
12
+ location(props: { value: any }): any
13
+ distance(props: { value: any }): any
14
+ }> & {
15
+ image(props: { value: any }): any
16
+ title(props: { value: any }): any
17
+ subTitle(props: { value: any }): any
18
+ price(props: { value: any }): any
19
+ priceUnit(props: { value: any }): any
20
+ priceSuffix(props: { value: any }): any
21
+ originPrice(props: { value: any }): any
22
+ originPriceUnit(props: { value: any }): any
23
+ originPriceSuffix(props: { value: any }): any
24
+ tags(props: { value: any }): any
25
+ location(props: { value: any }): any
26
+ distance(props: { value: any }): any
9
27
  }
10
28
  declare const __VLS_component: import('vue').DefineComponent<
11
29
  __VLS_WithDefaults<