com.phloxui
Version:
PhloxUI Ng2+ Framework
69 lines (68 loc) • 5.33 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import { AbstractRippleButton } from './AbstractRippleButton';
/**
* <p style="text-indent: 2em;">
* An abstract base class for <code>nav item</code>. A <code>nav item</code> must be in <code>nav menu</code>. This class provides a
* default [[onClick]] method implementation calling [[AbstractNavMenu.navigateTo]] to navigate the associated <code>nav menu</code> to
* <code>this</code> item when it is clicked.
* </p>
*
* @author shiorin, tee4cute
* @see [[AbstractNavMenu]]
* @abstract
*/
export class AbstractNavItem extends AbstractRippleButton {
/**
* @param {?} phloxAppService
* @param {?} needFocusService
*/
constructor(phloxAppService, needFocusService) {
super(phloxAppService, needFocusService);
this.active = false;
}
/**
* Get the <code>nav menu</code> which this item is in.
* @return {?}
*/
getNavMenu() {
return this.navMenu;
}
/**
* Getter method for [[active]] flag.
* @return {?}
*/
isActive() {
return this.active;
}
/**
* Get the name of this item.
* @return {?}
*/
getName() {
return this.name;
}
/**
* Default click event handler calling [[AbstractNavMenu.navigateTo]] to this item.
* @param {?} event
* @return {?}
*/
onClick(event) {
super.onClick(event);
this.navMenu.navigateTo(this);
}
}
function AbstractNavItem_tsickle_Closure_declarations() {
/**
* A flag indicating that this item is currently active or not.
* @type {?}
*/
AbstractNavItem.prototype.active;
/** @type {?} */
AbstractNavItem.prototype.navMenu;
/** @type {?} */
AbstractNavItem.prototype.name;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3ROYXZJdGVtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vY29tLnBobG94dWkvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50L0Fic3RyYWN0TmF2SXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBSUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7Ozs7OztBQWU5RCxNQUFNLHNCQUFnQyxTQUFRLG9CQUFvQjs7Ozs7SUFVOUQsWUFBWSxlQUFnQyxFQUFFLGdCQUFrQztRQUM1RSxLQUFLLENBQUMsZUFBZSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFFekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7S0FDdkI7Ozs7O0lBS00sVUFBVTtRQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDOzs7Ozs7SUFNakIsUUFBUTtRQUNYLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDOzs7Ozs7SUFNaEIsT0FBTztRQUNWLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDOzs7Ozs7O0lBTWQsT0FBTyxDQUFDLEtBQVU7UUFDckIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyQixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzs7Q0FHckMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTmF2aWdhdGVlIH0gZnJvbSAnLi9JTmF2aWdhdGVlJztcbmltcG9ydCB7IFBobG94QXBwIH0gZnJvbSAnLi9QaGxveEFwcC5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBBYnN0cmFjdE5hdk1lbnUgfSBmcm9tICcuL0Fic3RyYWN0TmF2TWVudSc7XG5pbXBvcnQgeyBBYnN0cmFjdFJpcHBsZUJ1dHRvbiB9IGZyb20gJy4vQWJzdHJhY3RSaXBwbGVCdXR0b24nO1xuXG5pbXBvcnQgeyBQaGxveEFwcFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL1BobG94QXBwU2VydmljZS5zZXJ2aWNlJztcbmltcG9ydCB7IE5lZWRGb2N1c1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL05lZWRGb2N1c1NlcnZpY2Uuc2VydmljZSc7XG5cbi8qKlxuICogPHAgc3R5bGU9XCJ0ZXh0LWluZGVudDogMmVtO1wiPlxuICogQW4gYWJzdHJhY3QgYmFzZSBjbGFzcyBmb3IgPGNvZGU+bmF2IGl0ZW08L2NvZGU+LiBBIDxjb2RlPm5hdiBpdGVtPC9jb2RlPiBtdXN0IGJlIGluIDxjb2RlPm5hdiBtZW51PC9jb2RlPi4gVGhpcyBjbGFzcyBwcm92aWRlcyBhXG4gKiBkZWZhdWx0IFtbb25DbGlja11dIG1ldGhvZCBpbXBsZW1lbnRhdGlvbiBjYWxsaW5nIFtbQWJzdHJhY3ROYXZNZW51Lm5hdmlnYXRlVG9dXSB0byBuYXZpZ2F0ZSB0aGUgYXNzb2NpYXRlZCA8Y29kZT5uYXYgbWVudTwvY29kZT4gdG9cbiAqIDxjb2RlPnRoaXM8L2NvZGU+IGl0ZW0gd2hlbiBpdCBpcyBjbGlja2VkLlxuICogPC9wPlxuICpcbiAqIEBhdXRob3Igc2hpb3JpbiwgdGVlNGN1dGVcbiAqIEBzZWUgW1tBYnN0cmFjdE5hdk1lbnVdXVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3ROYXZJdGVtIGV4dGVuZHMgQWJzdHJhY3RSaXBwbGVCdXR0b24gaW1wbGVtZW50cyBJTmF2aWdhdGVlIHtcblxuICAgIC8qKlxuICAgICAqIEEgZmxhZyBpbmRpY2F0aW5nIHRoYXQgdGhpcyBpdGVtIGlzIGN1cnJlbnRseSBhY3RpdmUgb3Igbm90LlxuICAgICAqL1xuICAgIHB1YmxpYyBhY3RpdmU6IGJvb2xlYW47XG5cbiAgICBwcm90ZWN0ZWQgbmF2TWVudTogQWJzdHJhY3ROYXZNZW51PEFic3RyYWN0TmF2SXRlbT47XG4gICAgcHJvdGVjdGVkIG5hbWU6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKHBobG94QXBwU2VydmljZTogUGhsb3hBcHBTZXJ2aWNlLCBuZWVkRm9jdXNTZXJ2aWNlOiBOZWVkRm9jdXNTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKHBobG94QXBwU2VydmljZSwgbmVlZEZvY3VzU2VydmljZSk7XG5cbiAgICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIDxjb2RlPm5hdiBtZW51PC9jb2RlPiB3aGljaCB0aGlzIGl0ZW0gaXMgaW4uXG4gICAgICovXG4gICAgcHVibGljIGdldE5hdk1lbnUoKTogQWJzdHJhY3ROYXZNZW51PEFic3RyYWN0TmF2SXRlbT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXZNZW51O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHRlciBtZXRob2QgZm9yIFtbYWN0aXZlXV0gZmxhZy5cbiAgICAgKi9cbiAgICBwdWJsaWMgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFjdGl2ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIG5hbWUgb2YgdGhpcyBpdGVtLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXROYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hbWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVmYXVsdCBjbGljayBldmVudCBoYW5kbGVyIGNhbGxpbmcgW1tBYnN0cmFjdE5hdk1lbnUubmF2aWdhdGVUb11dIHRvIHRoaXMgaXRlbS5cbiAgICAgKi9cbiAgICBwdWJsaWMgb25DbGljayhldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm9uQ2xpY2soZXZlbnQpO1xuXG4gICAgICAgIHRoaXMubmF2TWVudS5uYXZpZ2F0ZVRvKHRoaXMpO1xuICAgIH1cblxufVxuIl19