first commit
This commit is contained in:
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
|
||||
};
|
||||
Reference in New Issue
Block a user