2022-09-12 07:13:52 +00:00
|
|
|
const TabMenuProps = [
|
|
|
|
{
|
2022-09-14 14:26:41 +00:00
|
|
|
name: 'model',
|
|
|
|
type: 'array',
|
|
|
|
default: 'null',
|
|
|
|
description: 'An array of menuitems.'
|
2022-09-12 07:13:52 +00:00
|
|
|
},
|
|
|
|
{
|
2022-09-14 14:26:41 +00:00
|
|
|
name: 'exact',
|
|
|
|
type: 'boolean',
|
|
|
|
default: 'true',
|
|
|
|
description: 'Defines if active route highlight should match the exact route path.'
|
2022-09-12 07:13:52 +00:00
|
|
|
},
|
|
|
|
{
|
2022-09-14 14:26:41 +00:00
|
|
|
name: 'activeIndex',
|
|
|
|
type: 'number',
|
|
|
|
default: '0',
|
|
|
|
description: 'Active index of menuitem.'
|
2022-09-12 07:13:52 +00:00
|
|
|
}
|
|
|
|
];
|
|
|
|
|
|
|
|
const TabMenuEvents = [
|
|
|
|
{
|
2022-09-14 14:26:41 +00:00
|
|
|
name: 'tab-change',
|
|
|
|
description: 'Callback to invoke when an active tab is changed.',
|
2022-09-12 07:13:52 +00:00
|
|
|
arguments: [
|
|
|
|
{
|
2022-09-14 14:26:41 +00:00
|
|
|
name: 'event.originalEvent',
|
|
|
|
type: 'object',
|
|
|
|
description: 'Original event'
|
2022-09-12 07:13:52 +00:00
|
|
|
},
|
|
|
|
{
|
2022-09-14 14:26:41 +00:00
|
|
|
name: 'event.index',
|
|
|
|
type: 'number',
|
|
|
|
description: 'Index of the selected tab'
|
2022-09-12 07:13:52 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
];
|
|
|
|
|
|
|
|
const TabMenuSlots = [
|
|
|
|
{
|
2022-09-14 14:26:41 +00:00
|
|
|
name: 'item',
|
|
|
|
description: 'Template of a menuitem.'
|
2023-04-17 06:34:43 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
name: 'itemicon',
|
|
|
|
description: 'Custom item icon template.'
|
2022-09-12 07:13:52 +00:00
|
|
|
}
|
|
|
|
];
|
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
tabmenu: {
|
2022-09-14 14:26:41 +00:00
|
|
|
name: 'TabMenu',
|
|
|
|
description: 'TabMenu is a navigation component that displays items as tab headers.',
|
2022-09-12 07:13:52 +00:00
|
|
|
props: TabMenuProps,
|
|
|
|
events: TabMenuEvents,
|
|
|
|
slots: TabMenuSlots
|
|
|
|
}
|
|
|
|
};
|