jufubao-base 1.0.197-beta5 → 1.0.197-beta7

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 (31) hide show
  1. package/commands.js +1 -1
  2. package/package.json +1 -1
  3. package/src/ICONS.js +1128 -0
  4. package/src/components/JfbBaseAddress/Attr.js +109 -1
  5. package/src/components/JfbBaseAddress/JfbBaseAddress.vue +164 -80
  6. package/src/components/JfbBaseAddress/XdTfkItem.vue +117 -0
  7. package/src/components/JfbBaseConDialog/JfbBaseConDialog.vue +41 -13
  8. package/src/components/JfbBaseFastLink/Attr.js +24 -8
  9. package/src/components/JfbBaseFastLink/JfbBaseFastLink.vue +37 -21
  10. package/src/components/JfbBaseFooter/Attr.js +141 -75
  11. package/src/components/JfbBaseFooter/JfbBaseFooter.vue +50 -15
  12. package/src/components/JfbBaseHeader/Attr.js +8 -1
  13. package/src/components/JfbBaseHeader/JfbBaseHeader.vue +8 -5
  14. package/src/components/JfbBaseHeaderElephant/JfbBaseHeaderElephant.vue +12 -3
  15. package/src/components/JfbBaseOrderDetail/Attr.js +147 -65
  16. package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +97 -47
  17. package/src/components/JfbBaseOrderList/Attr.js +59 -2
  18. package/src/components/JfbBaseOrderList/JfbBaseOrderList.vue +139 -92
  19. package/src/components/JfbBaseOrderList/Mock.js +3 -0
  20. package/src/components/JfbBaseOrderList/XdTfkOrderItem.vue +267 -0
  21. package/src/components/JfbBasePosterBigSmall/JfbBasePosterBigSmall.vue +27 -29
  22. package/src/components/JfbBasePosterBigSmall/getWidthHeight.js +13 -9
  23. package/src/components/JfbBaseUserCenter/Attr.js +297 -52
  24. package/src/components/JfbBaseUserCenter/JfbBaseUserCenter.vue +135 -44
  25. package/src/components/JfbBaseUserInfo/Attr.js +227 -85
  26. package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +106 -86
  27. package/src/components/JfbBaseUserOrder/Attr.js +332 -30
  28. package/src/components/JfbBaseUserOrder/JfbBaseUserOrder.vue +183 -55
  29. package/src/components/JfbBaseWallet/Attr.js +376 -8
  30. package/src/components/JfbBaseWallet/JfbBaseWallet.vue +185 -49
  31. package/src/mixins/componentsMixins.js +210 -35
@@ -17,17 +17,28 @@
17
17
  <view class="x-line"></view>
18
18
  <view class="user-center-box" :style="{padding: outMargin}">
19
19
  <view :style="{borderRadius: bodyRadius + 'rpx', backgroundColor:bodyBackgroundColor, padding:outPadding}">
20
- <view class="my-card-add__btn">
21
- <view :style="{color: cardNameColor}">我的{{cardName}}</view>
22
- <view :style="{borderColor:btnBoxColor || mainColor,color:btnBoxColor || mainColor}" @click="handleToLink(add_url)">添加{{cardName}}</view>
20
+ <view class="my-card-add__btn" :style="[titleMarginComp]">
21
+ <view :style="[titleStyleComp]">我的{{cardName}}</view>
22
+ <view class="addBtn" :style="[addBtnStyleComp]" @click="handleToLink(add_url)">
23
+ <text>添加{{cardName}}</text>
24
+ <view v-if="isShowICONBtn === 'Y'">
25
+ <xd-font-icon
26
+ icon="iconxiangyou_xian"
27
+ :color="addBtnStyleComp.color"
28
+ :size="20"
29
+ ></xd-font-icon>
30
+ </view>
31
+ </view>
23
32
  </view>
24
33
  <view
25
34
  class="my-card-add__link"
26
35
  :style="{
27
36
  borderRadius: radius + 'rpx',
28
37
  background: backgroundColor,
