bkui-vue 0.0.1-beta.410 → 0.0.1-beta.411

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -21752,10 +21752,15 @@ const tabProps = {
21752
21752
  validateActive: PropTypes.bool.def(true),
21753
21753
  showHeader: PropTypes.bool.def(true),
21754
21754
  changeOnHover: PropTypes.bool.def(false),
21755
- changeOnHoverDelay: PropTypes.number.def(1e3)
21755
+ changeOnHoverDelay: PropTypes.number.def(1e3),
21756
+ activeBarSize: PropTypes.number.def(2),
21757
+ activeBarColor: PropTypes.string.def("#3a84ff")
21756
21758
  };
21757
21759
  const tabNavProps = __spreadValues({
21758
21760
  active: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).def(""),
21761
+ type: j("type", {}).def("border-card"),
21762
+ activeBarColor: PropTypes.string.def("#3a84ff"),
21763
+ activeBarSize: PropTypes.number.def(2),
21759
21764
  panels: {
21760
21765
  type: Array,
21761
21766
  default: () => []
@@ -21785,6 +21790,50 @@ var TabNav = defineComponent({
21785
21790
  name: "TabNav",
21786
21791
  props: tabNavProps,
21787
21792
  setup(props2) {
21793
+ const activeRef = ref(null);
21794
+ const activeBarStyle = computed(() => {
21795
+ const initStyle = {
21796
+ width: 0,
21797
+ height: 0,
21798
+ bottom: 0,
21799
+ left: 0
21800
+ };
21801
+ if (!activeRef.value) {
21802
+ return initStyle;
21803
+ }
21804
+ if ([PositionEnum.LEFT, PositionEnum.RIGHT].includes(props2.tabPosition)) {
21805
+ const {
21806
+ clientHeight,
21807
+ offsetTop
21808
+ } = activeRef.value;
21809
+ const style2 = {
21810
+ width: `${props2.activeBarSize}px`,
21811
+ height: `${clientHeight}px`,
21812
+ top: `${offsetTop}px`,
21813
+ background: props2.activeBarColor
21814
+ };
21815
+ if (props2.tabPosition === PositionEnum.LEFT) {
21816
+ style2.right = 0;
21817
+ } else {
21818
+ style2.left = 0;
21819
+ }
21820
+ return style2;
21821
+ }
21822
+ if (props2.type === TabTypeEnum.UNBORDER_CARD) {
21823
+ const {
21824
+ clientWidth,
21825
+ offsetLeft
21826
+ } = activeRef.value;
21827
+ return {
21828
+ width: `${clientWidth}px`,
21829
+ height: `${props2.activeBarSize}px`,
21830
+ left: `${offsetLeft}px`,
21831
+ bottom: 0,
21832
+ background: props2.activeBarColor
21833
+ };
21834
+ }
21835
+ return initStyle;
21836
+ });
21788
21837
  const navs = computed(() => {
21789
21838
  if (!Array.isArray(props2.panels) || !props2.panels.length) {
21790
21839
  return [];
@@ -21879,6 +21928,8 @@ var TabNav = defineComponent({
21879
21928
  }
21880
21929
  };
21881
21930
  return __spreadProps(__spreadValues({}, methods), {
21931
+ activeRef,
21932
+ activeBarStyle,
21882
21933
  navs,
21883
21934
  dragenterIndex,
21884
21935
  dragStartIndex,
@@ -21924,6 +21975,7 @@ var TabNav = defineComponent({
21924
21975
  "onClick": () => this.handleTabChange(name),
21925
21976
  "draggable": getValue(item.sortable, sortable),
21926
21977
  "onDragstart": (e) => dragstart(index2, e),
21978
+ "ref": active === name ? "activeRef" : "",
21927
21979
  "onDragenter": (e) => {
21928
21980
  e.preventDefault();
21929
21981
  dragenter(index2);
@@ -21972,6 +22024,15 @@ var TabNav = defineComponent({
21972
22024
  }
21973
22025
  return null;
21974
22026
  };
22027
+ const renderActiveBar = () => {
22028
+ if (this.type === TabTypeEnum.UNBORDER_CARD) {
22029
+ return createVNode("div", {
22030
+ "style": this.activeBarStyle,
22031
+ "class": resolveClassName("tab-header-active-bar")
22032
+ }, null);
22033
+ }
22034
+ return "";
22035
+ };
21975
22036
  return createVNode("div", {
21976
22037
  "style": {
21977
22038
  lineHeight: `${labelHeight}px`
@@ -21979,7 +22040,10 @@ var TabNav = defineComponent({
21979
22040
  "class": resolveClassName("tab-header")
21980
22041
  }, [createVNode("div", {
21981
22042
  "class": resolveClassName("tab-header-nav")
21982
- }, [renderNavs()]), renderSlot2(), typeof this.$slots.setting === "function" && createVNode("div", {
22043
+ }, [renderNavs(), renderActiveBar(), createVNode("div", {
22044
+ "style": this.activeBarStyle,
22045
+ "class": resolveClassName("tab-header-active-bar")
22046
+ }, null)]), renderSlot2(), typeof this.$slots.setting === "function" && createVNode("div", {
21983
22047
  "class": resolveClassName("tab-header-setting")
21984
22048
  }, [this.$slots.setting()])]);
21985
22049
  }
@@ -22127,6 +22191,8 @@ var Tab = defineComponent({
22127
22191
  changeOnHover,
22128
22192
  changeOnHoverDelay,
22129
22193
  tabPosition,
22194
+ activeBarSize,
22195
+ activeBarColor,
22130
22196
  tabAdd,
22131
22197
  tabChange,
22132
22198
  tabRemove,
@@ -22147,6 +22213,8 @@ var Tab = defineComponent({
22147
22213
  changeOnHover,
22148
22214
  changeOnHoverDelay,
22149
22215
  tabPosition,
22216
+ activeBarSize,
22217
+ activeBarColor,
22150
22218
  tabAdd,
22151
22219
  tabChange,
22152
22220
  tabRemove,
@@ -40064,4 +40132,4 @@ var preset = {
40064
40132
  install: createInstall(),
40065
40133
  version: "0.0.1"
40066
40134
  };
40067
- export { createPopoverComponent as $bkPopover, BkAffix as Affix, BkAlert as Alert, BkAnimateNumber as AnimateNumber, BkBacktop as Backtop, BkBadge as Badge, BkBreadcrumb as Breadcrumb, BkButton as Button, BkCard as Card, BkCascader as Cascader, BkCheckbox as Checkbox, BkCodeDiff as CodeDiff, BkCollapse as Collapse, BkColorPicker as ColorPicker, BkConfigProvider as ConfigProvider, BkContainer as Container, BkDatePicker as DatePicker, BkDialog as Dialog, BkDivider as Divider, BkDropdown as Dropdown, BkException as Exception, BkFixedNavbar as FixedNavbar, BkForm as Form, BkInfoBox as InfoBox, BkInput as Input, BkLink as Link, BkLoading as Loading, BkMenu as Menu, Message, BkModal as Modal, Navigation, Notify, BkOverflowTitle as OverflowTitle, BkPagination as Pagination, BkPopover as Popover, BkPopover2 as Popover2, BkProcess as Process, BkProgress as Progress, BkRadio as Radio, BkRate as Rate, BkResizeLayout as ResizeLayout, BkSearchSelect as SearchSelect, BkSelect as Select, BkSideslider as Sideslider, Slider, BkSteps as Steps, BkSwiper as Swiper, BkSwitcher as Switcher, BkTab as Tab, BkTable as Table, BkTableColumn as TableColumn, BkTag as Tag, TagInput, BkTimeline as TimeLine, BkTimePicker as TimePicker, Transfer, BkTree as Tree, Upload, BkVirtualRender as VirtualRender, ellipsis as bkEllipsis, createInstance as bkEllipsisInstance, tooltips as bkTooltips, ClickOutside as clickoutside, BkContainer as containerProps, preset as default, mousewheel, overflowTitle };
40135
+ export { createPopoverComponent as $bkPopover, BkAffix as Affix, BkAlert as Alert, BkAnimateNumber as AnimateNumber, BkBacktop as Backtop, BkBadge as Badge, BkBreadcrumb as Breadcrumb, BkButton as Button, BkCard as Card, BkCascader as Cascader, BkCheckbox as Checkbox, BkCodeDiff as CodeDiff, BkCollapse as Collapse, BkColorPicker as ColorPicker, BkConfigProvider as ConfigProvider, BkContainer as Container, BkDatePicker as DatePicker, BkDialog as Dialog, BkDivider as Divider, BkDropdown as Dropdown, BkException as Exception, BkFixedNavbar as FixedNavbar, BkForm as Form, BkInfoBox as InfoBox, BkInput as Input, BkLink as Link, BkLoading as Loading, BkMenu as Menu, Message, BkModal as Modal, Navigation, Notify, BkOverflowTitle as OverflowTitle, BkPagination as Pagination, BkPopover as Popover, BkPopover2 as Popover2, BkProcess as Process, BkProgress as Progress, BkRadio as Radio, BkRate as Rate, BkResizeLayout as ResizeLayout, BkSearchSelect as SearchSelect, BkSelect as Select, BkSideslider as Sideslider, Slider, BkSteps as Steps, BkSwiper as Swiper, BkSwitcher as Switcher, BkTab as Tab, BkTable as Table, BkTableColumn as TableColumn, BkTag as Tag, TagInput, BkTimeline as TimeLine, BkTimePicker as TimePicker, Transfer, BkTree as Tree, Upload, BkVirtualRender as VirtualRender, ellipsis as bkEllipsis, createInstance as bkEllipsisInstance, tooltips as bkTooltips, ClickOutside as clickoutside, configProviderProps, BkContainer as containerProps, preset as default, defaultRootConfig, mousewheel, overflowTitle, provideGlobalConfig, rootProviderKey, useLocale };