/**
 * @since Last modified: 2024-07-11 09:30:49
 * @constant optMenu
 * @description  The attrs and props comparison table of Menu module.
 */
'use strict';
import optBase from './optBase';
import { T_obj } from '../../../types/ax';
import unique from '../utils/unique';
import ax from '../ax';
const optMenu: T_obj[] = unique([
    {
        attr: 'scheme',
        prop: 'scheme',
        value: 'light',
    },
    {
        attr: 'content',
        prop: 'content',
        value: '', 
    },
    {
        attr: 'cont-type',
        prop: 'contType',
        value: 'text',
    },
    {
        attr: 'cont-data',
        prop: 'contData',
        value: {},
    },
    {
        attr: 'ajax',
        prop: 'ajax',
        value: {},
    },
    {
        attr: 'dispose',
        prop: 'dispose',
        value: false,
    },
    {
        attr: 'expose',
        prop: 'expose',
        value: false,
    },
    {
        attr: 'active',
        prop: 'active',
        value: '', 
    },
    {
        attr: 'disable',
        prop: 'disable',
        value: '',
    },
    {
        attr: 'multiple',
        prop: 'multiple',
        value: false,
    },
    {
        attr: 'expand-all',
        prop: 'expandAll',
        value: false,
    },
    {
        attr: 'z-index',
        prop: 'zIndex',
        value: 0,
    },
    {
        attr: 'trigger',
        prop: 'trigger',
        value: 'click',
    },
    {
        attr: 'root-start',
        prop: 'rootStart',
        value: ax.config.rootStart, 
    },
    {
        attr: 'id-start',
        prop: 'idStart',
        value: ax.config.idStart,
    },
    {
        attr: 'floor-start',
        prop: 'floorStart',
        value: ax.config.floorStart,
    },
    {
        attr: 'path-hyphen',
        prop: 'pathHyphen',
        value: ax.config.pathHyphen,
    },
    {
        attr: 'duration',
        prop: 'duration',
        value: 0,
    },
    {
        attr: 'arrow',
        prop: 'arrow',
        value: {
            enable: true,
            icon: ''
        },
    },
    {
        attr: 'max',
        prop: 'max',
        value: 0,
    },
    {
        attr: 'page-close',
        prop: 'pageClose',
        value: false,
    },
    {
        attr: 'popup',
        prop: 'popup',
        value: {},
    },
    {
        attr: 'classes',
        prop: 'classes',
        value: '',
    },
    {
        attr: 'add-active',
        prop: 'addActive',
        value: true,
    },
    {
        attr: 'rise',
        prop: 'rise',
        value: false,
    },
    {
        attr: 'gapless',
        prop: 'gapless',
        value: false,
    },
    {
        attr: 'lamp',
        prop: 'lamp',
        value: '',
    },
    {
        attr: 'full',
        prop: 'full',
        value: false,
    },
    {
        attr: 'spill',
        prop: 'spill',
        value: false,
    },
    {
        attr: 'drawer',
        prop: 'drawer',
        value: {
            enable: false,
            host:'',
            placement: 'left',
            footer: false,
        },
    },
    {
        attr: 'row',
        prop: 'row',
        value: {
            enable: false,
            headWidth: '',
            bodyWidth: '',
            marginLeft: '',
            marginRight: '',
            align: 'left',
        },
    },
    {
        attr: 'b4-expand',
        prop: 'b4Expand',
        value: null, 
    },
    {
        attr: 'b4-collapse',
        prop: 'b4Collapse',
        value: null, 
    },
    {
        attr: 'b4-add',
        prop: 'b4Add',
        value: null, 
    },
    {
        attr: 'b4-edit',
        prop: 'b4Edit',
        value: null, 
    },
    {
        attr: 'b4-remove',
        prop: 'b4Remove',
        value: null, 
    },
    {
        attr: 'b4-graft',
        prop: 'b4Graft',
        value: null, 
    },
    {
        attr: 'on-render',
        prop: 'onRender',
        value: null, 
    },
    {
        attr: 'on-trigger',
        prop: 'onTrigger',
        value: null
    },
    {
        attr: 'on-add',
        prop: 'onAdd',
        value: null
    },
    {
        attr: 'on-edit',
        prop: 'onEdit',
        value: null
    },
    {
        attr: 'on-remove',
        prop: 'onRemove',
        value: null
    },
    {
        attr: 'on-disable',
        prop: 'onDisable',
        value: null
    },
    {
        attr: 'on-enable',
        prop: 'onEnable',
        value: null
    },
    {
        attr: 'on-disableAll',
        prop: 'onDisableAll',
        value: null
    },
    {
        attr: 'on-enableAll',
        prop: 'onEnableAll',
        value: null
    },
    {
        attr: 'on-expand',
        prop: 'onExpand',
        value: null
    },
    {
        attr: 'on-collapse',
        prop: 'onCollapse',
        value: null
    },
    {
        attr: 'on-expandAll',
        prop: 'onExpandAll',
        value: null
    },
    {
        attr: 'on-collapseAll',
        prop: 'onCollapseAll',
        value: null
    },
    {
        attr: 'on-select',
        prop: 'onSelect',
        value: null
    },
    {
        attr: 'on-graft',
        prop: 'onGraft',
        value: null
    },
    {
        attr: 'on-updatecont',
        prop: 'onUpdateCont',
        value: null
    },
    {
        attr: 'on-request',
        prop: 'onRequest',
        value: null
    },
    ...optBase
], 'attr');
export default optMenu;