29
- border: borderBox,
30
- marginTop: padding + 'rpx'
38
+ border: borderBoxComp,
39
+ marginTop: rowSpacing + 'rpx',
40
+ padding:contentPaddingComp,
41
+ boxShadow: contShadow
31
42
  }"
32
43
  >
33
44
  <view class="my-card-add__link-num" v-if="0">
@@ -42,7 +53,8 @@
42
53
  :style="{
43
54
  color:btnTextColor,
44
55
  background:btnBgColor,
45
- fontSize: btnFontSize + 'rpx'
56
+ fontSize: btnFontSize + 'rpx',
57
+ borderRadius:btnRadius + 'rpx',
46
58
  }"
47
59
  @click="handleToLink(card_url)"
48
60
  >
@@ -71,23 +83,68 @@
71
83
  },
72
84
  mixins: [componentsMixins,extsMixins,JfbBaseUserCenterMixin],
73
85
  computed: {
86
+ titleMarginComp(){
87
+ return {
88
+ padding: this.getMarginAndPadding(this.titleMargin, 0),
89
+ }
90
+ },
74
91
  outPadding() {
75
- let str = `${this.checkValue(this.bodyPadding.top, 0)}rpx`;
76
- str = `${str} ${this.checkValue(this.bodyPadding.right, 0)}rpx`;
77
- str = `${str} ${this.checkValue(this.bodyPadding.bottom, 0)}rpx`;
78
- str = `${str} ${this.checkValue(this.bodyPadding.left, 0)}rpx`;
79
- return str
92
+ return this.getMarginAndPadding(this.bodyPadding,0)
80
93
  },
81
94
  outMargin() {
82
- let str = `${this.checkValue(this.bodyMargin.top, 20)}rpx`;
83
- str = `${str} ${this.checkValue(this.bodyMargin.right, 20)}rpx`;
84
- str = `${str} ${this.checkValue(this.bodyMargin.bottom, 20)}rpx`;
85
- str = `${str} ${this.checkValue(this.bodyMargin.left, 20)}rpx`;
86
- return str
95
+ return this.getMarginAndPadding(this.bodyMargin, 20)
96
+ },
97
+ borderBoxComp() {
98
+ return this.getBorderCompatibleOldStyle(this.contBorder, {
99
+ color: this.is_border_c,
100
+ width: this.is_border_w,
101
+ type: this.is_border,
102
+ style: 'solid'
103
+ })
87
104
  },
88
- borderBox() {
89
- if (this.is_border === 'Y') return `${this.is_border_w}rpx solid ${this.is_border_c}`;
90
- else return '0';
105
+ titleStyleComp(){
106
+ return {
107
+ fontSize: this.titleStyle.fontSize || '28rpx',
108
+ color: `${this.titleStyle.color || '#333'}`,
109
+ fontWeight: `${this.titleStyle.fontWeight || 'normal'}`,
110
+ }
111
+ },
112
+ addBtnStyleComp(){
113
+ let border = {};
114
+ if(this.addBtnBorder && this.addBtnBorder.type === 'Y') {
115
+ let value = this.addBtnBorder.value ||{};
116
+ if(value.width) border['borderWidth'] = value.width + 'rpx';
117
+ if(value.color) border['borderColor'] = value.color;
118
+ if(value.style) border['borderStyle'] = value.style;
119
+ }
120
+ if(this.addBtnBorder && this.addBtnBorder.type === 'N') {
121
+ border['borderWidth'] = 0;
122
+ border['borderColor'] = '';
123
+ border['borderStyle'] = ''
124
+ }
125
+
126
+ let addBtnShadow = {};
127
+ if(this.addBtnShadow && this.addBtnShadow.type === 'Y') {
128
+ let value = this.addBtnShadow.value || {};
129
+ if(value.color && value.width) {
130
+ addBtnShadow['boxShadow'] = `0 0 ${value.width}rpx ${value.color}`
131
+ }
132
+ }
133
+ return {
134
+ color: this.addBtnStyle.color || this.mainColor,
135
+ fontSize: this.addBtnStyle.fontSize || '26rpx',
136
+ fontWeight: this.addBtnStyle.fontWeight || 'normal',
137
+ borderColor: this.mainColor,
138
+ borderWidth: '2rpx',
139
+ borderStyle:'solid',
140
+ backgroundColor: this.addBtnBgColor || 'rgba(0,0,0,0)',
141
+ borderRadius:this.addBtnRadius + 'rpx',
142
+ ...border,
143
+ ...addBtnShadow
144
+ }
145
+ },
146
+ contentPaddingComp(){
147
+ return this.getMarginAndPadding(this.contentPadding, 40)
91
148
  },
92
149
  },
93
150
  data() {
@@ -95,29 +152,43 @@
95
152
  add_url: '',
96
153
  pwd_url: '',
97
154
  card_url:'',
98
- cardName: '',
155
+ cardName: '卡券',
156
+ bodyPadding: {},
157
+ bodyRadius: 0,
158
+ bodyBackgroundColor: 'rgba(0,0,0,0)',
159
+ bodyMargin:{},
160
+ rowSpacing: 20,
161
+
162
+ //title
163
+ titleStyle:{},
164
+ titleMargin:{},
99
165
 
100
- //基础
101
- color: '#333',
166
+ //添加按钮
167
+ addBtnBgColor:'rgba(0,0,0,0)',
168
+ addBtnStyle:{},
169
+ addBtnBorder:{},
170
+ addBtnShadow:{},
171
+ addBtnRadius: '40',
172
+ isShowICONBtn:'N',
173
+
174
+ //进入
175
+ contentPadding:{},
102
176
  backgroundColor: 'rgba(0,0,0,0)',
103
177
  radius: 0,
104
- padding: 20,
178
+ contShadow:'0 0 0 rgba(0,0,0,0)',
179
+
180
+ //进入按钮样式
105
181
  btnBgColor: '',
106
182
  btnTextColor: '',
107
183
  btnFontSize: 24,
184
+ btnRadius:'40',
108
185
 
109
186
  //边框
187
+ contBorder:{},
110
188
  is_border: 'Y',
111
189
  is_border_w: 0,
112
190
  is_border_c: '',
113
191
 
114
- //整体
115
- bodyPadding: {},
116
- bodyRadius: 0,
117
- bodyBackgroundColor: 'rgba(0,0,0,0)',
118
- bodyMargin:{},
119
- cardNameColor: '#333',
120
- btnBoxColor:'',
121
192
  }
122
193
  },
