{"version":3,"file":"tabs.mjs","sources":["../../../../../../packages/components/tabs/src/tabs.ts"],"sourcesContent":["import type { CSSProperties, ExtractPropTypes } from 'vue'\r\n\r\nimport type Tabs from './tabs.vue'\r\n\r\nimport type { TabPaneProps } from 'ant-design-vue'\r\nimport { Key } from 'ant-design-vue/es/_util/type'\r\n\r\nimport { buildProps, definePropType } from '@ll-plus/utils'\r\n\r\n// 页签类型：线型\r\nexport const tabsLinePaddingEnum = {\r\n  vertical: {\r\n    large: {\r\n      paddingTop: '6px',\r\n      paddingBottom: '6px',\r\n      paddingLeft: '16px',\r\n      paddingRight: '16px',\r\n    },\r\n    middle: {\r\n      paddingTop: '5px',\r\n      paddingBottom: '5px',\r\n      paddingLeft: '14px',\r\n      paddingRight: '14px',\r\n    },\r\n    small: {\r\n      paddingTop: '4px',\r\n      paddingBottom: '4px',\r\n      paddingLeft: '12px',\r\n      paddingRight: '12px',\r\n    },\r\n  },\r\n  horizontal: {\r\n    large: {\r\n      paddingTop: '12px',\r\n      paddingBottom: '12px',\r\n      paddingLeft: '0',\r\n      paddingRight: '0',\r\n    },\r\n    middle: {\r\n      paddingTop: '12px',\r\n      paddingBottom: '12px',\r\n      paddingLeft: '0',\r\n      paddingRight: '0',\r\n    },\r\n    small: {\r\n      paddingTop: '8px',\r\n      paddingBottom: '8px',\r\n      paddingLeft: '0',\r\n      paddingRight: '0',\r\n    },\r\n  },\r\n}\r\n\r\n// 页签类型：按钮/卡片/可编辑卡片\r\nexport const tabsCardPaddingEnum = {\r\n  large: {\r\n    paddingTop: '6px',\r\n    paddingBottom: '6px',\r\n    paddingLeft: '16px',\r\n    paddingRight: '16px',\r\n  },\r\n  middle: {\r\n    paddingTop: '5px',\r\n    paddingBottom: '5px',\r\n    paddingLeft: '14px',\r\n    paddingRight: '14px',\r\n  },\r\n  small: {\r\n    paddingTop: '4px',\r\n    paddingBottom: '4px',\r\n    paddingLeft: '12px',\r\n    paddingRight: '12px',\r\n  },\r\n}\r\n\r\nexport interface Tab extends TabPaneProps {\r\n  key: Key\r\n  name: string\r\n}\r\n// props\r\nexport const tabsProps = buildProps({\r\n  tabs: {\r\n    type: definePropType<Tab[]>(Array),\r\n    default: () => [],\r\n  },\r\n  width: {\r\n    type: String,\r\n  },\r\n  height: {\r\n    type: String,\r\n  },\r\n  hideAdd: {\r\n    type: Boolean,\r\n    default: true,\r\n  },\r\n  type: {\r\n    type: String,\r\n    default: 'line',\r\n    values: ['line', 'card', 'editable-card', 'button'],\r\n  },\r\n  size: {\r\n    type: String,\r\n    default: 'middle',\r\n    values: ['large', 'middle', 'small'],\r\n  },\r\n  // tab位置\r\n  tabPosition: {\r\n    type: String,\r\n    default: 'top',\r\n    values: ['top', 'left', 'right', 'bottom'],\r\n  },\r\n  // 左侧缩进\r\n  startIndent: {\r\n    type: Number,\r\n    default: 0,\r\n  },\r\n  // 右侧缩进\r\n  endIndent: {\r\n    type: Number,\r\n    default: 0,\r\n  },\r\n  tabWidthMode: {\r\n    type: String,\r\n    default: 'auto',\r\n    values: ['fixed', 'auto', 'equal'],\r\n  },\r\n  tabFixedWidth: {\r\n    type: String,\r\n    default: '120px',\r\n  },\r\n  // 页签内间距\r\n  tabPadding: {\r\n    type: Object,\r\n    default: () => ({}),\r\n  },\r\n  // 页签边框圆角\r\n  tabBorderRadius: {\r\n    type: String,\r\n    default: '',\r\n  },\r\n  // 选中页签下划线颜色\r\n  inkBarColor: {\r\n    type: String,\r\n    default: '#2e73ff',\r\n  },\r\n  // 选中页签下划线宽度\r\n  inkBarWidth: {\r\n    type: String,\r\n    default: '2px',\r\n  },\r\n  // 页签样式对象\r\n  tabBarStyle: {\r\n    type: definePropType<CSSProperties | null>(Object),\r\n    default: null,\r\n  },\r\n} as const)\r\n\r\nexport type TabsProps = ExtractPropTypes<typeof tabsProps>\r\n\r\nexport type TabsInstance = InstanceType<typeof Tabs>\r\n"],"names":[],"mappings":"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"}