sh-view 2.8.1 → 2.8.2

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 (91) hide show
  1. package/.eslintrc.js +25 -20
  2. package/other.js +8 -8
  3. package/package.json +9 -6
  4. package/packages/components/index.js +91 -91
  5. package/packages/components/sh-alert/alert.ts +30 -0
  6. package/packages/components/sh-alert/index.vue +143 -168
  7. package/packages/components/sh-badge/index.vue +242 -242
  8. package/packages/components/sh-calendar/index.vue +650 -650
  9. package/packages/components/sh-card/index.vue +148 -148
  10. package/packages/components/sh-code-editor/index.vue +19 -19
  11. package/packages/components/sh-col/index.vue +92 -92
  12. package/packages/components/sh-corner/index.vue +230 -230
  13. package/packages/components/sh-count-to/index.vue +131 -131
  14. package/packages/components/sh-date/index.vue +301 -301
  15. package/packages/components/sh-drawer/index.vue +579 -579
  16. package/packages/components/sh-drawer/scrollbar.js +78 -78
  17. package/packages/components/sh-empty/index.vue +42 -42
  18. package/packages/components/sh-form/js/props.js +76 -76
  19. package/packages/components/sh-form/js/useForm.js +229 -229
  20. package/packages/components/sh-header/index.vue +261 -260
  21. package/packages/components/sh-icon/css/default/ionicons.svg +869 -869
  22. package/packages/components/sh-icon/css/font/iconfont.json +247 -247
  23. package/packages/components/sh-icon/index.vue +41 -41
  24. package/packages/components/sh-image/index.vue +133 -133
  25. package/packages/components/sh-list/index.vue +146 -146
  26. package/packages/components/sh-loading/index.vue +53 -53
  27. package/packages/components/sh-modal/index.vue +188 -188
  28. package/packages/components/sh-noticebar/index.vue +215 -215
  29. package/packages/components/sh-poptip/index.vue +597 -597
  30. package/packages/components/sh-progress/index.vue +276 -276
  31. package/packages/components/sh-pull-refresh/index.vue +289 -289
  32. package/packages/components/sh-result/index.vue +114 -114
  33. package/packages/components/sh-row/index.vue +66 -66
  34. package/packages/components/sh-split/components/trigger.vue +33 -33
  35. package/packages/components/sh-split/index.vue +342 -342
  36. package/packages/components/sh-table/components/importModal.vue +363 -363
  37. package/packages/components/sh-table/components/sh-column.vue +68 -68
  38. package/packages/components/sh-table/js/excel_to_json.js +313 -313
  39. package/packages/components/sh-table/js/props.js +305 -305
  40. package/packages/components/sh-table/js/tableMethods.js +167 -167
  41. package/packages/components/sh-table/js/useTable.js +636 -636
  42. package/packages/components/sh-table/table.vue +217 -217
  43. package/packages/components/sh-tabs/index.vue +426 -426
  44. package/packages/components/sh-tag/index.vue +168 -168
  45. package/packages/components/sh-toolbar/index.vue +182 -182
  46. package/packages/components/sh-tree/components/table-tree.vue +289 -289
  47. package/packages/components/sh-tree/mixin/treeProps.js +122 -122
  48. package/packages/components/sh-upload/index.vue +535 -535
  49. package/packages/components/sh-water-fall/index.vue +80 -80
  50. package/packages/components/sh-water-mark/index.vue +96 -96
  51. package/packages/css/index.js +4 -4
  52. package/packages/directive/index.js +19 -19
  53. package/packages/directive/module/click-out.js +14 -14
  54. package/packages/directive/module/draggable.js +42 -42
  55. package/packages/directive/module/line-clamp.js +22 -22
  56. package/packages/directive/module/prevent-click.js +18 -18
  57. package/packages/directive/module/resize.js +14 -14
  58. package/packages/directive/module/ripple.js +166 -166
  59. package/packages/index.js +39 -39
  60. package/packages/mixin/index.js +86 -86
  61. package/packages/other/sh-cron-modal/components/cron-content.vue +294 -294
  62. package/packages/other/sh-cron-modal/index.vue +81 -81
  63. package/packages/other/sh-cron-modal/mixin/cron-emits.js +1 -1
  64. package/packages/other/sh-cron-modal/mixin/cron-props.js +9 -9
  65. package/packages/other/sh-cron-modal/tabs/cron-week-box.vue +126 -126
  66. package/packages/other/sh-menu/index.vue +326 -326
  67. package/packages/other/sh-menu/menu-group-content.vue +136 -136
  68. package/packages/other/sh-menu/menu-item-content.vue +71 -71
  69. package/packages/other/sh-menu-card/index.vue +250 -250
  70. package/packages/other/sh-menu-card/menu-box.vue +87 -87
  71. package/packages/other/sh-preview/components/sh-excel.vue +163 -163
  72. package/packages/other/sh-preview/js/data-hook.js +41 -41
  73. package/packages/other/sh-preview/js/data-props.js +15 -15
  74. package/packages/other/sh-system-tip/index.vue +115 -115
  75. package/packages/utils/resize.js +69 -70
  76. package/packages/utils/transfer-queue.js +12 -12
  77. package/packages/vxeTable/index.js +193 -184
  78. package/packages/vxeTable/plugins/export.js +450 -450
  79. package/packages/vxeTable/render/cell/vxe-render-img.vue +27 -27
  80. package/packages/vxeTable/render/cell/vxe-render-table.vue +51 -51
  81. package/packages/vxeTable/render/cell/vxe-render-time.vue +44 -44
  82. package/packages/vxeTable/render/cell/vxe-render-tree.vue +70 -70
  83. package/packages/vxeTable/render/filters/vxe-filter-input.vue +26 -26
  84. package/packages/vxeTable/render/filters/vxe-filter-time.vue +26 -26
  85. package/packages/vxeTable/render/globalRenders.jsx +514 -514
  86. package/packages/vxeTable/render/mixin/cell-hooks.js +198 -198
  87. package/packages/vxeTable/render/mixin/cell-props.js +23 -23
  88. package/packages/vxeTable/render/mixin/filter-hooks.js +46 -46
  89. package/tsconfig.json +25 -0
  90. package/types/component.d.ts +1 -0
  91. package/types/index.ts +0 -0
