* Utility method that forwards the given list of non-bubbling events * from the given element to this element as custom events with the same name. * @param {string|!Array } events * @param {!Element} element * @public @final * @return {!UnlistenDef}
(events, element)
| 749 | * @return {!UnlistenDef} |
| 750 | */ |
| 751 | forwardEvents(events, element) { |
| 752 | const unlisteners = (isArray(events) ? events : [events]).map((eventType) => |
| 753 | listen(element, eventType, (event) => { |
| 754 | dispatchCustomEvent(this.element, eventType, getData(event) || {}); |
| 755 | }) |
| 756 | ); |
| 757 | |
| 758 | return () => unlisteners.forEach((unlisten) => unlisten()); |
| 759 | } |
| 760 | |
| 761 | /** |
| 762 | * Returns an optional placeholder element for this custom element. |