@ebfe/vant-kit 0.0.2 → 0.0.4
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/dist/ColoringAvatar/ColoringAvatar.vue.d.ts +16 -0
- package/dist/FieldMultiPicker/FieldMultiPicker.vue.d.ts +126 -0
- package/dist/FieldSinglePicker/FieldSinglePicker.vue.d.ts +32 -0
- package/dist/MultiPicker/MultiPicker.vue.d.ts +52 -0
- package/dist/SinglePicker/SinglePicker.vue.d.ts +37 -0
- package/dist/index.d.ts +8 -0
- package/dist/vant-kit.css +1 -0
- package/dist/vant-kit.es.js +14051 -0
- package/dist/vant-kit.umd.js +44 -0
- package/package.json +32 -33
- package/es/field-multi-picker/README.md +0 -97
- package/es/field-multi-picker/index-sfc.less +0 -3
- package/es/field-multi-picker/index.ts +0 -139
- package/es/field-multi-picker/style/index.js +0 -0
- package/es/field-multi-picker/style/less.js +0 -0
- package/es/field-single-picker/README.md +0 -94
- package/es/field-single-picker/index-sfc.less +0 -3
- package/es/field-single-picker/index.ts +0 -158
- package/es/field-single-picker/style/index.js +0 -0
- package/es/field-single-picker/style/less.js +0 -0
- package/es/index.js +0 -25
- package/es/multi-picker/README.md +0 -183
- package/es/multi-picker/index-sfc.less +0 -20
- package/es/multi-picker/index.ts +0 -399
- package/es/multi-picker/style/index.js +0 -0
- package/es/multi-picker/style/less.js +0 -0
- package/es/single-picker/README.md +0 -239
- package/es/single-picker/index-sfc.less +0 -4
- package/es/single-picker/index.ts +0 -253
- package/es/single-picker/style/index.js +0 -0
- package/es/single-picker/style/less.js +0 -0
- package/es/vue-sfc-shim.d.ts +0 -5
- package/lib/field-multi-picker/README.md +0 -97
- package/lib/field-multi-picker/index-sfc.less +0 -3
- package/lib/field-multi-picker/index.ts +0 -139
- package/lib/field-multi-picker/style/index.js +0 -0
- package/lib/field-multi-picker/style/less.js +0 -0
- package/lib/field-single-picker/README.md +0 -94
- package/lib/field-single-picker/index-sfc.less +0 -3
- package/lib/field-single-picker/index.ts +0 -158
- package/lib/field-single-picker/style/index.js +0 -0
- package/lib/field-single-picker/style/less.js +0 -0
- package/lib/index.js +0 -25
- package/lib/index.less +0 -0
- package/lib/multi-picker/README.md +0 -183
- package/lib/multi-picker/index-sfc.less +0 -20
- package/lib/multi-picker/index.ts +0 -399
- package/lib/multi-picker/style/index.js +0 -0
- package/lib/multi-picker/style/less.js +0 -0
- package/lib/single-picker/README.md +0 -239
- package/lib/single-picker/index-sfc.less +0 -4
- package/lib/single-picker/index.ts +0 -253
- package/lib/single-picker/style/index.js +0 -0
- package/lib/single-picker/style/less.js +0 -0
- package/lib/vue-sfc-shim.d.ts +0 -5
package/package.json
CHANGED
|
@@ -1,55 +1,54 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ebfe/vant-kit",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
|
+
"type": "module",
|
|
4
5
|
"description": "A project that includes common components from the H5 project (dependent on vant) and some utility functions",
|
|
5
|
-
"main": "
|
|
6
|
-
"module": "
|
|
7
|
-
"
|
|
8
|
-
"typings": "lib/index.d.ts",
|
|
6
|
+
"main": "dist/vant-kit.umd.js",
|
|
7
|
+
"module": "dist/vant-kit.es.js",
|
|
8
|
+
"types": "dist/index.d.ts",
|
|
9
9
|
"files": [
|
|
10
|
-
"
|
|
11
|
-
"es"
|
|
10
|
+
"dist"
|
|
12
11
|
],
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"types": "./dist/index.d.ts",
|
|
15
|
+
"import": "./dist/vant-kit.es.js",
|
|
16
|
+
"require": "./dist/vant-kit.umd.js"
|
|
17
|
+
},
|
|
18
|
+
"./style.css": "./dist/vant-kit.css"
|
|
19
|
+
},
|
|
13
20
|
"publishConfig": {
|
|
14
21
|
"access": "public"
|
|
15
22
|
},
|
|
16
|
-
"
|
|
23
|
+
"keywords": [],
|
|
17
24
|
"author": "astfn",
|
|
25
|
+
"license": "MIT",
|
|
18
26
|
"peerDependencies": {
|
|
19
|
-
"
|
|
27
|
+
"vant": "^4.9.0",
|
|
28
|
+
"vue": "^3.5.0"
|
|
20
29
|
},
|
|
21
30
|
"devDependencies": {
|
|
22
31
|
"@microsoft/api-extractor": "^7.52.9",
|
|
23
|
-
"@
|
|
24
|
-
"@
|
|
25
|
-
"
|
|
32
|
+
"@vant/auto-import-resolver": "^1.3.0",
|
|
33
|
+
"@vitejs/plugin-vue": "^6.0.0",
|
|
34
|
+
"postcss": "^8.5.6",
|
|
35
|
+
"typescript": "^5.8.3",
|
|
36
|
+
"unplugin-auto-import": "^20.1.0",
|
|
26
37
|
"unplugin-dts": "1.0.0-beta.0",
|
|
27
|
-
"vue": "^
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
},
|
|
35
|
-
"prettier": {
|
|
36
|
-
"singleQuote": true
|
|
38
|
+
"unplugin-vue-components": "^28.8.0",
|
|
39
|
+
"vant": "^4.9.21",
|
|
40
|
+
"vite": "^7.0.5",
|
|
41
|
+
"vue": "^3.5.17",
|
|
42
|
+
"vue-tsc": "^3.0.3",
|
|
43
|
+
"@ebfe/tsconfig": "0.0.1",
|
|
44
|
+
"@ebfe/eslint-config": "0.0.1"
|
|
37
45
|
},
|
|
38
|
-
"browserslist": [
|
|
39
|
-
"Chrome >= 51",
|
|
40
|
-
"iOS >= 10"
|
|
41
|
-
],
|
|
42
46
|
"dependencies": {
|
|
43
47
|
"lodash": "^4.17.21",
|
|
44
|
-
"vant": "^4.9.21",
|
|
45
48
|
"@ebfe/utils": "0.0.1",
|
|
46
|
-
"@ebfe/vhooks": "0.0.
|
|
49
|
+
"@ebfe/vhooks": "0.0.3"
|
|
47
50
|
},
|
|
48
51
|
"scripts": {
|
|
49
|
-
"
|
|
50
|
-
"lint": "vant-cli lint",
|
|
51
|
-
"build": "vant-cli build",
|
|
52
|
-
"build:site": "vant-cli build-site",
|
|
53
|
-
"release:site": "pnpm build:site && npx gh-pages -d site-dist"
|
|
52
|
+
"build": "vite build"
|
|
54
53
|
}
|
|
55
54
|
}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
# FieldMultiPicker
|
|
2
|
-
|
|
3
|
-
### 介绍
|
|
4
|
-
|
|
5
|
-
基于 MultiPicker 以及 vant 的 field 组件进行二次封装,方便处理表单中的单项选择需求场景。
|
|
6
|
-
|
|
7
|
-
- 支持传入所有 MultiPicker props(类型 TMultiPickerProps)
|
|
8
|
-
- 支持传入所有的 [vant field props](https://vant-ui.github.io/vant/#/zh-CN/field#props)
|
|
9
|
-
|
|
10
|
-
**主要功能描述**
|
|
11
|
-
|
|
12
|
-
- 集成 MultiPicker 所有功能
|
|
13
|
-
|
|
14
|
-
**对开发者的解脱**
|
|
15
|
-
|
|
16
|
-
- 符合 ui 设计
|
|
17
|
-
- 默认场景下 van-field 绑定值就是展示值,FieldMultiPicker 内部将绑定值与展示值表单真正需要收集的值分隔开。
|
|
18
|
-
|
|
19
|
-
## 代码演示
|
|
20
|
-
|
|
21
|
-
### 基础用法
|
|
22
|
-
|
|
23
|
-
```html
|
|
24
|
-
<template>
|
|
25
|
-
<span @click="getIdMapData">modelValue: {{ pickerValue }}</span>
|
|
26
|
-
<FieldMultiPicker
|
|
27
|
-
ref="FieldMultiPickerRef"
|
|
28
|
-
v-model="pickerValue"
|
|
29
|
-
:options="options"
|
|
30
|
-
:field-names="fieldNames"
|
|
31
|
-
title="基础用法"
|
|
32
|
-
tip-txt="这就是基础组件 - MultiPicke"
|
|
33
|
-
:field-props="{
|
|
34
|
-
name: 'fieldName',
|
|
35
|
-
label: '多选',
|
|
36
|
-
placeholder: '请选择',
|
|
37
|
-
required: true,
|
|
38
|
-
rules: [{ required: true, message: '请选择' }],
|
|
39
|
-
}"
|
|
40
|
-
/>
|
|
41
|
-
</template>
|
|
42
|
-
|
|
43
|
-
<script setup lang="ts">
|
|
44
|
-
import { useWrapperRef } from '@ebfe/vhooks';
|
|
45
|
-
import FieldMultiPicker from '../index.vue';
|
|
46
|
-
import { ref } from 'vue';
|
|
47
|
-
|
|
48
|
-
const options = [
|
|
49
|
-
{ name: '选项1', value: '1' },
|
|
50
|
-
{ name: '选项2', value: '2', disabled: true },
|
|
51
|
-
{ name: '选项3', value: '3' },
|
|
52
|
-
];
|
|
53
|
-
const fieldNames = {
|
|
54
|
-
label: 'name',
|
|
55
|
-
value: 'value',
|
|
56
|
-
};
|
|
57
|
-
const [pickerValue, _setPickerValue] = useWrapperRef<string[]>([]);
|
|
58
|
-
|
|
59
|
-
const FieldMultiPickerRef = ref<InstanceType<typeof FieldMultiPicker>>();
|
|
60
|
-
const getIdMapData = () => {
|
|
61
|
-
console.log('getIdMapData', FieldMultiPickerRef.value?.getOptionsIdMapData?.());
|
|
62
|
-
};
|
|
63
|
-
</script>
|
|
64
|
-
|
|
65
|
-
<style scoped lang="less">
|
|
66
|
-
.desc {
|
|
67
|
-
font-size: 12px;
|
|
68
|
-
text-align: center;
|
|
69
|
-
}
|
|
70
|
-
</style>
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
## API
|
|
74
|
-
|
|
75
|
-
### Props
|
|
76
|
-
|
|
77
|
-
继承 TMultiPickerProps 的同时
|
|
78
|
-
|
|
79
|
-
| 参数 | 说明 | 类型 | 默认值 |
|
|
80
|
-
| ---------- | ------------------ | ---------------- | ------ |
|
|
81
|
-
| fieldProps | 当前选中项对应的值 | vant field props | - |
|
|
82
|
-
|
|
83
|
-
### Events
|
|
84
|
-
|
|
85
|
-
继承 MultiPicker
|
|
86
|
-
|
|
87
|
-
| 事件名 | 说明 | 回调参数 |
|
|
88
|
-
| :----- | :--- | :------- |
|
|
89
|
-
| - | - | - |
|
|
90
|
-
|
|
91
|
-
### Slots
|
|
92
|
-
|
|
93
|
-
继承 MultiPicker
|
|
94
|
-
|
|
95
|
-
| 名称 | 说明 | 参数 |
|
|
96
|
-
| :--- | :--- | :--- |
|
|
97
|
-
| - | - | - |
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
|
-
import './index-sfc.css';
|
|
3
|
-
import { defineComponent as _defineComponent } from 'vue';
|
|
4
|
-
import MultiPicker, { TConfirmEventPayload, TMultiPickerProps } from '../multi-picker/index.vue';
|
|
5
|
-
import { Field as VanField } from 'vant';
|
|
6
|
-
import { isNullOrUndefined } from '@ebfe/utils';
|
|
7
|
-
import { useWrapperRef } from '@ebfe/vhooks';
|
|
8
|
-
import type { FieldProps } from 'vant';
|
|
9
|
-
import { computed, ref, watch } from 'vue';
|
|
10
|
-
|
|
11
|
-
const __default__ = {
|
|
12
|
-
name: 'FieldMultiPicker',
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
const __vue_sfc__ = /*@__PURE__*/ _defineComponent({
|
|
16
|
-
...__default__,
|
|
17
|
-
props: {
|
|
18
|
-
modelValue: { type: Array, required: true },
|
|
19
|
-
options: { type: Array, required: true },
|
|
20
|
-
fieldNames: { type: Object, required: false },
|
|
21
|
-
title: { type: String, required: false },
|
|
22
|
-
tipTxt: { type: String, required: false },
|
|
23
|
-
showSearch: { type: Boolean, required: false },
|
|
24
|
-
searchDelay: { type: Number, required: false },
|
|
25
|
-
fieldProps: { type: Object, required: true },
|
|
26
|
-
},
|
|
27
|
-
emits: ['search', 'toggleCheckbox', 'confirm', 'update:modelValue'],
|
|
28
|
-
setup(__props: any, { expose: __expose, emit: __emit }) {
|
|
29
|
-
const Props = __props;
|
|
30
|
-
|
|
31
|
-
const computedFieldProps = computed(() => {
|
|
32
|
-
const defaultProps: typeof Props.fieldProps = {
|
|
33
|
-
inputAlign: 'right',
|
|
34
|
-
errorMessageAlign: 'right',
|
|
35
|
-
};
|
|
36
|
-
return Object.assign(Props?.fieldProps ?? {}, defaultProps);
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
const isViewMode = computed(
|
|
40
|
-
() => computedFieldProps.value?.readonly || computedFieldProps.value?.disabled || false
|
|
41
|
-
);
|
|
42
|
-
const isLink = computed(() => {
|
|
43
|
-
if (isNullOrUndefined(computedFieldProps.value?.isLink)) {
|
|
44
|
-
return !isViewMode.value;
|
|
45
|
-
} else {
|
|
46
|
-
return computedFieldProps.value?.isLink;
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
const Emitter = __emit;
|
|
51
|
-
|
|
52
|
-
const [modelFieldValue, setModelFieldValue] = useWrapperRef<any>(Props.modelValue ?? []);
|
|
53
|
-
watch(() => Props.modelValue, setModelFieldValue, { immediate: true });
|
|
54
|
-
const updateModelFieldValue = (newValue: any[] = []) => {
|
|
55
|
-
setModelFieldValue(newValue);
|
|
56
|
-
// console.log('updateModelFieldValue');
|
|
57
|
-
Emitter('update:modelValue', newValue);
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
const MultiPickerRef = ref<InstanceType<typeof MultiPicker>>();
|
|
61
|
-
__expose({
|
|
62
|
-
getOptionsIdMapData() {
|
|
63
|
-
return MultiPickerRef.value?.getOptionsIdMapData?.();
|
|
64
|
-
},
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
const __returned__ = {
|
|
68
|
-
Props,
|
|
69
|
-
computedFieldProps,
|
|
70
|
-
isViewMode,
|
|
71
|
-
isLink,
|
|
72
|
-
Emitter,
|
|
73
|
-
modelFieldValue,
|
|
74
|
-
setModelFieldValue,
|
|
75
|
-
updateModelFieldValue,
|
|
76
|
-
MultiPickerRef,
|
|
77
|
-
MultiPicker,
|
|
78
|
-
get VanField() {
|
|
79
|
-
return VanField;
|
|
80
|
-
},
|
|
81
|
-
};
|
|
82
|
-
Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
|
|
83
|
-
return __returned__;
|
|
84
|
-
},
|
|
85
|
-
});
|
|
86
|
-
import {
|
|
87
|
-
mergeProps as _mergeProps,
|
|
88
|
-
createVNode as _createVNode,
|
|
89
|
-
withCtx as _withCtx,
|
|
90
|
-
openBlock as _openBlock,
|
|
91
|
-
createBlock as _createBlock,
|
|
92
|
-
} from 'vue';
|
|
93
|
-
|
|
94
|
-
function __vue_render__(_ctx, _cache, $props, $setup, $data, $options) {
|
|
95
|
-
return (
|
|
96
|
-
_openBlock(),
|
|
97
|
-
_createBlock(
|
|
98
|
-
$setup['MultiPicker'],
|
|
99
|
-
_mergeProps({ ref: 'MultiPickerRef' }, $setup.Props, {
|
|
100
|
-
'show-search': $props.showSearch,
|
|
101
|
-
modelValue: $setup.modelFieldValue,
|
|
102
|
-
'onUpdate:modelValue': [
|
|
103
|
-
_cache[0] || (_cache[0] = ($event) => ($setup.modelFieldValue = $event)),
|
|
104
|
-
_cache[1] || (_cache[1] = (...args) => $setup.updateModelFieldValue(...args)),
|
|
105
|
-
],
|
|
106
|
-
onSearch: _cache[2] || (_cache[2] = (...args) => $setup.Emitter('search', ...args)),
|
|
107
|
-
onToggleCheckbox: _cache[3] || (_cache[3] = (...args) => $setup.Emitter('toggleCheckbox', ...args)),
|
|
108
|
-
onConfirm: _cache[4] || (_cache[4] = (...args) => $setup.Emitter('confirm', ...args)),
|
|
109
|
-
}),
|
|
110
|
-
{
|
|
111
|
-
trigger: _withCtx(({ triggerPopupShow, showValue }) => [
|
|
112
|
-
_createVNode(
|
|
113
|
-
$setup['VanField'],
|
|
114
|
-
_mergeProps($setup.computedFieldProps, {
|
|
115
|
-
'is-link': $setup.isLink,
|
|
116
|
-
readonly: '',
|
|
117
|
-
modelValue: showValue!,
|
|
118
|
-
'onUpdate:modelValue': ($event) => (showValue! = $event),
|
|
119
|
-
onClick: () => {
|
|
120
|
-
if ($setup.isViewMode) return;
|
|
121
|
-
triggerPopupShow();
|
|
122
|
-
},
|
|
123
|
-
}),
|
|
124
|
-
null,
|
|
125
|
-
16 /* FULL_PROPS */,
|
|
126
|
-
['is-link', 'modelValue', 'onUpdate:modelValue', 'onClick']
|
|
127
|
-
),
|
|
128
|
-
]),
|
|
129
|
-
_: 1 /* STABLE */,
|
|
130
|
-
},
|
|
131
|
-
16 /* FULL_PROPS */,
|
|
132
|
-
['show-search', 'modelValue']
|
|
133
|
-
)
|
|
134
|
-
);
|
|
135
|
-
}
|
|
136
|
-
__vue_sfc__.render = __vue_render__;
|
|
137
|
-
|
|
138
|
-
__vue_sfc__.__scopeId = 'data-v-780fee58';
|
|
139
|
-
export default __vue_sfc__;
|
|
File without changes
|
|
File without changes
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
# FieldSinglePicker
|
|
2
|
-
|
|
3
|
-
### 介绍
|
|
4
|
-
|
|
5
|
-
基于 SinglePicker 以及 vant 的 field 组件进行二次封装,方便处理表单中的单项选择需求场景。
|
|
6
|
-
|
|
7
|
-
- 支持传入所有 SinglePicker props(类型 TSinglePickerProps)
|
|
8
|
-
- 支持传入所有的 [vant field props](https://vant-ui.github.io/vant/#/zh-CN/field#props)
|
|
9
|
-
|
|
10
|
-
**主要功能描述**
|
|
11
|
-
|
|
12
|
-
- 集成 SinglePicker 所有功能
|
|
13
|
-
|
|
14
|
-
**对开发者的解脱**
|
|
15
|
-
|
|
16
|
-
- 符合 ui 设计
|
|
17
|
-
- 默认场景下 van-field 绑定值就是展示值,FieldSinglePicker 内部将绑定值与展示值表单真正需要收集的值分隔开。
|
|
18
|
-
|
|
19
|
-
## 代码演示
|
|
20
|
-
|
|
21
|
-
### 基础用法
|
|
22
|
-
|
|
23
|
-
```html
|
|
24
|
-
<template>
|
|
25
|
-
modelValue: {{ pickerValue }}
|
|
26
|
-
<FieldSinglePicker
|
|
27
|
-
v-model="pickerValue"
|
|
28
|
-
:field-props="{
|
|
29
|
-
name: 'declarationType',
|
|
30
|
-
label: '单选',
|
|
31
|
-
placeholder: '请选择',
|
|
32
|
-
required: true,
|
|
33
|
-
rules: [{ required: true, message: '请选择' }],
|
|
34
|
-
}"
|
|
35
|
-
:picker-props="{
|
|
36
|
-
title: '基础用法',
|
|
37
|
-
columns: columns,
|
|
38
|
-
columnsFieldNames: columnsFieldNames,
|
|
39
|
-
}"
|
|
40
|
-
>
|
|
41
|
-
<template #columns-top>
|
|
42
|
-
<div class="desc">这就是基础组件 - SinglePicker</div>
|
|
43
|
-
</template>
|
|
44
|
-
</FieldSinglePicker>
|
|
45
|
-
</template>
|
|
46
|
-
|
|
47
|
-
<script setup lang="ts">
|
|
48
|
-
import { useWrapperRef } from '@ebfe/vhooks';
|
|
49
|
-
import FieldSinglePicker from '../index.vue';
|
|
50
|
-
|
|
51
|
-
const columns = [
|
|
52
|
-
{ name: '选项1', value: '1' },
|
|
53
|
-
{ name: '选项2', value: '2' },
|
|
54
|
-
];
|
|
55
|
-
const columnsFieldNames = {
|
|
56
|
-
text: 'name',
|
|
57
|
-
value: 'value',
|
|
58
|
-
};
|
|
59
|
-
const [pickerValue, _setPickerValue] = useWrapperRef<string | undefined>(undefined);
|
|
60
|
-
</script>
|
|
61
|
-
|
|
62
|
-
<style scoped lang="less">
|
|
63
|
-
.desc {
|
|
64
|
-
font-size: 12px;
|
|
65
|
-
text-align: center;
|
|
66
|
-
}
|
|
67
|
-
</style>
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
## API
|
|
71
|
-
|
|
72
|
-
### Props
|
|
73
|
-
|
|
74
|
-
继承 TSinglePickerProps 的同时
|
|
75
|
-
|
|
76
|
-
| 参数 | 说明 | 类型 | 默认值 |
|
|
77
|
-
| ---------- | ------------------ | ---------------- | ------ |
|
|
78
|
-
| fieldProps | 当前选中项对应的值 | vant field props | - |
|
|
79
|
-
|
|
80
|
-
### Events
|
|
81
|
-
|
|
82
|
-
继承 SinglePicker
|
|
83
|
-
|
|
84
|
-
| 事件名 | 说明 | 回调参数 |
|
|
85
|
-
| :----- | :--- | :------- |
|
|
86
|
-
| - | - | - |
|
|
87
|
-
|
|
88
|
-
### Slots
|
|
89
|
-
|
|
90
|
-
继承 SinglePicker
|
|
91
|
-
|
|
92
|
-
| 名称 | 说明 | 参数 |
|
|
93
|
-
| :--- | :--- | :--- |
|
|
94
|
-
| - | - | - |
|
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
|
-
import './index-sfc.css';
|
|
3
|
-
import { defineComponent as _defineComponent } from 'vue';
|
|
4
|
-
import SinglePicker, { TSinglePickerProps, TConfirmDisabledOptionPayload } from '../single-picker/index.vue';
|
|
5
|
-
import { Field as VanField } from 'vant';
|
|
6
|
-
import { isNullOrUndefined } from '@ebfe/utils';
|
|
7
|
-
import { useWrapperRef } from '@ebfe/vhooks';
|
|
8
|
-
import type { FieldProps } from 'vant';
|
|
9
|
-
import { computed, watch } from 'vue';
|
|
10
|
-
|
|
11
|
-
const __default__ = {
|
|
12
|
-
name: 'FieldSinglePicker',
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
const __vue_sfc__ = /*@__PURE__*/ _defineComponent({
|
|
16
|
-
...__default__,
|
|
17
|
-
props: {
|
|
18
|
-
showSearch: { type: Boolean, required: false, default: false },
|
|
19
|
-
searchDelay: { type: Number, required: false },
|
|
20
|
-
modelValue: { type: null, required: true },
|
|
21
|
-
pickerProps: { type: Object, required: true },
|
|
22
|
-
fieldProps: { type: Object, required: true },
|
|
23
|
-
},
|
|
24
|
-
emits: ['search', 'confirm', 'confirmDisabledOption', 'update:modelValue'],
|
|
25
|
-
setup(__props: any, { expose: __expose, emit: __emit }) {
|
|
26
|
-
const Props = __props;
|
|
27
|
-
|
|
28
|
-
const computedFieldProps = computed(() => {
|
|
29
|
-
const defaultProps: typeof Props.fieldProps = {
|
|
30
|
-
inputAlign: 'right',
|
|
31
|
-
errorMessageAlign: 'right',
|
|
32
|
-
};
|
|
33
|
-
return Object.assign(Props?.fieldProps ?? {}, defaultProps);
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
const isViewMode = computed(
|
|
37
|
-
() => computedFieldProps.value?.readonly || computedFieldProps.value?.disabled || false
|
|
38
|
-
);
|
|
39
|
-
const isLink = computed(() => {
|
|
40
|
-
if (isNullOrUndefined(computedFieldProps.value?.isLink)) {
|
|
41
|
-
return !isViewMode.value;
|
|
42
|
-
} else {
|
|
43
|
-
return computedFieldProps.value?.isLink;
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
const Emitter = __emit;
|
|
48
|
-
|
|
49
|
-
const [modelFieldValue, setModelFieldValue] = useWrapperRef<any>(Props.modelValue);
|
|
50
|
-
watch(() => Props.modelValue, setModelFieldValue, { immediate: true });
|
|
51
|
-
const updateModelFieldValue = (newValue) => {
|
|
52
|
-
setModelFieldValue(newValue);
|
|
53
|
-
// console.log('updateModelFieldValue');
|
|
54
|
-
Emitter('update:modelValue', newValue);
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
__expose({});
|
|
58
|
-
|
|
59
|
-
const __returned__ = {
|
|
60
|
-
Props,
|
|
61
|
-
computedFieldProps,
|
|
62
|
-
isViewMode,
|
|
63
|
-
isLink,
|
|
64
|
-
Emitter,
|
|
65
|
-
modelFieldValue,
|
|
66
|
-
setModelFieldValue,
|
|
67
|
-
updateModelFieldValue,
|
|
68
|
-
SinglePicker,
|
|
69
|
-
get VanField() {
|
|
70
|
-
return VanField;
|
|
71
|
-
},
|
|
72
|
-
};
|
|
73
|
-
Object.defineProperty(__returned__, '__isScriptSetup', { enumerable: false, value: true });
|
|
74
|
-
return __returned__;
|
|
75
|
-
},
|
|
76
|
-
});
|
|
77
|
-
import {
|
|
78
|
-
createCommentVNode as _createCommentVNode,
|
|
79
|
-
mergeProps as _mergeProps,
|
|
80
|
-
renderSlot as _renderSlot,
|
|
81
|
-
createVNode as _createVNode,
|
|
82
|
-
withCtx as _withCtx,
|
|
83
|
-
renderList as _renderList,
|
|
84
|
-
createSlots as _createSlots,
|
|
85
|
-
openBlock as _openBlock,
|
|
86
|
-
createBlock as _createBlock,
|
|
87
|
-
} from 'vue';
|
|
88
|
-
|
|
89
|
-
function __vue_render__(_ctx, _cache, $props, $setup, $data, $options) {
|
|
90
|
-
return (
|
|
91
|
-
_openBlock(),
|
|
92
|
-
_createBlock(
|
|
93
|
-
$setup['SinglePicker'],
|
|
94
|
-
{
|
|
95
|
-
modelValue: $setup.modelFieldValue,
|
|
96
|
-
'onUpdate:modelValue': [
|
|
97
|
-
_cache[1] || (_cache[1] = ($event) => ($setup.modelFieldValue = $event)),
|
|
98
|
-
_cache[2] || (_cache[2] = (...args) => $setup.updateModelFieldValue(...args)),
|
|
99
|
-
],
|
|
100
|
-
'picker-props': $props.pickerProps,
|
|
101
|
-
'show-search': $props.showSearch,
|
|
102
|
-
onSearch: _cache[3] || (_cache[3] = (...args) => $setup.Emitter('search', ...args)),
|
|
103
|
-
onConfirm: _cache[4] || (_cache[4] = (...args) => $setup.Emitter('confirm', ...args)),
|
|
104
|
-
onConfirmDisabledOption:
|
|
105
|
-
_cache[5] || (_cache[5] = (...args) => $setup.Emitter('confirmDisabledOption', ...args)),
|
|
106
|
-
},
|
|
107
|
-
_createSlots(
|
|
108
|
-
{
|
|
109
|
-
trigger: _withCtx(({ triggerPopupShow, showValue }) => [
|
|
110
|
-
_createVNode(
|
|
111
|
-
$setup['VanField'],
|
|
112
|
-
_mergeProps({ class: 'hidden' }, $setup.computedFieldProps, {
|
|
113
|
-
modelValue: $setup.modelFieldValue,
|
|
114
|
-
'onUpdate:modelValue': _cache[0] || (_cache[0] = ($event) => ($setup.modelFieldValue = $event)),
|
|
115
|
-
'is-link': $setup.isLink,
|
|
116
|
-
}),
|
|
117
|
-
null,
|
|
118
|
-
16 /* FULL_PROPS */,
|
|
119
|
-
['modelValue', 'is-link']
|
|
120
|
-
),
|
|
121
|
-
_createVNode(
|
|
122
|
-
$setup['VanField'],
|
|
123
|
-
_mergeProps($setup.computedFieldProps, {
|
|
124
|
-
'is-link': $setup.isLink,
|
|
125
|
-
readonly: '',
|
|
126
|
-
name: undefined,
|
|
127
|
-
modelValue: showValue!,
|
|
128
|
-
'onUpdate:modelValue': ($event) => (showValue! = $event),
|
|
129
|
-
onClick: () => {
|
|
130
|
-
if ($setup.isViewMode) return;
|
|
131
|
-
triggerPopupShow();
|
|
132
|
-
},
|
|
133
|
-
}),
|
|
134
|
-
null,
|
|
135
|
-
16 /* FULL_PROPS */,
|
|
136
|
-
['is-link', 'modelValue', 'onUpdate:modelValue', 'onClick']
|
|
137
|
-
),
|
|
138
|
-
]),
|
|
139
|
-
_: 2 /* DYNAMIC */,
|
|
140
|
-
},
|
|
141
|
-
[
|
|
142
|
-
_renderList(_ctx.$slots, (_slot, name) => {
|
|
143
|
-
return {
|
|
144
|
-
name: name,
|
|
145
|
-
fn: _withCtx((slotData) => [_renderSlot(_ctx.$slots, name, _mergeProps(slotData, { key: name }))]),
|
|
146
|
-
};
|
|
147
|
-
}),
|
|
148
|
-
]
|
|
149
|
-
),
|
|
150
|
-
1032 /* PROPS, DYNAMIC_SLOTS */,
|
|
151
|
-
['modelValue', 'picker-props', 'show-search']
|
|
152
|
-
)
|
|
153
|
-
);
|
|
154
|
-
}
|
|
155
|
-
__vue_sfc__.render = __vue_render__;
|
|
156
|
-
|
|
157
|
-
__vue_sfc__.__scopeId = 'data-v-308c2b1b';
|
|
158
|
-
export default __vue_sfc__;
|
|
File without changes
|
|
File without changes
|
package/es/index.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import FieldMultiPicker from './field-multi-picker';
|
|
2
|
-
import FieldSinglePicker from './field-single-picker';
|
|
3
|
-
import MultiPicker from './multi-picker';
|
|
4
|
-
import SinglePicker from './single-picker';
|
|
5
|
-
|
|
6
|
-
const version = '0.0.1';
|
|
7
|
-
|
|
8
|
-
function install(app) {
|
|
9
|
-
const components = [FieldMultiPicker, FieldSinglePicker, MultiPicker, SinglePicker];
|
|
10
|
-
|
|
11
|
-
components.forEach((item) => {
|
|
12
|
-
if (item.install) {
|
|
13
|
-
app.use(item);
|
|
14
|
-
} else if (item.name) {
|
|
15
|
-
app.component(item.name, item);
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export { install, version, FieldMultiPicker, FieldSinglePicker, MultiPicker, SinglePicker };
|
|
21
|
-
|
|
22
|
-
export default {
|
|
23
|
-
install,
|
|
24
|
-
version,
|
|
25
|
-
};
|