quasar
Version:
Build high-performance VueJS user interfaces (SPA, PWA, SSR, Mobile and Desktop) in record time
258 lines (239 loc) • 8.1 kB
JSON
{
"mixins": [ "composables/private.use-size/use-size" ],
"meta": {
"docsUrl": "https://v2.quasar.dev/vue-components/option-group"
},
"props": {
"model-value": {
"extends": "model-value",
"type": "Any",
"examples": [ "# v-model=\"group\"" ]
},
"options": {
"type": "Array",
"desc": "Array of objects with value, label, and disable (optional) props. The binary components will be created according to this array; Props from QToggle, QCheckbox or QRadio can also be added as key/value pairs to control the components singularly",
"default": "[]",
"definition": {
"label": {
"type": "String",
"desc": "Label to display along the component",
"required": true,
"examples": [ "'Option 1'", "'Option 2'", "'Option 3'" ]
},
"value": {
"type": "Any",
"desc": "Value of the option that will be used by the component model",
"required": true,
"examples": [ "'op1'", "'op2'", "'op3'" ]
},
"disable": {
"type": "Boolean",
"desc": "If true, the option will be disabled"
},
"...props": {
"type": "Any",
"desc": "Any other props from QToggle, QCheckbox, or QRadio",
"examples": [ "# val=\"car\"", "# :true-value=\"trueValue\"", "# checked-icon=\"visibility\"" ]
}
},
"examples": [ "[ { label: 'Option 1', value: 'op1' }, { label: 'Option 2', value: 'op2' }, { label: 'Option 3', value: 'op3', disable: true } ]" ],
"category": "options"
},
"option-value": {
"type": [ "Function", "String" ],
"desc": "Property of option which holds the 'value'; If using a function then for best performance, reference it from your scope and do not define it inline",
"default": "'value'",
"__runtimeDefault": true,
"params": {
"option": {
"type": [ "String", "Object" ],
"desc": "The current option being processed",
"examples": [
"'Tesla'",
"'iPhone'",
"{ label: 'Tesla', value: 'car', cannotSelect: true }"
]
}
},
"returns": {
"type": "Any",
"desc": "Value of the current option",
"examples": [ "'car'", "34" ]
},
"examples": [
"'modelNumber'",
"item => (item === null ? null : item.modelNumber)"
],
"category": "options",
"addedIn": "v2.17"
},
"option-label": {
"type": [ "Function", "String" ],
"desc": "Property of option which holds the 'label'; If using a function then for best performance, reference it from your scope and do not define it inline",
"default": "'label'",
"__runtimeDefault": true,
"params": {
"option": {
"type": [ "String", "Object" ],
"desc": "The current option being processed",
"examples": [
"'Tesla'",
"'iPhone'",
"{ label: 'Tesla', value: 'car', cannotSelect: true }"
]
}
},
"returns": {
"type": "String",
"desc": "Label of the current option",
"examples": [ "'Tesla'", "'iPhone'" ]
},
"examples": [
"'itemName'",
"item => (item === null ? 'Null value' : item.itemName)"
],
"category": "options",
"addedIn": "v2.17"
},
"option-disable": {
"type": [ "Function", "String" ],
"desc": "Property of option which tells it's disabled; The value of the property must be a Boolean; If using a function then for best performance, reference it from your scope and do not define it inline",
"default": "'disable'",
"__runtimeDefault": true,
"params": {
"option": {
"type": [ "String", "Object" ],
"desc": "The current option being processed",
"examples": [
"'Tesla'",
"'iPhone'",
"{ label: 'Tesla', value: 'car', cannotSelect: true }"
]
}
},
"returns": {
"type": "Boolean",
"desc": "If true, the current option will be disabled"
},
"examples": [
"item => (item === null ? true : item.cannotSelect)",
"# option-disable=\"cannotSelect\""
],
"category": "options",
"addedIn": "v2.17"
},
"name": {
"type": "String",
"desc": "Used to specify the name of the controls; Useful if dealing with forms submitted directly to a URL",
"examples": [ "'car_id'" ],
"category": "behavior"
},
"type": {
"type": "String",
"desc": "The type of input component to be used",
"values": [ "'radio'", "'checkbox'", "'toggle'" ],
"default": "'radio'",
"category": "content"
},
"color": {
"extends": "color"
},
"keep-color": {
"type": "Boolean",
"desc": "Should the color (if specified any) be kept when input components are unticked?",
"category": "behavior"
},
"dark": {
"extends": "dark"
},
"dense": {
"extends": "dense"
},
"left-label": {
"type": "Boolean",
"desc": "Label (if any specified) should be displayed on the left side of the input components",
"category": "content"
},
"inline": {
"type": "Boolean",
"desc": "Show input components as inline-block rather than each having their own row",
"category": "content"
},
"disable": {
"extends": "disable"
}
},
"slots": {
"label": {
"desc": "Generic slot for all labels",
"scope": {
"...self": {
"type": "Object",
"desc": "The corresponding option entry from the 'options' prop",
"definition": {
"label": {
"type": "String",
"desc": "Label to display along the component",
"required": true,
"examples": [ "'Option 1'", "'Option 2'", "'Option 3'" ]
},
"value": {
"type": "Any",
"desc": "Value of the option that will be used by the component model",
"required": true,
"examples": [ "'op1'", "'op2'", "'op3'" ]
},
"disable": {
"type": "Boolean",
"desc": "If true, the option will be disabled"
},
"...props": {
"type": "Any",
"desc": "Any other props from QToggle, QCheckbox, or QRadio",
"examples": [ "# val=\"car\"", "# :true-value=\"trueValue\"", "# checked-icon=\"visibility\"" ]
}
}
}
},
"addedIn": "v2.2"
},
"label-[name]": {
"desc": "Slot to define the specific label for the option at '[name]' where name is a 0-based index; Overrides the generic 'label' slot if used",
"scope": {
"...self": {
"type": "Object",
"desc": "The corresponding option entry from the 'options' prop",
"definition": {
"label": {
"type": "String",
"desc": "Label to display along the component",
"required": true,
"examples": [ "'Option 1'", "'Option 2'", "'Option 3'" ]
},
"value": {
"type": "Any",
"desc": "Value of the option that will be used by the component model",
"required": true,
"examples": [ "'op1'", "'op2'", "'op3'" ]
},
"disable": {
"type": "Boolean",
"desc": "If true, the option will be disabled"
},
"...props": {
"type": "Any",
"desc": "Any other props from QToggle, QCheckbox, or QRadio",
"examples": [ "# val=\"car\"", "# :true-value=\"trueValue\"", "# checked-icon=\"visibility\"" ]
}
}
}
},
"addedIn": "v2.2"
}
},
"events": {
"update:model-value": {
"extends": "update:model-value"
}
}
}