@vaadin/combo-box
Version:
Web Component for displaying a list of items with filtering
1,334 lines (1,333 loc) • 93.3 kB
JSON
{
"schemaVersion": "1.0.0",
"readme": "",
"modules": [
{
"kind": "javascript-module",
"path": "vaadin-combo-box.js",
"declarations": [],
"exports": [
{
"kind": "js",
"name": "*",
"declaration": {
"name": "*",
"module": "src/vaadin-combo-box.js"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/vaadin-combo-box-base-mixin.js",
"declarations": [
{
"kind": "mixin",
"description": "",
"name": "ComboBoxBaseMixin",
"members": [
{
"kind": "field",
"name": "autoOpenDisabled",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "Set true to prevent the overlay from opening automatically.",
"attribute": "auto-open-disabled"
},
{
"kind": "method",
"name": "close",
"description": "Closes the dropdown list."
},
{
"kind": "method",
"name": "open",
"description": "Opens the dropdown list."
},
{
"kind": "field",
"name": "opened",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "True if the dropdown is open, false otherwise.",
"attribute": "opened"
},
{
"kind": "field",
"name": "readonly",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "When present, it specifies that the field is read-only.",
"attribute": "readonly"
}
],
"attributes": [
{
"name": "auto-open-disabled",
"type": {
"text": "boolean"
},
"description": "Set true to prevent the overlay from opening automatically.",
"fieldName": "autoOpenDisabled"
},
{
"name": "opened",
"type": {
"text": "boolean"
},
"description": "True if the dropdown is open, false otherwise.",
"fieldName": "opened"
},
{
"name": "readonly",
"type": {
"text": "boolean"
},
"description": "When present, it specifies that the field is read-only.",
"fieldName": "readonly"
}
],
"mixins": [
{
"name": "KeyboardMixin",
"package": "@vaadin/a11y-base/src/keyboard-mixin.js"
},
{
"name": "InputMixin",
"package": "@vaadin/field-base/src/input-mixin.js"
},
{
"name": "DisabledMixin",
"package": "@vaadin/a11y-base/src/disabled-mixin.js"
},
{
"name": "FocusMixin",
"package": "@vaadin/a11y-base/src/focus-mixin.js"
}
],
"parameters": [
{
"name": "superClass",
"type": {
"text": "function(new:HTMLElement)"
}
}
]
}
],
"exports": [
{
"kind": "js",
"name": "ComboBoxBaseMixin",
"declaration": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/vaadin-combo-box-data-provider-mixin.js",
"declarations": [
{
"kind": "mixin",
"description": "",
"name": "ComboBoxDataProviderMixin",
"members": [
{
"kind": "method",
"name": "clearCache",
"description": "Clears the cached pages and reloads data from dataprovider when needed."
},
{
"kind": "field",
"name": "dataProvider",
"privacy": "public",
"type": {
"text": "ComboBoxDataProvider | undefined"
},
"description": "Function that provides items lazily. Receives arguments `params`, `callback`\n\n`params.page` Requested page index\n\n`params.pageSize` Current page size\n\n`params.filter` Currently applied filter\n\n`callback(items, size)` Callback function with arguments:\n - `items` Current page of items\n - `size` Total number of items.",
"attribute": "data-provider"
},
{
"kind": "field",
"name": "pageSize",
"privacy": "public",
"type": {
"text": "number"
},
"description": "Number of items fetched at a time from the dataprovider.",
"attribute": "page-size"
},
{
"kind": "field",
"name": "size",
"privacy": "public",
"type": {
"text": "number"
},
"description": "Total number of items.",
"attribute": "size"
}
],
"attributes": [
{
"name": "data-provider",
"type": {
"text": "ComboBoxDataProvider | undefined"
},
"description": "Function that provides items lazily. Receives arguments `params`, `callback`\n\n`params.page` Requested page index\n\n`params.pageSize` Current page size\n\n`params.filter` Currently applied filter\n\n`callback(items, size)` Callback function with arguments:\n - `items` Current page of items\n - `size` Total number of items.",
"fieldName": "dataProvider"
},
{
"name": "page-size",
"type": {
"text": "number"
},
"description": "Number of items fetched at a time from the dataprovider.",
"fieldName": "pageSize"
},
{
"name": "size",
"type": {
"text": "number"
},
"description": "Total number of items.",
"fieldName": "size"
}
],
"parameters": [
{
"name": "superClass"
}
]
}
],
"exports": [
{
"kind": "js",
"name": "ComboBoxDataProviderMixin",
"declaration": {
"name": "ComboBoxDataProviderMixin",
"module": "src/vaadin-combo-box-data-provider-mixin.js"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/vaadin-combo-box-item-mixin.js",
"declarations": [
{
"kind": "mixin",
"description": "",
"name": "ComboBoxItemMixin",
"members": [
{
"kind": "field",
"name": "focused",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "True when item is focused.",
"attribute": "focused"
},
{
"kind": "field",
"name": "index",
"privacy": "public",
"type": {
"text": "number"
},
"description": "The index of the item.",
"attribute": "index"
},
{
"kind": "field",
"name": "item",
"privacy": "public",
"type": {
"text": "object"
},
"description": "The item to render.",
"attribute": "item"
},
{
"kind": "field",
"name": "label",
"privacy": "public",
"type": {
"text": "string"
},
"description": "The text to render in the item.",
"attribute": "label"
},
{
"kind": "field",
"name": "renderer",
"privacy": "public",
"type": {
"text": "function"
},
"description": "Custom function for rendering the item content.",
"attribute": "renderer"
},
{
"kind": "method",
"name": "requestContentUpdate",
"description": "Requests an update for the content of the item.\nWhile performing the update, it invokes the renderer passed in the `renderer` property.\n\nIt is not guaranteed that the update happens immediately (synchronously) after it is requested."
},
{
"kind": "field",
"name": "selected",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "True when item is selected.",
"attribute": "selected"
}
],
"attributes": [
{
"name": "focused",
"type": {
"text": "boolean"
},
"description": "True when item is focused.",
"fieldName": "focused"
},
{
"name": "hidden"
},
{
"name": "index",
"type": {
"text": "number"
},
"description": "The index of the item.",
"fieldName": "index"
},
{
"name": "label",
"type": {
"text": "string"
},
"description": "The text to render in the item.",
"fieldName": "label"
},
{
"name": "renderer",
"type": {
"text": "function"
},
"description": "Custom function for rendering the item content.",
"fieldName": "renderer"
},
{
"name": "selected",
"type": {
"text": "boolean"
},
"description": "True when item is selected.",
"fieldName": "selected"
}
],
"parameters": [
{
"name": "superClass"
}
]
}
],
"exports": [
{
"kind": "js",
"name": "ComboBoxItemMixin",
"declaration": {
"name": "ComboBoxItemMixin",
"module": "src/vaadin-combo-box-item-mixin.js"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/vaadin-combo-box-items-mixin.js",
"declarations": [
{
"kind": "mixin",
"description": "",
"name": "ComboBoxItemsMixin",
"members": [
{
"kind": "field",
"name": "autoOpenDisabled",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "Set true to prevent the overlay from opening automatically.",
"attribute": "auto-open-disabled",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "method",
"name": "close",
"description": "Closes the dropdown list.",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "field",
"name": "filter",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Filtering string the user has typed into the input field.",
"attribute": "filter"
},
{
"kind": "field",
"name": "filteredItems",
"privacy": "public",
"type": {
"text": "!Array<!ComboBoxItem | string> | undefined"
},
"description": "A subset of items, filtered based on the user input. Filtered items\ncan be assigned directly to omit the internal filtering functionality.\nThe items can be of either `String` or `Object` type.",
"attribute": "filtered-items"
},
{
"kind": "field",
"name": "itemLabelGenerator",
"privacy": "public",
"type": {
"text": "object"
},
"description": "A function that is used to generate the label for dropdown\nitems based on the item. Receives one argument:\n- `item` The item to generate the label for.",
"attribute": "item-label-generator"
},
{
"kind": "field",
"name": "itemLabelPath",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Path for label of the item. If `items` is an array of objects, the\n`itemLabelPath` is used to fetch the displayed string label for each\nitem.\n\nThe item label is also used for matching items when processing user\ninput, i.e., for filtering and selecting items.",
"attribute": "item-label-path"
},
{
"kind": "field",
"name": "items",
"privacy": "public",
"type": {
"text": "!Array<!ComboBoxItem | string> | undefined"
},
"description": "A full set of items to filter the visible options from.\nThe items can be of either `String` or `Object` type.",
"attribute": "items"
},
{
"kind": "field",
"name": "itemValuePath",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Path for the value of the item. If `items` is an array of objects, the\n`itemValuePath:` is used to fetch the string value for the selected\nitem.\n\nThe item value is used in the `value` property of the combo box,\nto provide the form value.",
"attribute": "item-value-path"
},
{
"kind": "method",
"name": "open",
"description": "Opens the dropdown list.",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "field",
"name": "opened",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "True if the dropdown is open, false otherwise.",
"attribute": "opened",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "field",
"name": "readonly",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "When present, it specifies that the field is read-only.",
"attribute": "readonly",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
}
],
"attributes": [
{
"name": "auto-open-disabled",
"type": {
"text": "boolean"
},
"description": "Set true to prevent the overlay from opening automatically.",
"fieldName": "autoOpenDisabled",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"name": "filter",
"type": {
"text": "string"
},
"description": "Filtering string the user has typed into the input field.",
"fieldName": "filter"
},
{
"name": "item-label-path",
"type": {
"text": "string"
},
"description": "Path for label of the item. If `items` is an array of objects, the\n`itemLabelPath` is used to fetch the displayed string label for each\nitem.\n\nThe item label is also used for matching items when processing user\ninput, i.e., for filtering and selecting items.",
"fieldName": "itemLabelPath"
},
{
"name": "item-value-path",
"type": {
"text": "string"
},
"description": "Path for the value of the item. If `items` is an array of objects, the\n`itemValuePath:` is used to fetch the string value for the selected\nitem.\n\nThe item value is used in the `value` property of the combo box,\nto provide the form value.",
"fieldName": "itemValuePath"
},
{
"name": "opened",
"type": {
"text": "boolean"
},
"description": "True if the dropdown is open, false otherwise.",
"fieldName": "opened",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"name": "readonly",
"type": {
"text": "boolean"
},
"description": "When present, it specifies that the field is read-only.",
"fieldName": "readonly",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
}
],
"mixins": [
{
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
],
"parameters": [
{
"name": "superClass"
}
]
}
],
"exports": [
{
"kind": "js",
"name": "ComboBoxItemsMixin",
"declaration": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/vaadin-combo-box-mixin.js",
"declarations": [
{
"kind": "mixin",
"description": "",
"name": "ComboBoxMixin",
"members": [
{
"kind": "field",
"name": "allowCustomValue",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "If `true`, the user can input a value that is not present in the items list.\n`value` property will be set to the input value in this case.\nAlso, when `value` is set programmatically, the input value will be set\nto reflect that value.",
"attribute": "allow-custom-value"
},
{
"kind": "field",
"name": "autoOpenDisabled",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "Set true to prevent the overlay from opening automatically.",
"attribute": "auto-open-disabled",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "method",
"name": "cancel",
"description": "Reverts back to original value."
},
{
"kind": "method",
"name": "close",
"description": "Closes the dropdown list.",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "field",
"name": "filter",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Filtering string the user has typed into the input field.",
"attribute": "filter",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"kind": "field",
"name": "filteredItems",
"privacy": "public",
"type": {
"text": "!Array<!ComboBoxItem | string> | undefined"
},
"description": "A subset of items, filtered based on the user input. Filtered items\ncan be assigned directly to omit the internal filtering functionality.\nThe items can be of either `String` or `Object` type.",
"attribute": "filtered-items",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"kind": "field",
"name": "itemClassNameGenerator",
"privacy": "public",
"type": {
"text": "object"
},
"description": "A function used to generate CSS class names for dropdown\nitems based on the item. The return value should be the\ngenerated class name as a string, or multiple class names\nseparated by whitespace characters.",
"attribute": "item-class-name-generator"
},
{
"kind": "field",
"name": "itemIdPath",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Path for the id of the item. If `items` is an array of objects,\nthe `itemIdPath` is used to compare and identify the same item\nin `selectedItem` and `filteredItems` (items given by the\n`dataProvider` callback).",
"attribute": "item-id-path"
},
{
"kind": "field",
"name": "itemLabelGenerator",
"privacy": "public",
"type": {
"text": "object"
},
"description": "A function that is used to generate the label for dropdown\nitems based on the item. Receives one argument:\n- `item` The item to generate the label for.",
"attribute": "item-label-generator",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"kind": "field",
"name": "itemLabelPath",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Path for label of the item. If `items` is an array of objects, the\n`itemLabelPath` is used to fetch the displayed string label for each\nitem.\n\nThe item label is also used for matching items when processing user\ninput, i.e., for filtering and selecting items.",
"attribute": "item-label-path",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"kind": "field",
"name": "items",
"privacy": "public",
"type": {
"text": "!Array<!ComboBoxItem | string> | undefined"
},
"description": "A full set of items to filter the visible options from.\nThe items can be of either `String` or `Object` type.",
"attribute": "items",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"kind": "field",
"name": "itemValuePath",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Path for the value of the item. If `items` is an array of objects, the\n`itemValuePath:` is used to fetch the string value for the selected\nitem.\n\nThe item value is used in the `value` property of the combo box,\nto provide the form value.",
"attribute": "item-value-path",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"kind": "field",
"name": "loading",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "When set to `true`, \"loading\" attribute is added to host and the overlay element.",
"attribute": "loading"
},
{
"kind": "method",
"name": "open",
"description": "Opens the dropdown list.",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "field",
"name": "opened",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "True if the dropdown is open, false otherwise.",
"attribute": "opened",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "field",
"name": "readonly",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "When present, it specifies that the field is read-only.",
"attribute": "readonly",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"kind": "field",
"name": "renderer",
"privacy": "public",
"type": {
"text": "ComboBoxRenderer | undefined"
},
"description": "Custom function for rendering the content of every item.\nReceives three arguments:\n\n- `root` The `<vaadin-combo-box-item>` internal container DOM element.\n- `comboBox` The reference to the `<vaadin-combo-box>` element.\n- `model` The object with the properties related with the rendered\n item, contains:\n - `model.index` The index of the rendered item.\n - `model.item` The item.",
"attribute": "renderer"
},
{
"kind": "method",
"name": "requestContentUpdate",
"description": "Requests an update for the content of items.\nWhile performing the update, it invokes the renderer (passed in the `renderer` property) once an item.\n\nIt is not guaranteed that the update happens immediately (synchronously) after it is requested."
},
{
"kind": "field",
"name": "selectedItem",
"privacy": "public",
"type": {
"text": "ComboBoxItem | string | undefined"
},
"description": "The selected item from the `items` array.",
"attribute": "selected-item"
}
],
"events": [
{
"name": "change",
"type": {
"text": "CustomEvent"
}
},
{
"name": "vaadin-combo-box-dropdown-closed",
"type": {
"text": "CustomEvent"
}
},
{
"name": "vaadin-combo-box-dropdown-opened",
"type": {
"text": "CustomEvent"
}
}
],
"attributes": [
{
"name": "allow-custom-value",
"type": {
"text": "boolean"
},
"description": "If `true`, the user can input a value that is not present in the items list.\n`value` property will be set to the input value in this case.\nAlso, when `value` is set programmatically, the input value will be set\nto reflect that value.",
"fieldName": "allowCustomValue"
},
{
"name": "auto-open-disabled",
"type": {
"text": "boolean"
},
"description": "Set true to prevent the overlay from opening automatically.",
"fieldName": "autoOpenDisabled",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"name": "filter",
"type": {
"text": "string"
},
"description": "Filtering string the user has typed into the input field.",
"fieldName": "filter",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"name": "item-id-path",
"type": {
"text": "string"
},
"description": "Path for the id of the item. If `items` is an array of objects,\nthe `itemIdPath` is used to compare and identify the same item\nin `selectedItem` and `filteredItems` (items given by the\n`dataProvider` callback).",
"fieldName": "itemIdPath"
},
{
"name": "item-label-path",
"type": {
"text": "string"
},
"description": "Path for label of the item. If `items` is an array of objects, the\n`itemLabelPath` is used to fetch the displayed string label for each\nitem.\n\nThe item label is also used for matching items when processing user\ninput, i.e., for filtering and selecting items.",
"fieldName": "itemLabelPath",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"name": "item-value-path",
"type": {
"text": "string"
},
"description": "Path for the value of the item. If `items` is an array of objects, the\n`itemValuePath:` is used to fetch the string value for the selected\nitem.\n\nThe item value is used in the `value` property of the combo box,\nto provide the form value.",
"fieldName": "itemValuePath",
"inheritedFrom": {
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
},
{
"name": "loading",
"type": {
"text": "boolean"
},
"description": "When set to `true`, \"loading\" attribute is added to host and the overlay element.",
"fieldName": "loading"
},
{
"name": "opened",
"type": {
"text": "boolean"
},
"description": "True if the dropdown is open, false otherwise.",
"fieldName": "opened",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"name": "readonly",
"type": {
"text": "boolean"
},
"description": "When present, it specifies that the field is read-only.",
"fieldName": "readonly",
"inheritedFrom": {
"name": "ComboBoxBaseMixin",
"module": "src/vaadin-combo-box-base-mixin.js"
}
},
{
"name": "renderer",
"type": {
"text": "ComboBoxRenderer | undefined"
},
"description": "Custom function for rendering the content of every item.\nReceives three arguments:\n\n- `root` The `<vaadin-combo-box-item>` internal container DOM element.\n- `comboBox` The reference to the `<vaadin-combo-box>` element.\n- `model` The object with the properties related with the rendered\n item, contains:\n - `model.index` The index of the rendered item.\n - `model.item` The item.",
"fieldName": "renderer"
},
{
"name": "selected-item",
"type": {
"text": "ComboBoxItem | string | undefined"
},
"description": "The selected item from the `items` array.",
"fieldName": "selectedItem"
}
],
"mixins": [
{
"name": "ValidateMixin",
"package": "@vaadin/field-base/src/validate-mixin.js"
},
{
"name": "ComboBoxItemsMixin",
"module": "src/vaadin-combo-box-items-mixin.js"
}
],
"parameters": [
{
"name": "superClass",
"type": {
"text": "function(new:HTMLElement)"
}
}
]
}
],
"exports": [
{
"kind": "js",
"name": "ComboBoxMixin",
"declaration": {
"name": "ComboBoxMixin",
"module": "src/vaadin-combo-box-mixin.js"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/vaadin-combo-box-overlay-mixin.js",
"declarations": [
{
"kind": "mixin",
"description": "",
"name": "ComboBoxOverlayMixin",
"members": [
{
"kind": "field",
"name": "horizontalAlign",
"privacy": "public",
"type": {
"text": "string"
},
"description": "When `positionTarget` is set, this property defines whether to align the overlay's\nleft or right side to the target element by default.\nPossible values are `start` and `end`.\nRTL is taken into account when interpreting the value.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
"attribute": "horizontal-align",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"kind": "field",
"name": "noHorizontalOverlap",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the x-axis, or be positioned right next to it.",
"attribute": "no-horizontal-overlap",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"kind": "field",
"name": "noVerticalOverlap",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the y-axis, or be positioned right above/below it.",
"attribute": "no-vertical-overlap",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"kind": "field",
"name": "positionTarget",
"privacy": "public",
"type": {
"text": "object"
},
"description": "The element next to which this overlay should be aligned.\nThe position of the overlay relative to the positionTarget can be adjusted\nwith properties `horizontalAlign`, `verticalAlign`, `noHorizontalOverlap`\nand `noVerticalOverlap`.",
"attribute": "position-target",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"kind": "field",
"name": "requiredVerticalSpace",
"privacy": "public",
"type": {
"text": "number"
},
"description": "If the overlay content has no intrinsic height, this property can be used to set\nthe minimum vertical space (in pixels) required by the overlay. Setting a value to\nthe property effectively disables the content measurement in favor of using this\nfixed value for determining the open direction.",
"attribute": "required-vertical-space",
"default": "200",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"kind": "field",
"name": "verticalAlign",
"privacy": "public",
"type": {
"text": "string"
},
"description": "When `positionTarget` is set, this property defines whether to align the overlay's\ntop or bottom side to the target element by default.\nPossible values are `top` and `bottom`.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
"attribute": "vertical-align",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
}
],
"mixins": [
{
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
],
"parameters": [
{
"name": "superClass"
}
],
"attributes": [
{
"name": "horizontal-align",
"type": {
"text": "string"
},
"description": "When `positionTarget` is set, this property defines whether to align the overlay's\nleft or right side to the target element by default.\nPossible values are `start` and `end`.\nRTL is taken into account when interpreting the value.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
"fieldName": "horizontalAlign",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"name": "no-horizontal-overlap",
"type": {
"text": "boolean"
},
"description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the x-axis, or be positioned right next to it.",
"fieldName": "noHorizontalOverlap",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"name": "no-vertical-overlap",
"type": {
"text": "boolean"
},
"description": "When `positionTarget` is set, this property defines whether the overlay should overlap\nthe target element in the y-axis, or be positioned right above/below it.",
"fieldName": "noVerticalOverlap",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"name": "required-vertical-space",
"type": {
"text": "number"
},
"description": "If the overlay content has no intrinsic height, this property can be used to set\nthe minimum vertical space (in pixels) required by the overlay. Setting a value to\nthe property effectively disables the content measurement in favor of using this\nfixed value for determining the open direction.",
"fieldName": "requiredVerticalSpace",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
},
{
"name": "vertical-align",
"type": {
"text": "string"
},
"description": "When `positionTarget` is set, this property defines whether to align the overlay's\ntop or bottom side to the target element by default.\nPossible values are `top` and `bottom`.\nThe overlay is automatically flipped to the opposite side when it doesn't fit into\nthe default side defined by this property.",
"fieldName": "verticalAlign",
"inheritedFrom": {
"name": "PositionMixin",
"package": "@vaadin/overlay/src/vaadin-overlay-position-mixin.js"
}
}
]
}
],
"exports": [
{
"kind": "js",
"name": "ComboBoxOverlayMixin",
"declaration": {
"name": "ComboBoxOverlayMixin",
"module": "src/vaadin-combo-box-overlay-mixin.js"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/vaadin-combo-box-placeholder.js",
"declarations": [
{
"kind": "variable",
"name": "ComboBoxPlaceholder",
"default": "class ComboBoxPlaceholder { toString() { return ''; } }"
}
],
"exports": [
{
"kind": "js",
"name": "ComboBoxPlaceholder",
"declaration": {
"name": "ComboBoxPlaceholder",
"module": "src/vaadin-combo-box-placeholder.js"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/vaadin-combo-box-scroller-mixin.js",
"declarations": [
{
"kind": "mixin",
"description": "",
"name": "ComboBoxScrollerMixin",
"members": [
{
"kind": "field",
"name": "focusedIndex",
"privacy": "public",
"type": {
"text": "number"
},
"description": "Index of an item that has focus outline and is scrolled into view.\nThe actual focus still remains in the input field.",
"attribute": "focused-index"
},
{
"kind": "field",
"name": "getItemLabel",
"privacy": "public",
"type": {
"text": "object"
},
"description": "Function used to set a label for every combo-box item.",
"attribute": "get-item-label"
},
{
"kind": "field",
"name": "itemClassNameGenerator",
"privacy": "public",
"type": {
"text": "object"
},
"description": "A function used to generate CSS class names for dropdown\nitems based on the item. The return value should be the\ngenerated class name as a string, or multiple class names\nseparated by whitespace characters.",
"attribute": "item-class-name-generator"
},
{
"kind": "field",
"name": "itemIdPath",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Path for the id of the item, used to detect whether the item is selected.",
"attribute": "item-id-path"
},
{
"kind": "field",
"name": "items",
"privacy": "public",
"type": {
"text": "array"
},
"description": "A full set of items to filter the visible options from.\nSet to an empty array when combo-box is not opened.",
"attribute": "items"
},
{
"kind": "field",
"name": "loading",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "Set to true while combo-box fetches new page from the data provider.",
"attribute": "loading"
},
{
"kind": "field",
"name": "opened",
"privacy": "public",
"type": {
"text": "boolean"
},
"description": "Whether the combo-box is currently opened or not. If set to false,\ncalling `scrollIntoView` does not have any effect.",
"attribute": "opened"
},
{
"kind": "field",
"name": "owner",
"privacy": "public",
"type": {
"text": "object"
},
"description": "Reference to the owner (combo-box owner), used by the item elements.",
"attribute": "owner"
},
{
"kind": "field",
"name": "renderer",
"privacy": "public",
"type": {
"text": "object"
},
"description": "Function used to render the content of every combo-box item.",
"attribute": "renderer"
},
{
"kind": "method",
"name": "requestContentUpdate",
"description": "Updates the virtualizer's size and items."
},
{
"kind": "method",
"name": "scrollIntoView",
"parameters": [
{
"name": "index",
"type": {
"text": "number"
}
}
],
"description": "Scrolls an item at given index into view and adjusts `scrollTop`\nso that the element gets fully visible on Arrow Down key press."
},
{
"kind": "field",
"name": "selectedItem",
"privacy": "public",
"type": {
"text": "object"
},
"description": "The selected item from the `items` array.",
"attribute": "selected-item"
},
{
"kind": "field",
"name": "theme",
"privacy": "public",
"type": {
"text": "string"
},
"description": "Used to propagate the `theme` attribute from the host element.",
"attribute": "theme"
}
],
"events": [
{
"name": "index-requested",
"type": {
"text": "CustomEvent"
}
},
{
"name": "selection-changed",
"type": {
"text": "CustomEvent"
}
}
],
"attributes": [
{
"name": "focused-index",
"type": {
"text": "number"
},
"description": "Index of an item that has focus outline and is scrolled into view.\nThe actual focus still remains in the input field.",
"fieldName": "focusedIndex"
},
{
"name": "item-id-path",
"type": {
"text": "string"