first commit
This commit is contained in:
10
node_modules/vant/LICENSE
generated
vendored
Normal file
10
node_modules/vant/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) Youzan
|
||||
Copyright (c) Chen Jiahan and other contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
181
node_modules/vant/README.md
generated
vendored
Normal file
181
node_modules/vant/README.md
generated
vendored
Normal file
@@ -0,0 +1,181 @@
|
||||
<p align="center">
|
||||
<img alt="logo" src="https://fastly.jsdelivr.net/npm/@vant/assets/logo.png" width="120" height="120" style="margin-bottom: 10px;">
|
||||
</p>
|
||||
|
||||
<h1 align="center">Vant</h1>
|
||||
|
||||
<p align="center">A lightweight, customizable Vue UI library for mobile web apps.</p>
|
||||
|
||||
<p align="center">
|
||||
<img src="https://img.shields.io/npm/v/vant?style=flat-square" alt="npm version" />
|
||||
<img src="https://img.shields.io/codecov/c/github/youzan/vant/main.svg?style=flat-square&color=#4fc08d" alt="Coverage Status" />
|
||||
<img src="https://img.shields.io/npm/dm/vant.svg?style=flat-square&color=#4fc08d" alt="downloads" />
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://vant-ui.github.io/vant">Documentation</a>
|
||||
|
||||
·
|
||||
|
||||
<a href="https://vant.pro/vant/">Documentation (backup)</a>
|
||||
|
||||
·
|
||||
|
||||
<a href="./README.zh-CN.md">中文介绍</a>
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
## Features
|
||||
|
||||
- 🚀 1KB Component average size (min+gzip)
|
||||
- 🚀 80+ High quality components
|
||||
- 🚀 Zero third-party dependencies
|
||||
- 💪 90%+ Unit test coverage
|
||||
- 💪 Written in TypeScript
|
||||
- 📖 Extensive documentation and demos
|
||||
- 📖 Provide Sketch and Axure design resources
|
||||
- 🍭 Support Vue 2 & Vue 3
|
||||
- 🍭 Support Nuxt 2 & Nuxt 3, provide [Vant Module](https://github.com/vant-ui/vant-nuxt) for Nuxt
|
||||
- 🍭 Support Tree Shaking
|
||||
- 🍭 Support Custom Theme
|
||||
- 🍭 Support Accessibility (still improving)
|
||||
- 🍭 Support Dark Mode
|
||||
- 🍭 Support SSR
|
||||
- 🌍 Support i18n, built-in 30+ languages
|
||||
|
||||
## Install
|
||||
|
||||
Using `npm` to install:
|
||||
|
||||
```bash
|
||||
# install latest Vant for Vue 3 project
|
||||
npm i vant
|
||||
|
||||
# install Vant 2 for Vue 2 project
|
||||
npm i vant@latest-v2
|
||||
```
|
||||
|
||||
Using `yarn`, `pnpm`, or `bun`:
|
||||
|
||||
```bash
|
||||
# with yarn
|
||||
yarn add vant
|
||||
|
||||
# with pnpm
|
||||
pnpm add vant
|
||||
|
||||
# with Bun
|
||||
bun add vant
|
||||
```
|
||||
|
||||
## Scaffold
|
||||
|
||||
It is recommended to use [Rsbuild](https://github.com/web-infra-dev/rsbuild) to create a scaffold project.
|
||||
|
||||
Rsbuild is a build tool based on Rspack, developed by the author of Vant, with first-class build speed and development experience, providing first-priority support for Vant.
|
||||
|
||||
You can create a Rsbuild project with the following command:
|
||||
|
||||
```bash
|
||||
npm create rsbuild@latest
|
||||
```
|
||||
|
||||
Please visit the [Rsbuild repository](https://github.com/web-infra-dev/rsbuild) for more information.
|
||||
|
||||
## Quickstart
|
||||
|
||||
```js
|
||||
import { createApp } from 'vue';
|
||||
// 1. Import the components you need
|
||||
import { Button } from 'vant';
|
||||
// 2. Import the components style
|
||||
import 'vant/lib/index.css';
|
||||
|
||||
const app = createApp();
|
||||
|
||||
// 3. Register the components you need
|
||||
app.use(Button);
|
||||
```
|
||||
|
||||
See more in [Quickstart](https://vant-ui.github.io/vant/#/en-US/quickstart).
|
||||
|
||||
## Browser Support
|
||||
|
||||
Vant 2 supports modern browsers and Android >= 4.0、iOS >= 8.0.
|
||||
|
||||
Vant 3/4 supports modern browsers and Chrome >= 51、iOS >= 10.0 (same as Vue 3).
|
||||
|
||||
## Official Ecosystem
|
||||
|
||||
| Project | Description |
|
||||
| --- | --- |
|
||||
| [vant-weapp](https://github.com/vant-ui/vant-weapp) | WeChat MiniProgram UI |
|
||||
| [vant-demo](https://github.com/vant-ui/vant-demo) | Collection of Vant demos |
|
||||
| [vant-cli](https://github.com/vant-ui/vant/tree/main/packages/vant-cli) | Scaffold for UI library |
|
||||
| [vant-icons](https://github.com/vant-ui/vant/tree/main/packages/vant-icons) | Vant icons |
|
||||
| [vant-touch-emulator](https://github.com/vant-ui/vant/tree/main/packages/vant-touch-emulator) | Using vant in desktop browsers |
|
||||
| [vant-nuxt](https://github.com/vant-ui/vant-nuxt) | Vant module for Nuxt |
|
||||
|
||||
## Community Ecosystem
|
||||
|
||||
| Project | Description |
|
||||
| --- | --- |
|
||||
| [3lang3/react-vant](https://github.com/3lang3/react-vant) | React mobile UI Components based on Vant |
|
||||
| [vant-aliapp](https://github.com/ant-move/Vant-Aliapp) | Alipay MiniProgram UI |
|
||||
| [vant-theme](https://github.com/Aisen60/vant-theme) | Online theme preview built on Vant UI |
|
||||
| [@antmjs/vantui](https://github.com/antmjs/vantui) | Mobile UI Components based on Vant, supporting Taro and React |
|
||||
| [Taroify](https://github.com/mallfoundry/taroify) | Taroify is the Taro version of Vant |
|
||||
| [vant-playground](https://github.com/LadyChatterleyLover/vant-playground) | Vant Playground |
|
||||
| [sfc-playground-vant](https://github.com/zhixiaoqiang/sfc-playground-vant) | Vant Playground |
|
||||
| [vue3-h5-template](https://github.com/yulimchen/vue3-h5-template) | Mobile project template based on Vant |
|
||||
| [vue3-vant-mobile](https://github.com/easy-temps/vue3-vant-mobile) | Mobile project template based on Vant |
|
||||
| [vscode-common-intellisense](https://github.com/Simon-He95/vscode-common-intellisense) | A VS Code extension that provides better intellisense to Vant developers |
|
||||
| [nuxt-vant-mobile](https://github.com/easy-temps/nuxt-vant-mobile) | Nuxt _⁴_ project template based on Vant, out of the box |
|
||||
| [mobvue](https://github.com/un-pany/mobvue) | A well-crafted mobile web app template |
|
||||
| [novlan1/press-ui](https://github.com/novlan1/press-ui) | Uni APP mobile UI Components based on Vant |
|
||||
|
||||
## Links
|
||||
|
||||
- [Documentation](https://vant-ui.github.io/vant/)
|
||||
- [Documentation (backup)](https://vant.pro/vant/)
|
||||
- [Changelog](https://vant-ui.github.io/vant/#/en-US/changelog)
|
||||
- [Discussions](https://github.com/vant-ui/vant/discussions)
|
||||
|
||||
## Preview
|
||||
|
||||
You can scan the following QR code to access the demo:
|
||||
|
||||
<img src="https://fastly.jsdelivr.net/npm/@vant/assets/preview-qrcode.png" width="220" height="220" >
|
||||
|
||||
## Core Team
|
||||
|
||||
Core contributors of Vant and Vant Weapp:
|
||||
|
||||
| [](https://github.com/chenjiahan/) | [](https://github.com/cookfront/) | [](https://github.com/w91/) | [](https://github.com/pangxie1991/) | [](https://github.com/rex-zsd/) | [](https://github.com/nemo-shen/) |
|
||||
| :-: | :-: | :-: | :-: | :-: | :-: |
|
||||
| [chenjiahan](https://github.com/chenjiahan/) | [cookfront](https://github.com/cookfront/) | [wangnaiyi](https://github.com/w91/) | [pangxie](https://github.com/pangxie1991/) | [rex-zsd](https://github.com/rex-zsd/) | [nemo-shen](https://github.com/nemo-shen/) |
|
||||
|
||||
| [](https://github.com/Lindysen/) | [](https://github.com/JakeLaoyu/) | [](https://github.com/landluck/) | [](https://github.com/wjw-gavin/) | [](https://github.com/inottn/) | [](https://github.com/zhousg/) |
|
||||
| :-: | :-: | :-: | :-: | :-: | :-: |
|
||||
| [Lindysen](https://github.com/Lindysen/) | [JakeLaoyu](https://github.com/JakeLaoyu/) | [landluck](https://github.com/landluck/) | [wjw-gavin](https://github.com/wjw-gavin/) | [inottn](https://github.com/inottn/) | [zhousg](https://github.com/zhousg/) |
|
||||
|
||||
## All Contributors
|
||||
|
||||
Thanks to the following friends for their contributions to Vant:
|
||||
|
||||
<a href="https://github.com/vant-ui/vant/graphs/contributors">
|
||||
<img src="https://opencollective.com/vant/contributors.svg?width=890&button=false" alt="contributors">
|
||||
</a>
|
||||
|
||||
## Contribution Guide
|
||||
|
||||
Please make sure to read the [Contributing Guide](./.github/CONTRIBUTING.md) before making a pull request.
|
||||
|
||||
## Start On Web IDE
|
||||
|
||||
[https://github.dev/youzan/vant](https://github.dev/youzan/vant)
|
||||
|
||||
## LICENSE
|
||||
|
||||
Vant is [MIT](https://github.com/youzan/vant/blob/main/LICENSE) licensed.
|
||||
43
node_modules/vant/es/action-bar-button/ActionBarButton.d.ts
generated
vendored
Normal file
43
node_modules/vant/es/action-bar-button/ActionBarButton.d.ts
generated
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
import { type PropType, type ExtractPropTypes } from 'vue';
|
||||
import { ButtonType } from '../button';
|
||||
export declare const actionBarButtonProps: {
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
type: PropType<ButtonType>;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
loading: BooleanConstructor;
|
||||
disabled: BooleanConstructor;
|
||||
};
|
||||
export type ActionBarButtonProps = ExtractPropTypes<typeof actionBarButtonProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
type: PropType<ButtonType>;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
loading: BooleanConstructor;
|
||||
disabled: BooleanConstructor;
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
type: PropType<ButtonType>;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
loading: BooleanConstructor;
|
||||
disabled: BooleanConstructor;
|
||||
}>> & Readonly<{}>, {
|
||||
replace: boolean;
|
||||
disabled: boolean;
|
||||
loading: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
73
node_modules/vant/es/action-bar-button/ActionBarButton.mjs
generated
vendored
Normal file
73
node_modules/vant/es/action-bar-button/ActionBarButton.mjs
generated
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
import { computed, defineComponent, createVNode as _createVNode } from "vue";
|
||||
import { extend, createNamespace } from "../utils/index.mjs";
|
||||
import { ACTION_BAR_KEY } from "../action-bar/ActionBar.mjs";
|
||||
import { useParent } from "@vant/use";
|
||||
import { useExpose } from "../composables/use-expose.mjs";
|
||||
import { useRoute, routeProps } from "../composables/use-route.mjs";
|
||||
import { Button } from "../button/index.mjs";
|
||||
const [name, bem] = createNamespace("action-bar-button");
|
||||
const actionBarButtonProps = extend({}, routeProps, {
|
||||
type: String,
|
||||
text: String,
|
||||
icon: String,
|
||||
color: String,
|
||||
loading: Boolean,
|
||||
disabled: Boolean
|
||||
});
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: actionBarButtonProps,
|
||||
setup(props, {
|
||||
slots
|
||||
}) {
|
||||
const route = useRoute();
|
||||
const {
|
||||
parent,
|
||||
index
|
||||
} = useParent(ACTION_BAR_KEY);
|
||||
const isFirst = computed(() => {
|
||||
if (parent) {
|
||||
const prev = parent.children[index.value - 1];
|
||||
return !(prev && "isButton" in prev);
|
||||
}
|
||||
});
|
||||
const isLast = computed(() => {
|
||||
if (parent) {
|
||||
const next = parent.children[index.value + 1];
|
||||
return !(next && "isButton" in next);
|
||||
}
|
||||
});
|
||||
useExpose({
|
||||
isButton: true
|
||||
});
|
||||
return () => {
|
||||
const {
|
||||
type,
|
||||
icon,
|
||||
text,
|
||||
color,
|
||||
loading,
|
||||
disabled
|
||||
} = props;
|
||||
return _createVNode(Button, {
|
||||
"class": bem([type, {
|
||||
last: isLast.value,
|
||||
first: isFirst.value
|
||||
}]),
|
||||
"size": "large",
|
||||
"type": type,
|
||||
"icon": icon,
|
||||
"color": color,
|
||||
"loading": loading,
|
||||
"disabled": disabled,
|
||||
"onClick": route
|
||||
}, {
|
||||
default: () => [slots.default ? slots.default() : text]
|
||||
});
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
actionBarButtonProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/action-bar-button/index.css
generated
vendored
Normal file
1
node_modules/vant/es/action-bar-button/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-action-bar-button-height: 40px;--van-action-bar-button-warning-color: var(--van-gradient-orange);--van-action-bar-button-danger-color: var(--van-gradient-red)}.van-action-bar-button{flex:1;height:var(--van-action-bar-button-height);font-weight:var(--van-font-bold);font-size:var(--van-font-size-md);border:none;border-radius:0}.van-action-bar-button--first{margin-left:5px;border-top-left-radius:var(--van-radius-max);border-bottom-left-radius:var(--van-radius-max)}.van-action-bar-button--last{margin-right:5px;border-top-right-radius:var(--van-radius-max);border-bottom-right-radius:var(--van-radius-max)}.van-action-bar-button--warning{background:var(--van-action-bar-button-warning-color)}.van-action-bar-button--danger{background:var(--van-action-bar-button-danger-color)}@media (max-width: 321px){.van-action-bar-button{font-size:13px}}
|
||||
36
node_modules/vant/es/action-bar-button/index.d.ts
generated
vendored
Normal file
36
node_modules/vant/es/action-bar-button/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
export declare const ActionBarButton: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
to: import("vue").PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
type: import("vue").PropType<import("..").ButtonType>;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
loading: BooleanConstructor;
|
||||
disabled: BooleanConstructor;
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
to: import("vue").PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
type: import("vue").PropType<import("..").ButtonType>;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
loading: BooleanConstructor;
|
||||
disabled: BooleanConstructor;
|
||||
}>> & Readonly<{}>, {
|
||||
replace: boolean;
|
||||
disabled: boolean;
|
||||
loading: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default ActionBarButton;
|
||||
export { actionBarButtonProps } from './ActionBarButton';
|
||||
export type { ActionBarButtonProps } from './ActionBarButton';
|
||||
export type { ActionBarButtonThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanActionBarButton: typeof ActionBarButton;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/action-bar-button/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/action-bar-button/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _ActionBarButton from "./ActionBarButton.mjs";
|
||||
const ActionBarButton = withInstall(_ActionBarButton);
|
||||
var stdin_default = ActionBarButton;
|
||||
import { actionBarButtonProps } from "./ActionBarButton.mjs";
|
||||
export {
|
||||
ActionBarButton,
|
||||
actionBarButtonProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/action-bar-button/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/action-bar-button/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
7
node_modules/vant/es/action-bar-button/style/index.mjs
generated
vendored
Normal file
7
node_modules/vant/es/action-bar-button/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
import "../../style/base.css";
|
||||
import "../../action-bar/index.css";
|
||||
import "../../badge/index.css";
|
||||
import "../../icon/index.css";
|
||||
import "../../loading/index.css";
|
||||
import "../../button/index.css";
|
||||
import "../index.css";
|
||||
5
node_modules/vant/es/action-bar-button/types.d.ts
generated
vendored
Normal file
5
node_modules/vant/es/action-bar-button/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
export type ActionBarButtonThemeVars = {
|
||||
actionBarButtonHeight?: string;
|
||||
actionBarButtonWarningColor?: string;
|
||||
actionBarButtonDangerColor?: string;
|
||||
};
|
||||
0
node_modules/vant/es/action-bar-button/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/action-bar-button/types.mjs
generated
vendored
Normal file
48
node_modules/vant/es/action-bar-icon/ActionBarIcon.d.ts
generated
vendored
Normal file
48
node_modules/vant/es/action-bar-icon/ActionBarIcon.d.ts
generated
vendored
Normal file
@@ -0,0 +1,48 @@
|
||||
import { type PropType, type ExtractPropTypes } from 'vue';
|
||||
import { type BadgeProps } from '../badge';
|
||||
export declare const actionBarIconProps: {
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
dot: BooleanConstructor;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
badge: (NumberConstructor | StringConstructor)[];
|
||||
iconClass: PropType<unknown>;
|
||||
badgeProps: PropType<Partial<BadgeProps>>;
|
||||
iconPrefix: StringConstructor;
|
||||
};
|
||||
export type ActionBarIconProps = ExtractPropTypes<typeof actionBarIconProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
dot: BooleanConstructor;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
badge: (NumberConstructor | StringConstructor)[];
|
||||
iconClass: PropType<unknown>;
|
||||
badgeProps: PropType<Partial<BadgeProps>>;
|
||||
iconPrefix: StringConstructor;
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
dot: BooleanConstructor;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
badge: (NumberConstructor | StringConstructor)[];
|
||||
iconClass: PropType<unknown>;
|
||||
badgeProps: PropType<Partial<BadgeProps>>;
|
||||
iconPrefix: StringConstructor;
|
||||
}>> & Readonly<{}>, {
|
||||
replace: boolean;
|
||||
dot: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
68
node_modules/vant/es/action-bar-icon/ActionBarIcon.mjs
generated
vendored
Normal file
68
node_modules/vant/es/action-bar-icon/ActionBarIcon.mjs
generated
vendored
Normal file
@@ -0,0 +1,68 @@
|
||||
import { defineComponent, mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
|
||||
import { extend, createNamespace, unknownProp, numericProp } from "../utils/index.mjs";
|
||||
import { ACTION_BAR_KEY } from "../action-bar/ActionBar.mjs";
|
||||
import { useParent } from "@vant/use";
|
||||
import { useRoute, routeProps } from "../composables/use-route.mjs";
|
||||
import { Icon } from "../icon/index.mjs";
|
||||
import { Badge } from "../badge/index.mjs";
|
||||
const [name, bem] = createNamespace("action-bar-icon");
|
||||
const actionBarIconProps = extend({}, routeProps, {
|
||||
dot: Boolean,
|
||||
text: String,
|
||||
icon: String,
|
||||
color: String,
|
||||
badge: numericProp,
|
||||
iconClass: unknownProp,
|
||||
badgeProps: Object,
|
||||
iconPrefix: String
|
||||
});
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: actionBarIconProps,
|
||||
setup(props, {
|
||||
slots
|
||||
}) {
|
||||
const route = useRoute();
|
||||
useParent(ACTION_BAR_KEY);
|
||||
const renderIcon = () => {
|
||||
const {
|
||||
dot,
|
||||
badge,
|
||||
icon,
|
||||
color,
|
||||
iconClass,
|
||||
badgeProps,
|
||||
iconPrefix
|
||||
} = props;
|
||||
if (slots.icon) {
|
||||
return _createVNode(Badge, _mergeProps({
|
||||
"dot": dot,
|
||||
"class": bem("icon"),
|
||||
"content": badge
|
||||
}, badgeProps), {
|
||||
default: slots.icon
|
||||
});
|
||||
}
|
||||
return _createVNode(Icon, {
|
||||
"tag": "div",
|
||||
"dot": dot,
|
||||
"name": icon,
|
||||
"badge": badge,
|
||||
"color": color,
|
||||
"class": [bem("icon"), iconClass],
|
||||
"badgeProps": badgeProps,
|
||||
"classPrefix": iconPrefix
|
||||
}, null);
|
||||
};
|
||||
return () => _createVNode("div", {
|
||||
"role": "button",
|
||||
"class": bem(),
|
||||
"tabindex": 0,
|
||||
"onClick": route
|
||||
}, [renderIcon(), slots.default ? slots.default() : props.text]);
|
||||
}
|
||||
});
|
||||
export {
|
||||
actionBarIconProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/action-bar-icon/index.css
generated
vendored
Normal file
1
node_modules/vant/es/action-bar-icon/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-action-bar-icon-width: 48px;--van-action-bar-icon-height: 100%;--van-action-bar-icon-color: var(--van-text-color);--van-action-bar-icon-size: 18px;--van-action-bar-icon-font-size: var(--van-font-size-xs);--van-action-bar-icon-active-color: var(--van-active-color);--van-action-bar-icon-text-color: var(--van-text-color);--van-action-bar-icon-background: var(--van-background-2)}.van-action-bar-icon{display:flex;flex-direction:column;justify-content:center;min-width:var(--van-action-bar-icon-width);height:var(--van-action-bar-icon-height);color:var(--van-action-bar-icon-text-color);font-size:var(--van-action-bar-icon-font-size);line-height:1;text-align:center;background:var(--van-action-bar-icon-background);cursor:pointer}.van-action-bar-icon:active{background-color:var(--van-action-bar-icon-active-color)}.van-action-bar-icon__icon{margin:0 auto var(--van-padding-base);color:var(--van-action-bar-icon-color);font-size:var(--van-action-bar-icon-size)}
|
||||
39
node_modules/vant/es/action-bar-icon/index.d.ts
generated
vendored
Normal file
39
node_modules/vant/es/action-bar-icon/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
export declare const ActionBarIcon: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
to: import("vue").PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
dot: BooleanConstructor;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
badge: (NumberConstructor | StringConstructor)[];
|
||||
iconClass: import("vue").PropType<unknown>;
|
||||
badgeProps: import("vue").PropType<Partial<import("..").BadgeProps>>;
|
||||
iconPrefix: StringConstructor;
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
to: import("vue").PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
dot: BooleanConstructor;
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
color: StringConstructor;
|
||||
badge: (NumberConstructor | StringConstructor)[];
|
||||
iconClass: import("vue").PropType<unknown>;
|
||||
badgeProps: import("vue").PropType<Partial<import("..").BadgeProps>>;
|
||||
iconPrefix: StringConstructor;
|
||||
}>> & Readonly<{}>, {
|
||||
replace: boolean;
|
||||
dot: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default ActionBarIcon;
|
||||
export { actionBarIconProps } from './ActionBarIcon';
|
||||
export type { ActionBarIconProps } from './ActionBarIcon';
|
||||
export type { ActionBarIconThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanActionBarIcon: typeof ActionBarIcon;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/action-bar-icon/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/action-bar-icon/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _ActionBarIcon from "./ActionBarIcon.mjs";
|
||||
const ActionBarIcon = withInstall(_ActionBarIcon);
|
||||
var stdin_default = ActionBarIcon;
|
||||
import { actionBarIconProps } from "./ActionBarIcon.mjs";
|
||||
export {
|
||||
ActionBarIcon,
|
||||
actionBarIconProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/action-bar-icon/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/action-bar-icon/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
5
node_modules/vant/es/action-bar-icon/style/index.mjs
generated
vendored
Normal file
5
node_modules/vant/es/action-bar-icon/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
import "../../style/base.css";
|
||||
import "../../action-bar/index.css";
|
||||
import "../../badge/index.css";
|
||||
import "../../icon/index.css";
|
||||
import "../index.css";
|
||||
10
node_modules/vant/es/action-bar-icon/types.d.ts
generated
vendored
Normal file
10
node_modules/vant/es/action-bar-icon/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
export type ActionBarIconThemeVars = {
|
||||
actionBarIconWidth?: string;
|
||||
actionBarIconHeight?: string;
|
||||
actionBarIconColor?: string;
|
||||
actionBarIconSize?: string;
|
||||
actionBarIconFontSize?: string;
|
||||
actionBarIconActiveColor?: string;
|
||||
actionBarIconTextColor?: string;
|
||||
actionBarIconBackground?: string;
|
||||
};
|
||||
0
node_modules/vant/es/action-bar-icon/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/action-bar-icon/types.mjs
generated
vendored
Normal file
27
node_modules/vant/es/action-bar/ActionBar.d.ts
generated
vendored
Normal file
27
node_modules/vant/es/action-bar/ActionBar.d.ts
generated
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
import { type ExtractPropTypes } from 'vue';
|
||||
export declare const ACTION_BAR_KEY: unique symbol;
|
||||
export declare const actionBarProps: {
|
||||
placeholder: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
};
|
||||
export type ActionBarProps = ExtractPropTypes<typeof actionBarProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
placeholder: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
placeholder: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>> & Readonly<{}>, {
|
||||
placeholder: boolean;
|
||||
safeAreaInsetBottom: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
44
node_modules/vant/es/action-bar/ActionBar.mjs
generated
vendored
Normal file
44
node_modules/vant/es/action-bar/ActionBar.mjs
generated
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
import { defineComponent, ref, createVNode as _createVNode } from "vue";
|
||||
import { truthProp, createNamespace } from "../utils/index.mjs";
|
||||
import { useChildren } from "@vant/use";
|
||||
import { usePlaceholder } from "../composables/use-placeholder.mjs";
|
||||
const [name, bem] = createNamespace("action-bar");
|
||||
const ACTION_BAR_KEY = Symbol(name);
|
||||
const actionBarProps = {
|
||||
placeholder: Boolean,
|
||||
safeAreaInsetBottom: truthProp
|
||||
};
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: actionBarProps,
|
||||
setup(props, {
|
||||
slots
|
||||
}) {
|
||||
const root = ref();
|
||||
const renderPlaceholder = usePlaceholder(root, bem);
|
||||
const {
|
||||
linkChildren
|
||||
} = useChildren(ACTION_BAR_KEY);
|
||||
linkChildren();
|
||||
const renderActionBar = () => {
|
||||
var _a;
|
||||
return _createVNode("div", {
|
||||
"ref": root,
|
||||
"class": [bem(), {
|
||||
"van-safe-area-bottom": props.safeAreaInsetBottom
|
||||
}]
|
||||
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
|
||||
};
|
||||
return () => {
|
||||
if (props.placeholder) {
|
||||
return renderPlaceholder(renderActionBar);
|
||||
}
|
||||
return renderActionBar();
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
ACTION_BAR_KEY,
|
||||
actionBarProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/action-bar/index.css
generated
vendored
Normal file
1
node_modules/vant/es/action-bar/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-action-bar-background: var(--van-background-2);--van-action-bar-height: 50px}.van-action-bar{position:fixed;right:0;bottom:0;left:0;display:flex;align-items:center;box-sizing:content-box;height:var(--van-action-bar-height);background:var(--van-action-bar-background)}
|
||||
25
node_modules/vant/es/action-bar/index.d.ts
generated
vendored
Normal file
25
node_modules/vant/es/action-bar/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
export declare const ActionBar: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
placeholder: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
placeholder: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>> & Readonly<{}>, {
|
||||
placeholder: boolean;
|
||||
safeAreaInsetBottom: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default ActionBar;
|
||||
export { actionBarProps } from './ActionBar';
|
||||
export type { ActionBarProps } from './ActionBar';
|
||||
export type { ActionBarThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanActionBar: typeof ActionBar;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/action-bar/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/action-bar/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _ActionBar from "./ActionBar.mjs";
|
||||
const ActionBar = withInstall(_ActionBar);
|
||||
var stdin_default = ActionBar;
|
||||
import { actionBarProps } from "./ActionBar.mjs";
|
||||
export {
|
||||
ActionBar,
|
||||
actionBarProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/action-bar/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/action-bar/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
2
node_modules/vant/es/action-bar/style/index.mjs
generated
vendored
Normal file
2
node_modules/vant/es/action-bar/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
import "../../style/base.css";
|
||||
import "../index.css";
|
||||
4
node_modules/vant/es/action-bar/types.d.ts
generated
vendored
Normal file
4
node_modules/vant/es/action-bar/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
export type ActionBarThemeVars = {
|
||||
actionBarBackground?: string;
|
||||
actionBarHeight?: string;
|
||||
};
|
||||
0
node_modules/vant/es/action-bar/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/action-bar/types.mjs
generated
vendored
Normal file
198
node_modules/vant/es/action-sheet/ActionSheet.d.ts
generated
vendored
Normal file
198
node_modules/vant/es/action-sheet/ActionSheet.d.ts
generated
vendored
Normal file
@@ -0,0 +1,198 @@
|
||||
import { type ExtractPropTypes } from 'vue';
|
||||
export type ActionSheetAction = {
|
||||
icon?: string;
|
||||
name?: string;
|
||||
color?: string;
|
||||
subname?: string;
|
||||
loading?: boolean;
|
||||
disabled?: boolean;
|
||||
callback?: (action: ActionSheetAction) => void;
|
||||
className?: unknown;
|
||||
};
|
||||
export declare const actionSheetProps: {
|
||||
show: BooleanConstructor;
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
overlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
duration: (NumberConstructor | StringConstructor)[];
|
||||
teleport: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
lockScroll: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
lazyRender: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
beforeClose: import("vue").PropType<import("../utils").Interceptor>;
|
||||
overlayProps: import("vue").PropType<Partial<import("..").OverlayProps>>;
|
||||
overlayStyle: import("vue").PropType<import("vue").CSSProperties>;
|
||||
overlayClass: import("vue").PropType<unknown>;
|
||||
transitionAppear: BooleanConstructor;
|
||||
closeOnClickOverlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
round: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
actions: {
|
||||
type: import("vue").PropType<ActionSheetAction[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
closeIcon: {
|
||||
type: import("vue").PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
closeable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
cancelText: StringConstructor;
|
||||
description: StringConstructor;
|
||||
closeOnPopstate: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
closeOnClickAction: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
};
|
||||
export type ActionSheetProps = ExtractPropTypes<typeof actionSheetProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
show: BooleanConstructor;
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
overlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
duration: (NumberConstructor | StringConstructor)[];
|
||||
teleport: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
lockScroll: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
lazyRender: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
beforeClose: import("vue").PropType<import("../utils").Interceptor>;
|
||||
overlayProps: import("vue").PropType<Partial<import("..").OverlayProps>>;
|
||||
overlayStyle: import("vue").PropType<import("vue").CSSProperties>;
|
||||
overlayClass: import("vue").PropType<unknown>;
|
||||
transitionAppear: BooleanConstructor;
|
||||
closeOnClickOverlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
round: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
actions: {
|
||||
type: import("vue").PropType<ActionSheetAction[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
closeIcon: {
|
||||
type: import("vue").PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
closeable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
cancelText: StringConstructor;
|
||||
description: StringConstructor;
|
||||
closeOnPopstate: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
closeOnClickAction: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "cancel" | "update:show")[], "select" | "cancel" | "update:show", import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
show: BooleanConstructor;
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
overlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
duration: (NumberConstructor | StringConstructor)[];
|
||||
teleport: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
lockScroll: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
lazyRender: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
beforeClose: import("vue").PropType<import("../utils").Interceptor>;
|
||||
overlayProps: import("vue").PropType<Partial<import("..").OverlayProps>>;
|
||||
overlayStyle: import("vue").PropType<import("vue").CSSProperties>;
|
||||
overlayClass: import("vue").PropType<unknown>;
|
||||
transitionAppear: BooleanConstructor;
|
||||
closeOnClickOverlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
round: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
actions: {
|
||||
type: import("vue").PropType<ActionSheetAction[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
closeIcon: {
|
||||
type: import("vue").PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
closeable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
cancelText: StringConstructor;
|
||||
description: StringConstructor;
|
||||
closeOnPopstate: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
closeOnClickAction: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onSelect?: ((...args: any[]) => any) | undefined;
|
||||
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
||||
onCancel?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
round: boolean;
|
||||
overlay: boolean;
|
||||
show: boolean;
|
||||
safeAreaInsetBottom: boolean;
|
||||
lockScroll: boolean;
|
||||
lazyRender: boolean;
|
||||
transitionAppear: boolean;
|
||||
closeOnClickOverlay: boolean;
|
||||
closeIcon: string;
|
||||
closeable: boolean;
|
||||
closeOnPopstate: boolean;
|
||||
actions: ActionSheetAction[];
|
||||
closeOnClickAction: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
139
node_modules/vant/es/action-sheet/ActionSheet.mjs
generated
vendored
Normal file
139
node_modules/vant/es/action-sheet/ActionSheet.mjs
generated
vendored
Normal file
@@ -0,0 +1,139 @@
|
||||
import { nextTick, defineComponent, createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
|
||||
import { pick, extend, truthProp, makeArrayProp, makeStringProp, createNamespace, HAPTICS_FEEDBACK } from "../utils/index.mjs";
|
||||
import { Icon } from "../icon/index.mjs";
|
||||
import { Popup } from "../popup/index.mjs";
|
||||
import { Loading } from "../loading/index.mjs";
|
||||
import { popupSharedProps, popupSharedPropKeys } from "../popup/shared.mjs";
|
||||
const [name, bem] = createNamespace("action-sheet");
|
||||
const actionSheetProps = extend({}, popupSharedProps, {
|
||||
title: String,
|
||||
round: truthProp,
|
||||
actions: makeArrayProp(),
|
||||
closeIcon: makeStringProp("cross"),
|
||||
closeable: truthProp,
|
||||
cancelText: String,
|
||||
description: String,
|
||||
closeOnPopstate: truthProp,
|
||||
closeOnClickAction: Boolean,
|
||||
safeAreaInsetBottom: truthProp
|
||||
});
|
||||
const popupInheritKeys = [...popupSharedPropKeys, "round", "closeOnPopstate", "safeAreaInsetBottom"];
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: actionSheetProps,
|
||||
emits: ["select", "cancel", "update:show"],
|
||||
setup(props, {
|
||||
slots,
|
||||
emit
|
||||
}) {
|
||||
const updateShow = (show) => emit("update:show", show);
|
||||
const onCancel = () => {
|
||||
updateShow(false);
|
||||
emit("cancel");
|
||||
};
|
||||
const renderHeader = () => {
|
||||
if (props.title) {
|
||||
return _createVNode("div", {
|
||||
"class": bem("header")
|
||||
}, [props.title, props.closeable && _createVNode(Icon, {
|
||||
"name": props.closeIcon,
|
||||
"class": [bem("close"), HAPTICS_FEEDBACK],
|
||||
"onClick": onCancel
|
||||
}, null)]);
|
||||
}
|
||||
};
|
||||
const renderCancel = () => {
|
||||
if (slots.cancel || props.cancelText) {
|
||||
return [_createVNode("div", {
|
||||
"class": bem("gap")
|
||||
}, null), _createVNode("button", {
|
||||
"type": "button",
|
||||
"class": bem("cancel"),
|
||||
"onClick": onCancel
|
||||
}, [slots.cancel ? slots.cancel() : props.cancelText])];
|
||||
}
|
||||
};
|
||||
const renderIcon = (action) => {
|
||||
if (action.icon) {
|
||||
return _createVNode(Icon, {
|
||||
"class": bem("item-icon"),
|
||||
"name": action.icon
|
||||
}, null);
|
||||
}
|
||||
};
|
||||
const renderActionContent = (action, index) => {
|
||||
if (action.loading) {
|
||||
return _createVNode(Loading, {
|
||||
"class": bem("loading-icon")
|
||||
}, null);
|
||||
}
|
||||
if (slots.action) {
|
||||
return slots.action({
|
||||
action,
|
||||
index
|
||||
});
|
||||
}
|
||||
return [_createVNode("span", {
|
||||
"class": bem("name")
|
||||
}, [action.name]), action.subname && _createVNode("div", {
|
||||
"class": bem("subname")
|
||||
}, [action.subname])];
|
||||
};
|
||||
const renderAction = (action, index) => {
|
||||
const {
|
||||
color,
|
||||
loading,
|
||||
callback,
|
||||
disabled,
|
||||
className
|
||||
} = action;
|
||||
const onClick = () => {
|
||||
if (disabled || loading) {
|
||||
return;
|
||||
}
|
||||
if (callback) {
|
||||
callback(action);
|
||||
}
|
||||
if (props.closeOnClickAction) {
|
||||
updateShow(false);
|
||||
}
|
||||
nextTick(() => emit("select", action, index));
|
||||
};
|
||||
return _createVNode("button", {
|
||||
"type": "button",
|
||||
"style": {
|
||||
color
|
||||
},
|
||||
"class": [bem("item", {
|
||||
loading,
|
||||
disabled
|
||||
}), className],
|
||||
"onClick": onClick
|
||||
}, [renderIcon(action), renderActionContent(action, index)]);
|
||||
};
|
||||
const renderDescription = () => {
|
||||
if (props.description || slots.description) {
|
||||
const content = slots.description ? slots.description() : props.description;
|
||||
return _createVNode("div", {
|
||||
"class": bem("description")
|
||||
}, [content]);
|
||||
}
|
||||
};
|
||||
return () => _createVNode(Popup, _mergeProps({
|
||||
"class": bem(),
|
||||
"position": "bottom",
|
||||
"onUpdate:show": updateShow
|
||||
}, pick(props, popupInheritKeys)), {
|
||||
default: () => {
|
||||
var _a;
|
||||
return [renderHeader(), renderDescription(), _createVNode("div", {
|
||||
"class": bem("content")
|
||||
}, [props.actions.map(renderAction), (_a = slots.default) == null ? void 0 : _a.call(slots)]), renderCancel()];
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
export {
|
||||
actionSheetProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/action-sheet/index.css
generated
vendored
Normal file
1
node_modules/vant/es/action-sheet/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-action-sheet-max-height: 80%;--van-action-sheet-header-height: 48px;--van-action-sheet-header-font-size: var(--van-font-size-lg);--van-action-sheet-description-color: var(--van-text-color-2);--van-action-sheet-description-font-size: var(--van-font-size-md);--van-action-sheet-description-line-height: var(--van-line-height-md);--van-action-sheet-item-background: var(--van-background-2);--van-action-sheet-item-font-size: var(--van-font-size-lg);--van-action-sheet-item-line-height: var(--van-line-height-lg);--van-action-sheet-item-text-color: var(--van-text-color);--van-action-sheet-item-disabled-text-color: var(--van-text-color-3);--van-action-sheet-item-icon-size: 18px;--van-action-sheet-item-icon-margin-right: var(--van-padding-xs);--van-action-sheet-subname-color: var(--van-text-color-2);--van-action-sheet-subname-font-size: var(--van-font-size-sm);--van-action-sheet-subname-line-height: var(--van-line-height-sm);--van-action-sheet-close-icon-size: 22px;--van-action-sheet-close-icon-color: var(--van-gray-5);--van-action-sheet-close-icon-padding: 0 var(--van-padding-md);--van-action-sheet-cancel-text-color: var(--van-gray-7);--van-action-sheet-cancel-padding-top: var(--van-padding-xs);--van-action-sheet-cancel-padding-color: var(--van-background);--van-action-sheet-loading-icon-size: 22px}.van-action-sheet{display:flex;flex-direction:column;max-height:var(--van-action-sheet-max-height);overflow:hidden;color:var(--van-action-sheet-item-text-color)}.van-action-sheet__content{flex:1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.van-action-sheet__item,.van-action-sheet__cancel{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;width:100%;padding:14px var(--van-padding-md);font-size:var(--van-action-sheet-item-font-size);background:var(--van-action-sheet-item-background);border:none;cursor:pointer}.van-action-sheet__item:active,.van-action-sheet__cancel:active{background-color:var(--van-active-color)}.van-action-sheet__item{line-height:var(--van-action-sheet-item-line-height)}.van-action-sheet__item--loading,.van-action-sheet__item--disabled{color:var(--van-action-sheet-item-disabled-text-color)}.van-action-sheet__item--loading:active,.van-action-sheet__item--disabled:active{background-color:var(--van-action-sheet-item-background)}.van-action-sheet__item--disabled{cursor:not-allowed}.van-action-sheet__item--loading{cursor:default}.van-action-sheet__item-icon{font-size:var(--van-action-sheet-item-icon-size);margin-right:var(--van-action-sheet-item-icon-margin-right)}.van-action-sheet__cancel{flex-shrink:0;box-sizing:border-box;color:var(--van-action-sheet-cancel-text-color)}.van-action-sheet__subname{width:100%;margin-top:var(--van-padding-xs);color:var(--van-action-sheet-subname-color);font-size:var(--van-action-sheet-subname-font-size);line-height:var(--van-action-sheet-subname-line-height);overflow-wrap:break-word}.van-action-sheet__gap{display:block;height:var(--van-action-sheet-cancel-padding-top);background:var(--van-action-sheet-cancel-padding-color)}.van-action-sheet__header{flex-shrink:0;font-weight:var(--van-font-bold);font-size:var(--van-action-sheet-header-font-size);line-height:var(--van-action-sheet-header-height);text-align:center}.van-action-sheet__description{position:relative;flex-shrink:0;padding:20px var(--van-padding-md);color:var(--van-action-sheet-description-color);font-size:var(--van-action-sheet-description-font-size);line-height:var(--van-action-sheet-description-line-height);text-align:center}.van-action-sheet__description:after{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;right:var(--van-padding-md);bottom:0;left:var(--van-padding-md);border-bottom:1px solid var(--van-border-color);transform:scaleY(.5)}.van-action-sheet__loading-icon .van-loading__spinner{width:var(--van-action-sheet-loading-icon-size);height:var(--van-action-sheet-loading-icon-size)}.van-action-sheet__close{position:absolute;top:0;right:0;z-index:1;padding:var(--van-action-sheet-close-icon-padding);color:var(--van-action-sheet-close-icon-color);font-size:var(--van-action-sheet-close-icon-size);line-height:inherit}
|
||||
138
node_modules/vant/es/action-sheet/index.d.ts
generated
vendored
Normal file
138
node_modules/vant/es/action-sheet/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,138 @@
|
||||
export declare const ActionSheet: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
show: BooleanConstructor;
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
overlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
duration: (NumberConstructor | StringConstructor)[];
|
||||
teleport: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
lockScroll: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
lazyRender: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
beforeClose: import("vue").PropType<import("../utils").Interceptor>;
|
||||
overlayProps: import("vue").PropType<Partial<import("..").OverlayProps>>;
|
||||
overlayStyle: import("vue").PropType<import("vue").CSSProperties>;
|
||||
overlayClass: import("vue").PropType<unknown>;
|
||||
transitionAppear: BooleanConstructor;
|
||||
closeOnClickOverlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
round: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
actions: {
|
||||
type: import("vue").PropType<import("./ActionSheet").ActionSheetAction[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
closeIcon: {
|
||||
type: import("vue").PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
closeable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
cancelText: StringConstructor;
|
||||
description: StringConstructor;
|
||||
closeOnPopstate: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
closeOnClickAction: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "cancel" | "update:show")[], "select" | "cancel" | "update:show", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
show: BooleanConstructor;
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
overlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
duration: (NumberConstructor | StringConstructor)[];
|
||||
teleport: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
lockScroll: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
lazyRender: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
beforeClose: import("vue").PropType<import("../utils").Interceptor>;
|
||||
overlayProps: import("vue").PropType<Partial<import("..").OverlayProps>>;
|
||||
overlayStyle: import("vue").PropType<import("vue").CSSProperties>;
|
||||
overlayClass: import("vue").PropType<unknown>;
|
||||
transitionAppear: BooleanConstructor;
|
||||
closeOnClickOverlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
round: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
actions: {
|
||||
type: import("vue").PropType<import("./ActionSheet").ActionSheetAction[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
closeIcon: {
|
||||
type: import("vue").PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
closeable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
cancelText: StringConstructor;
|
||||
description: StringConstructor;
|
||||
closeOnPopstate: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
closeOnClickAction: BooleanConstructor;
|
||||
safeAreaInsetBottom: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onSelect?: ((...args: any[]) => any) | undefined;
|
||||
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
||||
onCancel?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
round: boolean;
|
||||
overlay: boolean;
|
||||
show: boolean;
|
||||
safeAreaInsetBottom: boolean;
|
||||
lockScroll: boolean;
|
||||
lazyRender: boolean;
|
||||
transitionAppear: boolean;
|
||||
closeOnClickOverlay: boolean;
|
||||
closeIcon: string;
|
||||
closeable: boolean;
|
||||
closeOnPopstate: boolean;
|
||||
actions: import("./ActionSheet").ActionSheetAction[];
|
||||
closeOnClickAction: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default ActionSheet;
|
||||
export { actionSheetProps } from './ActionSheet';
|
||||
export type { ActionSheetProps, ActionSheetAction } from './ActionSheet';
|
||||
export type { ActionSheetThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanActionSheet: typeof ActionSheet;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/action-sheet/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/action-sheet/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _ActionSheet from "./ActionSheet.mjs";
|
||||
const ActionSheet = withInstall(_ActionSheet);
|
||||
var stdin_default = ActionSheet;
|
||||
import { actionSheetProps } from "./ActionSheet.mjs";
|
||||
export {
|
||||
ActionSheet,
|
||||
actionSheetProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/action-sheet/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/action-sheet/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
7
node_modules/vant/es/action-sheet/style/index.mjs
generated
vendored
Normal file
7
node_modules/vant/es/action-sheet/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
import "../../style/base.css";
|
||||
import "../../badge/index.css";
|
||||
import "../../icon/index.css";
|
||||
import "../../loading/index.css";
|
||||
import "../../overlay/index.css";
|
||||
import "../../popup/index.css";
|
||||
import "../index.css";
|
||||
23
node_modules/vant/es/action-sheet/types.d.ts
generated
vendored
Normal file
23
node_modules/vant/es/action-sheet/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
export type ActionSheetThemeVars = {
|
||||
actionSheetMaxHeight?: string;
|
||||
actionSheetHeaderHeight?: string;
|
||||
actionSheetHeaderFontSize?: string;
|
||||
actionSheetDescriptionColor?: string;
|
||||
actionSheetDescriptionFontSize?: string;
|
||||
actionSheetDescriptionLineHeight?: number | string;
|
||||
actionSheetItemBackground?: string;
|
||||
actionSheetItemFontSize?: string;
|
||||
actionSheetItemLineHeight?: number | string;
|
||||
actionSheetItemTextColor?: string;
|
||||
actionSheetItemDisabledTextColor?: string;
|
||||
actionSheetSubnameColor?: string;
|
||||
actionSheetSubnameFontSize?: string;
|
||||
actionSheetSubnameLineHeight?: number | string;
|
||||
actionSheetCloseIconSize?: string;
|
||||
actionSheetCloseIconColor?: string;
|
||||
actionSheetCloseIconPadding?: string;
|
||||
actionSheetCancelTextColor?: string;
|
||||
actionSheetCancelPaddingTop?: string;
|
||||
actionSheetCancelPaddingColor?: string;
|
||||
actionSheetLoadingIconSize?: string;
|
||||
};
|
||||
0
node_modules/vant/es/action-sheet/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/action-sheet/types.mjs
generated
vendored
Normal file
158
node_modules/vant/es/address-edit/AddressEdit.d.ts
generated
vendored
Normal file
158
node_modules/vant/es/address-edit/AddressEdit.d.ts
generated
vendored
Normal file
@@ -0,0 +1,158 @@
|
||||
import { type PropType, type ExtractPropTypes } from 'vue';
|
||||
import { isMobile } from '../utils';
|
||||
import { AreaList } from '../area';
|
||||
import type { AddressEditInfo, AddressEditSearchItem } from './types';
|
||||
export declare const addressEditProps: {
|
||||
areaList: PropType<AreaList>;
|
||||
isSaving: BooleanConstructor;
|
||||
isDeleting: BooleanConstructor;
|
||||
validator: PropType<(key: string, value: string) => string | undefined>;
|
||||
showArea: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDetail: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDelete: BooleanConstructor;
|
||||
disableArea: BooleanConstructor;
|
||||
searchResult: PropType<AddressEditSearchItem[]>;
|
||||
telMaxlength: (NumberConstructor | StringConstructor)[];
|
||||
showSetDefault: BooleanConstructor;
|
||||
saveButtonText: StringConstructor;
|
||||
areaPlaceholder: StringConstructor;
|
||||
deleteButtonText: StringConstructor;
|
||||
showSearchResult: BooleanConstructor;
|
||||
detailRows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
detailMaxlength: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
areaColumnsPlaceholder: {
|
||||
type: PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
addressInfo: {
|
||||
type: PropType<Partial<AddressEditInfo>>;
|
||||
default: () => AddressEditInfo;
|
||||
};
|
||||
telValidator: {
|
||||
type: PropType<(val: string) => boolean>;
|
||||
default: typeof isMobile;
|
||||
};
|
||||
};
|
||||
export type AddressEditProps = ExtractPropTypes<typeof addressEditProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
areaList: PropType<AreaList>;
|
||||
isSaving: BooleanConstructor;
|
||||
isDeleting: BooleanConstructor;
|
||||
validator: PropType<(key: string, value: string) => string | undefined>;
|
||||
showArea: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDetail: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDelete: BooleanConstructor;
|
||||
disableArea: BooleanConstructor;
|
||||
searchResult: PropType<AddressEditSearchItem[]>;
|
||||
telMaxlength: (NumberConstructor | StringConstructor)[];
|
||||
showSetDefault: BooleanConstructor;
|
||||
saveButtonText: StringConstructor;
|
||||
areaPlaceholder: StringConstructor;
|
||||
deleteButtonText: StringConstructor;
|
||||
showSearchResult: BooleanConstructor;
|
||||
detailRows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
detailMaxlength: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
areaColumnsPlaceholder: {
|
||||
type: PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
addressInfo: {
|
||||
type: PropType<Partial<AddressEditInfo>>;
|
||||
default: () => AddressEditInfo;
|
||||
};
|
||||
telValidator: {
|
||||
type: PropType<(val: string) => boolean>;
|
||||
default: typeof isMobile;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("delete" | "focus" | "change" | "selectSearch" | "save" | "clickArea" | "changeArea" | "changeDetail" | "changeDefault")[], "delete" | "focus" | "change" | "selectSearch" | "save" | "clickArea" | "changeArea" | "changeDetail" | "changeDefault", import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
areaList: PropType<AreaList>;
|
||||
isSaving: BooleanConstructor;
|
||||
isDeleting: BooleanConstructor;
|
||||
validator: PropType<(key: string, value: string) => string | undefined>;
|
||||
showArea: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDetail: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDelete: BooleanConstructor;
|
||||
disableArea: BooleanConstructor;
|
||||
searchResult: PropType<AddressEditSearchItem[]>;
|
||||
telMaxlength: (NumberConstructor | StringConstructor)[];
|
||||
showSetDefault: BooleanConstructor;
|
||||
saveButtonText: StringConstructor;
|
||||
areaPlaceholder: StringConstructor;
|
||||
deleteButtonText: StringConstructor;
|
||||
showSearchResult: BooleanConstructor;
|
||||
detailRows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
detailMaxlength: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
areaColumnsPlaceholder: {
|
||||
type: PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
addressInfo: {
|
||||
type: PropType<Partial<AddressEditInfo>>;
|
||||
default: () => AddressEditInfo;
|
||||
};
|
||||
telValidator: {
|
||||
type: PropType<(val: string) => boolean>;
|
||||
default: typeof isMobile;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onFocus?: ((...args: any[]) => any) | undefined;
|
||||
onChange?: ((...args: any[]) => any) | undefined;
|
||||
onSelectSearch?: ((...args: any[]) => any) | undefined;
|
||||
onDelete?: ((...args: any[]) => any) | undefined;
|
||||
onSave?: ((...args: any[]) => any) | undefined;
|
||||
onClickArea?: ((...args: any[]) => any) | undefined;
|
||||
onChangeArea?: ((...args: any[]) => any) | undefined;
|
||||
onChangeDetail?: ((...args: any[]) => any) | undefined;
|
||||
onChangeDefault?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
isSaving: boolean;
|
||||
isDeleting: boolean;
|
||||
showArea: boolean;
|
||||
showDetail: boolean;
|
||||
showDelete: boolean;
|
||||
disableArea: boolean;
|
||||
showSetDefault: boolean;
|
||||
showSearchResult: boolean;
|
||||
detailRows: string | number;
|
||||
detailMaxlength: string | number;
|
||||
areaColumnsPlaceholder: string[];
|
||||
addressInfo: Partial<AddressEditInfo>;
|
||||
telValidator: (val: string) => boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
294
node_modules/vant/es/address-edit/AddressEdit.mjs
generated
vendored
Normal file
294
node_modules/vant/es/address-edit/AddressEdit.mjs
generated
vendored
Normal file
@@ -0,0 +1,294 @@
|
||||
import { ref, watch, computed, nextTick, reactive, defineComponent, createVNode as _createVNode, vShow as _vShow, withDirectives as _withDirectives } from "vue";
|
||||
import { extend, isObject, isMobile, truthProp, numericProp, makeArrayProp, makeNumericProp, createNamespace } from "../utils/index.mjs";
|
||||
import { useExpose } from "../composables/use-expose.mjs";
|
||||
import { Area } from "../area/index.mjs";
|
||||
import { Cell } from "../cell/index.mjs";
|
||||
import { Form } from "../form/index.mjs";
|
||||
import { Field } from "../field/index.mjs";
|
||||
import { Popup } from "../popup/index.mjs";
|
||||
import { showToast } from "../toast/index.mjs";
|
||||
import { Button } from "../button/index.mjs";
|
||||
import { Switch } from "../switch/index.mjs";
|
||||
import AddressEditDetail from "./AddressEditDetail.mjs";
|
||||
import { AREA_EMPTY_CODE } from "../area/utils.mjs";
|
||||
const [name, bem, t] = createNamespace("address-edit");
|
||||
const DEFAULT_DATA = {
|
||||
name: "",
|
||||
tel: "",
|
||||
city: "",
|
||||
county: "",
|
||||
province: "",
|
||||
areaCode: "",
|
||||
isDefault: false,
|
||||
addressDetail: ""
|
||||
};
|
||||
const addressEditProps = {
|
||||
areaList: Object,
|
||||
isSaving: Boolean,
|
||||
isDeleting: Boolean,
|
||||
validator: Function,
|
||||
showArea: truthProp,
|
||||
showDetail: truthProp,
|
||||
showDelete: Boolean,
|
||||
disableArea: Boolean,
|
||||
searchResult: Array,
|
||||
telMaxlength: numericProp,
|
||||
showSetDefault: Boolean,
|
||||
saveButtonText: String,
|
||||
areaPlaceholder: String,
|
||||
deleteButtonText: String,
|
||||
showSearchResult: Boolean,
|
||||
detailRows: makeNumericProp(1),
|
||||
detailMaxlength: makeNumericProp(200),
|
||||
areaColumnsPlaceholder: makeArrayProp(),
|
||||
addressInfo: {
|
||||
type: Object,
|
||||
default: () => extend({}, DEFAULT_DATA)
|
||||
},
|
||||
telValidator: {
|
||||
type: Function,
|
||||
default: isMobile
|
||||
}
|
||||
};
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: addressEditProps,
|
||||
emits: ["save", "focus", "change", "delete", "clickArea", "changeArea", "changeDetail", "selectSearch", "changeDefault"],
|
||||
setup(props, {
|
||||
emit,
|
||||
slots
|
||||
}) {
|
||||
const areaRef = ref();
|
||||
const data = reactive({});
|
||||
const showAreaPopup = ref(false);
|
||||
const detailFocused = ref(false);
|
||||
const areaListLoaded = computed(() => isObject(props.areaList) && Object.keys(props.areaList).length);
|
||||
const areaText = computed(() => {
|
||||
const {
|
||||
province,
|
||||
city,
|
||||
county,
|
||||
areaCode
|
||||
} = data;
|
||||
if (areaCode) {
|
||||
const arr = [province, city, county];
|
||||
if (province && province === city) {
|
||||
arr.splice(1, 1);
|
||||
}
|
||||
return arr.filter(Boolean).join("/");
|
||||
}
|
||||
return "";
|
||||
});
|
||||
const hideBottomFields = computed(() => {
|
||||
var _a;
|
||||
return ((_a = props.searchResult) == null ? void 0 : _a.length) && detailFocused.value;
|
||||
});
|
||||
const onFocus = (key) => {
|
||||
detailFocused.value = key === "addressDetail";
|
||||
emit("focus", key);
|
||||
};
|
||||
const onChange = (key, value) => {
|
||||
emit("change", {
|
||||
key,
|
||||
value
|
||||
});
|
||||
};
|
||||
const rules = computed(() => {
|
||||
const {
|
||||
validator,
|
||||
telValidator
|
||||
} = props;
|
||||
const makeRule = (name2, emptyMessage) => ({
|
||||
validator: (value) => {
|
||||
if (validator) {
|
||||
const message = validator(name2, value);
|
||||
if (message) {
|
||||
return message;
|
||||
}
|
||||
}
|
||||
if (!value) {
|
||||
return emptyMessage;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
});
|
||||
return {
|
||||
name: [makeRule("name", t("nameEmpty"))],
|
||||
tel: [makeRule("tel", t("telInvalid")), {
|
||||
validator: telValidator,
|
||||
message: t("telInvalid")
|
||||
}],
|
||||
areaCode: [makeRule("areaCode", t("areaEmpty"))],
|
||||
addressDetail: [makeRule("addressDetail", t("addressEmpty"))]
|
||||
};
|
||||
});
|
||||
const onSave = () => emit("save", data);
|
||||
const onChangeDetail = (val) => {
|
||||
data.addressDetail = val;
|
||||
emit("changeDetail", val);
|
||||
};
|
||||
const assignAreaText = (options) => {
|
||||
data.province = options[0].text;
|
||||
data.city = options[1].text;
|
||||
data.county = options[2].text;
|
||||
};
|
||||
const onAreaConfirm = ({
|
||||
selectedValues,
|
||||
selectedOptions
|
||||
}) => {
|
||||
if (selectedValues.some((value) => value === AREA_EMPTY_CODE)) {
|
||||
showToast(t("areaEmpty"));
|
||||
} else {
|
||||
showAreaPopup.value = false;
|
||||
assignAreaText(selectedOptions);
|
||||
emit("changeArea", selectedOptions);
|
||||
}
|
||||
};
|
||||
const onDelete = () => emit("delete", data);
|
||||
const setAreaCode = (code) => {
|
||||
data.areaCode = code || "";
|
||||
};
|
||||
const onDetailBlur = () => {
|
||||
setTimeout(() => {
|
||||
detailFocused.value = false;
|
||||
});
|
||||
};
|
||||
const setAddressDetail = (value) => {
|
||||
data.addressDetail = value;
|
||||
};
|
||||
const renderSetDefaultCell = () => {
|
||||
if (props.showSetDefault) {
|
||||
const slots2 = {
|
||||
"right-icon": () => _createVNode(Switch, {
|
||||
"modelValue": data.isDefault,
|
||||
"onUpdate:modelValue": ($event) => data.isDefault = $event,
|
||||
"onChange": (event) => emit("changeDefault", event)
|
||||
}, null)
|
||||
};
|
||||
return _withDirectives(_createVNode(Cell, {
|
||||
"center": true,
|
||||
"border": false,
|
||||
"title": t("defaultAddress"),
|
||||
"class": bem("default")
|
||||
}, slots2), [[_vShow, !hideBottomFields.value]]);
|
||||
}
|
||||
};
|
||||
useExpose({
|
||||
setAreaCode,
|
||||
setAddressDetail
|
||||
});
|
||||
watch(() => props.addressInfo, (value) => {
|
||||
extend(data, DEFAULT_DATA, value);
|
||||
nextTick(() => {
|
||||
var _a;
|
||||
const options = (_a = areaRef.value) == null ? void 0 : _a.getSelectedOptions();
|
||||
if (options && options.every((option) => option && option.value !== AREA_EMPTY_CODE)) {
|
||||
assignAreaText(options);
|
||||
}
|
||||
});
|
||||
}, {
|
||||
deep: true,
|
||||
immediate: true
|
||||
});
|
||||
return () => {
|
||||
const {
|
||||
disableArea
|
||||
} = props;
|
||||
return _createVNode(Form, {
|
||||
"class": bem(),
|
||||
"onSubmit": onSave
|
||||
}, {
|
||||
default: () => {
|
||||
var _a;
|
||||
return [_createVNode("div", {
|
||||
"class": bem("fields")
|
||||
}, [_createVNode(Field, {
|
||||
"modelValue": data.name,
|
||||
"onUpdate:modelValue": [($event) => data.name = $event, (val) => onChange("name", val)],
|
||||
"clearable": true,
|
||||
"label": t("name"),
|
||||
"rules": rules.value.name,
|
||||
"placeholder": t("name"),
|
||||
"onFocus": () => onFocus("name")
|
||||
}, null), _createVNode(Field, {
|
||||
"modelValue": data.tel,
|
||||
"onUpdate:modelValue": [($event) => data.tel = $event, (val) => onChange("tel", val)],
|
||||
"clearable": true,
|
||||
"type": "tel",
|
||||
"label": t("tel"),
|
||||
"rules": rules.value.tel,
|
||||
"maxlength": props.telMaxlength,
|
||||
"placeholder": t("tel"),
|
||||
"onFocus": () => onFocus("tel")
|
||||
}, null), _withDirectives(_createVNode(Field, {
|
||||
"readonly": true,
|
||||
"label": t("area"),
|
||||
"is-link": !disableArea,
|
||||
"modelValue": areaText.value,
|
||||
"rules": props.showArea ? rules.value.areaCode : void 0,
|
||||
"placeholder": props.areaPlaceholder || t("area"),
|
||||
"onFocus": () => onFocus("areaCode"),
|
||||
"onClick": () => {
|
||||
emit("clickArea");
|
||||
showAreaPopup.value = !disableArea;
|
||||
}
|
||||
}, null), [[_vShow, props.showArea]]), _createVNode(AddressEditDetail, {
|
||||
"show": props.showDetail,
|
||||
"rows": props.detailRows,
|
||||
"rules": rules.value.addressDetail,
|
||||
"value": data.addressDetail,
|
||||
"focused": detailFocused.value,
|
||||
"maxlength": props.detailMaxlength,
|
||||
"searchResult": props.searchResult,
|
||||
"showSearchResult": props.showSearchResult,
|
||||
"onBlur": onDetailBlur,
|
||||
"onFocus": () => onFocus("addressDetail"),
|
||||
"onInput": onChangeDetail,
|
||||
"onSelectSearch": (event) => emit("selectSearch", event)
|
||||
}, null), (_a = slots.default) == null ? void 0 : _a.call(slots)]), renderSetDefaultCell(), _withDirectives(_createVNode("div", {
|
||||
"class": bem("buttons")
|
||||
}, [_createVNode(Button, {
|
||||
"block": true,
|
||||
"round": true,
|
||||
"type": "primary",
|
||||
"text": props.saveButtonText || t("save"),
|
||||
"class": bem("button"),
|
||||
"loading": props.isSaving,
|
||||
"nativeType": "submit"
|
||||
}, null), props.showDelete && _createVNode(Button, {
|
||||
"block": true,
|
||||
"round": true,
|
||||
"class": bem("button"),
|
||||
"loading": props.isDeleting,
|
||||
"text": props.deleteButtonText || t("delete"),
|
||||
"onClick": onDelete
|
||||
}, null)]), [[_vShow, !hideBottomFields.value]]), _createVNode(Popup, {
|
||||
"show": showAreaPopup.value,
|
||||
"onUpdate:show": ($event) => showAreaPopup.value = $event,
|
||||
"round": true,
|
||||
"teleport": "body",
|
||||
"position": "bottom",
|
||||
"lazyRender": false
|
||||
}, {
|
||||
default: () => [_createVNode(Area, {
|
||||
"modelValue": data.areaCode,
|
||||
"onUpdate:modelValue": ($event) => data.areaCode = $event,
|
||||
"ref": areaRef,
|
||||
"loading": !areaListLoaded.value,
|
||||
"areaList": props.areaList,
|
||||
"columnsPlaceholder": props.areaColumnsPlaceholder,
|
||||
"onConfirm": onAreaConfirm,
|
||||
"onCancel": () => {
|
||||
showAreaPopup.value = false;
|
||||
}
|
||||
}, null)]
|
||||
})];
|
||||
}
|
||||
});
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
addressEditProps,
|
||||
stdin_default as default
|
||||
};
|
||||
32
node_modules/vant/es/address-edit/AddressEditDetail.d.ts
generated
vendored
Normal file
32
node_modules/vant/es/address-edit/AddressEditDetail.d.ts
generated
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
import { type PropType } from 'vue';
|
||||
import type { AddressEditSearchItem } from './types';
|
||||
import type { FieldRule } from '../field/types';
|
||||
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
show: BooleanConstructor;
|
||||
rows: (NumberConstructor | StringConstructor)[];
|
||||
value: StringConstructor;
|
||||
rules: PropType<FieldRule[]>;
|
||||
focused: BooleanConstructor;
|
||||
maxlength: (NumberConstructor | StringConstructor)[];
|
||||
searchResult: PropType<AddressEditSearchItem[]>;
|
||||
showSearchResult: BooleanConstructor;
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "focus" | "blur" | "selectSearch")[], "input" | "focus" | "blur" | "selectSearch", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
show: BooleanConstructor;
|
||||
rows: (NumberConstructor | StringConstructor)[];
|
||||
value: StringConstructor;
|
||||
rules: PropType<FieldRule[]>;
|
||||
focused: BooleanConstructor;
|
||||
maxlength: (NumberConstructor | StringConstructor)[];
|
||||
searchResult: PropType<AddressEditSearchItem[]>;
|
||||
showSearchResult: BooleanConstructor;
|
||||
}>> & Readonly<{
|
||||
onFocus?: ((...args: any[]) => any) | undefined;
|
||||
onBlur?: ((...args: any[]) => any) | undefined;
|
||||
onInput?: ((...args: any[]) => any) | undefined;
|
||||
onSelectSearch?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
show: boolean;
|
||||
focused: boolean;
|
||||
showSearchResult: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
75
node_modules/vant/es/address-edit/AddressEditDetail.mjs
generated
vendored
Normal file
75
node_modules/vant/es/address-edit/AddressEditDetail.mjs
generated
vendored
Normal file
@@ -0,0 +1,75 @@
|
||||
import { ref, defineComponent, createVNode as _createVNode, Fragment as _Fragment } from "vue";
|
||||
import { createNamespace, numericProp } from "../utils/index.mjs";
|
||||
import { Cell } from "../cell/index.mjs";
|
||||
import { Field } from "../field/index.mjs";
|
||||
const [name, bem] = createNamespace("address-edit-detail");
|
||||
const t = createNamespace("address-edit")[2];
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: {
|
||||
show: Boolean,
|
||||
rows: numericProp,
|
||||
value: String,
|
||||
rules: Array,
|
||||
focused: Boolean,
|
||||
maxlength: numericProp,
|
||||
searchResult: Array,
|
||||
showSearchResult: Boolean
|
||||
},
|
||||
emits: ["blur", "focus", "input", "selectSearch"],
|
||||
setup(props, {
|
||||
emit
|
||||
}) {
|
||||
const field = ref();
|
||||
const showSearchResult = () => props.focused && props.searchResult && props.showSearchResult;
|
||||
const onSelect = (express) => {
|
||||
emit("selectSearch", express);
|
||||
emit("input", `${express.address || ""} ${express.name || ""}`.trim());
|
||||
};
|
||||
const renderSearchResult = () => {
|
||||
if (!showSearchResult()) {
|
||||
return;
|
||||
}
|
||||
const {
|
||||
searchResult
|
||||
} = props;
|
||||
return searchResult.map((express) => _createVNode(Cell, {
|
||||
"clickable": true,
|
||||
"key": (express.name || "") + (express.address || ""),
|
||||
"icon": "location-o",
|
||||
"title": express.name,
|
||||
"label": express.address,
|
||||
"class": bem("search-item"),
|
||||
"border": false,
|
||||
"onClick": () => onSelect(express)
|
||||
}, null));
|
||||
};
|
||||
const onBlur = (event) => emit("blur", event);
|
||||
const onFocus = (event) => emit("focus", event);
|
||||
const onInput = (value) => emit("input", value);
|
||||
return () => {
|
||||
if (props.show) {
|
||||
return _createVNode(_Fragment, null, [_createVNode(Field, {
|
||||
"autosize": true,
|
||||
"clearable": true,
|
||||
"ref": field,
|
||||
"class": bem(),
|
||||
"rows": props.rows,
|
||||
"type": "textarea",
|
||||
"rules": props.rules,
|
||||
"label": t("addressDetail"),
|
||||
"border": !showSearchResult(),
|
||||
"maxlength": props.maxlength,
|
||||
"modelValue": props.value,
|
||||
"placeholder": t("addressDetail"),
|
||||
"onBlur": onBlur,
|
||||
"onFocus": onFocus,
|
||||
"onUpdate:modelValue": onInput
|
||||
}, null), renderSearchResult()]);
|
||||
}
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/address-edit/index.css
generated
vendored
Normal file
1
node_modules/vant/es/address-edit/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-address-edit-padding: var(--van-padding-sm);--van-address-edit-buttons-padding: var(--van-padding-xl) var(--van-padding-base);--van-address-edit-button-margin-bottom: var(--van-padding-sm);--van-address-edit-button-font-size: var(--van-font-size-lg)}.van-address-edit{padding:var(--van-address-edit-padding)}.van-address-edit__fields{overflow:hidden;border-radius:var(--van-padding-xs)}.van-address-edit__fields .van-field__label{width:4.1em}.van-address-edit__default{margin-top:var(--van-padding-sm);overflow:hidden;border-radius:var(--van-padding-xs)}.van-address-edit__buttons{padding:var(--van-address-edit-buttons-padding)}.van-address-edit__button{margin-bottom:var(--van-address-edit-button-margin-bottom);font-size:var(--van-address-edit-button-font-size)}.van-address-edit-detail__search-item{background:var(--van-gray-2)}
|
||||
119
node_modules/vant/es/address-edit/index.d.ts
generated
vendored
Normal file
119
node_modules/vant/es/address-edit/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,119 @@
|
||||
import { AddressEditProps } from './AddressEdit';
|
||||
export declare const AddressEdit: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
areaList: import("vue").PropType<import("..").AreaList>;
|
||||
isSaving: BooleanConstructor;
|
||||
isDeleting: BooleanConstructor;
|
||||
validator: import("vue").PropType<(key: string, value: string) => string | undefined>;
|
||||
showArea: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDetail: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDelete: BooleanConstructor;
|
||||
disableArea: BooleanConstructor;
|
||||
searchResult: import("vue").PropType<import("./types").AddressEditSearchItem[]>;
|
||||
telMaxlength: (NumberConstructor | StringConstructor)[];
|
||||
showSetDefault: BooleanConstructor;
|
||||
saveButtonText: StringConstructor;
|
||||
areaPlaceholder: StringConstructor;
|
||||
deleteButtonText: StringConstructor;
|
||||
showSearchResult: BooleanConstructor;
|
||||
detailRows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
detailMaxlength: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
areaColumnsPlaceholder: {
|
||||
type: import("vue").PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
addressInfo: {
|
||||
type: import("vue").PropType<Partial<import("./types").AddressEditInfo>>;
|
||||
default: () => import("./types").AddressEditInfo;
|
||||
};
|
||||
telValidator: {
|
||||
type: import("vue").PropType<(val: string) => boolean>;
|
||||
default: typeof import("../utils").isMobile;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("delete" | "focus" | "change" | "selectSearch" | "save" | "clickArea" | "changeArea" | "changeDetail" | "changeDefault")[], "delete" | "focus" | "change" | "selectSearch" | "save" | "clickArea" | "changeArea" | "changeDetail" | "changeDefault", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
areaList: import("vue").PropType<import("..").AreaList>;
|
||||
isSaving: BooleanConstructor;
|
||||
isDeleting: BooleanConstructor;
|
||||
validator: import("vue").PropType<(key: string, value: string) => string | undefined>;
|
||||
showArea: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDetail: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
showDelete: BooleanConstructor;
|
||||
disableArea: BooleanConstructor;
|
||||
searchResult: import("vue").PropType<import("./types").AddressEditSearchItem[]>;
|
||||
telMaxlength: (NumberConstructor | StringConstructor)[];
|
||||
showSetDefault: BooleanConstructor;
|
||||
saveButtonText: StringConstructor;
|
||||
areaPlaceholder: StringConstructor;
|
||||
deleteButtonText: StringConstructor;
|
||||
showSearchResult: BooleanConstructor;
|
||||
detailRows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
detailMaxlength: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
areaColumnsPlaceholder: {
|
||||
type: import("vue").PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
addressInfo: {
|
||||
type: import("vue").PropType<Partial<import("./types").AddressEditInfo>>;
|
||||
default: () => import("./types").AddressEditInfo;
|
||||
};
|
||||
telValidator: {
|
||||
type: import("vue").PropType<(val: string) => boolean>;
|
||||
default: typeof import("../utils").isMobile;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onFocus?: ((...args: any[]) => any) | undefined;
|
||||
onChange?: ((...args: any[]) => any) | undefined;
|
||||
onSelectSearch?: ((...args: any[]) => any) | undefined;
|
||||
onDelete?: ((...args: any[]) => any) | undefined;
|
||||
onSave?: ((...args: any[]) => any) | undefined;
|
||||
onClickArea?: ((...args: any[]) => any) | undefined;
|
||||
onChangeArea?: ((...args: any[]) => any) | undefined;
|
||||
onChangeDetail?: ((...args: any[]) => any) | undefined;
|
||||
onChangeDefault?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
isSaving: boolean;
|
||||
isDeleting: boolean;
|
||||
showArea: boolean;
|
||||
showDetail: boolean;
|
||||
showDelete: boolean;
|
||||
disableArea: boolean;
|
||||
showSetDefault: boolean;
|
||||
showSearchResult: boolean;
|
||||
detailRows: string | number;
|
||||
detailMaxlength: string | number;
|
||||
areaColumnsPlaceholder: string[];
|
||||
addressInfo: Partial<import("./types").AddressEditInfo>;
|
||||
telValidator: (val: string) => boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default AddressEdit;
|
||||
export { addressEditProps } from './AddressEdit';
|
||||
export type { AddressEditProps };
|
||||
export type { AddressEditInfo, AddressEditInstance, AddressEditThemeVars, AddressEditSearchItem, } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanAddressEdit: typeof AddressEdit;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/address-edit/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/address-edit/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _AddressEdit from "./AddressEdit.mjs";
|
||||
const AddressEdit = withInstall(_AddressEdit);
|
||||
var stdin_default = AddressEdit;
|
||||
import { addressEditProps } from "./AddressEdit.mjs";
|
||||
export {
|
||||
AddressEdit,
|
||||
addressEditProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/address-edit/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/address-edit/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
19
node_modules/vant/es/address-edit/style/index.mjs
generated
vendored
Normal file
19
node_modules/vant/es/address-edit/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
import "../../style/base.css";
|
||||
import "../../badge/index.css";
|
||||
import "../../icon/index.css";
|
||||
import "../../cell/index.css";
|
||||
import "../../field/index.css";
|
||||
import "../../loading/index.css";
|
||||
import "../../switch/index.css";
|
||||
import "../../button/index.css";
|
||||
import "../../overlay/index.css";
|
||||
import "../../popup/index.css";
|
||||
import "../../toast/index.css";
|
||||
import "../../sticky/index.css";
|
||||
import "../../swipe/index.css";
|
||||
import "../../swipe-item/index.css";
|
||||
import "../../tabs/index.css";
|
||||
import "../../tab/index.css";
|
||||
import "../../picker/index.css";
|
||||
import "../../picker-group/index.css";
|
||||
import "../index.css";
|
||||
27
node_modules/vant/es/address-edit/types.d.ts
generated
vendored
Normal file
27
node_modules/vant/es/address-edit/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
import type { ComponentPublicInstance } from 'vue';
|
||||
import type { AddressEditProps } from './AddressEdit';
|
||||
export type AddressEditSearchItem = {
|
||||
name?: string;
|
||||
address?: string;
|
||||
};
|
||||
export type AddressEditInfo = {
|
||||
tel: string;
|
||||
name: string;
|
||||
city: string;
|
||||
county: string;
|
||||
province: string;
|
||||
areaCode: string;
|
||||
isDefault?: boolean;
|
||||
addressDetail: string;
|
||||
};
|
||||
export type AddressEditExpose = {
|
||||
setAreaCode: (code?: string | undefined) => void;
|
||||
setAddressDetail: (value: string) => void;
|
||||
};
|
||||
export type AddressEditInstance = ComponentPublicInstance<AddressEditProps, AddressEditExpose>;
|
||||
export type AddressEditThemeVars = {
|
||||
addressEditPadding?: string;
|
||||
addressEditButtonsPadding?: string;
|
||||
addressEditButtonMarginBottom?: string;
|
||||
addressEditButtonFontSize?: string;
|
||||
};
|
||||
0
node_modules/vant/es/address-edit/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/address-edit/types.mjs
generated
vendored
Normal file
95
node_modules/vant/es/address-list/AddressList.d.ts
generated
vendored
Normal file
95
node_modules/vant/es/address-list/AddressList.d.ts
generated
vendored
Normal file
@@ -0,0 +1,95 @@
|
||||
import { type ExtractPropTypes, type PropType } from 'vue';
|
||||
import { AddressListAddress } from './AddressListItem';
|
||||
export declare const addressListProps: {
|
||||
list: {
|
||||
type: PropType<AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
modelValue: PropType<string | number | Array<string | number>>;
|
||||
switchable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
disabledText: StringConstructor;
|
||||
disabledList: {
|
||||
type: PropType<AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
showAddButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
addButtonText: StringConstructor;
|
||||
defaultTagText: StringConstructor;
|
||||
rightIcon: {
|
||||
type: PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
};
|
||||
export type AddressListProps = ExtractPropTypes<typeof addressListProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
list: {
|
||||
type: PropType<AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
modelValue: PropType<string | number | Array<string | number>>;
|
||||
switchable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
disabledText: StringConstructor;
|
||||
disabledList: {
|
||||
type: PropType<AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
showAddButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
addButtonText: StringConstructor;
|
||||
defaultTagText: StringConstructor;
|
||||
rightIcon: {
|
||||
type: PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "add" | "update:modelValue" | "edit" | "clickItem" | "editDisabled" | "selectDisabled")[], "select" | "add" | "update:modelValue" | "edit" | "clickItem" | "editDisabled" | "selectDisabled", import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
list: {
|
||||
type: PropType<AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
modelValue: PropType<string | number | Array<string | number>>;
|
||||
switchable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
disabledText: StringConstructor;
|
||||
disabledList: {
|
||||
type: PropType<AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
showAddButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
addButtonText: StringConstructor;
|
||||
defaultTagText: StringConstructor;
|
||||
rightIcon: {
|
||||
type: PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onSelect?: ((...args: any[]) => any) | undefined;
|
||||
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
||||
onEdit?: ((...args: any[]) => any) | undefined;
|
||||
onAdd?: ((...args: any[]) => any) | undefined;
|
||||
onClickItem?: ((...args: any[]) => any) | undefined;
|
||||
onEditDisabled?: ((...args: any[]) => any) | undefined;
|
||||
onSelectDisabled?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
rightIcon: string;
|
||||
switchable: boolean;
|
||||
list: AddressListAddress[];
|
||||
disabledList: AddressListAddress[];
|
||||
showAddButton: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
103
node_modules/vant/es/address-list/AddressList.mjs
generated
vendored
Normal file
103
node_modules/vant/es/address-list/AddressList.mjs
generated
vendored
Normal file
@@ -0,0 +1,103 @@
|
||||
import { defineComponent, computed, createVNode as _createVNode } from "vue";
|
||||
import { truthProp, numericProp, makeArrayProp, createNamespace, makeStringProp } from "../utils/index.mjs";
|
||||
import { Button } from "../button/index.mjs";
|
||||
import { RadioGroup } from "../radio-group/index.mjs";
|
||||
import { CheckboxGroup } from "../checkbox-group/index.mjs";
|
||||
import AddressListItem from "./AddressListItem.mjs";
|
||||
const [name, bem, t] = createNamespace("address-list");
|
||||
const addressListProps = {
|
||||
list: makeArrayProp(),
|
||||
modelValue: [...numericProp, Array],
|
||||
switchable: truthProp,
|
||||
disabledText: String,
|
||||
disabledList: makeArrayProp(),
|
||||
showAddButton: truthProp,
|
||||
addButtonText: String,
|
||||
defaultTagText: String,
|
||||
rightIcon: makeStringProp("edit")
|
||||
};
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: addressListProps,
|
||||
emits: ["add", "edit", "select", "clickItem", "editDisabled", "selectDisabled", "update:modelValue"],
|
||||
setup(props, {
|
||||
slots,
|
||||
emit
|
||||
}) {
|
||||
const singleChoice = computed(() => !Array.isArray(props.modelValue));
|
||||
const renderItem = (item, index, disabled) => {
|
||||
const onEdit = () => emit(disabled ? "editDisabled" : "edit", item, index);
|
||||
const onClick = (event) => emit("clickItem", item, index, {
|
||||
event
|
||||
});
|
||||
const onSelect = () => {
|
||||
emit(disabled ? "selectDisabled" : "select", item, index);
|
||||
if (!disabled) {
|
||||
if (singleChoice.value) {
|
||||
emit("update:modelValue", item.id);
|
||||
} else {
|
||||
const value = props.modelValue;
|
||||
if (value.includes(item.id)) {
|
||||
emit("update:modelValue", value.filter((id) => id !== item.id));
|
||||
} else {
|
||||
emit("update:modelValue", [...value, item.id]);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
return _createVNode(AddressListItem, {
|
||||
"key": item.id,
|
||||
"address": item,
|
||||
"disabled": disabled,
|
||||
"switchable": props.switchable,
|
||||
"singleChoice": singleChoice.value,
|
||||
"defaultTagText": props.defaultTagText,
|
||||
"rightIcon": props.rightIcon,
|
||||
"onEdit": onEdit,
|
||||
"onClick": onClick,
|
||||
"onSelect": onSelect
|
||||
}, {
|
||||
bottom: slots["item-bottom"],
|
||||
tag: slots.tag
|
||||
});
|
||||
};
|
||||
const renderList = (list, disabled) => {
|
||||
if (list) {
|
||||
return list.map((item, index) => renderItem(item, index, disabled));
|
||||
}
|
||||
};
|
||||
const renderBottom = () => props.showAddButton ? _createVNode("div", {
|
||||
"class": [bem("bottom"), "van-safe-area-bottom"]
|
||||
}, [_createVNode(Button, {
|
||||
"round": true,
|
||||
"block": true,
|
||||
"type": "primary",
|
||||
"text": props.addButtonText || t("add"),
|
||||
"class": bem("add"),
|
||||
"onClick": () => emit("add")
|
||||
}, null)]) : void 0;
|
||||
return () => {
|
||||
var _a, _b;
|
||||
const List = renderList(props.list);
|
||||
const DisabledList = renderList(props.disabledList, true);
|
||||
const DisabledText = props.disabledText && _createVNode("div", {
|
||||
"class": bem("disabled-text")
|
||||
}, [props.disabledText]);
|
||||
return _createVNode("div", {
|
||||
"class": bem()
|
||||
}, [(_a = slots.top) == null ? void 0 : _a.call(slots), !singleChoice.value && Array.isArray(props.modelValue) ? _createVNode(CheckboxGroup, {
|
||||
"modelValue": props.modelValue
|
||||
}, {
|
||||
default: () => [List]
|
||||
}) : _createVNode(RadioGroup, {
|
||||
"modelValue": props.modelValue
|
||||
}, {
|
||||
default: () => [List]
|
||||
}), DisabledText, DisabledList, (_b = slots.default) == null ? void 0 : _b.call(slots), renderBottom()]);
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
addressListProps,
|
||||
stdin_default as default
|
||||
};
|
||||
46
node_modules/vant/es/address-list/AddressListItem.d.ts
generated
vendored
Normal file
46
node_modules/vant/es/address-list/AddressListItem.d.ts
generated
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
import { type PropType } from 'vue';
|
||||
import { type Numeric } from '../utils';
|
||||
export type AddressListAddress = {
|
||||
id: Numeric;
|
||||
tel: Numeric;
|
||||
name: string;
|
||||
address: string;
|
||||
isDefault?: boolean;
|
||||
};
|
||||
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
address: {
|
||||
type: PropType<AddressListAddress>;
|
||||
required: true;
|
||||
};
|
||||
disabled: BooleanConstructor;
|
||||
switchable: BooleanConstructor;
|
||||
singleChoice: BooleanConstructor;
|
||||
defaultTagText: StringConstructor;
|
||||
rightIcon: {
|
||||
type: PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "click" | "edit")[], "select" | "click" | "edit", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
address: {
|
||||
type: PropType<AddressListAddress>;
|
||||
required: true;
|
||||
};
|
||||
disabled: BooleanConstructor;
|
||||
switchable: BooleanConstructor;
|
||||
singleChoice: BooleanConstructor;
|
||||
defaultTagText: StringConstructor;
|
||||
rightIcon: {
|
||||
type: PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onClick?: ((...args: any[]) => any) | undefined;
|
||||
onSelect?: ((...args: any[]) => any) | undefined;
|
||||
onEdit?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
disabled: boolean;
|
||||
rightIcon: string;
|
||||
switchable: boolean;
|
||||
singleChoice: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
108
node_modules/vant/es/address-list/AddressListItem.mjs
generated
vendored
Normal file
108
node_modules/vant/es/address-list/AddressListItem.mjs
generated
vendored
Normal file
@@ -0,0 +1,108 @@
|
||||
import { defineComponent, createVNode as _createVNode } from "vue";
|
||||
import { extend, createNamespace, makeRequiredProp, makeStringProp } from "../utils/index.mjs";
|
||||
import { Tag } from "../tag/index.mjs";
|
||||
import { Icon } from "../icon/index.mjs";
|
||||
import { Cell } from "../cell/index.mjs";
|
||||
import { Radio } from "../radio/index.mjs";
|
||||
import { Checkbox } from "../checkbox/index.mjs";
|
||||
const [name, bem] = createNamespace("address-item");
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: {
|
||||
address: makeRequiredProp(Object),
|
||||
disabled: Boolean,
|
||||
switchable: Boolean,
|
||||
singleChoice: Boolean,
|
||||
defaultTagText: String,
|
||||
rightIcon: makeStringProp("edit")
|
||||
},
|
||||
emits: ["edit", "click", "select"],
|
||||
setup(props, {
|
||||
slots,
|
||||
emit
|
||||
}) {
|
||||
const onClick = (event) => {
|
||||
if (props.switchable) {
|
||||
emit("select");
|
||||
}
|
||||
emit("click", event);
|
||||
};
|
||||
const renderRightIcon = () => _createVNode(Icon, {
|
||||
"name": props.rightIcon,
|
||||
"class": bem("edit"),
|
||||
"onClick": (event) => {
|
||||
event.stopPropagation();
|
||||
emit("edit");
|
||||
emit("click", event);
|
||||
}
|
||||
}, null);
|
||||
const renderTag = () => {
|
||||
if (slots.tag) {
|
||||
return slots.tag(props.address);
|
||||
}
|
||||
if (props.address.isDefault && props.defaultTagText) {
|
||||
return _createVNode(Tag, {
|
||||
"type": "primary",
|
||||
"round": true,
|
||||
"class": bem("tag")
|
||||
}, {
|
||||
default: () => [props.defaultTagText]
|
||||
});
|
||||
}
|
||||
};
|
||||
const renderContent = () => {
|
||||
const {
|
||||
address,
|
||||
disabled,
|
||||
switchable,
|
||||
singleChoice
|
||||
} = props;
|
||||
const Info = [_createVNode("div", {
|
||||
"class": bem("name")
|
||||
}, [`${address.name} ${address.tel}`, renderTag()]), _createVNode("div", {
|
||||
"class": bem("address")
|
||||
}, [address.address])];
|
||||
if (switchable && !disabled) {
|
||||
if (singleChoice) {
|
||||
return _createVNode(Radio, {
|
||||
"name": address.id,
|
||||
"iconSize": 18
|
||||
}, {
|
||||
default: () => [Info]
|
||||
});
|
||||
} else {
|
||||
return _createVNode(Checkbox, {
|
||||
"name": address.id,
|
||||
"iconSize": 18
|
||||
}, {
|
||||
default: () => [Info]
|
||||
});
|
||||
}
|
||||
}
|
||||
return Info;
|
||||
};
|
||||
return () => {
|
||||
var _a;
|
||||
const {
|
||||
disabled
|
||||
} = props;
|
||||
return _createVNode("div", {
|
||||
"class": bem({
|
||||
disabled
|
||||
}),
|
||||
"onClick": onClick
|
||||
}, [_createVNode(Cell, {
|
||||
"border": false,
|
||||
"titleClass": bem("title")
|
||||
}, {
|
||||
title: renderContent,
|
||||
"right-icon": renderRightIcon
|
||||
}), (_a = slots.bottom) == null ? void 0 : _a.call(slots, extend({}, props.address, {
|
||||
disabled
|
||||
}))]);
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/address-list/index.css
generated
vendored
Normal file
1
node_modules/vant/es/address-list/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-address-list-padding: var(--van-padding-sm) var(--van-padding-sm) 80px;--van-address-list-disabled-text-color: var(--van-text-color-2);--van-address-list-disabled-text-padding: calc(var(--van-padding-base) * 5) 0;--van-address-list-disabled-text-font-size: var(--van-font-size-md);--van-address-list-disabled-text-line-height: var(--van-line-height-md);--van-address-list-add-button-z-index: 999;--van-address-list-item-padding: var(--van-padding-sm);--van-address-list-item-text-color: var(--van-text-color);--van-address-list-item-disabled-text-color: var(--van-text-color-3);--van-address-list-item-font-size: 13px;--van-address-list-item-line-height: var(--van-line-height-sm);--van-address-list-radio-color: var(--van-primary-color);--van-address-list-edit-icon-size: 20px}.van-address-list{box-sizing:border-box;height:100%;padding:var(--van-address-list-padding)}.van-address-list__bottom{position:fixed;bottom:0;left:0;z-index:var(--van-address-list-add-button-z-index);box-sizing:border-box;width:100%;padding-left:var(--van-padding-md);padding-right:var(--van-padding-md);background-color:var(--van-background-2)}.van-address-list__add{height:40px;margin:5px 0}.van-address-list__disabled-text{padding:var(--van-address-list-disabled-text-padding);color:var(--van-address-list-disabled-text-color);font-size:var(--van-address-list-disabled-text-font-size);line-height:var(--van-address-list-disabled-text-line-height)}.van-address-item{padding:var(--van-address-list-item-padding);background-color:var(--van-background-2);border-radius:var(--van-radius-lg)}.van-address-item:not(:last-child){margin-bottom:var(--van-padding-sm)}.van-address-item__title{padding-right:44px}.van-address-item__name{display:flex;align-items:center;margin-bottom:var(--van-padding-xs);font-size:var(--van-font-size-lg);line-height:var(--van-line-height-lg)}.van-address-item__tag{flex:none;margin-left:var(--van-padding-xs);padding-top:0;padding-bottom:0;line-height:1.4em}.van-address-item__address{color:var(--van-address-list-item-text-color);font-size:var(--van-address-list-item-font-size);line-height:var(--van-address-list-item-line-height)}.van-address-item--disabled .van-address-item__name,.van-address-item--disabled .van-address-item__address{color:var(--van-address-list-item-disabled-text-color)}.van-address-item__edit{position:absolute;top:50%;right:var(--van-padding-md);color:var(--van-gray-6);font-size:var(--van-address-list-edit-icon-size);transform:translateY(-50%)}.van-address-item .van-cell{padding:0}.van-address-item .van-radio__label{margin-left:var(--van-padding-sm)}.van-address-item .van-radio__icon--checked .van-icon{background-color:var(--van-address-list-radio-color);border-color:var(--van-address-list-radio-color)}
|
||||
75
node_modules/vant/es/address-list/index.d.ts
generated
vendored
Normal file
75
node_modules/vant/es/address-list/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,75 @@
|
||||
export declare const AddressList: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
list: {
|
||||
type: import("vue").PropType<import("./AddressListItem").AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
modelValue: import("vue").PropType<string | number | Array<string | number>>;
|
||||
switchable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
disabledText: StringConstructor;
|
||||
disabledList: {
|
||||
type: import("vue").PropType<import("./AddressListItem").AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
showAddButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
addButtonText: StringConstructor;
|
||||
defaultTagText: StringConstructor;
|
||||
rightIcon: {
|
||||
type: import("vue").PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "add" | "update:modelValue" | "edit" | "clickItem" | "editDisabled" | "selectDisabled")[], "select" | "add" | "update:modelValue" | "edit" | "clickItem" | "editDisabled" | "selectDisabled", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
list: {
|
||||
type: import("vue").PropType<import("./AddressListItem").AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
modelValue: import("vue").PropType<string | number | Array<string | number>>;
|
||||
switchable: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
disabledText: StringConstructor;
|
||||
disabledList: {
|
||||
type: import("vue").PropType<import("./AddressListItem").AddressListAddress[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
showAddButton: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
addButtonText: StringConstructor;
|
||||
defaultTagText: StringConstructor;
|
||||
rightIcon: {
|
||||
type: import("vue").PropType<string>;
|
||||
default: string;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onSelect?: ((...args: any[]) => any) | undefined;
|
||||
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
||||
onEdit?: ((...args: any[]) => any) | undefined;
|
||||
onAdd?: ((...args: any[]) => any) | undefined;
|
||||
onClickItem?: ((...args: any[]) => any) | undefined;
|
||||
onEditDisabled?: ((...args: any[]) => any) | undefined;
|
||||
onSelectDisabled?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
rightIcon: string;
|
||||
switchable: boolean;
|
||||
list: import("./AddressListItem").AddressListAddress[];
|
||||
disabledList: import("./AddressListItem").AddressListAddress[];
|
||||
showAddButton: boolean;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default AddressList;
|
||||
export { addressListProps } from './AddressList';
|
||||
export type { AddressListProps } from './AddressList';
|
||||
export type { AddressListAddress } from './AddressListItem';
|
||||
export type { AddressListThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanAddressList: typeof AddressList;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/address-list/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/address-list/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _AddressList from "./AddressList.mjs";
|
||||
const AddressList = withInstall(_AddressList);
|
||||
var stdin_default = AddressList;
|
||||
import { addressListProps } from "./AddressList.mjs";
|
||||
export {
|
||||
AddressList,
|
||||
addressListProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/address-list/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/address-list/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
12
node_modules/vant/es/address-list/style/index.mjs
generated
vendored
Normal file
12
node_modules/vant/es/address-list/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
import "../../style/base.css";
|
||||
import "../../badge/index.css";
|
||||
import "../../icon/index.css";
|
||||
import "../../tag/index.css";
|
||||
import "../../cell/index.css";
|
||||
import "../../loading/index.css";
|
||||
import "../../button/index.css";
|
||||
import "../../radio-group/index.css";
|
||||
import "../../checkbox-group/index.css";
|
||||
import "../../checkbox/index.css";
|
||||
import "../../radio/index.css";
|
||||
import "../index.css";
|
||||
15
node_modules/vant/es/address-list/types.d.ts
generated
vendored
Normal file
15
node_modules/vant/es/address-list/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
export type AddressListThemeVars = {
|
||||
addressListPadding?: string;
|
||||
addressListDisabledTextColor?: string;
|
||||
addressListDisabledTextPadding?: string;
|
||||
addressListDisabledTextFontSize?: string;
|
||||
addressListDisabledTextLineHeight?: number | string;
|
||||
addressListAddButtonZIndex?: number | string;
|
||||
addressListItemPadding?: string;
|
||||
addressListItemTextColor?: string;
|
||||
addressListItemDisabledTextColor?: string;
|
||||
addressListItemFontSize?: string;
|
||||
addressListItemLineHeight?: number | string;
|
||||
addressListRadioColor?: string;
|
||||
addressListEditIconSize?: string;
|
||||
};
|
||||
0
node_modules/vant/es/address-list/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/address-list/types.mjs
generated
vendored
Normal file
134
node_modules/vant/es/area/Area.d.ts
generated
vendored
Normal file
134
node_modules/vant/es/area/Area.d.ts
generated
vendored
Normal file
@@ -0,0 +1,134 @@
|
||||
import { type PropType, type ExtractPropTypes } from 'vue';
|
||||
import type { AreaList } from './types';
|
||||
export declare const areaProps: import("../utils").Writeable<Pick<{
|
||||
loading: BooleanConstructor;
|
||||
readonly: BooleanConstructor;
|
||||
allowHtml: BooleanConstructor;
|
||||
optionHeight: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showToolbar: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
swipeDuration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
visibleOptionNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
cancelButtonText: StringConstructor;
|
||||
confirmButtonText: StringConstructor;
|
||||
}, "title" | "readonly" | "loading" | "optionHeight" | "swipeDuration" | "visibleOptionNum" | "cancelButtonText" | "confirmButtonText">> & {
|
||||
modelValue: StringConstructor;
|
||||
columnsNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
columnsPlaceholder: {
|
||||
type: PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
areaList: {
|
||||
type: PropType<AreaList>;
|
||||
default: () => {};
|
||||
};
|
||||
};
|
||||
export type AreaProps = ExtractPropTypes<typeof areaProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<import("../utils").Writeable<Pick<{
|
||||
loading: BooleanConstructor;
|
||||
readonly: BooleanConstructor;
|
||||
allowHtml: BooleanConstructor;
|
||||
optionHeight: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showToolbar: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
swipeDuration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
visibleOptionNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
cancelButtonText: StringConstructor;
|
||||
confirmButtonText: StringConstructor;
|
||||
}, "title" | "readonly" | "loading" | "optionHeight" | "swipeDuration" | "visibleOptionNum" | "cancelButtonText" | "confirmButtonText">> & {
|
||||
modelValue: StringConstructor;
|
||||
columnsNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
columnsPlaceholder: {
|
||||
type: PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
areaList: {
|
||||
type: PropType<AreaList>;
|
||||
default: () => {};
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "cancel" | "change" | "confirm")[], "update:modelValue" | "cancel" | "change" | "confirm", import("vue").PublicProps, Readonly<ExtractPropTypes<import("../utils").Writeable<Pick<{
|
||||
loading: BooleanConstructor;
|
||||
readonly: BooleanConstructor;
|
||||
allowHtml: BooleanConstructor;
|
||||
optionHeight: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showToolbar: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
swipeDuration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
visibleOptionNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
cancelButtonText: StringConstructor;
|
||||
confirmButtonText: StringConstructor;
|
||||
}, "title" | "readonly" | "loading" | "optionHeight" | "swipeDuration" | "visibleOptionNum" | "cancelButtonText" | "confirmButtonText">> & {
|
||||
modelValue: StringConstructor;
|
||||
columnsNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
columnsPlaceholder: {
|
||||
type: PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
areaList: {
|
||||
type: PropType<AreaList>;
|
||||
default: () => {};
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onChange?: ((...args: any[]) => any) | undefined;
|
||||
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
||||
onCancel?: ((...args: any[]) => any) | undefined;
|
||||
onConfirm?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
readonly: boolean;
|
||||
loading: boolean;
|
||||
optionHeight: string | number;
|
||||
swipeDuration: string | number;
|
||||
visibleOptionNum: string | number;
|
||||
columnsNum: string | number;
|
||||
columnsPlaceholder: string[];
|
||||
areaList: AreaList;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
76
node_modules/vant/es/area/Area.mjs
generated
vendored
Normal file
76
node_modules/vant/es/area/Area.mjs
generated
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
import { ref, watch, computed, defineComponent, mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
|
||||
import { pick, extend, makeArrayProp, makeNumericProp, createNamespace } from "../utils/index.mjs";
|
||||
import { pickerSharedProps } from "../picker/Picker.mjs";
|
||||
import { INHERIT_PROPS, INHERIT_SLOTS, formatDataForCascade } from "./utils.mjs";
|
||||
import { useExpose } from "../composables/use-expose.mjs";
|
||||
import { Picker } from "../picker/index.mjs";
|
||||
const [name, bem] = createNamespace("area");
|
||||
const areaProps = extend({}, pick(pickerSharedProps, INHERIT_PROPS), {
|
||||
modelValue: String,
|
||||
columnsNum: makeNumericProp(3),
|
||||
columnsPlaceholder: makeArrayProp(),
|
||||
areaList: {
|
||||
type: Object,
|
||||
default: () => ({})
|
||||
}
|
||||
});
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: areaProps,
|
||||
emits: ["change", "confirm", "cancel", "update:modelValue"],
|
||||
setup(props, {
|
||||
emit,
|
||||
slots
|
||||
}) {
|
||||
const codes = ref([]);
|
||||
const picker = ref();
|
||||
const columns = computed(() => formatDataForCascade(props));
|
||||
const onChange = (...args) => emit("change", ...args);
|
||||
const onCancel = (...args) => emit("cancel", ...args);
|
||||
const onConfirm = (...args) => emit("confirm", ...args);
|
||||
watch(codes, (newCodes) => {
|
||||
const lastCode = newCodes.length ? newCodes[newCodes.length - 1] : "";
|
||||
if (lastCode && lastCode !== props.modelValue) {
|
||||
emit("update:modelValue", lastCode);
|
||||
}
|
||||
}, {
|
||||
deep: true
|
||||
});
|
||||
watch(() => props.modelValue, (newCode) => {
|
||||
if (newCode) {
|
||||
const lastCode = codes.value.length ? codes.value[codes.value.length - 1] : "";
|
||||
if (newCode !== lastCode) {
|
||||
codes.value = [`${newCode.slice(0, 2)}0000`, `${newCode.slice(0, 4)}00`, newCode].slice(0, +props.columnsNum);
|
||||
}
|
||||
} else {
|
||||
codes.value = [];
|
||||
}
|
||||
}, {
|
||||
immediate: true
|
||||
});
|
||||
useExpose({
|
||||
confirm: () => {
|
||||
var _a;
|
||||
return (_a = picker.value) == null ? void 0 : _a.confirm();
|
||||
},
|
||||
getSelectedOptions: () => {
|
||||
var _a;
|
||||
return ((_a = picker.value) == null ? void 0 : _a.getSelectedOptions()) || [];
|
||||
}
|
||||
});
|
||||
return () => _createVNode(Picker, _mergeProps({
|
||||
"ref": picker,
|
||||
"modelValue": codes.value,
|
||||
"onUpdate:modelValue": ($event) => codes.value = $event,
|
||||
"class": bem(),
|
||||
"columns": columns.value,
|
||||
"onChange": onChange,
|
||||
"onCancel": onCancel,
|
||||
"onConfirm": onConfirm
|
||||
}, pick(props, INHERIT_PROPS)), pick(slots, INHERIT_SLOTS));
|
||||
}
|
||||
});
|
||||
export {
|
||||
areaProps,
|
||||
stdin_default as default
|
||||
};
|
||||
100
node_modules/vant/es/area/index.d.ts
generated
vendored
Normal file
100
node_modules/vant/es/area/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,100 @@
|
||||
export declare const Area: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<import("../utils").Writeable<Pick<{
|
||||
loading: BooleanConstructor;
|
||||
readonly: BooleanConstructor;
|
||||
allowHtml: BooleanConstructor;
|
||||
optionHeight: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showToolbar: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
swipeDuration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
visibleOptionNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
cancelButtonText: StringConstructor;
|
||||
confirmButtonText: StringConstructor;
|
||||
}, "title" | "readonly" | "loading" | "optionHeight" | "swipeDuration" | "visibleOptionNum" | "cancelButtonText" | "confirmButtonText">> & {
|
||||
modelValue: StringConstructor;
|
||||
columnsNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
columnsPlaceholder: {
|
||||
type: import("vue").PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
areaList: {
|
||||
type: import("vue").PropType<import("./types").AreaList>;
|
||||
default: () => {};
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "cancel" | "change" | "confirm")[], "update:modelValue" | "cancel" | "change" | "confirm", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<import("../utils").Writeable<Pick<{
|
||||
loading: BooleanConstructor;
|
||||
readonly: BooleanConstructor;
|
||||
allowHtml: BooleanConstructor;
|
||||
optionHeight: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
showToolbar: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
swipeDuration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
visibleOptionNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
} & {
|
||||
title: StringConstructor;
|
||||
cancelButtonText: StringConstructor;
|
||||
confirmButtonText: StringConstructor;
|
||||
}, "title" | "readonly" | "loading" | "optionHeight" | "swipeDuration" | "visibleOptionNum" | "cancelButtonText" | "confirmButtonText">> & {
|
||||
modelValue: StringConstructor;
|
||||
columnsNum: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
columnsPlaceholder: {
|
||||
type: import("vue").PropType<string[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
areaList: {
|
||||
type: import("vue").PropType<import("./types").AreaList>;
|
||||
default: () => {};
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onChange?: ((...args: any[]) => any) | undefined;
|
||||
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
||||
onCancel?: ((...args: any[]) => any) | undefined;
|
||||
onConfirm?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
readonly: boolean;
|
||||
loading: boolean;
|
||||
optionHeight: string | number;
|
||||
swipeDuration: string | number;
|
||||
visibleOptionNum: string | number;
|
||||
columnsNum: string | number;
|
||||
columnsPlaceholder: string[];
|
||||
areaList: import("./types").AreaList;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default Area;
|
||||
export { areaProps } from './Area';
|
||||
export type { AreaProps } from './Area';
|
||||
export type { AreaList, AreaInstance } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanArea: typeof Area;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/area/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/area/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _Area from "./Area.mjs";
|
||||
const Area = withInstall(_Area);
|
||||
var stdin_default = Area;
|
||||
import { areaProps } from "./Area.mjs";
|
||||
export {
|
||||
Area,
|
||||
areaProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/area/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/area/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
10
node_modules/vant/es/area/style/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/area/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import "../../style/base.css";
|
||||
import "../../badge/index.css";
|
||||
import "../../loading/index.css";
|
||||
import "../../sticky/index.css";
|
||||
import "../../swipe/index.css";
|
||||
import "../../swipe-item/index.css";
|
||||
import "../../tabs/index.css";
|
||||
import "../../tab/index.css";
|
||||
import "../../picker/index.css";
|
||||
import "../../picker-group/index.css";
|
||||
9
node_modules/vant/es/area/types.d.ts
generated
vendored
Normal file
9
node_modules/vant/es/area/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
import type { ComponentPublicInstance } from 'vue';
|
||||
import { PickerExpose } from '../picker/types';
|
||||
import type { AreaProps } from './Area';
|
||||
export type AreaList = {
|
||||
city_list: Record<string, string>;
|
||||
county_list: Record<string, string>;
|
||||
province_list: Record<string, string>;
|
||||
};
|
||||
export type AreaInstance = ComponentPublicInstance<AreaProps, PickerExpose>;
|
||||
0
node_modules/vant/es/area/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/area/types.mjs
generated
vendored
Normal file
6
node_modules/vant/es/area/utils.d.ts
generated
vendored
Normal file
6
node_modules/vant/es/area/utils.d.ts
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
import type { AreaProps } from '.';
|
||||
import type { PickerOption } from '../picker';
|
||||
export declare const AREA_EMPTY_CODE = "000000";
|
||||
export declare const INHERIT_SLOTS: readonly ["title", "cancel", "confirm", "toolbar", "columns-top", "columns-bottom"];
|
||||
export declare const INHERIT_PROPS: readonly ["title", "loading", "readonly", "optionHeight", "swipeDuration", "visibleOptionNum", "cancelButtonText", "confirmButtonText"];
|
||||
export declare function formatDataForCascade({ areaList, columnsNum, columnsPlaceholder: placeholder, }: AreaProps): PickerOption[];
|
||||
92
node_modules/vant/es/area/utils.mjs
generated
vendored
Normal file
92
node_modules/vant/es/area/utils.mjs
generated
vendored
Normal file
@@ -0,0 +1,92 @@
|
||||
const AREA_EMPTY_CODE = "000000";
|
||||
const INHERIT_SLOTS = [
|
||||
"title",
|
||||
"cancel",
|
||||
"confirm",
|
||||
"toolbar",
|
||||
"columns-top",
|
||||
"columns-bottom"
|
||||
];
|
||||
const INHERIT_PROPS = [
|
||||
"title",
|
||||
"loading",
|
||||
"readonly",
|
||||
"optionHeight",
|
||||
"swipeDuration",
|
||||
"visibleOptionNum",
|
||||
"cancelButtonText",
|
||||
"confirmButtonText"
|
||||
];
|
||||
const makeOption = (text = "", value = AREA_EMPTY_CODE, children = void 0) => ({
|
||||
text,
|
||||
value,
|
||||
children
|
||||
});
|
||||
function formatDataForCascade({
|
||||
areaList,
|
||||
columnsNum,
|
||||
columnsPlaceholder: placeholder
|
||||
}) {
|
||||
const {
|
||||
city_list: city = {},
|
||||
county_list: county = {},
|
||||
province_list: province = {}
|
||||
} = areaList;
|
||||
const showCity = +columnsNum > 1;
|
||||
const showCounty = +columnsNum > 2;
|
||||
const getProvinceChildren = () => {
|
||||
if (showCity) {
|
||||
return placeholder.length > 1 ? [
|
||||
makeOption(
|
||||
placeholder[1],
|
||||
AREA_EMPTY_CODE,
|
||||
showCounty ? [] : void 0
|
||||
)
|
||||
] : [];
|
||||
}
|
||||
};
|
||||
const provinceMap = /* @__PURE__ */ new Map();
|
||||
Object.keys(province).forEach((code) => {
|
||||
provinceMap.set(
|
||||
code.slice(0, 2),
|
||||
makeOption(province[code], code, getProvinceChildren())
|
||||
);
|
||||
});
|
||||
const cityMap = /* @__PURE__ */ new Map();
|
||||
if (showCity) {
|
||||
const getCityChildren = () => {
|
||||
if (showCounty) {
|
||||
return placeholder.length > 2 ? [makeOption(placeholder[2])] : [];
|
||||
}
|
||||
};
|
||||
Object.keys(city).forEach((code) => {
|
||||
const option = makeOption(city[code], code, getCityChildren());
|
||||
cityMap.set(code.slice(0, 4), option);
|
||||
const province2 = provinceMap.get(code.slice(0, 2));
|
||||
if (province2) {
|
||||
province2.children.push(option);
|
||||
}
|
||||
});
|
||||
}
|
||||
if (showCounty) {
|
||||
Object.keys(county).forEach((code) => {
|
||||
const city2 = cityMap.get(code.slice(0, 4));
|
||||
if (city2) {
|
||||
city2.children.push(makeOption(county[code], code));
|
||||
}
|
||||
});
|
||||
}
|
||||
const options = Array.from(provinceMap.values());
|
||||
if (placeholder.length) {
|
||||
const county2 = showCounty ? [makeOption(placeholder[2])] : void 0;
|
||||
const city2 = showCity ? [makeOption(placeholder[1], AREA_EMPTY_CODE, county2)] : void 0;
|
||||
options.unshift(makeOption(placeholder[0], AREA_EMPTY_CODE, city2));
|
||||
}
|
||||
return options;
|
||||
}
|
||||
export {
|
||||
AREA_EMPTY_CODE,
|
||||
INHERIT_PROPS,
|
||||
INHERIT_SLOTS,
|
||||
formatDataForCascade
|
||||
};
|
||||
53
node_modules/vant/es/back-top/BackTop.d.ts
generated
vendored
Normal file
53
node_modules/vant/es/back-top/BackTop.d.ts
generated
vendored
Normal file
@@ -0,0 +1,53 @@
|
||||
import { type PropType, type TeleportProps, type ExtractPropTypes } from 'vue';
|
||||
export declare const backTopProps: {
|
||||
right: (NumberConstructor | StringConstructor)[];
|
||||
bottom: (NumberConstructor | StringConstructor)[];
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
target: PropType<TeleportProps["to"]>;
|
||||
offset: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
immediate: BooleanConstructor;
|
||||
teleport: {
|
||||
type: PropType<TeleportProps["to"]>;
|
||||
default: string;
|
||||
};
|
||||
};
|
||||
export type BackTopProps = ExtractPropTypes<typeof backTopProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
right: (NumberConstructor | StringConstructor)[];
|
||||
bottom: (NumberConstructor | StringConstructor)[];
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
target: PropType<TeleportProps["to"]>;
|
||||
offset: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
immediate: BooleanConstructor;
|
||||
teleport: {
|
||||
type: PropType<TeleportProps["to"]>;
|
||||
default: string;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element | import("vue/jsx-runtime").JSX.Element[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
right: (NumberConstructor | StringConstructor)[];
|
||||
bottom: (NumberConstructor | StringConstructor)[];
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
target: PropType<TeleportProps["to"]>;
|
||||
offset: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
immediate: BooleanConstructor;
|
||||
teleport: {
|
||||
type: PropType<TeleportProps["to"]>;
|
||||
default: string;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onClick?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
offset: string | number;
|
||||
immediate: boolean;
|
||||
teleport: string | import("vue").RendererElement | null | undefined;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
118
node_modules/vant/es/back-top/BackTop.mjs
generated
vendored
Normal file
118
node_modules/vant/es/back-top/BackTop.mjs
generated
vendored
Normal file
@@ -0,0 +1,118 @@
|
||||
import { ref, watch, computed, Teleport, nextTick, onMounted, defineComponent, onDeactivated, onActivated, createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
|
||||
import { extend, addUnit, inBrowser, numericProp, getScrollTop, getZIndexStyle, createNamespace, makeNumericProp } from "../utils/index.mjs";
|
||||
import { throttle } from "../lazyload/vue-lazyload/util.mjs";
|
||||
import { useEventListener, getScrollParent } from "@vant/use";
|
||||
import { Icon } from "../icon/index.mjs";
|
||||
const [name, bem] = createNamespace("back-top");
|
||||
const backTopProps = {
|
||||
right: numericProp,
|
||||
bottom: numericProp,
|
||||
zIndex: numericProp,
|
||||
target: [String, Object],
|
||||
offset: makeNumericProp(200),
|
||||
immediate: Boolean,
|
||||
teleport: {
|
||||
type: [String, Object],
|
||||
default: "body"
|
||||
}
|
||||
};
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
inheritAttrs: false,
|
||||
props: backTopProps,
|
||||
emits: ["click"],
|
||||
setup(props, {
|
||||
emit,
|
||||
slots,
|
||||
attrs
|
||||
}) {
|
||||
let shouldReshow = false;
|
||||
const show = ref(false);
|
||||
const root = ref();
|
||||
const scrollParent = ref();
|
||||
const style = computed(() => extend(getZIndexStyle(props.zIndex), {
|
||||
right: addUnit(props.right),
|
||||
bottom: addUnit(props.bottom)
|
||||
}));
|
||||
const onClick = (event) => {
|
||||
var _a;
|
||||
emit("click", event);
|
||||
(_a = scrollParent.value) == null ? void 0 : _a.scrollTo({
|
||||
top: 0,
|
||||
behavior: props.immediate ? "auto" : "smooth"
|
||||
});
|
||||
};
|
||||
const scroll = () => {
|
||||
show.value = scrollParent.value ? getScrollTop(scrollParent.value) >= +props.offset : false;
|
||||
};
|
||||
const getTarget = () => {
|
||||
const {
|
||||
target
|
||||
} = props;
|
||||
if (typeof target === "string") {
|
||||
const el = document.querySelector(target);
|
||||
if (el) {
|
||||
return el;
|
||||
}
|
||||
if (process.env.NODE_ENV !== "production") {
|
||||
console.error(`[Vant] BackTop: target element "${target}" was not found, the BackTop component will not be rendered.`);
|
||||
}
|
||||
} else {
|
||||
return target;
|
||||
}
|
||||
};
|
||||
const updateTarget = () => {
|
||||
if (inBrowser) {
|
||||
nextTick(() => {
|
||||
scrollParent.value = props.target ? getTarget() : getScrollParent(root.value);
|
||||
scroll();
|
||||
});
|
||||
}
|
||||
};
|
||||
useEventListener("scroll", throttle(scroll, 100), {
|
||||
target: scrollParent
|
||||
});
|
||||
onMounted(updateTarget);
|
||||
onActivated(() => {
|
||||
if (shouldReshow) {
|
||||
show.value = true;
|
||||
shouldReshow = false;
|
||||
}
|
||||
});
|
||||
onDeactivated(() => {
|
||||
if (show.value && props.teleport) {
|
||||
show.value = false;
|
||||
shouldReshow = true;
|
||||
}
|
||||
});
|
||||
watch(() => props.target, updateTarget);
|
||||
return () => {
|
||||
const Content = _createVNode("div", _mergeProps({
|
||||
"ref": !props.teleport ? root : void 0,
|
||||
"class": bem({
|
||||
active: show.value
|
||||
}),
|
||||
"style": style.value,
|
||||
"onClick": onClick
|
||||
}, attrs), [slots.default ? slots.default() : _createVNode(Icon, {
|
||||
"name": "back-top",
|
||||
"class": bem("icon")
|
||||
}, null)]);
|
||||
if (props.teleport) {
|
||||
return [_createVNode("div", {
|
||||
"ref": root,
|
||||
"class": bem("placeholder")
|
||||
}, null), _createVNode(Teleport, {
|
||||
"to": props.teleport
|
||||
}, {
|
||||
default: () => [Content]
|
||||
})];
|
||||
}
|
||||
return Content;
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
backTopProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/back-top/index.css
generated
vendored
Normal file
1
node_modules/vant/es/back-top/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-back-top-size: 40px;--van-back-top-right: 30px;--van-back-top-bottom: 40px;--van-back-top-z-index: 100;--van-back-top-icon-size: 20px;--van-back-top-text-color: #fff;--van-back-top-background: var(--van-blue)}.van-back-top{position:fixed;display:flex;align-items:center;justify-content:center;width:var(--van-back-top-size);height:var(--van-back-top-size);right:var(--van-back-top-right);bottom:var(--van-back-top-bottom);z-index:var(--van-back-top-z-index);cursor:pointer;color:var(--van-back-top-text-color);border-radius:var(--van-radius-max);box-shadow:0 2px 8px rgba(0,0,0,.12);transform:scale(0);transition:var(--van-duration-base) cubic-bezier(.25,.8,.5,1);background-color:var(--van-back-top-background)}.van-back-top:active{opacity:var(--van-active-opacity)}.van-back-top__placeholder{display:none}.van-back-top--active{transform:scale(1)}.van-back-top__icon{font-size:var(--van-back-top-icon-size);font-weight:var(--van-font-bold)}
|
||||
44
node_modules/vant/es/back-top/index.d.ts
generated
vendored
Normal file
44
node_modules/vant/es/back-top/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
export declare const BackTop: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
right: (NumberConstructor | StringConstructor)[];
|
||||
bottom: (NumberConstructor | StringConstructor)[];
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
target: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
offset: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
immediate: BooleanConstructor;
|
||||
teleport: {
|
||||
type: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
default: string;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element | import("vue/jsx-runtime").JSX.Element[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
right: (NumberConstructor | StringConstructor)[];
|
||||
bottom: (NumberConstructor | StringConstructor)[];
|
||||
zIndex: (NumberConstructor | StringConstructor)[];
|
||||
target: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
offset: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
immediate: BooleanConstructor;
|
||||
teleport: {
|
||||
type: import("vue").PropType<import("vue").TeleportProps["to"]>;
|
||||
default: string;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onClick?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
offset: string | number;
|
||||
immediate: boolean;
|
||||
teleport: string | import("vue").RendererElement | null | undefined;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default BackTop;
|
||||
export { backTopProps } from './BackTop';
|
||||
export type { BackTopProps } from './BackTop';
|
||||
export type { BackTopThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanBackTop: typeof BackTop;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/back-top/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/back-top/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _BackTop from "./BackTop.mjs";
|
||||
const BackTop = withInstall(_BackTop);
|
||||
var stdin_default = BackTop;
|
||||
import { backTopProps } from "./BackTop.mjs";
|
||||
export {
|
||||
BackTop,
|
||||
backTopProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/back-top/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/back-top/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
4
node_modules/vant/es/back-top/style/index.mjs
generated
vendored
Normal file
4
node_modules/vant/es/back-top/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import "../../style/base.css";
|
||||
import "../../badge/index.css";
|
||||
import "../../icon/index.css";
|
||||
import "../index.css";
|
||||
9
node_modules/vant/es/back-top/types.d.ts
generated
vendored
Normal file
9
node_modules/vant/es/back-top/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
export type BackTopThemeVars = {
|
||||
backTopSize?: string;
|
||||
backTopRight?: string;
|
||||
backTopBottom?: string;
|
||||
backTopZIndex?: number | string;
|
||||
backTopIconSize?: string;
|
||||
backTopTextColor?: string;
|
||||
backTopBackground?: string;
|
||||
};
|
||||
0
node_modules/vant/es/back-top/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/back-top/types.mjs
generated
vendored
Normal file
66
node_modules/vant/es/badge/Badge.d.ts
generated
vendored
Normal file
66
node_modules/vant/es/badge/Badge.d.ts
generated
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
import { type PropType, type ExtractPropTypes } from 'vue';
|
||||
import { type Numeric } from '../utils';
|
||||
export type BadgePosition = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
||||
export declare const badgeProps: {
|
||||
dot: BooleanConstructor;
|
||||
max: (NumberConstructor | StringConstructor)[];
|
||||
tag: {
|
||||
type: PropType<keyof HTMLElementTagNameMap>;
|
||||
default: keyof HTMLElementTagNameMap;
|
||||
};
|
||||
color: StringConstructor;
|
||||
offset: PropType<[Numeric, Numeric]>;
|
||||
content: (NumberConstructor | StringConstructor)[];
|
||||
showZero: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
position: {
|
||||
type: PropType<BadgePosition>;
|
||||
default: BadgePosition;
|
||||
};
|
||||
};
|
||||
export type BadgeProps = ExtractPropTypes<typeof badgeProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
dot: BooleanConstructor;
|
||||
max: (NumberConstructor | StringConstructor)[];
|
||||
tag: {
|
||||
type: PropType<keyof HTMLElementTagNameMap>;
|
||||
default: keyof HTMLElementTagNameMap;
|
||||
};
|
||||
color: StringConstructor;
|
||||
offset: PropType<[Numeric, Numeric]>;
|
||||
content: (NumberConstructor | StringConstructor)[];
|
||||
showZero: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
position: {
|
||||
type: PropType<BadgePosition>;
|
||||
default: BadgePosition;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
dot: BooleanConstructor;
|
||||
max: (NumberConstructor | StringConstructor)[];
|
||||
tag: {
|
||||
type: PropType<keyof HTMLElementTagNameMap>;
|
||||
default: keyof HTMLElementTagNameMap;
|
||||
};
|
||||
color: StringConstructor;
|
||||
offset: PropType<[Numeric, Numeric]>;
|
||||
content: (NumberConstructor | StringConstructor)[];
|
||||
showZero: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
position: {
|
||||
type: PropType<BadgePosition>;
|
||||
default: BadgePosition;
|
||||
};
|
||||
}>> & Readonly<{}>, {
|
||||
dot: boolean;
|
||||
tag: keyof HTMLElementTagNameMap;
|
||||
showZero: boolean;
|
||||
position: BadgePosition;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
104
node_modules/vant/es/badge/Badge.mjs
generated
vendored
Normal file
104
node_modules/vant/es/badge/Badge.mjs
generated
vendored
Normal file
@@ -0,0 +1,104 @@
|
||||
import { computed, defineComponent, createVNode as _createVNode } from "vue";
|
||||
import { isDef, addUnit, isNumeric, truthProp, numericProp, makeStringProp, createNamespace } from "../utils/index.mjs";
|
||||
const [name, bem] = createNamespace("badge");
|
||||
const badgeProps = {
|
||||
dot: Boolean,
|
||||
max: numericProp,
|
||||
tag: makeStringProp("div"),
|
||||
color: String,
|
||||
offset: Array,
|
||||
content: numericProp,
|
||||
showZero: truthProp,
|
||||
position: makeStringProp("top-right")
|
||||
};
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: badgeProps,
|
||||
setup(props, {
|
||||
slots
|
||||
}) {
|
||||
const hasContent = () => {
|
||||
if (slots.content) {
|
||||
return true;
|
||||
}
|
||||
const {
|
||||
content,
|
||||
showZero
|
||||
} = props;
|
||||
return isDef(content) && content !== "" && (showZero || content !== 0 && content !== "0");
|
||||
};
|
||||
const renderContent = () => {
|
||||
const {
|
||||
dot,
|
||||
max,
|
||||
content
|
||||
} = props;
|
||||
if (!dot && hasContent()) {
|
||||
if (slots.content) {
|
||||
return slots.content();
|
||||
}
|
||||
if (isDef(max) && isNumeric(content) && +content > +max) {
|
||||
return `${max}+`;
|
||||
}
|
||||
return content;
|
||||
}
|
||||
};
|
||||
const getOffsetWithMinusString = (val) => val.startsWith("-") ? val.replace("-", "") : `-${val}`;
|
||||
const style = computed(() => {
|
||||
const style2 = {
|
||||
background: props.color
|
||||
};
|
||||
if (props.offset) {
|
||||
const [x, y] = props.offset;
|
||||
const {
|
||||
position
|
||||
} = props;
|
||||
const [offsetY, offsetX] = position.split("-");
|
||||
if (slots.default) {
|
||||
if (typeof y === "number") {
|
||||
style2[offsetY] = addUnit(offsetY === "top" ? y : -y);
|
||||
} else {
|
||||
style2[offsetY] = offsetY === "top" ? addUnit(y) : getOffsetWithMinusString(y);
|
||||
}
|
||||
if (typeof x === "number") {
|
||||
style2[offsetX] = addUnit(offsetX === "left" ? x : -x);
|
||||
} else {
|
||||
style2[offsetX] = offsetX === "left" ? addUnit(x) : getOffsetWithMinusString(x);
|
||||
}
|
||||
} else {
|
||||
style2.marginTop = addUnit(y);
|
||||
style2.marginLeft = addUnit(x);
|
||||
}
|
||||
}
|
||||
return style2;
|
||||
});
|
||||
const renderBadge = () => {
|
||||
if (hasContent() || props.dot) {
|
||||
return _createVNode("div", {
|
||||
"class": bem([props.position, {
|
||||
dot: props.dot,
|
||||
fixed: !!slots.default
|
||||
}]),
|
||||
"style": style.value
|
||||
}, [renderContent()]);
|
||||
}
|
||||
};
|
||||
return () => {
|
||||
if (slots.default) {
|
||||
const {
|
||||
tag
|
||||
} = props;
|
||||
return _createVNode(tag, {
|
||||
"class": bem("wrapper")
|
||||
}, {
|
||||
default: () => [slots.default(), renderBadge()]
|
||||
});
|
||||
}
|
||||
return renderBadge();
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
badgeProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/badge/index.css
generated
vendored
Normal file
1
node_modules/vant/es/badge/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-badge-size: 16px;--van-badge-color: var(--van-white);--van-badge-padding: 0 3px;--van-badge-font-size: var(--van-font-size-sm);--van-badge-font-weight: var(--van-font-bold);--van-badge-border-width: var(--van-border-width);--van-badge-background: var(--van-danger-color);--van-badge-dot-color: var(--van-danger-color);--van-badge-dot-size: 8px;--van-badge-font: -apple-system-font, helvetica neue, arial, sans-serif}.van-badge{display:inline-block;box-sizing:border-box;min-width:var(--van-badge-size);padding:var(--van-badge-padding);color:var(--van-badge-color);font-weight:var(--van-badge-font-weight);font-size:var(--van-badge-font-size);font-family:var(--van-badge-font);line-height:1.2;text-align:center;background:var(--van-badge-background);border:var(--van-badge-border-width) solid var(--van-background-2);border-radius:var(--van-radius-max)}.van-badge--fixed{position:absolute;transform-origin:100%}.van-badge--top-left{top:0;left:0;transform:translate(-50%,-50%)}.van-badge--top-right{top:0;right:0;transform:translate(50%,-50%)}.van-badge--bottom-left{bottom:0;left:0;transform:translate(-50%,50%)}.van-badge--bottom-right{bottom:0;right:0;transform:translate(50%,50%)}.van-badge--dot{width:var(--van-badge-dot-size);min-width:0;height:var(--van-badge-dot-size);background:var(--van-badge-dot-color);border-radius:100%;border:none;padding:0}.van-badge__wrapper{position:relative;display:inline-block}
|
||||
51
node_modules/vant/es/badge/index.d.ts
generated
vendored
Normal file
51
node_modules/vant/es/badge/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
export declare const Badge: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
dot: BooleanConstructor;
|
||||
max: (NumberConstructor | StringConstructor)[];
|
||||
tag: {
|
||||
type: import("vue").PropType<keyof HTMLElementTagNameMap>;
|
||||
default: keyof HTMLElementTagNameMap;
|
||||
};
|
||||
color: StringConstructor;
|
||||
offset: import("vue").PropType<[import("../utils").Numeric, import("../utils").Numeric]>;
|
||||
content: (NumberConstructor | StringConstructor)[];
|
||||
showZero: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
position: {
|
||||
type: import("vue").PropType<import("./Badge").BadgePosition>;
|
||||
default: import("./Badge").BadgePosition;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
dot: BooleanConstructor;
|
||||
max: (NumberConstructor | StringConstructor)[];
|
||||
tag: {
|
||||
type: import("vue").PropType<keyof HTMLElementTagNameMap>;
|
||||
default: keyof HTMLElementTagNameMap;
|
||||
};
|
||||
color: StringConstructor;
|
||||
offset: import("vue").PropType<[import("../utils").Numeric, import("../utils").Numeric]>;
|
||||
content: (NumberConstructor | StringConstructor)[];
|
||||
showZero: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
position: {
|
||||
type: import("vue").PropType<import("./Badge").BadgePosition>;
|
||||
default: import("./Badge").BadgePosition;
|
||||
};
|
||||
}>> & Readonly<{}>, {
|
||||
dot: boolean;
|
||||
tag: keyof HTMLElementTagNameMap;
|
||||
showZero: boolean;
|
||||
position: import("./Badge").BadgePosition;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default Badge;
|
||||
export { badgeProps } from './Badge';
|
||||
export type { BadgeProps, BadgePosition } from './Badge';
|
||||
export type { BadgeThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanBadge: typeof Badge;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/badge/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/badge/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _Badge from "./Badge.mjs";
|
||||
const Badge = withInstall(_Badge);
|
||||
var stdin_default = Badge;
|
||||
import { badgeProps } from "./Badge.mjs";
|
||||
export {
|
||||
Badge,
|
||||
badgeProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/badge/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/badge/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
2
node_modules/vant/es/badge/style/index.mjs
generated
vendored
Normal file
2
node_modules/vant/es/badge/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
import "../../style/base.css";
|
||||
import "../index.css";
|
||||
12
node_modules/vant/es/badge/types.d.ts
generated
vendored
Normal file
12
node_modules/vant/es/badge/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
export type BadgeThemeVars = {
|
||||
badgeSize?: string;
|
||||
badgeColor?: string;
|
||||
badgePadding?: string;
|
||||
badgeFontSize?: string;
|
||||
badgeFontWeight?: string;
|
||||
badgeBorderWidth?: string;
|
||||
badgeBackground?: string;
|
||||
badgeDotColor?: string;
|
||||
badgeDotSize?: string;
|
||||
badgeFont?: string;
|
||||
};
|
||||
0
node_modules/vant/es/badge/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/badge/types.mjs
generated
vendored
Normal file
93
node_modules/vant/es/barrage/Barrage.d.ts
generated
vendored
Normal file
93
node_modules/vant/es/barrage/Barrage.d.ts
generated
vendored
Normal file
@@ -0,0 +1,93 @@
|
||||
import { type ExtractPropTypes } from 'vue';
|
||||
export interface BarrageItem {
|
||||
id: string | number;
|
||||
text: string | number;
|
||||
}
|
||||
export declare const barrageProps: {
|
||||
top: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
rows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
duration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
autoPlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
delay: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: import("vue").PropType<BarrageItem[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
};
|
||||
export type BarrageProps = ExtractPropTypes<typeof barrageProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
top: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
rows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
duration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
autoPlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
delay: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: import("vue").PropType<BarrageItem[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
top: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
rows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
duration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
autoPlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
delay: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: import("vue").PropType<BarrageItem[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
}>> & Readonly<{
|
||||
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
top: string | number;
|
||||
modelValue: BarrageItem[];
|
||||
rows: string | number;
|
||||
duration: string | number;
|
||||
autoPlay: boolean;
|
||||
delay: number;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
133
node_modules/vant/es/barrage/Barrage.mjs
generated
vendored
Normal file
133
node_modules/vant/es/barrage/Barrage.mjs
generated
vendored
Normal file
@@ -0,0 +1,133 @@
|
||||
var __async = (__this, __arguments, generator) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
var fulfilled = (value) => {
|
||||
try {
|
||||
step(generator.next(value));
|
||||
} catch (e) {
|
||||
reject(e);
|
||||
}
|
||||
};
|
||||
var rejected = (value) => {
|
||||
try {
|
||||
step(generator.throw(value));
|
||||
} catch (e) {
|
||||
reject(e);
|
||||
}
|
||||
};
|
||||
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
||||
step((generator = generator.apply(__this, __arguments)).next());
|
||||
});
|
||||
};
|
||||
import { defineComponent, onMounted, ref, nextTick, watch, createVNode as _createVNode } from "vue";
|
||||
import { useExpose } from "../composables/use-expose.mjs";
|
||||
import { createNamespace, makeArrayProp, makeNumberProp, makeNumericProp, truthProp } from "../utils/index.mjs";
|
||||
const barrageProps = {
|
||||
top: makeNumericProp(10),
|
||||
rows: makeNumericProp(4),
|
||||
duration: makeNumericProp(4e3),
|
||||
autoPlay: truthProp,
|
||||
delay: makeNumberProp(300),
|
||||
modelValue: makeArrayProp()
|
||||
};
|
||||
const [name, bem] = createNamespace("barrage");
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: barrageProps,
|
||||
emits: ["update:modelValue"],
|
||||
setup(props, {
|
||||
emit,
|
||||
slots
|
||||
}) {
|
||||
const barrageWrapper = ref();
|
||||
const className = bem("item");
|
||||
const total = ref(0);
|
||||
const barrageItems = [];
|
||||
const createBarrageItem = (text, delay = props.delay) => {
|
||||
const item = document.createElement("span");
|
||||
item.className = className;
|
||||
item.innerText = String(text);
|
||||
item.style.animationDuration = `${props.duration}ms`;
|
||||
item.style.animationDelay = `${delay}ms`;
|
||||
item.style.animationName = "van-barrage";
|
||||
item.style.animationTimingFunction = "linear";
|
||||
return item;
|
||||
};
|
||||
const isInitBarrage = ref(true);
|
||||
const isPlay = ref(props.autoPlay);
|
||||
const appendBarrageItem = ({
|
||||
id,
|
||||
text
|
||||
}, i) => {
|
||||
var _a;
|
||||
const item = createBarrageItem(text, isInitBarrage.value ? i * props.delay : void 0);
|
||||
if (!props.autoPlay && isPlay.value === false) {
|
||||
item.style.animationPlayState = "paused";
|
||||
}
|
||||
(_a = barrageWrapper.value) == null ? void 0 : _a.append(item);
|
||||
total.value++;
|
||||
const top = (total.value - 1) % +props.rows * item.offsetHeight + +props.top;
|
||||
item.style.top = `${top}px`;
|
||||
item.dataset.id = String(id);
|
||||
barrageItems.push(item);
|
||||
item.addEventListener("animationend", () => {
|
||||
emit("update:modelValue", [...props.modelValue].filter((v) => String(v.id) !== item.dataset.id));
|
||||
});
|
||||
};
|
||||
const updateBarrages = (newValue, oldValue) => {
|
||||
const map = new Map(oldValue.map((item) => [item.id, item]));
|
||||
newValue.forEach((item, i) => {
|
||||
if (map.has(item.id)) {
|
||||
map.delete(item.id);
|
||||
} else {
|
||||
appendBarrageItem(item, i);
|
||||
}
|
||||
});
|
||||
map.forEach((item) => {
|
||||
const index = barrageItems.findIndex((span) => span.dataset.id === String(item.id));
|
||||
if (index > -1) {
|
||||
barrageItems[index].remove();
|
||||
barrageItems.splice(index, 1);
|
||||
}
|
||||
});
|
||||
isInitBarrage.value = false;
|
||||
};
|
||||
watch(() => props.modelValue.slice(), (newValue, oldValue) => updateBarrages(newValue != null ? newValue : [], oldValue != null ? oldValue : []), {
|
||||
deep: true
|
||||
});
|
||||
const rootStyle = ref({});
|
||||
onMounted(() => __async(null, null, function* () {
|
||||
var _a;
|
||||
rootStyle.value["--move-distance"] = `-${(_a = barrageWrapper.value) == null ? void 0 : _a.offsetWidth}px`;
|
||||
yield nextTick();
|
||||
updateBarrages(props.modelValue, []);
|
||||
}));
|
||||
const play = () => {
|
||||
isPlay.value = true;
|
||||
barrageItems.forEach((item) => {
|
||||
item.style.animationPlayState = "running";
|
||||
});
|
||||
};
|
||||
const pause = () => {
|
||||
isPlay.value = false;
|
||||
barrageItems.forEach((item) => {
|
||||
item.style.animationPlayState = "paused";
|
||||
});
|
||||
};
|
||||
useExpose({
|
||||
play,
|
||||
pause
|
||||
});
|
||||
return () => {
|
||||
var _a;
|
||||
return _createVNode("div", {
|
||||
"class": bem(),
|
||||
"ref": barrageWrapper,
|
||||
"style": rootStyle.value
|
||||
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
barrageProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/barrage/index.css
generated
vendored
Normal file
1
node_modules/vant/es/barrage/index.css
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
:root,:host{--van-barrage-font-size: 16px;--van-barrage-space: 10px;--van-barrage-font: inherit;--van-barrage-color: var(--van-white)}.van-barrage{position:relative;overflow:hidden}.van-barrage__item{position:absolute;top:0;right:0;z-index:99;padding-bottom:var(--van-barrage-space);opacity:.75;line-height:1;font-size:var(--van-barrage-font-size);font-family:var(--van-barrage-font);font-weight:700;white-space:nowrap;color:var(--van-barrage-color);text-shadow:1px 0 1px #000000,0 1px 1px #000000,0 -1px 1px #000000,-1px 0 1px #000000;-webkit-user-select:none;user-select:none;will-change:transform;transform:translate(110%)}@keyframes van-barrage{0%{transform:translate(110%)}to{transform:translate(var(--move-distance))}}
|
||||
69
node_modules/vant/es/barrage/index.d.ts
generated
vendored
Normal file
69
node_modules/vant/es/barrage/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1,69 @@
|
||||
export declare const Barrage: import("../utils").WithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
||||
top: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
rows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
duration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
autoPlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
delay: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: import("vue").PropType<import("./Barrage").BarrageItem[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
||||
top: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
rows: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
duration: {
|
||||
type: (NumberConstructor | StringConstructor)[];
|
||||
default: number;
|
||||
};
|
||||
autoPlay: {
|
||||
type: BooleanConstructor;
|
||||
default: true;
|
||||
};
|
||||
delay: {
|
||||
type: NumberConstructor;
|
||||
default: number;
|
||||
};
|
||||
modelValue: {
|
||||
type: import("vue").PropType<import("./Barrage").BarrageItem[]>;
|
||||
default: () => never[];
|
||||
};
|
||||
}>> & Readonly<{
|
||||
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
top: string | number;
|
||||
modelValue: import("./Barrage").BarrageItem[];
|
||||
rows: string | number;
|
||||
duration: string | number;
|
||||
autoPlay: boolean;
|
||||
delay: number;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
|
||||
export default Barrage;
|
||||
export { barrageProps } from './Barrage';
|
||||
export type { BarrageProps, BarrageItem } from './Barrage';
|
||||
export type { BarrageInstance, BarrageThemeVars } from './types';
|
||||
declare module 'vue' {
|
||||
interface GlobalComponents {
|
||||
VanBarrage: typeof Barrage;
|
||||
}
|
||||
}
|
||||
10
node_modules/vant/es/barrage/index.mjs
generated
vendored
Normal file
10
node_modules/vant/es/barrage/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { withInstall } from "../utils/index.mjs";
|
||||
import _Barrage from "./Barrage.mjs";
|
||||
const Barrage = withInstall(_Barrage);
|
||||
var stdin_default = Barrage;
|
||||
import { barrageProps } from "./Barrage.mjs";
|
||||
export {
|
||||
Barrage,
|
||||
barrageProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/barrage/style/index.d.ts
generated
vendored
Normal file
1
node_modules/vant/es/barrage/style/index.d.ts
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
2
node_modules/vant/es/barrage/style/index.mjs
generated
vendored
Normal file
2
node_modules/vant/es/barrage/style/index.mjs
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
import "../../style/base.css";
|
||||
import "../index.css";
|
||||
13
node_modules/vant/es/barrage/types.d.ts
generated
vendored
Normal file
13
node_modules/vant/es/barrage/types.d.ts
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
import { ComponentPublicInstance } from 'vue';
|
||||
import { BarrageProps } from './Barrage';
|
||||
export type BarrageExpose = {
|
||||
play(): void;
|
||||
pause(): void;
|
||||
};
|
||||
export type BarrageInstance = ComponentPublicInstance<BarrageProps, BarrageExpose>;
|
||||
export type BarrageThemeVars = {
|
||||
barrageFontSize?: string;
|
||||
barrageSpace?: string;
|
||||
barrageFont?: string;
|
||||
barrageColor?: string;
|
||||
};
|
||||
0
node_modules/vant/es/barrage/types.mjs
generated
vendored
Normal file
0
node_modules/vant/es/barrage/types.mjs
generated
vendored
Normal file
140
node_modules/vant/es/button/Button.d.ts
generated
vendored
Normal file
140
node_modules/vant/es/button/Button.d.ts
generated
vendored
Normal file
@@ -0,0 +1,140 @@
|
||||
import { type PropType, type ExtractPropTypes } from 'vue';
|
||||
import { LoadingType } from '../loading';
|
||||
import { ButtonSize, ButtonType, ButtonNativeType, ButtonIconPosition } from './types';
|
||||
export declare const buttonProps: {
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
tag: {
|
||||
type: PropType<keyof HTMLElementTagNameMap>;
|
||||
default: keyof HTMLElementTagNameMap;
|
||||
};
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
type: {
|
||||
type: PropType<ButtonType>;
|
||||
default: ButtonType;
|
||||
};
|
||||
size: {
|
||||
type: PropType<ButtonSize>;
|
||||
default: ButtonSize;
|
||||
};
|
||||
color: StringConstructor;
|
||||
block: BooleanConstructor;
|
||||
plain: BooleanConstructor;
|
||||
round: BooleanConstructor;
|
||||
square: BooleanConstructor;
|
||||
loading: BooleanConstructor;
|
||||
hairline: BooleanConstructor;
|
||||
disabled: BooleanConstructor;
|
||||
iconPrefix: StringConstructor;
|
||||
nativeType: {
|
||||
type: PropType<ButtonNativeType>;
|
||||
default: ButtonNativeType;
|
||||
};
|
||||
loadingSize: (NumberConstructor | StringConstructor)[];
|
||||
loadingText: StringConstructor;
|
||||
loadingType: PropType<LoadingType>;
|
||||
iconPosition: {
|
||||
type: PropType<ButtonIconPosition>;
|
||||
default: ButtonIconPosition;
|
||||
};
|
||||
};
|
||||
export type ButtonProps = ExtractPropTypes<typeof buttonProps>;
|
||||
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
tag: {
|
||||
type: PropType<keyof HTMLElementTagNameMap>;
|
||||
default: keyof HTMLElementTagNameMap;
|
||||
};
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
type: {
|
||||
type: PropType<ButtonType>;
|
||||
default: ButtonType;
|
||||
};
|
||||
size: {
|
||||
type: PropType<ButtonSize>;
|
||||
default: ButtonSize;
|
||||
};
|
||||
color: StringConstructor;
|
||||
block: BooleanConstructor;
|
||||
plain: BooleanConstructor;
|
||||
round: BooleanConstructor;
|
||||
square: BooleanConstructor;
|
||||
loading: BooleanConstructor;
|
||||
hairline: BooleanConstructor;
|
||||
disabled: BooleanConstructor;
|
||||
iconPrefix: StringConstructor;
|
||||
nativeType: {
|
||||
type: PropType<ButtonNativeType>;
|
||||
default: ButtonNativeType;
|
||||
};
|
||||
loadingSize: (NumberConstructor | StringConstructor)[];
|
||||
loadingText: StringConstructor;
|
||||
loadingType: PropType<LoadingType>;
|
||||
iconPosition: {
|
||||
type: PropType<ButtonIconPosition>;
|
||||
default: ButtonIconPosition;
|
||||
};
|
||||
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<ExtractPropTypes<{
|
||||
to: PropType<import("vue-router").RouteLocationRaw>;
|
||||
url: StringConstructor;
|
||||
replace: BooleanConstructor;
|
||||
} & {
|
||||
tag: {
|
||||
type: PropType<keyof HTMLElementTagNameMap>;
|
||||
default: keyof HTMLElementTagNameMap;
|
||||
};
|
||||
text: StringConstructor;
|
||||
icon: StringConstructor;
|
||||
type: {
|
||||
type: PropType<ButtonType>;
|
||||
default: ButtonType;
|
||||
};
|
||||
size: {
|
||||
type: PropType<ButtonSize>;
|
||||
default: ButtonSize;
|
||||
};
|
||||
color: StringConstructor;
|
||||
block: BooleanConstructor;
|
||||
plain: BooleanConstructor;
|
||||
round: BooleanConstructor;
|
||||
square: BooleanConstructor;
|
||||
loading: BooleanConstructor;
|
||||
hairline: BooleanConstructor;
|
||||
disabled: BooleanConstructor;
|
||||
iconPrefix: StringConstructor;
|
||||
nativeType: {
|
||||
type: PropType<ButtonNativeType>;
|
||||
default: ButtonNativeType;
|
||||
};
|
||||
loadingSize: (NumberConstructor | StringConstructor)[];
|
||||
loadingText: StringConstructor;
|
||||
loadingType: PropType<LoadingType>;
|
||||
iconPosition: {
|
||||
type: PropType<ButtonIconPosition>;
|
||||
default: ButtonIconPosition;
|
||||
};
|
||||
}>> & Readonly<{
|
||||
onClick?: ((...args: any[]) => any) | undefined;
|
||||
}>, {
|
||||
replace: boolean;
|
||||
type: ButtonType;
|
||||
tag: keyof HTMLElementTagNameMap;
|
||||
round: boolean;
|
||||
size: ButtonSize;
|
||||
disabled: boolean;
|
||||
block: boolean;
|
||||
square: boolean;
|
||||
loading: boolean;
|
||||
plain: boolean;
|
||||
hairline: boolean;
|
||||
nativeType: ButtonNativeType;
|
||||
iconPosition: ButtonIconPosition;
|
||||
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
||||
export default _default;
|
||||
148
node_modules/vant/es/button/Button.mjs
generated
vendored
Normal file
148
node_modules/vant/es/button/Button.mjs
generated
vendored
Normal file
@@ -0,0 +1,148 @@
|
||||
import { defineComponent, createVNode as _createVNode } from "vue";
|
||||
import { extend, numericProp, preventDefault, makeStringProp, createNamespace, BORDER_SURROUND } from "../utils/index.mjs";
|
||||
import { useRoute, routeProps } from "../composables/use-route.mjs";
|
||||
import { Icon } from "../icon/index.mjs";
|
||||
import { Loading } from "../loading/index.mjs";
|
||||
const [name, bem] = createNamespace("button");
|
||||
const buttonProps = extend({}, routeProps, {
|
||||
tag: makeStringProp("button"),
|
||||
text: String,
|
||||
icon: String,
|
||||
type: makeStringProp("default"),
|
||||
size: makeStringProp("normal"),
|
||||
color: String,
|
||||
block: Boolean,
|
||||
plain: Boolean,
|
||||
round: Boolean,
|
||||
square: Boolean,
|
||||
loading: Boolean,
|
||||
hairline: Boolean,
|
||||
disabled: Boolean,
|
||||
iconPrefix: String,
|
||||
nativeType: makeStringProp("button"),
|
||||
loadingSize: numericProp,
|
||||
loadingText: String,
|
||||
loadingType: String,
|
||||
iconPosition: makeStringProp("left")
|
||||
});
|
||||
var stdin_default = defineComponent({
|
||||
name,
|
||||
props: buttonProps,
|
||||
emits: ["click"],
|
||||
setup(props, {
|
||||
emit,
|
||||
slots
|
||||
}) {
|
||||
const route = useRoute();
|
||||
const renderLoadingIcon = () => {
|
||||
if (slots.loading) {
|
||||
return slots.loading();
|
||||
}
|
||||
return _createVNode(Loading, {
|
||||
"size": props.loadingSize,
|
||||
"type": props.loadingType,
|
||||
"class": bem("loading")
|
||||
}, null);
|
||||
};
|
||||
const renderIcon = () => {
|
||||
if (props.loading) {
|
||||
return renderLoadingIcon();
|
||||
}
|
||||
if (slots.icon) {
|
||||
return _createVNode("div", {
|
||||
"class": bem("icon")
|
||||
}, [slots.icon()]);
|
||||
}
|
||||
if (props.icon) {
|
||||
return _createVNode(Icon, {
|
||||
"name": props.icon,
|
||||
"class": bem("icon"),
|
||||
"classPrefix": props.iconPrefix
|
||||
}, null);
|
||||
}
|
||||
};
|
||||
const renderText = () => {
|
||||
let text;
|
||||
if (props.loading) {
|
||||
text = props.loadingText;
|
||||
} else {
|
||||
text = slots.default ? slots.default() : props.text;
|
||||
}
|
||||
if (text) {
|
||||
return _createVNode("span", {
|
||||
"class": bem("text")
|
||||
}, [text]);
|
||||
}
|
||||
};
|
||||
const getStyle = () => {
|
||||
const {
|
||||
color,
|
||||
plain
|
||||
} = props;
|
||||
if (color) {
|
||||
const style = {
|
||||
color: plain ? color : "white"
|
||||
};
|
||||
if (!plain) {
|
||||
style.background = color;
|
||||
}
|
||||
if (color.includes("gradient")) {
|
||||
style.border = 0;
|
||||
} else {
|
||||
style.borderColor = color;
|
||||
}
|
||||
return style;
|
||||
}
|
||||
};
|
||||
const onClick = (event) => {
|
||||
if (props.loading) {
|
||||
preventDefault(event);
|
||||
} else if (!props.disabled) {
|
||||
emit("click", event);
|
||||
route();
|
||||
}
|
||||
};
|
||||
return () => {
|
||||
const {
|
||||
tag,
|
||||
type,
|
||||
size,
|
||||
block,
|
||||
round,
|
||||
plain,
|
||||
square,
|
||||
loading,
|
||||
disabled,
|
||||
hairline,
|
||||
nativeType,
|
||||
iconPosition
|
||||
} = props;
|
||||
const classes = [bem([type, size, {
|
||||
plain,
|
||||
block,
|
||||
round,
|
||||
square,
|
||||
loading,
|
||||
disabled,
|
||||
hairline
|
||||
}]), {
|
||||
[BORDER_SURROUND]: hairline
|
||||
}];
|
||||
return _createVNode(tag, {
|
||||
"type": nativeType,
|
||||
"class": classes,
|
||||
"style": getStyle(),
|
||||
"disabled": disabled,
|
||||
"onClick": onClick
|
||||
}, {
|
||||
default: () => [_createVNode("div", {
|
||||
"class": bem("content")
|
||||
}, [iconPosition === "left" && renderIcon(), renderText(), iconPosition === "right" && renderIcon()])]
|
||||
});
|
||||
};
|
||||
}
|
||||
});
|
||||
export {
|
||||
buttonProps,
|
||||
stdin_default as default
|
||||
};
|
||||
1
node_modules/vant/es/button/index.css
generated
vendored
Normal file
1
node_modules/vant/es/button/index.css
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user