devextreme-angular
Version:
Angular UI and visualization components based on DevExtreme widgets
1,222 lines (1,162 loc) • 73.7 kB
JavaScript
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/platform-browser'), require('@angular/core'), require('devextreme/ui/autocomplete'), require('@angular/forms'), require('devextreme-angular/core'), require('devextreme-angular/ui/nested')) :
typeof define === 'function' && define.amd ? define('devextreme-angular/ui/autocomplete', ['exports', '@angular/platform-browser', '@angular/core', 'devextreme/ui/autocomplete', '@angular/forms', 'devextreme-angular/core', 'devextreme-angular/ui/nested'], factory) :
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global["devextreme-angular"] = global["devextreme-angular"] || {}, global["devextreme-angular"].ui = global["devextreme-angular"].ui || {}, global["devextreme-angular"].ui.autocomplete = {}), global.ng.platformBrowser, global.ng.core, global.DxAutocomplete, global.ng.forms, global["devextreme-angular"].core, global["devextreme-angular"].ui.nested));
})(this, (function (exports, i2, i0, DxAutocomplete, forms, i1, nested) { 'use strict';
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
function _interopNamespace(e) {
if (e && e.__esModule) return e;
var n = Object.create(null);
if (e) {
Object.keys(e).forEach(function (k) {
if (k !== 'default') {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () { return e[k]; }
});
}
});
}
n["default"] = e;
return Object.freeze(n);
}
var i2__namespace = /*#__PURE__*/_interopNamespace(i2);
var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
var DxAutocomplete__default = /*#__PURE__*/_interopDefaultLegacy(DxAutocomplete);
var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
/* global Reflect, Promise */
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b)
if (b.hasOwnProperty(p))
d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
var __assign = function () {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s)
if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
function __rest(s, e) {
var t = {};
for (var p in s)
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
}
function __decorate(decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
r = Reflect.decorate(decorators, target, key, desc);
else
for (var i = decorators.length - 1; i >= 0; i--)
if (d = decorators[i])
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
}
function __param(paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); };
}
function __metadata(metadataKey, metadataValue) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
return Reflect.metadata(metadataKey, metadataValue);
}
function __awaiter(thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try {
step(generator.next(value));
}
catch (e) {
reject(e);
} }
function rejected(value) { try {
step(generator["throw"](value));
}
catch (e) {
reject(e);
} }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
function __generator(thisArg, body) {
var _ = { label: 0, sent: function () { if (t[0] & 1)
throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f)
throw new TypeError("Generator is already executing.");
while (_)
try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
return t;
if (y = 0, t)
op = [op[0] & 2, t.value];
switch (op[0]) {
case 0:
case 1:
t = op;
break;
case 4:
_.label++;
return { value: op[1], done: false };
case 5:
_.label++;
y = op[1];
op = [0];
continue;
case 7:
op = _.ops.pop();
_.trys.pop();
continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
_ = 0;
continue;
}
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
_.label = op[1];
break;
}
if (op[0] === 6 && _.label < t[1]) {
_.label = t[1];
t = op;
break;
}
if (t && _.label < t[2]) {
_.label = t[2];
_.ops.push(op);
break;
}
if (t[2])
_.ops.pop();
_.trys.pop();
continue;
}
op = body.call(thisArg, _);
}
catch (e) {
op = [6, e];
y = 0;
}
finally {
f = t = 0;
}
if (op[0] & 5)
throw op[1];
return { value: op[0] ? op[1] : void 0, done: true };
}
}
function __createBinding(o, m, k, k2) {
if (k2 === undefined)
k2 = k;
o[k2] = m[k];
}
function __exportStar(m, exports) {
for (var p in m)
if (p !== "default" && !exports.hasOwnProperty(p))
exports[p] = m[p];
}
function __values(o) {
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
if (m)
return m.call(o);
if (o && typeof o.length === "number")
return {
next: function () {
if (o && i >= o.length)
o = void 0;
return { value: o && o[i++], done: !o };
}
};
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m)
return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
ar.push(r.value);
}
catch (error) {
e = { error: error };
}
finally {
try {
if (r && !r.done && (m = i["return"]))
m.call(i);
}
finally {
if (e)
throw e.error;
}
}
return ar;
}
function __spread() {
for (var ar = [], i = 0; i < arguments.length; i++)
ar = ar.concat(__read(arguments[i]));
return ar;
}
function __spreadArrays() {
for (var s = 0, i = 0, il = arguments.length; i < il; i++)
s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
}
;
function __await(v) {
return this instanceof __await ? (this.v = v, this) : new __await(v);
}
function __asyncGenerator(thisArg, _arguments, generator) {
if (!Symbol.asyncIterator)
throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n])
i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try {
step(g[n](v));
}
catch (e) {
settle(q[0][3], e);
} }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length)
resume(q[0][0], q[0][1]); }
}
function __asyncDelegator(o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
}
function __asyncValues(o) {
if (!Symbol.asyncIterator)
throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
}
function __makeTemplateObject(cooked, raw) {
if (Object.defineProperty) {
Object.defineProperty(cooked, "raw", { value: raw });
}
else {
cooked.raw = raw;
}
return cooked;
}
;
function __importStar(mod) {
if (mod && mod.__esModule)
return mod;
var result = {};
if (mod != null)
for (var k in mod)
if (Object.hasOwnProperty.call(mod, k))
result[k] = mod[k];
result.default = mod;
return result;
}
function __importDefault(mod) {
return (mod && mod.__esModule) ? mod : { default: mod };
}
function __classPrivateFieldGet(receiver, privateMap) {
if (!privateMap.has(receiver)) {
throw new TypeError("attempted to get private field on non-instance");
}
return privateMap.get(receiver);
}
function __classPrivateFieldSet(receiver, privateMap, value) {
if (!privateMap.has(receiver)) {
throw new TypeError("attempted to set private field on non-instance");
}
privateMap.set(receiver, value);
return value;
}
var CUSTOM_VALUE_ACCESSOR_PROVIDER = {
provide: forms.NG_VALUE_ACCESSOR,
useExisting: i0.forwardRef(function () { return DxAutocompleteComponent; }),
multi: true
};
/**
* The Autocomplete UI component is a textbox that provides suggestions while a user types into it.
*/
var DxAutocompleteComponent = /** @class */ (function (_super) {
__extends(DxAutocompleteComponent, _super);
function DxAutocompleteComponent(elementRef, ngZone, templateHost, _watcherHelper, _idh, optionHost, transferState, platformId) {
var _this = _super.call(this, elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId) || this;
_this._watcherHelper = _watcherHelper;
_this._idh = _idh;
_this.touched = function (_) { };
_this._createEventEmitters([
{ subscribe: 'change', emit: 'onChange' },
{ subscribe: 'closed', emit: 'onClosed' },
{ subscribe: 'contentReady', emit: 'onContentReady' },
{ subscribe: 'copy', emit: 'onCopy' },
{ subscribe: 'cut', emit: 'onCut' },
{ subscribe: 'disposing', emit: 'onDisposing' },
{ subscribe: 'enterKey', emit: 'onEnterKey' },
{ subscribe: 'focusIn', emit: 'onFocusIn' },
{ subscribe: 'focusOut', emit: 'onFocusOut' },
{ subscribe: 'initialized', emit: 'onInitialized' },
{ subscribe: 'input', emit: 'onInput' },
{ subscribe: 'itemClick', emit: 'onItemClick' },
{ subscribe: 'keyDown', emit: 'onKeyDown' },
{ subscribe: 'keyUp', emit: 'onKeyUp' },
{ subscribe: 'opened', emit: 'onOpened' },
{ subscribe: 'optionChanged', emit: 'onOptionChanged' },
{ subscribe: 'paste', emit: 'onPaste' },
{ subscribe: 'selectionChanged', emit: 'onSelectionChanged' },
{ subscribe: 'valueChanged', emit: 'onValueChanged' },
{ emit: 'accessKeyChange' },
{ emit: 'activeStateEnabledChange' },
{ emit: 'buttonsChange' },
{ emit: 'dataSourceChange' },
{ emit: 'deferRenderingChange' },
{ emit: 'disabledChange' },
{ emit: 'displayValueChange' },
{ emit: 'dropDownButtonTemplateChange' },
{ emit: 'dropDownOptionsChange' },
{ emit: 'elementAttrChange' },
{ emit: 'focusStateEnabledChange' },
{ emit: 'groupedChange' },
{ emit: 'groupTemplateChange' },
{ emit: 'heightChange' },
{ emit: 'hintChange' },
{ emit: 'hoverStateEnabledChange' },
{ emit: 'inputAttrChange' },
{ emit: 'isValidChange' },
{ emit: 'itemsChange' },
{ emit: 'itemTemplateChange' },
{ emit: 'labelChange' },
{ emit: 'labelModeChange' },
{ emit: 'maxItemCountChange' },
{ emit: 'maxLengthChange' },
{ emit: 'minSearchLengthChange' },
{ emit: 'nameChange' },
{ emit: 'openedChange' },
{ emit: 'openOnFieldClickChange' },
{ emit: 'placeholderChange' },
{ emit: 'readOnlyChange' },
{ emit: 'rtlEnabledChange' },
{ emit: 'searchExprChange' },
{ emit: 'searchModeChange' },
{ emit: 'searchTimeoutChange' },
{ emit: 'selectedItemChange' },
{ emit: 'showClearButtonChange' },
{ emit: 'showDropDownButtonChange' },
{ emit: 'spellcheckChange' },
{ emit: 'stylingModeChange' },
{ emit: 'tabIndexChange' },
{ emit: 'textChange' },
{ emit: 'useItemTextAsTitleChange' },
{ emit: 'validationErrorChange' },
{ emit: 'validationErrorsChange' },
{ emit: 'validationMessageModeChange' },
{ emit: 'validationStatusChange' },
{ emit: 'valueChange' },
{ emit: 'valueChangeEventChange' },
{ emit: 'valueExprChange' },
{ emit: 'visibleChange' },
{ emit: 'widthChange' },
{ emit: 'wrapItemTextChange' },
{ emit: 'onBlur' }
]);
_this._idh.setHost(_this);
optionHost.setHost(_this);
return _this;
}
Object.defineProperty(DxAutocompleteComponent.prototype, "accessKey", {
/**
* Specifies the shortcut key that sets focus on the UI component.
*/
get: function () {
return this._getOption('accessKey');
},
set: function (value) {
this._setOption('accessKey', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "activeStateEnabled", {
/**
* Specifies whether the UI component changes its visual state as a result of user interaction.
*/
get: function () {
return this._getOption('activeStateEnabled');
},
set: function (value) {
this._setOption('activeStateEnabled', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "buttons", {
/**
* Allows you to add custom buttons to the input text field.
*/
get: function () {
return this._getOption('buttons');
},
set: function (value) {
this._setOption('buttons', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "dataSource", {
/**
* Binds the UI component to data.
*/
get: function () {
return this._getOption('dataSource');
},
set: function (value) {
this._setOption('dataSource', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "deferRendering", {
/**
* Specifies whether to render the drop-down field's content when it is displayed. If false, the content is rendered immediately.
*/
get: function () {
return this._getOption('deferRendering');
},
set: function (value) {
this._setOption('deferRendering', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "disabled", {
/**
* Specifies whether the UI component responds to user interaction.
*/
get: function () {
return this._getOption('disabled');
},
set: function (value) {
this._setOption('disabled', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "displayValue", {
/**
* Returns the value currently displayed by the UI component.
*/
get: function () {
return this._getOption('displayValue');
},
set: function (value) {
this._setOption('displayValue', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "dropDownButtonTemplate", {
/**
* Specifies a custom template for the drop-down button.
*/
get: function () {
return this._getOption('dropDownButtonTemplate');
},
set: function (value) {
this._setOption('dropDownButtonTemplate', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "dropDownOptions", {
/**
* Configures the drop-down field which holds the content.
*/
get: function () {
return this._getOption('dropDownOptions');
},
set: function (value) {
this._setOption('dropDownOptions', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "elementAttr", {
/**
* Specifies the global attributes to be attached to the UI component's container element.
*/
get: function () {
return this._getOption('elementAttr');
},
set: function (value) {
this._setOption('elementAttr', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "focusStateEnabled", {
/**
* Specifies whether the UI component can be focused using keyboard navigation.
*/
get: function () {
return this._getOption('focusStateEnabled');
},
set: function (value) {
this._setOption('focusStateEnabled', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "grouped", {
/**
* Specifies whether data items should be grouped.
*/
get: function () {
return this._getOption('grouped');
},
set: function (value) {
this._setOption('grouped', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "groupTemplate", {
/**
* Specifies a custom template for group captions.
*/
get: function () {
return this._getOption('groupTemplate');
},
set: function (value) {
this._setOption('groupTemplate', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "height", {
/**
* Specifies the UI component's height.
*/
get: function () {
return this._getOption('height');
},
set: function (value) {
this._setOption('height', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "hint", {
/**
* Specifies text for a hint that appears when a user pauses on the UI component.
*/
get: function () {
return this._getOption('hint');
},
set: function (value) {
this._setOption('hint', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "hoverStateEnabled", {
/**
* Specifies whether the UI component changes its state when a user pauses on it.
*/
get: function () {
return this._getOption('hoverStateEnabled');
},
set: function (value) {
this._setOption('hoverStateEnabled', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "inputAttr", {
/**
* Specifies the attributes to be passed on to the underlying HTML element.
*/
get: function () {
return this._getOption('inputAttr');
},
set: function (value) {
this._setOption('inputAttr', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "isValid", {
/**
* Specifies or indicates whether the editor's value is valid.
*/
get: function () {
return this._getOption('isValid');
},
set: function (value) {
this._setOption('isValid', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "items", {
/**
* An array of items displayed by the UI component.
*/
get: function () {
return this._getOption('items');
},
set: function (value) {
this._setOption('items', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "itemTemplate", {
/**
* Specifies a custom template for items.
*/
get: function () {
return this._getOption('itemTemplate');
},
set: function (value) {
this._setOption('itemTemplate', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "label", {
/**
* Specifies a text string used to annotate the editor's value.
*/
get: function () {
return this._getOption('label');
},
set: function (value) {
this._setOption('label', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "labelMode", {
/**
* Specifies the label's display mode.
*/
get: function () {
return this._getOption('labelMode');
},
set: function (value) {
this._setOption('labelMode', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "maxItemCount", {
/**
* Specifies the maximum count of items displayed by the UI component.
*/
get: function () {
return this._getOption('maxItemCount');
},
set: function (value) {
this._setOption('maxItemCount', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "maxLength", {
/**
* Specifies the maximum number of characters you can enter into the textbox.
*/
get: function () {
return this._getOption('maxLength');
},
set: function (value) {
this._setOption('maxLength', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "minSearchLength", {
/**
* The minimum number of characters that must be entered into the text box to begin a search.
*/
get: function () {
return this._getOption('minSearchLength');
},
set: function (value) {
this._setOption('minSearchLength', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "name", {
/**
* The value to be assigned to the `name` attribute of the underlying HTML element.
*/
get: function () {
return this._getOption('name');
},
set: function (value) {
this._setOption('name', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "opened", {
/**
* Specifies whether or not the drop-down editor is displayed.
*/
get: function () {
return this._getOption('opened');
},
set: function (value) {
this._setOption('opened', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "openOnFieldClick", {
/**
* Specifies whether a user can open the drop-down list by clicking a text field.
*/
get: function () {
return this._getOption('openOnFieldClick');
},
set: function (value) {
this._setOption('openOnFieldClick', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "placeholder", {
/**
* Specifies a text string displayed when the editor's value is empty.
*/
get: function () {
return this._getOption('placeholder');
},
set: function (value) {
this._setOption('placeholder', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "readOnly", {
/**
* Specifies whether the editor is read-only.
*/
get: function () {
return this._getOption('readOnly');
},
set: function (value) {
this._setOption('readOnly', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "rtlEnabled", {
/**
* Switches the UI component to a right-to-left representation.
*/
get: function () {
return this._getOption('rtlEnabled');
},
set: function (value) {
this._setOption('rtlEnabled', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "searchExpr", {
/**
* Specifies the name of a data source item field or an expression whose value is compared to the search criterion.
*/
get: function () {
return this._getOption('searchExpr');
},
set: function (value) {
this._setOption('searchExpr', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "searchMode", {
/**
* Specifies a comparison operation used to search UI component items.
*/
get: function () {
return this._getOption('searchMode');
},
set: function (value) {
this._setOption('searchMode', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "searchTimeout", {
/**
* Specifies the time delay, in milliseconds, after the last character has been typed in, before a search is executed.
*/
get: function () {
return this._getOption('searchTimeout');
},
set: function (value) {
this._setOption('searchTimeout', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "selectedItem", {
/**
* Gets the currently selected item.
*/
get: function () {
return this._getOption('selectedItem');
},
set: function (value) {
this._setOption('selectedItem', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "showClearButton", {
/**
* Specifies whether to display the Clear button in the UI component.
*/
get: function () {
return this._getOption('showClearButton');
},
set: function (value) {
this._setOption('showClearButton', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "showDropDownButton", {
/**
* Specifies whether the drop-down button is visible.
*/
get: function () {
return this._getOption('showDropDownButton');
},
set: function (value) {
this._setOption('showDropDownButton', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "spellcheck", {
/**
* Specifies whether or not the UI component checks the inner text for spelling mistakes.
*/
get: function () {
return this._getOption('spellcheck');
},
set: function (value) {
this._setOption('spellcheck', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "stylingMode", {
/**
* Specifies how the UI component's text field is styled.
*/
get: function () {
return this._getOption('stylingMode');
},
set: function (value) {
this._setOption('stylingMode', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "tabIndex", {
/**
* Specifies the number of the element when the Tab key is used for navigating.
*/
get: function () {
return this._getOption('tabIndex');
},
set: function (value) {
this._setOption('tabIndex', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "text", {
/**
* The read-only property that holds the text displayed by the UI component input element.
*/
get: function () {
return this._getOption('text');
},
set: function (value) {
this._setOption('text', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "useItemTextAsTitle", {
/**
* Specifies whether the widget uses item's text a title attribute.
*/
get: function () {
return this._getOption('useItemTextAsTitle');
},
set: function (value) {
this._setOption('useItemTextAsTitle', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "validationError", {
/**
* Information on the broken validation rule. Contains the first item from the validationErrors array.
*/
get: function () {
return this._getOption('validationError');
},
set: function (value) {
this._setOption('validationError', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "validationErrors", {
/**
* An array of the validation rules that failed.
*/
get: function () {
return this._getOption('validationErrors');
},
set: function (value) {
this._setOption('validationErrors', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "validationMessageMode", {
/**
* Specifies how the message about the validation rules that are not satisfied by this editor's value is displayed.
*/
get: function () {
return this._getOption('validationMessageMode');
},
set: function (value) {
this._setOption('validationMessageMode', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "validationStatus", {
/**
* Indicates or specifies the current validation status.
*/
get: function () {
return this._getOption('validationStatus');
},
set: function (value) {
this._setOption('validationStatus', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "value", {
/**
* Specifies the current value displayed by the UI component.
*/
get: function () {
return this._getOption('value');
},
set: function (value) {
this._setOption('value', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "valueChangeEvent", {
/**
* Specifies the DOM events after which the UI component's value should be updated.
*/
get: function () {
return this._getOption('valueChangeEvent');
},
set: function (value) {
this._setOption('valueChangeEvent', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "valueExpr", {
/**
* Specifies which data field provides unique values to the UI component's value.
*/
get: function () {
return this._getOption('valueExpr');
},
set: function (value) {
this._setOption('valueExpr', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "visible", {
/**
* Specifies whether the UI component is visible.
*/
get: function () {
return this._getOption('visible');
},
set: function (value) {
this._setOption('visible', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "width", {
/**
* Specifies the UI component's width.
*/
get: function () {
return this._getOption('width');
},
set: function (value) {
this._setOption('width', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "wrapItemText", {
/**
* Specifies whether text that exceeds the drop-down list width should be wrapped.
*/
get: function () {
return this._getOption('wrapItemText');
},
set: function (value) {
this._setOption('wrapItemText', value);
},
enumerable: false,
configurable: true
});
DxAutocompleteComponent.prototype.change = function (_) { };
Object.defineProperty(DxAutocompleteComponent.prototype, "buttonsChildren", {
get: function () {
return this._getOption('buttons');
},
set: function (value) {
this.setChildren('buttons', value);
},
enumerable: false,
configurable: true
});
Object.defineProperty(DxAutocompleteComponent.prototype, "itemsChildren", {
get: function () {
return this._getOption('items');
},
set: function (value) {
this.setChildren('items', value);
},
enumerable: false,
configurable: true
});
DxAutocompleteComponent.prototype._createInstance = function (element, options) {
return new DxAutocomplete__default["default"](element, options);
};
DxAutocompleteComponent.prototype.writeValue = function (value) {
this.eventHelper.lockedValueChangeEvent = true;
this.value = value;
this.eventHelper.lockedValueChangeEvent = false;
};
DxAutocompleteComponent.prototype.setDisabledState = function (isDisabled) {
this.disabled = isDisabled;
};
DxAutocompleteComponent.prototype.registerOnChange = function (fn) { this.change = fn; };
DxAutocompleteComponent.prototype.registerOnTouched = function (fn) { this.touched = fn; };
DxAutocompleteComponent.prototype._createWidget = function (element) {
var _this = this;
_super.prototype._createWidget.call(this, element);
this.instance.on('focusOut', function (e) {
_this.eventHelper.fireNgEvent('onBlur', [e]);
});
};
DxAutocompleteComponent.prototype.ngOnDestroy = function () {
this._destroyWidget();
};
DxAutocompleteComponent.prototype.ngOnChanges = function (changes) {
_super.prototype.ngOnChanges.call(this, changes);
this.setupChanges('buttons', changes);
this.setupChanges('dataSource', changes);
this.setupChanges('items', changes);
this.setupChanges('searchExpr', changes);
this.setupChanges('validationErrors', changes);
};
DxAutocompleteComponent.prototype.setupChanges = function (prop, changes) {
if (!(prop in this._optionsToUpdate)) {
this._idh.setup(prop, changes);
}
};
DxAutocompleteComponent.prototype.ngDoCheck = function () {
this._idh.doCheck('buttons');
this._idh.doCheck('dataSource');
this._idh.doCheck('items');
this._idh.doCheck('searchExpr');
this._idh.doCheck('validationErrors');
this._watcherHelper.checkWatchers();
_super.prototype.ngDoCheck.call(this);
_super.prototype.clearChangedOptions.call(this);
};
DxAutocompleteComponent.prototype._setOption = function (name, value) {
var isSetup = this._idh.setupSingle(name, value);
var isChanged = this._idh.getChanges(name, value) !== null;
if (isSetup || isChanged) {
_super.prototype._setOption.call(this, name, value);
}
};
return DxAutocompleteComponent;
}(i1.DxComponent));
/** @nocollapse */ DxAutocompleteComponent.ɵfac = function DxAutocompleteComponent_Factory(t) { return new (t || DxAutocompleteComponent)(i0__namespace.ɵɵdirectiveInject(i0__namespace.ElementRef), i0__namespace.ɵɵdirectiveInject(i0__namespace.NgZone), i0__namespace.ɵɵdirectiveInject(i1__namespace.DxTemplateHost), i0__namespace.ɵɵdirectiveInject(i1__namespace.WatcherHelper), i0__namespace.ɵɵdirectiveInject(i1