@pisell/materials 2.2.57 → 2.2.59

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 (52) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +6 -6
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +18 -18
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +17 -17
  11. package/es/components/pisellCardList/index.d.ts +29 -1
  12. package/es/components/pisellCardList/index.js +24 -19
  13. package/es/components/pisellCardList/index.less +75 -75
  14. package/es/components/pisellCheckboxGroup/index.d.ts +3 -1
  15. package/es/components/pisellCheckboxGroup/index.js +32 -8
  16. package/es/components/pisellCheckboxGroup/index.less +1 -0
  17. package/es/components/pisellInformationEntry/hooks/useNativeScanner.d.ts +4 -0
  18. package/es/components/pisellInformationEntry/hooks/useNativeScanner.js +35 -0
  19. package/es/components/pisellInformationEntry/index.d.ts +2 -0
  20. package/es/components/pisellInformationEntry/index.js +16 -2
  21. package/es/components/pisellWalletPassCard/index.d.ts +28 -1
  22. package/es/components/pisellWalletPassCard/index.js +383 -47
  23. package/es/components/pisellWalletPassCard/index.less +154 -28
  24. package/es/locales/en-US.d.ts +8 -1
  25. package/es/locales/en-US.js +8 -1
  26. package/es/locales/zh-CN.d.ts +8 -1
  27. package/es/locales/zh-CN.js +8 -1
  28. package/es/locales/zh-TW.d.ts +8 -1
  29. package/es/locales/zh-TW.js +8 -1
  30. package/lib/components/pisellCardList/index.d.ts +29 -1
  31. package/lib/components/pisellCardList/index.js +44 -43
  32. package/lib/components/pisellCardList/index.less +75 -75
  33. package/lib/components/pisellCheckboxGroup/index.d.ts +3 -1
  34. package/lib/components/pisellCheckboxGroup/index.js +30 -7
  35. package/lib/components/pisellCheckboxGroup/index.less +1 -0
  36. package/lib/components/pisellInformationEntry/hooks/useNativeScanner.d.ts +4 -0
  37. package/lib/components/pisellInformationEntry/hooks/useNativeScanner.js +75 -0
  38. package/lib/components/pisellInformationEntry/index.d.ts +2 -0
  39. package/lib/components/pisellInformationEntry/index.js +14 -9
  40. package/lib/components/pisellWalletPassCard/index.d.ts +28 -1
  41. package/lib/components/pisellWalletPassCard/index.js +369 -23
  42. package/lib/components/pisellWalletPassCard/index.less +154 -28
  43. package/lib/locales/en-US.d.ts +8 -1
  44. package/lib/locales/en-US.js +8 -1
  45. package/lib/locales/zh-CN.d.ts +8 -1
  46. package/lib/locales/zh-CN.js +8 -1
  47. package/lib/locales/zh-TW.d.ts +8 -1
  48. package/lib/locales/zh-TW.js +8 -1
  49. package/lowcode/pisell-card-list/meta.ts +217 -136
  50. package/lowcode/pisell-wallet-pass-card/actionsMeta.ts +217 -0
  51. package/lowcode/pisell-wallet-pass-card/meta.ts +173 -129
  52. package/package.json +1 -1
@@ -1,4 +1,6 @@
1
1
  import snippets from './snippets';
2
+ import { actionsMeta } from '../pisell-wallet-pass-card/actionsMeta';
3
+ import { IPublicModelSettingField } from '@alilc/lowcode-types';
2
4
 
