@tplc/business 0.5.27 → 0.5.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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,20 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [0.5.29](https://gitlab888.30jia.com.cn/tourism-front/zero-code-pro/compare/v0.5.28...v0.5.29) (2025-10-25)
6
+
7
+
8
+ ### ✨ Features | 新功能
9
+
10
+ * 支持gap配置 ([9420e0e](https://gitlab888.30jia.com.cn/tourism-front/zero-code-pro/commit/9420e0e62567719c639dc3daac0c618b432e1c81))
11
+
12
+ ### [0.5.28](https://gitlab888.30jia.com.cn/tourism-front/zero-code-pro/compare/v0.5.27...v0.5.28) (2025-10-23)
13
+
14
+
15
+ ### ✨ Features | 新功能
16
+
17
+ * 合并颜色 ([70b9ee6](https://gitlab888.30jia.com.cn/tourism-front/zero-code-pro/commit/70b9ee691e57cd9895f39b8c66c5a7e22a0f74c1))
18
+
5
19
  ### [0.5.27](https://gitlab888.30jia.com.cn/tourism-front/zero-code-pro/compare/v0.5.22...v0.5.27) (2025-10-23)
6
20
 
7
21
 
@@ -59,6 +59,7 @@ const props = withDefaults(defineProps<LcbProductItemProps>(), {
59
59
  itemContentPr: 0,
60
60
  itemContentPb: 10,
61
61
  itemContentPl: 0,
62
+ itemGap: 10,
62
63
  })
63
64
  const attrs = useAttrs() as Record<string, any>
64
65
  provide('lcb-product-item-props', props)
@@ -172,7 +173,7 @@ const itemStyle = computed(() => {
172
173
  }"
173
174
  >
174
175
  <slot name="contentSection" />
175
- <view class="flex flex-col gap-[5px] overflow-hidden">
176
+ <view class="flex flex-col overflow-hidden" :style="{ gap: transformValueUnit(itemGap) }">
176
177
  <view>
177
178
  <ItemValue prop="productName">
178
179
  <!-- <template #productName="{ value }"><slot name="productName" :value="value" /></template> -->
@@ -325,7 +326,7 @@ const itemStyle = computed(() => {
325
326
  }"
326
327
  >
327
328
  <slot name="contentSection" />
328
- <view class="flex flex-col gap-[5px] overflow-hidden">
329
+ <view class="flex flex-col overflow-hidden" :style="{ gap: transformValueUnit(itemGap) }">
329
330
  <view>
330
331
  <ItemValue prop="productName">
331
332
  <!-- <template #productName="{ value }"><slot name="productName" :value="value" /></template> -->
@@ -6,6 +6,7 @@ export interface LcbProductItemProps {
6
6
  className?: string
7
7
  layoutType?: 'vertical' | 'horizontal'
8
8
  titleLineClamp?: number
9
+ itemGap?: number
9
10
  showArea?: string
10
11
  // area在图片上面
11
12
  areaOnImg?: boolean
@@ -0,0 +1,78 @@
1
+ <template>
2
+ <lcb-nav v-if="element.moduleName === 'lcb-nav'" v-bind="element.props" />
3
+ <lcb-img-nav v-else-if="element.moduleName === 'lcb-img-nav'" v-bind="element.props" />
4
+ <lcb-banner v-else-if="element.moduleName === 'lcb-banner'" v-bind="element.props" />
5
+ <lcb-banner-block v-else-if="element.moduleName === 'lcb-banner-block'" v-bind="element.props" />
6
+ <lcb-title v-else-if="element.moduleName === 'lcb-title'" v-bind="element.props" />
7
+ <lcb-grid v-else-if="element.moduleName === 'lcb-grid'" v-bind="element.props" />
8
+ <lcb-home-search v-else-if="element.moduleName === 'lcb-home-search'" v-bind="element.props" />
9
+ <lcb-user-order v-else-if="element.moduleName === 'lcb-user-order'" v-bind="element.props" />
10
+ <lcb-user-top v-else-if="element.moduleName === 'lcb-user-top'" v-bind="element.props" />
11
+ <lcb-list v-else-if="element.moduleName === 'lcb-list'" v-bind="element.props" />
12
+ <lcb-gap v-else-if="element.moduleName === 'lcb-gap'" v-bind="element.props" />
13
+ <lcb-image v-else-if="element.moduleName === 'lcb-image'" v-bind="element.props" />
14
+ <lcb-notice v-else-if="element.moduleName === 'lcb-notice'" v-bind="element.props" />
15
+ <lcb-video v-else-if="element.moduleName === 'lcb-video'" v-bind="element.props" />
16
+ <lcb-dynamic-data v-else-if="element.moduleName === 'lcb-dynamic-data'" v-bind="element.props" />
17
+ <lcb-advert v-else-if="element.moduleName === 'lcb-advert'" v-bind="element.props" />
18
+ <lcb-tabs v-else-if="element.moduleName === 'lcb-tabs'" v-bind="element.props" />
19
+ <lcb-filter-grid v-else-if="element.moduleName === 'lcb-filter-grid'" v-bind="element.props" />
20
+ <lcb-calendar-search
21
+ v-else-if="element.moduleName === 'lcb-calendar-search'"
22
+ v-bind="element.props"
23
+ />
24
+ <lcb-vip v-else-if="element.moduleName === 'lcb-vip'" v-bind="element.props" />
25
+ <lcb-product v-else-if="element.moduleName === 'lcb-product'" v-bind="element.props" />
26
+ <lcb-area
27
+ v-else-if="element.moduleName === 'lcb-area'"
28
+ v-bind="element.props"
29
+ :list="element.children"
30
+ >
31
+ <template #default="{ item }">
32
+ <schema-item :element="item" />
33
+ </template>
34
+ </lcb-area>
35
+ <lcb-wrapper-list
36
+ v-else-if="element.moduleName === 'lcb-wrapper-list'"
37
+ v-bind="element.props"
38
+ :list="element.children"
39
+ >
40
+ <template #default="{ data, list }">
41
+ <lcb-wrapper-item :data="data" :provide-key="WRAPPER_ITEM_KEY">
42
+ <schema-item :element="item" v-for="item in list" :key="item.id" />
43
+ </lcb-wrapper-item>
44
+ </template>
45
+ </lcb-wrapper-list>
46
+ <lcb-rich-text v-else-if="element.moduleName === 'lcb-rich-text'" v-bind="element.props" />
47
+ <lcb-form v-else-if="element.moduleName === 'lcb-form'" v-bind="element.props" />
48
+ <lcb-search v-else-if="element.moduleName === 'lcb-search'" v-bind="element.props" />
49
+ <lcb-calendar-filter
50
+ v-else-if="element.moduleName === 'lcb-calendar-filter'"
51
+ v-bind="element.props"
52
+ />
53
+ <lcb-particulars v-else-if="element.moduleName === 'lcb-particulars'" v-bind="element.props" />
54
+ <lcb-tags v-else-if="element.moduleName === 'lcb-tags'" v-bind="element.props" />
55
+ <lcb-button v-else-if="element.moduleName === 'lcb-button'" v-bind="element.props" />
56
+ <lcb-room-calendar
57
+ v-else-if="element.moduleName === 'lcb-room-calendar'"
58
+ v-bind="element.props"
59
+ />
60
+ <lcb-swiper v-else-if="element.moduleName === 'lcb-swiper'" v-bind="element.props" />
61
+ </template>
62
+
63
+ <script setup lang="ts">
64
+ import { WRAPPER_ITEM_KEY } from '../../constants'
65
+ defineOptions({
66
+ name: 'LcbRenderView',
67
+ options: {
68
+ addGlobalClass: true,
69
+ virtualHost: true,
70
+ styleIsolation: 'shared',
71
+ },
72
+ })
73
+ defineProps<{
74
+ element: any
75
+ }>()
76
+ </script>
77
+
78
+ <style lang="scss" scoped></style>
@@ -0,0 +1,3 @@
1
+ export interface LcbRenderViewProps {
2
+ // Define the component's prop types here
3
+ }
package/global.d.ts CHANGED
@@ -36,6 +36,7 @@ declare module 'vue' {
36
36
  'lcb-poster': (typeof import('@tplc/business/components/lcb-poster/lcb-poster.vue'))['default']
37
37
  'lcb-product': (typeof import('@tplc/business/components/lcb-product/lcb-product.vue'))['default']
38
38
  'lcb-product-item': (typeof import('@tplc/business/components/lcb-product-item/lcb-product-item.vue'))['default']
39
+ 'lcb-render-view': (typeof import('@tplc/business/components/lcb-render-view/lcb-render-view.vue'))['default']
39
40
  'lcb-rich-text': (typeof import('@tplc/business/components/lcb-rich-text/lcb-rich-text.vue'))['default']
40
41
  'lcb-room-calendar': (typeof import('@tplc/business/components/lcb-room-calendar/lcb-room-calendar.vue'))['default']
41
42
  'lcb-search': (typeof import('@tplc/business/components/lcb-search/lcb-search.vue'))['default']
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tplc/business",
3
- "version": "0.5.27",
3
+ "version": "0.5.29",
4
4
  "keywords": [
5
5
  "业务组件"
6
6
  ],
@@ -115,6 +115,7 @@ declare const __VLS_component: import('vue').DefineComponent<
115
115
  itemContentPr: number
116
116
  itemContentPb: number
117
117
  itemContentPl: number
118
+ itemGap: number
118
119
  }
119
120
  >,
120
121
  {},
@@ -176,6 +177,7 @@ declare const __VLS_component: import('vue').DefineComponent<
176
177
  itemContentPr: number
177
178
  itemContentPb: number
178
179
  itemContentPl: number
180
+ itemGap: number
179
181
  }
180
182
  >
181
183
  >
@@ -187,6 +189,7 @@ declare const __VLS_component: import('vue').DefineComponent<
187
189
  borderRadius: number
188
190
  itemVerticalPadding: number
189
191
  itemHorizontalPadding: number
192
+ itemGap: number
190
193
  titleLineClamp: number
191
194
  layoutType: 'vertical' | 'horizontal'
192
195
  itemContentPt: number
@@ -4,6 +4,7 @@ export interface LcbProductItemProps {
4
4
  className?: string
5
5
  layoutType?: 'vertical' | 'horizontal'
6
6
  titleLineClamp?: number
7
+ itemGap?: number
7
8
  showArea?: string
8
9
  areaOnImg?: boolean
9
10
  areaColor?: string
@@ -0,0 +1,35 @@
1
+ declare const _default: import('vue').DefineComponent<
2
+ __VLS_TypePropsToOption<{
3
+ element: any
4
+ }>,
5
+ {},
6
+ unknown,
7
+ {},
8
+ {},
9
+ import('vue').ComponentOptionsMixin,
10
+ import('vue').ComponentOptionsMixin,
11
+ {},
12
+ string,
13
+ import('vue').PublicProps,
14
+ Readonly<
15
+ import('vue').ExtractPropTypes<
16
+ __VLS_TypePropsToOption<{
17
+ element: any
18
+ }>
19
+ >
20
+ >,
21
+ {},
22
+ {}
23
+ >
24
+ export default _default
25
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T
26
+ type __VLS_TypePropsToOption<T> = {
27
+ [K in keyof T]-?: {} extends Pick<T, K>
28
+ ? {
29
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>
30
+ }
31
+ : {
32
+ type: import('vue').PropType<T[K]>
33
+ required: true
34
+ }
35
+ }