@@ -1,198 +1,198 @@
1
- import { computed, ref, watch } from 'vue'
2
-
3
- let moneyUnitConstants = [
4
- { value: 1, label: '元' },
5
- { value: 1000, label: '千元' },
6
- { value: 10000, label: '万元' }
7
- ]
8
- let cnGroups = [
9
- { shortText: '兆', fullText: '兆', value: '' },
10
- { shortText: '千', fullText: '千亿', value: '' },
11
- { shortText: '百', fullText: '百亿', value: '' },
12
- { shortText: '十', fullText: '十亿', value: '' },
13
- { shortText: '亿', fullText: '亿', value: '' },
14
- { shortText: '千', fullText: '千万', value: '' },
15
- { shortText: '百', fullText: '百万', value: '' },
16
- { shortText: '十', fullText: '十万', value: '' },
17
- { shortText: '万', fullText: '万', value: '' },
18
- { shortText: '千', fullText: '千', value: '' },
19
- { shortText: '百', fullText: '百', value: '' },
20
- { shortText: '十', fullText: '十', value: '' },
21
- { shortText: '元', fullText: '元', value: '' },
22
- { shortText: '角', fullText: '角', value: '' },
23
- { shortText: '分', fullText: '分', value: '' },
24
- { shortText: '毫', fullText: '毫', value: '' },
25
- { shortText: '厘', fullText: '厘', value: '' }
26
- ]
27
-
28
- export default function (props, context, proxy) {
29
- const { $vUtils } = proxy
30
-
31
- const renderValue = ref(null)
32
- const renderText = ref('')
33
-
34
- const rsize = computed(() => props.rprops.size || props.rparams.$table?.props?.size || props.rparams.$form?.props?.size)
35
- const rform = computed(() => !!props.rparams.$form)
36
- const reditmode = computed(() => props.rparams.$table?.props?.editConfig?.mode)
37
- const isEditAll = computed(() => {
38
- return props.rparams.$table?.props?.editConfig?.enabled && reditmode.value === 'all' && props.rparams.column.editRender
39
- })
40
- const moneyUnitText = computed(() => {
41
- let moneyConstant = moneyUnitConstants.find(item => item.value === props.rprops.moneyUnit)
42
- return moneyConstant && moneyConstant.label
43
- })
44
- const billGroups = computed(() => {
45
- let { billStart = '分', billEnd = '亿' } = props.rprops
46
- let startIndex = cnGroups.findIndex(cn => cn.fullText === billEnd)
47
- let endIndex = cnGroups.findIndex(cn => cn.fullText === billStart)
48
- return cnGroups.slice(startIndex, endIndex)
49
- })
50
- const psButtonConfig = computed(() => {
51
- return { disabled: props.rprops.disabled, size: props.rsize, status: 'primary' }
52
- })
53
- const prefixButton = computed(() => props.rprops.prefixType?.toLowerCase() === 'button')
54
- const suffixButton = computed(() => props.rprops.suffixType?.toLowerCase() === 'button')
55
-
56
- // 初始化数据
57
- const initData = () => {
58
- let keyValue = $vUtils.get(props.rdata, props.rkey)
59
- formatValueFun(keyValue)
60
- }
61
-
62
- // 输入框前缀点击事件
63
- const vxeInputPrefixClick = () => {
64
- if (props.rprops.disabled) return
65
- if (rform.value) {
66
- let { $form } = props.rparams
67
- $form.context.emit('prefix-click', props.rparams)
68
- }
69
- }
70
- // 输入框后缀点击事件
71
- const vxeInputSuffixClick = () => {
72
- if (props.rprops.disabled) return
73
- if (rform.value) {
74
- let { $form } = props.rparams
75
- $form.context.emit('suffix-click', props.rparams)
76
- }
77
- }
78
- // 输入框变化
79
- const vxeInputChange = async ({ value, $event }) => {
80
- // 此操作火狐浏览器(bug(vxe):编辑后不触发渲染器的blur问题)触发edit-closed,故在edit-close重新赋值
81
- if (!rform.value) {
82
- $vUtils.set(props.rparams.column, 'params.__RowEditModelValue', value)
83
- }
84
- }
85
- // 输入框变化回调
86
- const vxeChangeCallBack = async ({ value, $event }) => {
87
- setRenderValue(value)
88
- }
89
- // radio 变化回调
90
- const vxeRadioCallBack = async ({ label, $event }) => {
91
- setRenderValue(label)
92
- }
93
- // check变化回调
94
- const vxeCheckCallBack = async ({ checklist, checked, label, $event }) => {
95
- setRenderValue(checklist)
96
- }
97
- // 输入框失去焦点回调
98
- const vxeBlurCallback = async ({ value, $event }) => {
99
- setRenderValue(value)
100
- }
101
- // 回调赋值
102
- const setRenderValue = (value, isCall) => {
103
- let cellValue = value || renderValue.value
104
- if (!isCall) {
105
- if (['$vMoney'].includes(props.rname) && !$vUtils.isNone(cellValue)) {
106
- if (props.rprops.commafy) cellValue = String(cellValue).replace(',', '')
107
- cellValue = $vUtils.multiply(cellValue, props.rprops.moneyUnit || 1)
108
- }
109
- let { rvalue, rtext } = formatValueFun(cellValue, true)
110
- cellValue = rvalue
111
- }
112
- if (rform.value) {
113
- let { $form } = props.rparams
114
- $form.context.emit('edit-closed', props.rparams)
115
- }
116
- $vUtils.set(props.rdata, props.rkey, cellValue)
117
- }
118
- // 格式化值formatValue
119
- const formatValueFun = (value, editable) => {
120
- let formatObj = $vUtils.formatRender(value, props.rkey, props.rdata, props.rname, props.rprops, proxy, editable)
121
- renderValue.value = ['$vMoney'].includes(props.rname) ? formatObj.rtext : formatObj.rvalue
122
- renderText.value = formatObj.rtext
123
- return formatObj
124
- }
125
- // 格式化底部值
126
- const getFooterData = (qianfen = true) => {
127
- let { $table, items, itemIndex, column } = props.rparams
128
- let tableData = $table.internalData.afterFullData
129
- let { rname, rprops, rfooter, property } = column
130
- let { digits, moneyUnit, commafy, type, calculate } = rprops
131
- let footerValue = items[itemIndex]
132
- if (rfooter) {
133
- let caculateObj = rfooter[items[rfooter.index || 0]]
134
- if (caculateObj && (rname === '$vMoney' || (['number', 'float', 'integer'].includes(type) && calculate))) {
135
- let tableColumnData = $vUtils.mapTree(tableData, row => row[property])
136
- let { computeType, result, typeObj } = caculateObj
137
- switch (computeType) {
138
- case 'subTotal':
139
- footerValue = $vUtils.sum(tableColumnData)
140
- break
141
- case 'allTotal':
142
- footerValue = typeObj[property] || result
143
- break
144
- case 'mean':
145
- footerValue = $vUtils.mean(tableColumnData)
146
- break
147
- default:
148
- footerValue = result
149
- break
150
- }
151
- if (rname === '$vMoney') footerValue = $vUtils.truncate($vUtils.divide(footerValue, moneyUnit), digits)
152
- if (qianfen && commafy) footerValue = $vUtils.commafy(footerValue, { digits })
153
- }
154
- }
155
- return footerValue
156
- }
157
- const getBillClass = bil => {
158
- return { basic: bil.fullText === '元', commafy: ['千', '百万', '十亿', '兆'].includes(bil.fullText) }
159
- }
160
- // 获取单据值
161
- const getBillValue = (index, total = false) => {
162
- let value = total ? getFooterData(false) : renderValue.value
163
- if (!value) return ''
164
- let fullValue = $vUtils.formatMoneyPad(value)
165
- let fullList = fullValue.replace('.', '').split('')
166
- return fullList[index]
167
- }
168
-
169
- watch(
170
- () => props.rdata,
171
- () => initData(),
172
- { deep: true, immediate: true }
173
- )
174
-
175
- return {
176
- renderValue,
177
- renderText,
178
- rsize,
179
- rform,
180
- isEditAll,
181
- moneyUnitText,
182
- billGroups,
183
- psButtonConfig,
184
- prefixButton,
185
- suffixButton,
186
- vxeInputPrefixClick,
187
- vxeInputSuffixClick,
188
- vxeInputChange,
189
- vxeChangeCallBack,
190
- vxeRadioCallBack,
191
- vxeCheckCallBack,
192
- vxeBlurCallback,
193
- getFooterData,
194
- getBillClass,
195
- getBillValue,
196
- setRenderValue
197
- }
198
- }
1
+ import { computed, ref, watch } from 'vue'
2
+
3
+ let moneyUnitConstants = [
4
+ { value: 1, label: '元' },
5
+ { value: 1000, label: '千元' },
6
+ { value: 10000, label: '万元' }
7
+ ]
8
+ let cnGroups = [
9
+ { shortText: '兆', fullText: '兆', value: '' },
10
+ { shortText: '千', fullText: '千亿', value: '' },
11
+ { shortText: '百', fullText: '百亿', value: '' },
12
+ { shortText: '十', fullText: '十亿', value: '' },
13
+ { shortText: '亿', fullText: '亿', value: '' },
14
+ { shortText: '千', fullText: '千万', value: '' },
15
+ { shortText: '百', fullText: '百万', value: '' },
16
+ { shortText: '十', fullText: '十万', value: '' },
17
+ { shortText: '万', fullText: '万', value: '' },
18
+ { shortText: '千', fullText: '千', value: '' },
19
+ { shortText: '百', fullText: '百', value: '' },
20
+ { shortText: '十', fullText: '十', value: '' },
21
+ { shortText: '元', fullText: '元', value: '' },
22
+ { shortText: '角', fullText: '角', value: '' },
23
+ { shortText: '分', fullText: '分', value: '' },
24
+ { shortText: '毫', fullText: '毫', value: '' },
25
+ { shortText: '厘', fullText: '厘', value: '' }
26
+ ]
27
+
28
+ export default function (props, context, proxy) {
29
+ const { $vUtils } = proxy
30
+
31
+ const renderValue = ref(null)
32
+ const renderText = ref('')
33
+
34
+ const rsize = computed(() => props.rprops.size || props.rparams.$table?.props?.size || props.rparams.$form?.props?.size)
35
+ const rform = computed(() => !!props.rparams.$form)
36
+ const reditmode = computed(() => props.rparams.$table?.props?.editConfig?.mode)
37
+ const isEditAll = computed(() => {
38
+ return props.rparams.$table?.props?.editConfig?.enabled && reditmode.value === 'all' && props.rparams.column.editRender
39
+ })
40
+ const moneyUnitText = computed(() => {
41
+ let moneyConstant = moneyUnitConstants.find(item => item.value === props.rprops.moneyUnit)
42
+ return moneyConstant && moneyConstant.label
43
+ })
44
+ const billGroups = computed(() => {
45
+ let { billStart = '分', billEnd = '亿' } = props.rprops
46
+ let startIndex = cnGroups.findIndex(cn => cn.fullText === billEnd)
47
+ let endIndex = cnGroups.findIndex(cn => cn.fullText === billStart)
48
+ return cnGroups.slice(startIndex, endIndex)
49
+ })
50
+ const psButtonConfig = computed(() => {
51
+ return { disabled: props.rprops.disabled, size: props.rsize, status: 'primary' }
52
+ })
53
+ const prefixButton = computed(() => props.rprops.prefixType?.toLowerCase() === 'button')
54
+ const suffixButton = computed(() => props.rprops.suffixType?.toLowerCase() === 'button')
55
+
56
+ // 初始化数据
57
+ const initData = () => {
58
+ let keyValue = $vUtils.get(props.rdata, props.rkey)
59
+ formatValueFun(keyValue)
60
+ }
61
+
62
+ // 输入框前缀点击事件
63
+ const vxeInputPrefixClick = () => {
64
+ if (props.rprops.disabled) return
65
+ if (rform.value) {
66
+ let { $form } = props.rparams
67
+ $form.context.emit('prefix-click', props.rparams)
68
+ }
69
+ }
70
+ // 输入框后缀点击事件
71
+ const vxeInputSuffixClick = () => {
72
+ if (props.rprops.disabled) return
73
+ if (rform.value) {
74
+ let { $form } = props.rparams
75
+ $form.context.emit('suffix-click', props.rparams)
76
+ }
77
+ }
78
+ // 输入框变化
79
+ const vxeInputChange = async ({ value, $event }) => {
80
+ // 此操作火狐浏览器(bug(vxe):编辑后不触发渲染器的blur问题)触发edit-closed,故在edit-close重新赋值
81
+ if (!rform.value) {
82
+ $vUtils.set(props.rparams.column, 'params.__RowEditModelValue', value)
83
+ }
84
+ }
85
+ // 输入框变化回调
86
+ const vxeChangeCallBack = async ({ value, $event }) => {
87
+ setRenderValue(value)
88
+ }
89
+ // radio 变化回调
90
+ const vxeRadioCallBack = async ({ label, $event }) => {
91
+ setRenderValue(label)
92
+ }
93
+ // check变化回调
94
+ const vxeCheckCallBack = async ({ checklist, checked, label, $event }) => {
95
+ setRenderValue(checklist)
96
+ }
97
+ // 输入框失去焦点回调
98
+ const vxeBlurCallback = async ({ value, $event }) => {
99
+ setRenderValue(value)
100
+ }
101
+ // 回调赋值
102
+ const setRenderValue = (value, isCall) => {
103
+ let cellValue = value || renderValue.value
104
+ if (!isCall) {
105
+ if (['$vMoney'].includes(props.rname) && !$vUtils.isNone(cellValue)) {
106
+ if (props.rprops.commafy) cellValue = String(cellValue).replace(',', '')
107
+ cellValue = $vUtils.multiply(cellValue, props.rprops.moneyUnit || 1)
108
+ }
109
+ let { rvalue, rtext } = formatValueFun(cellValue, true)
110
+ cellValue = rvalue
111
+ }
112
+ if (rform.value) {
113
+ let { $form } = props.rparams
114
+ $form.context.emit('edit-closed', props.rparams)
115
+ }
116
+ $vUtils.set(props.rdata, props.rkey, cellValue)
117
+ }
118
+ // 格式化值formatValue
119
+ const formatValueFun = (value, editable) => {
120
+ let formatObj = $vUtils.formatRender(value, props.rkey, props.rdata, props.rname, props.rprops, proxy, editable)
121
+ renderValue.value = ['$vMoney'].includes(props.rname) ? formatObj.rtext : formatObj.rvalue
122
+ renderText.value = formatObj.rtext
123
+ return formatObj
124
+ }
125
+ // 格式化底部值
126
+ const getFooterData = (qianfen = true) => {
127
+ let { $table, items, itemIndex, column } = props.rparams
128
+ let tableData = $table.internalData.afterFullData
129
+ let { rname, rprops, rfooter, property } = column
130
+ let { digits, moneyUnit, commafy, type, calculate } = rprops
131
+ let footerValue = items[itemIndex]
132
+ if (rfooter) {
133
+ let caculateObj = rfooter[items[rfooter.index || 0]]
134
+ if (caculateObj && (rname === '$vMoney' || (['number', 'float', 'integer'].includes(type) && calculate))) {
135
+ let tableColumnData = $vUtils.mapTree(tableData, row => row[property])
136
+ let { computeType, result, typeObj } = caculateObj
137
+ switch (computeType) {
138
+ case 'subTotal':
139
+ footerValue = $vUtils.sum(tableColumnData)
140
+ break
141
+ case 'allTotal':
142
+ footerValue = typeObj[property] || result
143
+ break
144
+ case 'mean':
145
+ footerValue = $vUtils.mean(tableColumnData)
146
+ break
147
+ default:
148
+ footerValue = result
149
+ break
150
+ }
151
+ if (rname === '$vMoney') footerValue = $vUtils.truncate($vUtils.divide(footerValue, moneyUnit), digits)
152
+ if (qianfen && commafy) footerValue = $vUtils.commafy(footerValue, { digits })
153
+ }
154
+ }
155
+ return footerValue
156
+ }
157
+ const getBillClass = bil => {
158
+ return { basic: bil.fullText === '元', commafy: ['千', '百万', '十亿', '兆'].includes(bil.fullText) }
159
+ }
160
+ // 获取单据值
161
+ const getBillValue = (index, total = false) => {
162
+ let value = total ? getFooterData(false) : renderValue.value
163
+ if (!value) return ''
164
+ let fullValue = $vUtils.formatMoneyPad(value)
165
+ let fullList = fullValue.replace('.', '').split('')
166
+ return fullList[index]
167
+ }
168
+
169
+ watch(
170
+ () => props.rdata,
171
+ () => initData(),
172
+ { deep: true, immediate: true }
173
+ )
174
+
175
+ return {
176
+ renderValue,
177
+ renderText,
178
+ rsize,
179
+ rform,
180
+ isEditAll,
181
+ moneyUnitText,
182
+ billGroups,
183
+ psButtonConfig,
184
+ prefixButton,
185
+ suffixButton,
186
+ vxeInputPrefixClick,
187
+ vxeInputSuffixClick,
188
+ vxeInputChange,
189
+ vxeChangeCallBack,
190
+ vxeRadioCallBack,
191
+ vxeCheckCallBack,
192
+ vxeBlurCallback,
193
+ getFooterData,
194
+ getBillClass,
195
+ getBillValue,
196
+ setRenderValue
197
+ }
198
+ }
@@ -1,23 +1,23 @@
1
- export default {
2
- redit: { type: Boolean },
3
- rkey: { type: String },
4
- rname: { type: String },
5
- rdata: {
6
- type: Object,
7
- default() {
8
- return {}
9
- }
10
- },
11
- rprops: {
12
- type: Object,
13
- default() {
14
- return {}
15
- }
16
- },
17
- rparams: {
18
- type: Object,
19
- default() {
20
- return {}
21
- }
22
- }
23
- }
1
+ export default {
2
+ redit: { type: Boolean },
3
+ rkey: { type: String },
4
+ rname: { type: String },
5
+ rdata: {
6
+ type: Object,
7
+ default() {
8
+ return {}
9
+ }
10
+ },
11
+ rprops: {
12
+ type: Object,
13
+ default() {
14
+ return {}
15
+ }
16
+ },
17
+ rparams: {
18
+ type: Object,
19
+ default() {
20
+ return {}
21
+ }
22
+ }
23
+ }
@@ -1,46 +1,46 @@
1
- import { computed, ref, watch } from 'vue'
2
-
3
- export default function (props, context, proxy, initRenderData) {
4
- const { $vUtils } = proxy
5
-
6
- let renderOption = ref({})
7
-
8
- // 初始化
9
- const initData = () => {
10
- const { column, $panel } = props.rparams
11
- const option = column.filters[0]
12
- renderOption.value = option
13
- $panel.changeOption(null, Boolean(renderOption.value.data), option)
14
- }
15
-
16
- // 过滤回调option
17
- const vxeFilterChange = ({ value, $event }) => {
18
- const { $panel } = props.rparams
19
- $panel.changeOption(null, Boolean(renderOption.value.data), renderOption.value)
20
- }
21
-
22
- // 过滤确认
23
- const vxeFilterConfirm = () => {
24
- const { $panel } = props.rparams
25
- $panel.confirmFilter()
26
- }
27
-
28
- // 过滤充值
29
- const vxeFilterReset = () => {
30
- const { $panel } = props.rparams
31
- $panel.resetFilter()
32
- }
33
-
34
- watch(
35
- () => props.rkey,
36
- () => (initRenderData ? initRenderData() : initData()),
37
- { deep: true, immediate: true }
38
- )
39
-
40
- return {
41
- renderOption,
42
- vxeFilterChange,
43
- vxeFilterConfirm,
44
- vxeFilterReset
45
- }
46
- }
1
+ import { computed, ref, watch } from 'vue'
2
+
3
+ export default function (props, context, proxy, initRenderData) {
4
+ const { $vUtils } = proxy
5
+
6
+ let renderOption = ref({})
7
+
8
+ // 初始化
9
+ const initData = () => {
10
+ const { column, $panel } = props.rparams
11
+ const option = column.filters[0]
12
+ renderOption.value = option
13
+ $panel.changeOption(null, Boolean(renderOption.value.data), option)
14
+ }
15
+
16
+ // 过滤回调option
17
+ const vxeFilterChange = ({ value, $event }) => {
18
+ const { $panel } = props.rparams
19
+ $panel.changeOption(null, Boolean(renderOption.value.data), renderOption.value)
20
+ }
21
+
22
+ // 过滤确认
23
+ const vxeFilterConfirm = () => {
24
+ const { $panel } = props.rparams
25
+ $panel.confirmFilter()
26
+ }
27
+
28
+ // 过滤充值
29
+ const vxeFilterReset = () => {
30
+ const { $panel } = props.rparams
31
+ $panel.resetFilter()
32
+ }
33
+
34
+ watch(
35
+ () => props.rkey,
36
+ () => (initRenderData ? initRenderData() : initData()),
37
+ { deep: true, immediate: true }
38
+ )
39
+
40
+ return {
41
+ renderOption,
42
+ vxeFilterChange,
43
+ vxeFilterConfirm,
44
+ vxeFilterReset
45
+ }
46
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "esnext",
4
+ "module": "esnext",
5
+ "strict": true,
6
+ "jsx": "preserve",
7
+ "importHelpers": true,
8
+ "moduleResolution": "node",
9
+ "skipLibCheck": true,
10
+ "esModuleInterop": true,
11
+ "resolveJsonModule": true,
12
+ "allowSyntheticDefaultImports": true,
13
+ "forceConsistentCasingInFileNames": true,
14
+ "useDefineForClassFields": true,
15
+ "sourceMap": true,
16
+ "baseUrl": ".",
17
+ "types": ["webpack-env",],
18
+ "paths": {
19
+ "@/*": ["packages/*"]
20
+ },
21
+ "lib": ["esnext", "dom", "dom.iterable", "scripthost"]
22
+ },
23
+ "include": ["packages/**/*.ts", "packages/**/*.tsx", "packages/**/*.vue" ],
24
+ "exclude": ["node_modules"]
25
+ }
@@ -0,0 +1 @@
1
+ export type ShType = 'info' | 'success' | 'warning' | 'error'
package/types/index.ts ADDED
File without changes