3
5
  export default {
4
6
  snippets,
@@ -18,153 +20,227 @@ export default {
18
20
  },
19
21
  props: [
20
22
  {
21
- name: 'platform',
22
- title: {
23
- label: '平台',
24
- },
25
- propType: { type: 'oneOf', value: ['h5', 'pc', 'ipad'] },
26
- setter: [
27
- {
28
- componentName: 'RadioGroupSetter',
29
- props: {
30
- options: [
31
- {
32
- title: 'h5',
33
- value: 'h5',
23
+ type: 'group',
24
+ title: { label: '外观' },
25
+ display: 'block',
26
+ items: [
27
+ {
28
+ name: 'platform',
29
+ title: {
30
+ label: '平台',
31
+ },
32
+ propType: { type: 'oneOf', value: ['h5', 'pc', 'ipad'] },
33
+ setter: [
34
+ {
35
+ componentName: 'RadioGroupSetter',
36
+ props: {
37
+ options: [
38
+ {
39
+ title: 'h5',
40
+ value: 'h5',
41
+ },
42
+ {
43
+ title: 'pc',
44
+ value: 'pc',
45
+ },
46
+ {
47
+ title: 'ipad',
48
+ value: 'ipad',
49
+ },
50
+ ],
34
51
  },
35
- {
36
- title: 'pc',
37
- value: 'pc',
52
+ },
53
+ 'VariableSetter',
54
+ ],
55
+ defaultValue: 'pc',
56
+ },
57
+ {
58
+ name: 'mode',
59
+ title: {
60
+ label: '选择类型',
61
+ },
62
+ propType: { type: 'oneOf', value: ['multiple', 'single', null] },
63
+ setter: [
64
+ {
65
+ componentName: 'RadioGroupSetter',
66
+ props: {
67
+ options: [
68
+ {
69
+ title: '不选',
70
+ value: null,
71
+ },
72
+ {
73
+ title: '单选',
74
+ value: 'single',
75
+ },
76
+ {
77
+ title: '多选',
78
+ value: 'multiple',
79
+ },
80
+ ],
38
81
  },
39
- {
40
- title: 'ipad',
41
- value: 'ipad',
82
+ },
83
+ 'VariableSetter',
84
+ ],
85
+ defaultValue: 'single',
86
+ },
87
+ {
88
+ name: 'direction',
89
+ title: { label: '方向' },
90
+ propType: { type: 'oneOf', value: ['horizontal', 'vertical'] },
91
+ setter: [
92
+ {
93
+ componentName: 'RadioGroupSetter',
94
+ props: {
95
+ options: [
96
+ {
97
+ title: '水平',
98
+ value: 'horizontal',
99
+ },
100
+ {
101
+ title: '垂直',
102
+ value: 'vertical',
103
+ },
104
+ ],
42
105
  },
43
- ],
106
+ },
107
+ 'VariableSetter'
108
+ ],
109
+ defaultValue: 'vertical'
110
+ },
111
+ {
112
+ name: 'fullWidth',
113
+ condition: (target: IPublicModelSettingField) => {
114
+ return target.parent.getPropValue('direction') === 'horizontal';
44
115
  },
116
+ title: { label: '卡片宽度跟随父级' },
117
+ propType: 'bool',
118
+ setter: 'BoolSetter',
119
+ defaultValue: true,
45
120
  },
46
- 'VariableSetter',
47
- ],
48
- defaultValue: 'pc',
49
- },
50
- {
51
- name: 'mode',
52
- title: {
53
- label: '选择类型',
54
- },
55
- propType: { type: 'oneOf', value: ['multiple', 'single', null] },
56
- setter: [
57
- {
58
- componentName: 'RadioGroupSetter',
59
- props: {
60
- options: [
61
- {
62
- title: '不选',
63
- value: null,
64
- },
65
- {
66
- title: '单选',
67
- value: 'single',
68
- },
69
- {
70
- title: '多选',
71
- value: 'multiple',
121
+ {
122
+ name: 'type',
123
+ title: { label: '卡片样式' },
124
+ propType: { type: 'oneOf', value: ['mini', 'default'] },
125
+ setter: [
126
+ {
127
+ componentName: 'RadioGroupSetter',
128
+ props: {
129
+ options: [
130
+ {
131
+ title: 'Mini',
132
+ value: 'mini',
133
+ },
134
+ {
135
+ title: '默认',
136
+ value: 'default',
137
+ },
138
+ ],
72
139
  },
73
- ],
74
- },
140
+ },
141
+ ],
142
+ defaultValue: 'default',
75
143
  },
76
- 'VariableSetter',
77
- ],
78
- defaultValue: 'single',
79
- },
80
- {
81
- name: 'data',
82
- title: { label: '当前list数据', tip: '当前list数据' },
83
- setter: ['JsonSetter', 'VariableSetter'],
84
- },
85
- {
86
- name: 'hasMore',
87
- title: { label: '是否有更多数据', tip: '是否有更多数据' },
88
- propType: 'bool',
89
- setter: 'BoolSetter',
90
- defaultValue: false,
91
- },
92
- {
93
- name: 'showName',
94
- title: { label: '显示商品名称', tip: '显示商品名称' },
95
- propType: 'bool',
96
- setter: 'BoolSetter',
97
- defaultValue: true,
98
- },
99
- {
100
- name: 'showStoreName',
101
- title: { label: '显示共享店铺名称', tip: '显示共享店铺名称' },
102
- propType: 'bool',
103
- setter: 'BoolSetter',
104
- defaultValue: true,
105
- },
106
- {
107
- name: 'showRedeem',
108
- title: { label: '显示使用金额', tip: '显示使用金额' },
109
- propType: 'bool',
110
- setter: 'BoolSetter',
111
- defaultValue: true,
112
- },
113
- {
114
- name: 'showBalance',
115
- title: { label: '显示余额', tip: '显示余额' },
116
- propType: 'bool',
117
- setter: 'BoolSetter',
118
- defaultValue: true,
119
- },
120
- {
121
- name: 'showCode',
122
- title: { label: '显示识别码编号', tip: '显示识别码编号' },
123
- propType: 'bool',
124
- setter: 'BoolSetter',
125
- defaultValue: true,
126
- },
127
- {
128
- name: 'showValidDate',
129
- title: { label: '显示有效期', tip: '显示有效期' },
130
- propType: 'bool',
131
- setter: 'BoolSetter',
132
- defaultValue: true,
133
- },
134
- {
135
- name: 'showDetail',
136
- title: { label: '显示查看详情按钮', tip: '显示查看详情按钮' },
137
- propType: 'bool',
138
- setter: 'BoolSetter',
139
- defaultValue: true,
140
- },
141
- {
142
- name: 'showQrCode',
143
- title: { label: '显示识别码二维码', tip: '显示识别码二维码' },
144
- propType: 'bool',
145
- setter: 'BoolSetter',
146
- defaultValue: true,
147
- },
148
- {
149
- name: 'showCover',
150
- title: { label: '显示识别码卡封面', tip: '显示识别码卡封面' },
151
- propType: 'bool',
152
- setter: 'BoolSetter',
153
- defaultValue: true,
144
+ ]
154
145
  },
155
146
  {
156
- name: 'showEmpty',
157
- title: { label: '是否展示空占位', tip: '是否展示空占位' },
158
- propType: 'bool',
159
- setter: 'BoolSetter',
160
- defaultValue: false,
147
+ type: 'group',
148
+ title: { label: '卡片信息展示' },
149
+ display: 'block',
150
+ items: [
151
+ {
152
+ name: 'data',
153
+ title: { label: '当前list数据', tip: '当前list数据' },
154
+ setter: ['JsonSetter', 'VariableSetter'],
155
+ },
156
+ {
157
+ name: 'hasMore',
158
+ title: { label: '是否有更多数据', tip: '是否有更多数据' },
159
+ propType: 'bool',
160
+ setter: 'BoolSetter',
161
+ defaultValue: false,
162
+ },
163
+ {
164
+ name: 'showName',
165
+ title: { label: '显示商品名称', tip: '显示商品名称' },
166
+ propType: 'bool',
167
+ setter: 'BoolSetter',
168
+ defaultValue: true,
169
+ },
170
+ {
171
+ name: 'showStoreName',
172
+ title: { label: '显示共享店铺名称', tip: '显示共享店铺名称' },
173
+ propType: 'bool',
174
+ setter: 'BoolSetter',
175
+ defaultValue: true,
176
+ },
177
+ {
178
+ name: 'showRedeem',
179
+ title: { label: '显示使用金额', tip: '显示使用金额' },
180
+ propType: 'bool',
181
+ setter: 'BoolSetter',
182
+ defaultValue: true,
183
+ },
184
+ {
185
+ name: 'showBalance',
186
+ title: { label: '显示余额', tip: '显示余额' },
187
+ propType: 'bool',
188
+ setter: 'BoolSetter',
189
+ defaultValue: true,
190
+ },
191
+ {
192
+ name: 'showCode',
193
+ title: { label: '显示识别码编号', tip: '显示识别码编号' },
194
+ propType: 'bool',
195
+ setter: 'BoolSetter',
196
+ defaultValue: true,
197
+ },
198
+ {
199
+ name: 'showValidDate',
200
+ title: { label: '显示有效期', tip: '显示有效期' },
201
+ propType: 'bool',
202
+ setter: 'BoolSetter',
203
+ defaultValue: true,
204
+ },
205
+ {
206
+ name: 'showDetail',
207
+ title: { label: '显示查看详情按钮', tip: '显示查看详情按钮' },
208
+ propType: 'bool',
209
+ setter: 'BoolSetter',
210
+ defaultValue: true,
211
+ },
212
+ {
213
+ name: 'showQrCode',
214
+ title: { label: '显示识别码二维码', tip: '显示识别码二维码' },
215
+ propType: 'bool',
216
+ setter: 'BoolSetter',
217
+ defaultValue: true,
218
+ },
219
+ {
220
+ name: 'showCover',
221
+ title: { label: '显示识别码卡封面', tip: '显示识别码卡封面' },
222
+ propType: 'bool',
223
+ setter: 'BoolSetter',
224
+ defaultValue: true,
225
+ },
226
+ {
227
+ name: 'showEmpty',
228
+ title: { label: '是否展示空占位', tip: '是否展示空占位' },
229
+ propType: 'bool',
230
+ setter: 'BoolSetter',
231
+ defaultValue: false,
232
+ },
233
+ {
234
+ name: 'value',
235
+ title: { label: '当前选中值', tip: '当前选中值' },
236
+ propType: 'number',
237
+ setter: 'NumberSetter',
238
+ },
239
+ ]
161
240
  },
162
241
  {
163
- name: 'value',
164
- title: { label: '当前选中值', tip: '当前选中值' },
165
- propType: 'number',
166
- setter: 'NumberSetter',
167
- },
242
+ ...actionsMeta
243
+ }
168
244
  ],
169
245
  configure: {
170
246
  supports: {
@@ -175,6 +251,11 @@ export default {
175
251
  template:
176
252
  "onChange(event,${extParams}){\n// 选择变化时的回调\nconsole.log('onChange',event);}",
177
253
  },
254
+ {
255
+ name: 'onConfirmEdit',
256
+ templete:
257
+ "onConfirmEdit(value, index){\n// 编辑弹窗点击确认\nconsole.log('onConfirmEdit');}",
258
+ },
178
259
  ],
179
260
  },
180
261
  },
@@ -0,0 +1,217 @@
1
+ import { IPublicModelSettingField } from '@alilc/lowcode-types';
2
+
3
+ import React from 'react';
4
+
5
+ const defaultFields = [
6
+ {
7
+ name: 'name',
8
+ label: '商品名称',
9
+ },
10
+ {
11
+ name: 'storeName',
12
+ label: '共享店铺名称'
13
+ },
14
+ {
15
+ name: 'balance',
16
+ label: '余额'
17
+ },
18
+ {
19
+ name: 'redeem',
20
+ label: '使用金额'
21
+ },
22
+ {
23
+ name: 'code',
24
+ label: '识别码编号'
25
+ },
26
+ {
27
+ name: 'validDate',
28
+ label: '有效期'
29
+ }
30
+ ]
31
+
32
+ export const actionsMeta = {
33
+ title: { label: '卡片操作' },
34
+ type: 'group',
35
+ display: 'block',
36
+ items: [
37
+ {
38
+ name: 'showActions',
39
+ title: { label: '开启卡片操作' },
40
+ propType: 'bool',
41
+ setter: 'BoolSetter',
42
+ defaultValue: false,
43
+ extraProps:{
44
+ setValue: (target: IPublicModelSettingField, value: boolean) => {
45
+ const actions = target.parent.getPropValue('actions');
46
+ if (true === value && !actions) {
47
+ target.parent.setPropValue('actions', {
48
+ layout: 'expanded',
49
+ detail: {
50
+ visible: true,
51
+ iconColor: '#1570EF',
52
+ },
53
+ edit: {
54
+ visible: true,
55
+ iconColor: '#1570EF',
56
+ dialogTitle: '编辑',
57
+ enableDialog: true,
58
+ fields: [...defaultFields],
59
+ },
60
+ })
61
+ }
62
+ if (!value) {
63
+ target.parent.setPropValue('actions', undefined);
64
+ }
65
+ }
66
+ }
67
+ },
68
+ {
69
+ name: 'actions.layout',
70
+ title: { label: '操作展示' },
71
+ condition: (target: IPublicModelSettingField) =>
72
+ !!target.parent.getPropValue('showActions'),
73
+ setter: [
74
+ {
75
+ componentName: 'RadioGroupSetter',
76
+ props: {
77
+ options: [
78
+ {
79
+ title: '平铺',
80
+ value: 'expanded',
81
+ },
82
+ {
83
+ title: '隐藏',
84
+ value: 'collapsed',
85
+ },
86
+ ],
87
+ },
88
+ },
89
+ ],
90
+ // defaultValue: 'expanded',
91
+ },
92
+ {
93
+ name: 'actions.detail',
94
+ title: { label: '详情' },
95
+ condition: (target: IPublicModelSettingField) =>
96
+ !!target.parent.getPropValue('showActions'),
97
+ display: 'entry',
98
+ propType: 'object',
99
+ // defaultValue: {
100
+ // visible: true,
101
+ // iconColor: '#1570EF',
102
+ // },
103
+ items: [
104
+ {
105
+ name: 'visible',
106
+ title: { label: '开启' },
107
+ propType: 'bool',
108
+ setter: 'BoolSetter',
109
+ },
110
+ {
111
+ name: 'iconColor',
112
+ title: { label: 'icon颜色' },
113
+ propType: 'string',
114
+ setter: 'ColorSetter',
115
+ },
116
+ ],
117
+ },
118
+ {
119
+ name: 'actions.edit',
120
+ title: { label: '编辑' },
121
+ condition: (target: IPublicModelSettingField) =>
122
+ !!target.parent.getPropValue('showActions'),
123
+ display: 'entry',
124
+ propType: 'object',
125
+ // defaultValue: {
126
+ // visible: true,
127
+ // iconColor: '#1570EF',
128
+ // dialogTitle: '编辑',
129
+ // enableDialog: true,
130
+ // fields: [...defaultFields],
131
+ // },
132
+ items: [
133
+ {
134
+ name: 'visible',
135
+ title: { label: '开启' },
136
+ propType: 'bool',
137
+ setter: 'BoolSetter',
138
+ },
139
+ {
140
+ name: 'iconColor',
141
+ title: { label: 'icon颜色' },
142
+ propType: 'string',
143
+ setter: 'ColorSetter',
144
+ },
145
+ {
146
+ name: 'enableDialog',
147
+ title: { label: '开启弹窗' },
148
+ propType: 'bool',
149
+ setter: 'BoolSetter',
150
+ },
151
+ {
152
+ name: 'dialogTitle',
153
+ title: { label: '弹窗标题' },
154
+ propType: 'string',
155
+ setter: 'PisellI18nSetter',
156
+ condition: (target: IPublicModelSettingField) =>
157
+ !!target.parent.getPropValue('enableDialog'),
158
+ },
159
+ {
160
+ name: 'fields',
161
+ title: { label: '弹窗字段' },
162
+ condition: (target: IPublicModelSettingField) =>
163
+ !!target.parent.getPropValue('enableDialog'),
164
+ setter: {
165
+ componentName: 'ArraySetter',
166
+ props: {
167
+ itemSetter: {
168
+ componentName: 'ObjectSetter',
169
+ props: {
170
+ descriptor: 'name',
171
+ config: {
172
+ items: [
173
+ {
174
+ name: 'label',
175
+ title: { label: '标签名' },
176
+ propType: 'string',
177
+ setter: 'PisellI18nSetter',
178
+ important: true,
179
+ },
180
+ ],
181
+ },
182
+ },
183
+ },
184
+ extraProps: {
185
+ renderFooter: (props: {
186
+ value: Array<Record<string, string>>;
187
+ onAdd: (newVal?: any) => void;
188
+ }) => {
189
+ if (props.value.length === defaultFields.length)
190
+ return null;
191
+ const onAdd = () => {
192
+ const exists = props.value.map((item) => item.name);
193
+ const item = defaultFields.find(
194
+ (item) => !exists.includes(item.name)
195
+ );
196
+ if (item) {
197
+ props?.onAdd({...item});
198
+ }
199
+ };
200
+ return React.createElement(
201
+ 'button',
202
+ {
203
+ onClick: onAdd,
204
+ className:
205
+ 'next-btn next-medium next-btn-primary next-btn-text',
206
+ },
207
+ '添加一项 +'
208
+ );
209
+ },
210
+ },
211
+ },
212
+ },
213
+ },
214
+ ],
215
+ },
216
+ ],
217
+ }