hongluan-ui
Version:
Hongluan Component Library for Vue 3
1 lines • 3.29 kB
Source Map (JSON)
{"version":3,"file":"button.mjs","sources":["../../../../../../packages/components/button/src/button.ts"],"sourcesContent":["import { isValidComponentType, isValidComponentSize } from '@hongluan-ui/utils'\n\nimport type { ComponentType, ComponentSize } from '@hongluan-ui/constants'\nimport type { Component, ExtractPropTypes, PropType } from 'vue'\n\nexport const buttonIconPosition = ['left', 'right'] as const\nexport type ButtonIconPosition = typeof buttonIconPosition[number]\n\nexport const buttonNativeTypes = ['button', 'submit', 'reset'] as const\nexport type ButtonNativeTypes = typeof buttonNativeTypes[number]\n\nexport const buttonProps = {\n /**\n * @description button type\n */\n type: {\n type: String as PropType<ComponentType>,\n validator: isValidComponentType,\n },\n /**\n * @description button size\n */\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n iconPosition: {\n type: String as PropType<ButtonIconPosition>,\n default: '',\n },\n /**\n * @description native button type\n */\n nativeType: {\n type: String as PropType<ButtonNativeTypes>,\n default: 'button',\n validator: (val: ButtonNativeTypes) => buttonNativeTypes.includes(val),\n },\n /**\n * @description determine whether it's loading\n */\n loading: Boolean,\n /**\n * @description disable the button\n */\n disabled: Boolean,\n /**\n * @description native button autofocus\n */\n autofocus: Boolean,\n /**\n * @description determine whether it's a round button\n */\n round: Boolean,\n equal: Boolean,\n effect: String,\n noFill: Boolean,\n outline: Boolean,\n block: Boolean,\n rational: Boolean,\n dashed: Boolean,\n hover: [Boolean, String],\n /**\n * @description custom element tag\n * 暂时未实现,与Button组件名字冲突,导致递归渲染Button组件\n */\n tag: {\n type: [String, Object] as PropType<string | Component>,\n default: 'button',\n },\n}\n\nexport const buttonEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\n\nexport type ButtonProps = ExtractPropTypes<typeof buttonProps>\nexport type ButtonEmits = typeof buttonEmits\n"],"names":[],"mappings":";;;AACY,MAAC,kBAAkB,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE;AACxC,MAAC,iBAAiB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE;AACnD,MAAC,WAAW,GAAG;AAC3B,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,SAAS,EAAE,oBAAoB;AACnC,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,SAAS,EAAE,oBAAoB;AACnC,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,QAAQ;AACrB,IAAI,SAAS,EAAE,CAAC,GAAG,KAAK,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC;AACvD,GAAG;AACH,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,MAAM,EAAE,MAAM;AAChB,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,MAAM,EAAE,OAAO;AACjB,EAAE,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;AAC1B,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE;AACU,MAAC,WAAW,GAAG;AAC3B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C;;;;"}