devextreme-vue
Version:
DevExtreme Vue UI and Visualization Components
146 lines (144 loc) • 4.5 kB
JavaScript
/*!
* devextreme-vue
* Version: 25.1.5
* Build date: Wed Sep 03 2025
*
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file in the root of the project for details.
*
* https://github.com/DevExpress/devextreme-vue
*/
import { defineComponent } from "vue";
import { prepareComponentConfig } from "./core/index";
import Tabs from "devextreme/ui/tabs";
import { prepareConfigurationComponentConfig } from "./core/index";
const componentConfig = {
props: {
accessKey: String,
dataSource: [Array, Object, String],
disabled: Boolean,
elementAttr: Object,
focusStateEnabled: Boolean,
height: [Number, String],
hint: String,
hoverStateEnabled: Boolean,
iconPosition: String,
itemHoldTimeout: Number,
items: Array,
itemTemplate: {},
keyExpr: [Function, String],
noDataText: String,
onContentReady: Function,
onDisposing: Function,
onInitialized: Function,
onItemClick: Function,
onItemContextMenu: Function,
onItemHold: Function,
onItemRendered: Function,
onOptionChanged: Function,
onSelectionChanged: Function,
onSelectionChanging: Function,
orientation: String,
repaintChangesOnly: Boolean,
rtlEnabled: Boolean,
scrollByContent: Boolean,
scrollingEnabled: Boolean,
selectedIndex: Number,
selectedItem: {},
selectedItemKeys: Array,
selectedItems: Array,
selectionMode: String,
showNavButtons: Boolean,
stylingMode: String,
tabIndex: Number,
visible: Boolean,
width: [Number, String]
},
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:accessKey": null,
"update:dataSource": null,
"update:disabled": null,
"update:elementAttr": null,
"update:focusStateEnabled": null,
"update:height": null,
"update:hint": null,
"update:hoverStateEnabled": null,
"update:iconPosition": null,
"update:itemHoldTimeout": null,
"update:items": null,
"update:itemTemplate": null,
"update:keyExpr": null,
"update:noDataText": null,
"update:onContentReady": null,
"update:onDisposing": null,
"update:onInitialized": null,
"update:onItemClick": null,
"update:onItemContextMenu": null,
"update:onItemHold": null,
"update:onItemRendered": null,
"update:onOptionChanged": null,
"update:onSelectionChanged": null,
"update:onSelectionChanging": null,
"update:orientation": null,
"update:repaintChangesOnly": null,
"update:rtlEnabled": null,
"update:scrollByContent": null,
"update:scrollingEnabled": null,
"update:selectedIndex": null,
"update:selectedItem": null,
"update:selectedItemKeys": null,
"update:selectedItems": null,
"update:selectionMode": null,
"update:showNavButtons": null,
"update:stylingMode": null,
"update:tabIndex": null,
"update:visible": null,
"update:width": null,
},
computed: {
instance() {
return this.$_instance;
}
},
beforeCreate() {
this.$_WidgetClass = Tabs;
this.$_hasAsyncTemplate = true;
this.$_expectedChildren = {
item: { isCollectionItem: true, optionName: "items" }
};
}
};
prepareComponentConfig(componentConfig);
const DxTabs = defineComponent(componentConfig);
const DxItemConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:badge": null,
"update:disabled": null,
"update:html": null,
"update:icon": null,
"update:template": null,
"update:text": null,
"update:visible": null,
},
props: {
badge: String,
disabled: Boolean,
html: String,
icon: String,
template: {},
text: String,
visible: Boolean
}
};
prepareConfigurationComponentConfig(DxItemConfig);
const DxItem = defineComponent(DxItemConfig);
DxItem.$_optionName = "items";
DxItem.$_isCollectionItem = true;
export default DxTabs;
export { DxTabs, DxItem };