123
194
  watch: {
@@ -131,6 +202,7 @@
131
202
  },
132
203
  methods: {
133
204
  handleToLink(path, type) {
205
+ if (this.$configProject['isPreview']) return;
134
206
  if(!path) {
135
207
  console.warn(`跳转地址不存在`)
136
208
  }
@@ -144,33 +216,48 @@
144
216
  * @param container {object} 业务组件对象自己
145
217
  */
146
218
  init(container) {
147
-
148
- //整体
219
+ this.cardName = getContainerPropsValue(container, 'content.cardName', '卡券');
149
220
  this.bodyMargin = getContainerPropsValue(container, 'content.bodyMargin', {});
150
221
  this.bodyRadius = getContainerPropsValue(container, 'content.bodyRadius', 0);
151
222
  this.bodyBackgroundColor = getContainerPropsValue(container, 'content.bodyBackgroundColor', 'rgba(0,0,0,0)');
152
223
  this.bodyPadding = getContainerPropsValue(container, 'content.bodyPadding', {});
224
+ this.rowSpacing = getContainerPropsValue(container, 'content.padding', 20);
225
+
226
+ //标题
227
+ this.titleStyle = getContainerPropsValue(container, 'content.titleStyle', {});
228
+ this.titleMargin = getContainerPropsValue(container, 'content.titleMargin', {})
153
229
 
154
- //基础
230
+ //添加按钮
231
+ this.addBtnBgColor = getContainerPropsValue(container, 'content.addBtnBgColor', 'rgba(0,0,0,0)');
232
+ this.addBtnStyle = getContainerPropsValue(container, 'content.addBtnStyle', {});
233
+ this.addBtnBorder = getContainerPropsValue(container, 'content.addBtnBorder', {});
234
+ this.addBtnRadius = getContainerPropsValue(container, 'content.addBtnRadius', '40');
235
+ this.addBtnShadow = getContainerPropsValue(container, 'content.addBtnShadow', {});
236
+ this.isShowICONBtn = getContainerPropsValue(container, 'content.isShowICONBtn', 'N')
237
+
238
+ //进入
239
+ this.contentPadding = getContainerPropsValue(container, 'content.contentPadding', {});
155
240
  this.radius = getContainerPropsValue(container, 'content.radius', 0);
156
241
  this.color = getContainerPropsValue(container, 'content.textColor', '#333');
157
242
  this.backgroundColor = getContainerPropsValue(container, 'content.backgroundColor', '#f8f8f8');
158
- this.padding = getContainerPropsValue(container, 'content.padding', 20);
159
- this.btnBgColor = getContainerPropsValue(container, 'content.btnBgColor', this.mainGradient);
243
+ this.contShadow = this.getXdShadow({width:20, color:'rgba(0,0,0,0)'},getContainerPropsValue(container, 'content.contShadow', {}))
244
+
245
+ //进入按钮
246
+ this.btnBgColor = getContainerPropsValue(container, 'content.btnBgColor', this.mainGradient||this.mainColor);
160
247
  this.btnTextColor = getContainerPropsValue(container, 'content.btnTextColor', '#fff');
161
248
  this.btnFontSize = getContainerPropsValue(container, 'content.btnFontSize',26);
162
- this.cardNameColor = getContainerPropsValue(container, 'content.cardNameColor','#333');
163
- this.btnBoxColor = getContainerPropsValue(container, 'content.cardNameColor','');
249
+ this.btnRadius = getContainerPropsValue(container, 'content.btnRadius','40');
250
+
251
+ //边框兼容
252
+ this.contBorder = getContainerPropsValue(container, 'content.contBorder', {});
164
253
  this.is_border = getContainerPropsValue(container, 'content.is_border', 'N');
165
254
  this.is_border_c = getContainerPropsValue(container, 'content.is_border_c', '#fff');
166
255
  this.is_border_w = getContainerPropsValue(container, 'content.is_border_w', 2);
167
256
 
168
- //其他
257
+ //链接
169
258
  this.add_url = getContainerPropsValue(container, 'content.add_url', {value: ''}).value;
170
259
  this.pwd_url = getContainerPropsValue(container, 'content.pwd_url', {value: ''}).value;
171
260
  this.card_url = getContainerPropsValue(container, 'content.card_url', {value: ''}).value;
172
- this.cardName = getContainerPropsValue(container, 'content.cardName', '卡券');
173
-
174
261
  },
175
262
  }
176
263
  }
@@ -182,7 +269,15 @@
182
269
 
183
270
  .jfb-base-user-center {
184
271
  &__body{
272
+ & .addBtn {
273
+ display: flex;
274
+ justify-content: center;
275
+ align-items: center;
185
276
 
277
+ & > view {
278
+ margin-left: 10rpx;
279
+ }
280
+ }
186
281
  }
187
282
  }
188
283
 
@@ -197,9 +292,6 @@
197
292
  width: unit(200, rpx);
198
293
  height: unit(60, rpx);
199
294
  line-height: unit(60, rpx);
200
- border-radius: unit(30, rpx);
201
- border: 1px solid #FF5733;
202
- color: #FF5733;
203
295
  text-align: center;
204
296
  }
205
297
  }
@@ -235,7 +327,6 @@
235
327
  height: unit(80, rpx);
236
328
  line-height: unit(80, rpx);
237
329
  border-radius: unit(100, rpx);
238
- font-size: unit(24, rpx);
239
330
  text-align: center;
240
331
  margin-top: unit(30, rpx);
241
332
  }