UNPKG

3.32 kBJavaScriptView Raw
1/**
2 * @license
3 * Copyright 2018 Google Inc.
4 *
5 * Permission is hereby granted, free of charge, to any person obtaining a copy
6 * of this software and associated documentation files (the "Software"), to deal
7 * in the Software without restriction, including without limitation the rights
8 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 * copies of the Software, and to permit persons to whom the Software is
10 * furnished to do so, subject to the following conditions:
11 *
12 * The above copyright notice and this permission notice shall be included in
13 * all copies or substantial portions of the Software.
14 *
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 * THE SOFTWARE.
22 */
23import { __extends } from "tslib";
24import { MDCComponent } from '@material/base/component';
25import { MDCSelectIconFoundation } from './foundation';
26var MDCSelectIcon = /** @class */ (function (_super) {
27 __extends(MDCSelectIcon, _super);
28 function MDCSelectIcon() {
29 return _super !== null && _super.apply(this, arguments) || this;
30 }
31 MDCSelectIcon.attachTo = function (root) {
32 return new MDCSelectIcon(root);
33 };
34 Object.defineProperty(MDCSelectIcon.prototype, "foundationForSelect", {
35 // Provided for access by MDCSelect component
36 get: function () {
37 return this.foundation;
38 },
39 enumerable: false,
40 configurable: true
41 });
42 MDCSelectIcon.prototype.getDefaultFoundation = function () {
43 var _this = this;
44 // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.
45 // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.
46 // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.
47 var adapter = {
48 getAttr: function (attr) { return _this.root.getAttribute(attr); },
49 setAttr: function (attr, value) { return _this.root.setAttribute(attr, value); },
50 removeAttr: function (attr) { return _this.root.removeAttribute(attr); },
51 setContent: function (content) {
52 _this.root.textContent = content;
53 },
54 registerInteractionHandler: function (evtType, handler) {
55 return _this.listen(evtType, handler);
56 },
57 deregisterInteractionHandler: function (evtType, handler) {
58 return _this.unlisten(evtType, handler);
59 },
60 notifyIconAction: function () { return _this.emit(MDCSelectIconFoundation.strings.ICON_EVENT, {} /* evtData */, true /* shouldBubble */); },
61 };
62 // tslint:enable:object-literal-sort-keys
63 return new MDCSelectIconFoundation(adapter);
64 };
65 return MDCSelectIcon;
66}(MDCComponent));
67export { MDCSelectIcon };
68//# sourceMappingURL=component.js.map
\No newline at end of file