ay-menu-button
Advanced tools
Comparing version 1.0.0 to 1.0.1
@@ -21,2 +21,2 @@ /*! Copyright 2016 Ayogo Health Inc. */ | ||
export default modName; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhcjEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYW5ndWxhcjEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQXVDO0FBRXZDLE9BQU8sS0FBSyxPQUFPLE1BQU0sU0FBUyxDQUFDO0FBQ25DLE9BQU8sVUFBVSxNQUFNLFNBQVMsQ0FBQztBQUVqQyxNQUFNLE9BQU8sR0FBRyxjQUFjLENBQUM7QUFFL0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO0tBQzFCLFNBQVMsQ0FBQyxRQUFRLEVBQUU7SUFDakIsTUFBTSxDQUFDO1FBQ0gsUUFBUSxFQUFFLEdBQUc7UUFDYixJQUFJLEVBQUUsVUFBUyxPQUFPLEVBQUUsUUFBUTtZQUM1QixJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFzQixDQUFDO1lBRTFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssTUFBTSxJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQztnQkFDaEYsSUFBSSxTQUFTLEdBQUcsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUUvQixRQUFRLENBQUMsRUFBRSxDQUFDLFVBQVUsRUFBRTtvQkFDcEIsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUN4QixDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7UUFDTCxDQUFDO0tBQ0osQ0FBQztBQUNOLENBQUMsQ0FBQyxDQUFDO0FBRUgsZUFBZSxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgQ29weXJpZ2h0IDIwMTYgQXlvZ28gSGVhbHRoIEluYy4gKi9cblxuaW1wb3J0ICogYXMgYW5ndWxhciBmcm9tICdhbmd1bGFyJztcbmltcG9ydCBNZW51QnV0dG9uIGZyb20gJy4vaW5kZXgnO1xuXG5jb25zdCBtb2ROYW1lID0gJ2F5TWVudUJ1dHRvbic7XG5cbmFuZ3VsYXIubW9kdWxlKG1vZE5hbWUsIFtdKVxuLmRpcmVjdGl2ZSgnYnV0dG9uJywgZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVzdHJpY3Q6ICdFJyxcbiAgICAgICAgbGluazogZnVuY3Rpb24oXyRzY29wZSwgJGVsZW1lbnQpIHtcbiAgICAgICAgICAgIGxldCBlbCA9ICRlbGVtZW50WzBdIGFzIEhUTUxCdXR0b25FbGVtZW50O1xuXG4gICAgICAgICAgICBpZiAoZWwuZ2V0QXR0cmlidXRlKCd0eXBlJykgPT09ICdtZW51JyB8fCBlbC5nZXRBdHRyaWJ1dGUoJ2RhdGEtdHlwZScpID09PSAnbWVudScpIHtcbiAgICAgICAgICAgICAgICBsZXQgYmVoYXZpb3VyID0gTWVudUJ1dHRvbihlbCk7XG5cbiAgICAgICAgICAgICAgICAkZWxlbWVudC5vbignJGRlc3Ryb3knLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGJlaGF2aW91ci5kZXN0cm95KCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xufSk7XG5cbmV4cG9ydCBkZWZhdWx0IG1vZE5hbWU7XG4iXX0= | ||
//# sourceMappingURL=angular1.js.map |
@@ -56,2 +56,2 @@ /*! Copyright 2016 Ayogo Health Inc. */ | ||
} | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2J1dHRvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1Q0FBdUM7QUFFdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV4QyxNQUFNO0lBUUYsWUFBWSxHQUF1QjtRQUMvQixJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUcsQ0FBQztRQUVkLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNWLE1BQU0sQ0FBQztRQUNYLENBQUM7UUFFRCxJQUFJLElBQUksR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQW9CLENBQUM7UUFDdkUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ1IsTUFBTSxDQUFDO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRWpCLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFL0MsSUFBSSxDQUFDLFlBQVksR0FBRztZQUNoQixXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFHLEVBQUUsSUFBSSxDQUFDLElBQUssQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQztRQUVGLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFpQjtZQUNoQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsR0FBRztZQUNqQixXQUFXLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDO1FBRUYsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQWEsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFXLENBQUMsQ0FBQztRQUN0RCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxhQUFjLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBSUQsT0FBTztRQUNILEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ1YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQWEsQ0FBQyxDQUFDO1lBQ3pELElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFXLENBQUMsQ0FBQztZQUN6RCxNQUFNLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxhQUFjLENBQUMsQ0FBQztRQUM5RCxDQUFDO1FBRUQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUdPLHNCQUFzQixDQUFDLENBQWlCO1FBRTVDLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUM1QixDQUFDO1FBR0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xCLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7Z0JBQ3BCLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUcsRUFBRSxJQUFJLENBQUMsSUFBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3JELENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDSixXQUFXLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDNUIsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgQ29weXJpZ2h0IDIwMTYgQXlvZ28gSGVhbHRoIEluYy4gKi9cblxuaW1wb3J0IHsgTWVudU1hbmFnZXIgfSBmcm9tICcuL21hbmFnZXInO1xuXG5leHBvcnQgY2xhc3MgTWVudUJ1dHRvbkJlaGF2aW91ciB7XG4gICAgcHJpdmF0ZSBlbDogbnVsbCB8IEhUTUxCdXR0b25FbGVtZW50O1xuICAgIHByaXZhdGUgbWVudSA6IG51bGwgfCBIVE1MTWVudUVsZW1lbnQ7XG5cbiAgICBwcml2YXRlIGNsaWNrSGFuZGxlciA6IG51bGwgfCAoKCkgPT4gdm9pZCk7XG4gICAgcHJpdmF0ZSBrZXlIYW5kbGVyIDogbnVsbCB8ICgoZSA6IEtleWJvYXJkRXZlbnQpID0+IHZvaWQpO1xuICAgIHByaXZhdGUgcmVzaXplSGFuZGxlciA6IG51bGwgfCAoKCkgPT4gdm9pZCk7XG5cbiAgICBjb25zdHJ1Y3RvcihidG4gOiBIVE1MQnV0dG9uRWxlbWVudCkge1xuICAgICAgICB0aGlzLmVsID0gYnRuO1xuXG4gICAgICAgIGxldCBtZW51SUQgPSB0aGlzLmVsLmdldEF0dHJpYnV0ZSgnbWVudScpO1xuICAgICAgICBpZiAoIW1lbnVJRCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1lbnUgPSBidG4ub3duZXJEb2N1bWVudC5nZXRFbGVtZW50QnlJZChtZW51SUQpIGFzIEhUTUxNZW51RWxlbWVudDtcbiAgICAgICAgaWYgKCFtZW51KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm1lbnUgPSBtZW51O1xuXG4gICAgICAgIHRoaXMuZWwuc2V0QXR0cmlidXRlKCdhcmlhLWhhc3BvcHVwJywgJ3RydWUnKTtcbiAgICAgICAgdGhpcy5lbC5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCAnZmFsc2UnKTtcblxuICAgICAgICB0aGlzLmNsaWNrSGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLnRvZ2dsZU1lbnUodGhpcy5lbCEsIHRoaXMubWVudSEpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMua2V5SGFuZGxlciA9IChlIDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5idXR0b25LZXlwcmVzc0xpc3RlbmVyKGUpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMucmVzaXplSGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLmNsaWNrSGFuZGxlciEpO1xuICAgICAgICB0aGlzLmVsLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLmtleUhhbmRsZXIhKTtcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMucmVzaXplSGFuZGxlciEpO1xuICAgIH1cblxuXG4gICAgLy8gQ2xlYW51cCBmdW5jdGlvblxuICAgIGRlc3Ryb3koKSB7XG4gICAgICAgIGlmICh0aGlzLmVsKSB7XG4gICAgICAgICAgICB0aGlzLmVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jbGlja0hhbmRsZXIhKTtcbiAgICAgICAgICAgIHRoaXMuZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMua2V5SGFuZGxlciEpO1xuICAgICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMucmVzaXplSGFuZGxlciEpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jbGlja0hhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLmtleUhhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZUhhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLm1lbnUgPSBudWxsO1xuICAgICAgICB0aGlzLmVsID0gbnVsbDtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgYnV0dG9uS2V5cHJlc3NMaXN0ZW5lcihlIDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICAvLyBFc2NhcGVcbiAgICAgICAgaWYgKE1lbnVNYW5hZ2VyLm9wZW4gJiYgZS5rZXlDb2RlID09IDI3KSB7XG4gICAgICAgICAgICBNZW51TWFuYWdlci5jbG9zZU1lbnUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERPV04gQVJST1dcbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PSA0MCkge1xuICAgICAgICAgICAgaWYgKCFNZW51TWFuYWdlci5vcGVuKSB7XG4gICAgICAgICAgICAgICAgTWVudU1hbmFnZXIub3Blbk1lbnUodGhpcy5lbCEsIHRoaXMubWVudSEsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBNZW51TWFuYWdlci5mb2N1c01lbnUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=button.js.map |
@@ -83,2 +83,2 @@ /*! Copyright 2016 Ayogo Health Inc. */ | ||
} | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQXVDO0FBR3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUUvQyxNQUFNLFdBQVcsR0FBRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0F5Q25CLENBQUM7QUFHRixNQUFNLGFBQWEsR0FBRzs7Ozs7Ozs7Q0FRckIsQ0FBQTtBQUtELElBQUksUUFBUSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDL0MsUUFBUSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7QUFHM0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4RCxRQUFRLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztBQUNqRSxDQUFDO0FBR0QsSUFBSSxXQUFnQyxDQUFDO0FBQ3JDLEVBQUUsQ0FBQyxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQyxXQUFXLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDL0QsQ0FBQztBQUFDLElBQUksQ0FDTixFQUFFLENBQUMsQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFBQyxJQUFJLENBQ04sRUFBRSxDQUFDLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9DLFdBQVcsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDdEMsQ0FBQztBQUFDLElBQUksQ0FBQyxDQUFDO0lBQ0osUUFBUSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNuQyxDQUFDO0FBR0QsSUFBSSxPQUFPLEdBQTRELElBQUksQ0FBQztBQUM1RSxFQUFFLENBQUMsQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN0QixPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztBQUM1QixDQUFDO0FBR0QsTUFBTSxDQUFDLE9BQU8scUJBQXFCLEVBQXNCO0lBQ3JELElBQUksU0FBUyxHQUFHLElBQUksbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFNUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNWLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDO0FBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgQ29weXJpZ2h0IDIwMTYgQXlvZ28gSGVhbHRoIEluYy4gKi9cblxuXG5pbXBvcnQgeyBNZW51QnV0dG9uQmVoYXZpb3VyIH0gZnJvbSAnLi9idXR0b24nO1xuXG5jb25zdCBNRU5VX1NUWUxFUyA9IGBcbm1lbnVbdHlwZT1cImNvbnRleHRcIl0sXG5tZW51W2RhdGEtb3duZXI9XCJidXR0b25cIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMjVtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSk7XG59XG5cbm1lbnVpdGVtIHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IE1lbnU7XG4gICAgZm9udDogbWVudTtcbiAgICBwYWRkaW5nOiAwLjI1ZW0gMC41ZW07XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5tZW51aXRlbTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIobGFiZWwpO1xufVxuXG5tZW51aXRlbVtkaXNhYmxlZF0ge1xuICAgIGNvbG9yOiBHcmF5VGV4dDtcbn1cblxubWVudWl0ZW06bm90KFtkaXNhYmxlZF0pOmhvdmVyLFxubWVudWl0ZW06bm90KFtkaXNhYmxlZF0pOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiBIaWdobGlnaHQ7XG4gICAgY29sb3I6IEhpZ2hsaWdodFRleHQ7XG59XG5cbmJ1dHRvblt0eXBlPVwibWVudVwiXTo6YWZ0ZXIsXG5idXR0b25bZGF0YS10eXBlPVwibWVudVwiXTphZnRlciB7IGNvbnRlbnQ6ICcg4pa+JzsgfVxuXG5idXR0b25bdHlwZT1cIm1lbnVcIl06ZW1wdHk6OmFmdGVyLFxuYnV0dG9uW2RhdGEtdHlwZT1cIm1lbnVcIl06ZW1wdHk6YWZ0ZXIgeyBjb250ZW50OiAn4pa+JzsgfSAvKiBObyBzcGFjZSBjaGFyYWN0ZXIgKi9cbmA7XG5cblxuY29uc3QgUFJFRklYX1NUWUxFUyA9IGBcbm1lbnVbdHlwZT1cImNvbnRleHRcIl0sXG5tZW51W2RhdGEtb3duZXI9XCJidXR0b25cIl0ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMjI1bXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpO1xuICAgIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDIyNW1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbn1cbmBcblxuXG4vLyBJbmplY3QgZGVmYXVsdCBzdHlsaW5nXG5cbmxldCBtbnVTdHlsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG5tbnVTdHlsZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShNRU5VX1NUWUxFUykpO1xuXG4vLyBBZGQgb2xkIHByZWZpeGVkIHN0eWxlcyBmb3Igb2xkZXIgaU9TIGFuZCBBbmRyb2lkIGRldmljZXNcbmlmICghKCd0cmFuc2Zvcm0nIGluIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpLnN0eWxlKSkge1xuICAgIG1udVN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKFBSRUZJWF9TVFlMRVMpKTtcbn1cblxuXG5sZXQgaW5zZXJ0UG9pbnQgOiBIVE1MRWxlbWVudCB8IG51bGw7XG5pZiAoaW5zZXJ0UG9pbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdsaW5rJykpIHtcbiAgICBpbnNlcnRQb2ludC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShtbnVTdHlsZSwgaW5zZXJ0UG9pbnQpO1xufSBlbHNlXG5pZiAoaW5zZXJ0UG9pbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzdHlsZScpKSB7XG4gICAgaW5zZXJ0UG9pbnQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobW51U3R5bGUsIGluc2VydFBvaW50KTtcbn0gZWxzZVxuaWYgKGluc2VydFBvaW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaGVhZCcpKSB7XG4gICAgaW5zZXJ0UG9pbnQuYXBwZW5kQ2hpbGQobW51U3R5bGUpO1xufSBlbHNlIHtcbiAgICBkb2N1bWVudC5hcHBlbmRDaGlsZChtbnVTdHlsZSk7XG59XG5cblxubGV0IGdjQ2FjaGUgOiBXZWFrTWFwPEhUTUxCdXR0b25FbGVtZW50LCBNZW51QnV0dG9uQmVoYXZpb3VyPiB8IG51bGwgPSBudWxsO1xuaWYgKCdXZWFrTWFwJyBpbiB3aW5kb3cpIHtcbiAgICBnY0NhY2hlID0gbmV3IFdlYWtNYXAoKTtcbn1cblxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBNZW51QnV0dG9uKGVsIDogSFRNTEJ1dHRvbkVsZW1lbnQpIHtcbiAgICBsZXQgYmVoYXZpb3VyID0gbmV3IE1lbnVCdXR0b25CZWhhdmlvdXIoZWwpO1xuXG4gICAgaWYgKGdjQ2FjaGUpIHtcbiAgICAgICAgZ2NDYWNoZS5zZXQoZWwsIGJlaGF2aW91cik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJlaGF2aW91cjtcbn1cbiJdfQ== | ||
//# sourceMappingURL=index.js.map |
@@ -144,2 +144,3 @@ /*! Copyright 2016 Ayogo Health Inc. */ | ||
} | ||
MenuManager.curButton.focus(); | ||
MenuManager.closeMenu(); | ||
@@ -158,2 +159,3 @@ } | ||
} | ||
MenuManager.curButton.focus(); | ||
MenuManager.closeMenu(); | ||
@@ -186,5 +188,10 @@ } | ||
if (e.keyCode === 27) { | ||
if (MenuManager.curButton) { | ||
MenuManager.curButton.focus(); | ||
} | ||
MenuManager.closeMenu(); | ||
} | ||
if (e.keyCode === 38) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.focusCount--; | ||
@@ -194,2 +201,4 @@ MenuManager.focusMenu(); | ||
if (e.keyCode === 40) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.focusCount++; | ||
@@ -199,2 +208,4 @@ MenuManager.focusMenu(); | ||
if (e.keyCode === 32 || e.keyCode === 13) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.clickMenuItem(); | ||
@@ -209,2 +220,2 @@ } | ||
MenuManager.transitionEndHandler = null; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVDQUF1QztBQUV2QyxNQUFNO0lBUUYsTUFBTSxLQUFLLElBQUk7UUFDWCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUF1QixFQUFFLEdBQXFCLEVBQUUsUUFBa0IsS0FBSztRQUNuRixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztZQUNyQyxJQUFJLENBQUMsb0JBQXFCLEVBQUUsQ0FBQztRQUNqQyxDQUFDO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7UUFDbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFFbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUl6RCxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRWpGLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ1IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3JC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O1FBR0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ25CLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUM1QixDQUFDO1FBR0QsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ25CLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN6QixXQUFXLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDNUIsQ0FBQztRQUdELEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNuQixXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDekIsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzVCLENBQUM7UUFJRCxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdkMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ2hDLENBQUM7SUFDTCxDQUFDOztBQWpSYyxtQkFBTyxHQUF3QyxJQUFJLENBQUM7QUFDcEQscUJBQVMsR0FBc0MsSUFBSSxDQUFDO0FBQ3BELGtCQUFNLEdBQXlDLEtBQUssQ0FBQztBQUNyRCxzQkFBVSxHQUFxQyxJQUFJLENBQUM7QUFDcEQsZ0NBQW9CLEdBQTJCLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBDb3B5cmlnaHQgMjAxNiBBeW9nbyBIZWFsdGggSW5jLiAqL1xuXG5leHBvcnQgY2xhc3MgTWVudU1hbmFnZXIge1xuICAgIHByaXZhdGUgc3RhdGljIGN1ck1lbnUgOiBIVE1MTWVudUVsZW1lbnQgfCBudWxsICAgICAgICAgICAgID0gbnVsbDtcbiAgICBwcml2YXRlIHN0YXRpYyBjdXJCdXR0b24gOiBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGwgICAgICAgICA9IG51bGw7XG4gICAgcHJpdmF0ZSBzdGF0aWMgaXNPcGVuIDogYm9vbGVhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSBmYWxzZTtcbiAgICBwcml2YXRlIHN0YXRpYyBmb2N1c0NvdW50IDogbnVtYmVyIHwgbnVsbCAgICAgICAgICAgICAgICAgICA9IG51bGw7XG4gICAgcHJpdmF0ZSBzdGF0aWMgdHJhbnNpdGlvbkVuZEhhbmRsZXIgOiAoKCkgPT4gdm9pZCkgfCBudWxsICAgPSBudWxsO1xuXG5cbiAgICBzdGF0aWMgZ2V0IG9wZW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzT3BlbjtcbiAgICB9XG5cbiAgICBzdGF0aWMgb3Blbk1lbnUoYnRuIDogSFRNTEJ1dHRvbkVsZW1lbnQsIG1udSA6IEhUTUxNZW51RWxlbWVudCwgZm9jdXMgOiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHRoaXMudHJhbnNpdGlvbkVuZEhhbmRsZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMudHJhbnNpdGlvbkVuZEhhbmRsZXIhKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmN1ckJ1dHRvbiA9IGJ0bjtcbiAgICAgICAgdGhpcy5jdXJNZW51ID0gbW51O1xuICAgICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5jdXJCdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgJ3RydWUnKTtcbiAgICAgICAgdGhpcy5jdXJCdXR0b24ub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLmNsaWNrTGlzdGVuZXIpO1xuICAgICAgICB0aGlzLmN1ckJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgdGhpcy5oYW5kbGVCbHVyKTtcblxuICAgICAgICAvLyBCZWZvcmUgd2Ugb3BlbiB0aGUgbWVudSwgd2UgbmVlZCB0byBtb3ZlIGl0IGluIHRoZSBET00gc28gdGhhdCBpc1xuICAgICAgICAvLyBpcyBkaXJlY3RseSBhZnRlciB0aGUgYnV0dG9uIGVsZW1lbnQgZm9yIHRhYiBvcmRlcmluZ1xuICAgICAgICB0aGlzLmN1ckJ1dHRvbi5wYXJlbnROb2RlLmluc2VydEJlZm9yZSh0aGlzLmN1ck1lbnUsIHRoaXMuY3VyQnV0dG9uLm5leHRTaWJsaW5nKTtcblxuICAgICAgICB0aGlzLmFkZE1lbnVTdHlsZSgpO1xuXG4gICAgICAgIGlmIChmb2N1cykge1xuICAgICAgICAgICAgdGhpcy5mb2N1c01lbnUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY3VyTWVudS5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5tZW51S2V5cHJlc3NMaXN0ZW5lcik7XG4gICAgICAgIHRoaXMuY3VyTWVudS5hZGRFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIHRoaXMuaGFuZGxlQmx1cik7XG4gICAgICAgIHRoaXMuY3VyTWVudS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMubWVudUNsaWNrTGlzdGVuZXIpO1xuICAgIH1cblxuXG4gICAgc3RhdGljIGNsb3NlTWVudSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzT3BlbiB8fCAhdGhpcy5jdXJCdXR0b24gfHwgIXRoaXMuY3VyTWVudSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jdXJCdXR0b24ub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLmNsaWNrTGlzdGVuZXIpO1xuICAgICAgICB0aGlzLmN1ckJ1dHRvbi5yZW1vdmVFdmVudExpc3RlbmVyKCdibHVyJywgdGhpcy5oYW5kbGVCbHVyKTtcbiAgICAgICAgdGhpcy5jdXJCdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgJ2ZhbHNlJyk7XG5cbiAgICAgICAgdGhpcy5jdXJNZW51LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLm1lbnVLZXlwcmVzc0xpc3RlbmVyKTtcbiAgICAgICAgdGhpcy5jdXJNZW51LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgdGhpcy5oYW5kbGVCbHVyKTtcbiAgICAgICAgdGhpcy5jdXJNZW51LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5tZW51Q2xpY2tMaXN0ZW5lcik7XG5cbiAgICAgICAgbGV0IG9sZE1lbnUgPSB0aGlzLmN1ck1lbnU7XG4gICAgICAgIHRoaXMudHJhbnNpdGlvbkVuZEhhbmRsZXIgPSAoKSA9PiB7XG4gICAgICAgICAgICBvbGRNZW51LnJlbW92ZUF0dHJpYnV0ZSgnc3R5bGUnKTtcbiAgICAgICAgICAgIG9sZE1lbnUucmVtb3ZlRXZlbnRMaXN0ZW5lcigndHJhbnNpdGlvbmVuZCcsIHRoaXMudHJhbnNpdGlvbkVuZEhhbmRsZXIhKTtcbiAgICAgICAgICAgIG9sZE1lbnUucmVtb3ZlRXZlbnRMaXN0ZW5lcignd2Via2l0dHJhbnNpdGlvbmVuZCcsIHRoaXMudHJhbnNpdGlvbkVuZEhhbmRsZXIhKTtcbiAgICAgICAgICAgIHRoaXMudHJhbnNpdGlvbkVuZEhhbmRsZXIgPSBudWxsO1xuICAgICAgICB9O1xuXG4gICAgICAgIGlmICgndHJhbnNpdGlvbkR1cmF0aW9uJyBpbiBvbGRNZW51LnN0eWxlKSB7XG4gICAgICAgICAgICBvbGRNZW51LnN0eWxlLnRyYW5zaXRpb25EdXJhdGlvbiA9ICcxOTJtcyc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvbGRNZW51LnN0eWxlLndlYmtpdFRyYW5zaXRpb25EdXJhdGlvbiA9ICcxOTJtcyc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoJ3RyYW5zZm9ybScgaW4gb2xkTWVudS5zdHlsZSkge1xuICAgICAgICAgICAgb2xkTWVudS5zdHlsZS50cmFuc2Zvcm0gPSAnc2NhbGVZKDApJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9sZE1lbnUuc3R5bGUud2Via2l0VHJhbnNmb3JtID0gJ3NjYWxlWSgwKSc7XG4gICAgICAgIH1cblxuICAgICAgICBvbGRNZW51LmFkZEV2ZW50TGlzdGVuZXIoJ3RyYW5zaXRpb25lbmQnLCB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISk7XG4gICAgICAgIG9sZE1lbnUuYWRkRXZlbnRMaXN0ZW5lcignd2Via2l0dHJhbnNpdGlvbmVuZCcsIHRoaXMudHJhbnNpdGlvbkVuZEhhbmRsZXIhKTtcblxuICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmN1ckJ1dHRvbiA9IG51bGw7XG4gICAgICAgIHRoaXMuY3VyTWVudSA9IG51bGw7XG4gICAgICAgIHRoaXMuZm9jdXNDb3VudCA9IG51bGw7XG4gICAgfVxuXG5cbiAgICBzdGF0aWMgdG9nZ2xlTWVudShidG4gOiBIVE1MQnV0dG9uRWxlbWVudCwgbW51IDogSFRNTE1lbnVFbGVtZW50KSB7XG4gICAgICAgIGxldCBvcGVuTW51ID0gdGhpcy5jdXJNZW51O1xuXG4gICAgICAgIGlmICh0aGlzLmlzT3BlbiAmJiBidG4gPT09IHRoaXMuY3VyQnV0dG9uKSB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlTWVudSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9wZW5NbnUgIT09IG1udSkge1xuICAgICAgICAgICAgdGhpcy5vcGVuTWVudShidG4sIG1udSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIHN0YXRpYyBmb2N1c01lbnUoKSB7XG4gICAgICAgIGlmICghdGhpcy5jdXJNZW51KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5mb2N1c0NvdW50ID09PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzQ291bnQgPSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlbmd0aCA9IHRoaXMuY3VyTWVudS5jaGlsZHJlbi5sZW5ndGg7XG5cbiAgICAgICAgaWYgKHRoaXMuZm9jdXNDb3VudCA8IDApIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNDb3VudCArPSBsZW5ndGg7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWkgPSB0aGlzLmN1ck1lbnUuY2hpbGRyZW5bdGhpcy5mb2N1c0NvdW50ICUgbGVuZ3RoXSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgbWkuZm9jdXMoKTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIGNsaWNrTWVudUl0ZW0oKSB7XG4gICAgICAgIGlmICghdGhpcy5jdXJNZW51KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbGVuZ3RoID0gdGhpcy5jdXJNZW51LmNoaWxkcmVuLmxlbmd0aDtcbiAgICAgICAgbGV0IG1pID0gdGhpcy5jdXJNZW51LmNoaWxkcmVuW3RoaXMuZm9jdXNDb3VudCAlIGxlbmd0aF0gYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKCFtaS5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpIHtcbiAgICAgICAgICAgIG1pLmNsaWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIGFkZE1lbnVTdHlsZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmN1ck1lbnUgfHwgIXRoaXMuY3VyQnV0dG9uKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWVudSA9IHRoaXMuY3VyTWVudSE7XG4gICAgICAgIGxldCBidG4gPSB0aGlzLmN1ckJ1dHRvbiE7XG5cbiAgICAgICAgLy8gQWRkIHRoZSBtZW51IHRvIHRoZSBET00gZm9yIG1lYXN1cmluZ1xuICAgICAgICBtZW51LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgICAgICBtZW51LnN0eWxlLnBvc2l0aW9uID0gJ2ZpeGVkJztcbiAgICAgICAgbWVudS5zZXRBdHRyaWJ1dGUoJ3JvbGUnLCAnbWVudScpO1xuICAgICAgICBtZW51LnNldEF0dHJpYnV0ZSgnZGF0YS1vd25lcicsICdidXR0b24nKTtcblxuICAgICAgICAvLyBUcnkgdG8gdW5zZXQgdGhlIHR5cGUgc28gRmlyZWZveCBjYW4gbWFrZSBpdCB2aXNpYmxlIDonKFxuICAgICAgICBtZW51LnNldEF0dHJpYnV0ZSgndHlwZScsICcnKTtcblxuICAgICAgICAvLyBFbnN1cmUgdGhlIGNoaWxkcmVuIGFyZSBmb2N1c2FibGVcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBtZW51LmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBtZW51LmNoaWxkcmVuW2ldLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnLTEnKTtcbiAgICAgICAgICAgIG1lbnUuY2hpbGRyZW5baV0uc2V0QXR0cmlidXRlKCdyb2xlJywgJ21lbnVpdGVtJyk7XG5cbiAgICAgICAgICAgIG1lbnUuY2hpbGRyZW5baV0uc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgbWVudS5jaGlsZHJlbltpXS5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykudG9TdHJpbmcoKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgICAgbGV0IGJ0blNpemUgPSBidG4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICBsZXQgbWVudVNpemUgPSBtZW51LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgbGV0IHduZEhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcblxuICAgICAgICAgICAgaWYgKGJ0blNpemUuYm90dG9tICsgbWVudVNpemUuaGVpZ2h0ID4gd25kSGVpZ2h0KSB7XG4gICAgICAgICAgICAgICAgbWVudS5zdHlsZS5ib3R0b20gPSBidG5TaXplLnRvcCArICdweCc7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUudG9wID0gYnRuU2l6ZS5ib3R0b20gKyAncHgnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAobWVudVNpemUud2lkdGggPiBidG5TaXplLnJpZ2h0KSB7XG4gICAgICAgICAgICAgICAgbWVudS5zdHlsZS5sZWZ0ID0gYnRuU2l6ZS5sZWZ0ICsgJ3B4JztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbWVudS5zdHlsZS5sZWZ0ID0gKGJ0blNpemUucmlnaHQgLSBtZW51U2l6ZS53aWR0aCkgKyAncHgnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoJ3RyYW5zZm9ybScgaW4gbWVudS5zdHlsZSkge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUudHJhbnNmb3JtID0gJ3NjYWxlWSgxKSc7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUud2Via2l0VHJhbnNmb3JtID0gJ3NjYWxlWSgxKSc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgY2xpY2tMaXN0ZW5lcihlIDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAoIU1lbnVNYW5hZ2VyLmN1ckJ1dHRvbiB8fCAhTWVudU1hbmFnZXIuY3VyTWVudSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKE1lbnVNYW5hZ2VyLmN1ck1lbnUuY29udGFpbnMoZS50YXJnZXQgYXMgTm9kZSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChNZW51TWFuYWdlci5jdXJCdXR0b24uY29udGFpbnMoZS50YXJnZXQgYXMgTm9kZSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgIH1cblxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgbWVudUNsaWNrTGlzdGVuZXIoZSA6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgaWYgKCFNZW51TWFuYWdlci5jdXJCdXR0b24gfHwgIU1lbnVNYW5hZ2VyLmN1ck1lbnUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBtaSA9IGUudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIGlmICghTWVudU1hbmFnZXIuY3VyTWVudS5jb250YWlucyhtaSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtaS5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgIH1cblxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgaGFuZGxlQmx1cihlIDogRm9jdXNFdmVudCkge1xuICAgICAgICBpZiAoIU1lbnVNYW5hZ2VyLmN1ckJ1dHRvbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRWxlbWVudCB0aGF0IGZvY3VzIGlzIG1vdmluZyB0b1xuICAgICAgICBsZXQgYWN0aXZlRWwgPSBlLnJlbGF0ZWRUYXJnZXQgYXMgSFRNTEVsZW1lbnQgfCBudWxsO1xuXG4gICAgICAgIGlmICghYWN0aXZlRWwpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChNZW51TWFuYWdlci5jdXJCdXR0b24gPT09IGFjdGl2ZUVsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoTWVudU1hbmFnZXIuY3VyTWVudSAmJiBNZW51TWFuYWdlci5jdXJNZW51LmNvbnRhaW5zKGFjdGl2ZUVsKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gV2FpdCB1bnRpbCBhZnRlciBmb2N1cyBoYXMgbW92ZWQgYmVmb3JlIGNsb3NpbmcgdGhlIG1lbnVcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoTWVudU1hbmFnZXIuaXNPcGVuKSB7XG4gICAgICAgICAgICAgICAgTWVudU1hbmFnZXIuY2xvc2VNZW51KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIDApO1xuICAgIH1cblxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgbWVudUtleXByZXNzTGlzdGVuZXIoZSA6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgaWYgKCFNZW51TWFuYWdlci5pc09wZW4pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVzY2FwZVxuICAgICAgICBpZiAoZS5rZXlDb2RlID09PSAyNykge1xuICAgICAgICAgICAgTWVudU1hbmFnZXIuY2xvc2VNZW51KCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBVcCBBcnJvd1xuICAgICAgICBpZiAoZS5rZXlDb2RlID09PSAzOCkge1xuICAgICAgICAgICAgTWVudU1hbmFnZXIuZm9jdXNDb3VudC0tO1xuICAgICAgICAgICAgTWVudU1hbmFnZXIuZm9jdXNNZW51KCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEb3duIEFycm93XG4gICAgICAgIGlmIChlLmtleUNvZGUgPT09IDQwKSB7XG4gICAgICAgICAgICBNZW51TWFuYWdlci5mb2N1c0NvdW50Kys7XG4gICAgICAgICAgICBNZW51TWFuYWdlci5mb2N1c01lbnUoKTtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLy8gRW50ZXIgYW5kIFNwYWNlYmFyXG4gICAgICAgIGlmIChlLmtleUNvZGUgPT09IDMyIHx8IGUua2V5Q29kZSA9PT0gMTMpIHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmNsaWNrTWVudUl0ZW0oKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=manager.js.map |
@@ -1,2 +0,2 @@ | ||
/*! Copyright 2016 Ayogo Health Inc. */ | ||
/*! Copyright 2017 Ayogo Health Inc. */ | ||
(function (global, factory) { | ||
@@ -158,2 +158,3 @@ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('angular')) : | ||
} | ||
MenuManager.curButton.focus(); | ||
MenuManager.closeMenu(); | ||
@@ -172,2 +173,3 @@ }; | ||
} | ||
MenuManager.curButton.focus(); | ||
MenuManager.closeMenu(); | ||
@@ -200,5 +202,10 @@ }; | ||
if (e.keyCode === 27) { | ||
if (MenuManager.curButton) { | ||
MenuManager.curButton.focus(); | ||
} | ||
MenuManager.closeMenu(); | ||
} | ||
if (e.keyCode === 38) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.focusCount--; | ||
@@ -208,2 +215,4 @@ MenuManager.focusMenu(); | ||
if (e.keyCode === 40) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.focusCount++; | ||
@@ -213,2 +222,4 @@ MenuManager.focusMenu(); | ||
if (e.keyCode === 32 || e.keyCode === 13) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.clickMenuItem(); | ||
@@ -333,2 +344,2 @@ } | ||
}))); | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbIi4uL3NyYy9tYW5hZ2VyLnRzIiwiLi4vc3JjL2J1dHRvbi50cyIsIi4uL3NyYy9pbmRleC50cyIsIi4uL3NyYy9hbmd1bGFyMS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgQ29weXJpZ2h0IDIwMTYgQXlvZ28gSGVhbHRoIEluYy4gKi9cblxuZXhwb3J0IGNsYXNzIE1lbnVNYW5hZ2VyIHtcbiAgICBwcml2YXRlIHN0YXRpYyBjdXJNZW51IDogSFRNTE1lbnVFbGVtZW50IHwgbnVsbCAgICAgICAgICAgICA9IG51bGw7XG4gICAgcHJpdmF0ZSBzdGF0aWMgY3VyQnV0dG9uIDogSFRNTEJ1dHRvbkVsZW1lbnQgfCBudWxsICAgICAgICAgPSBudWxsO1xuICAgIHByaXZhdGUgc3RhdGljIGlzT3BlbiA6IGJvb2xlYW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBzdGF0aWMgZm9jdXNDb3VudCA6IG51bWJlciB8IG51bGwgICAgICAgICAgICAgICAgICAgPSBudWxsO1xuICAgIHByaXZhdGUgc3RhdGljIHRyYW5zaXRpb25FbmRIYW5kbGVyIDogKCgpID0+IHZvaWQpIHwgbnVsbCAgID0gbnVsbDtcblxuXG4gICAgc3RhdGljIGdldCBvcGVuKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pc09wZW47XG4gICAgfVxuXG4gICAgc3RhdGljIG9wZW5NZW51KGJ0biA6IEhUTUxCdXR0b25FbGVtZW50LCBtbnUgOiBIVE1MTWVudUVsZW1lbnQsIGZvY3VzIDogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgICAgIGlmICh0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jdXJCdXR0b24gPSBidG47XG4gICAgICAgIHRoaXMuY3VyTWVudSA9IG1udTtcbiAgICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuY3VyQnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG4gICAgICAgIHRoaXMuY3VyQnV0dG9uLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jbGlja0xpc3RlbmVyKTtcbiAgICAgICAgdGhpcy5jdXJCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignYmx1cicsIHRoaXMuaGFuZGxlQmx1cik7XG5cbiAgICAgICAgLy8gQmVmb3JlIHdlIG9wZW4gdGhlIG1lbnUsIHdlIG5lZWQgdG8gbW92ZSBpdCBpbiB0aGUgRE9NIHNvIHRoYXQgaXNcbiAgICAgICAgLy8gaXMgZGlyZWN0bHkgYWZ0ZXIgdGhlIGJ1dHRvbiBlbGVtZW50IGZvciB0YWIgb3JkZXJpbmdcbiAgICAgICAgdGhpcy5jdXJCdXR0b24ucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodGhpcy5jdXJNZW51LCB0aGlzLmN1ckJ1dHRvbi5uZXh0U2libGluZyk7XG5cbiAgICAgICAgdGhpcy5hZGRNZW51U3R5bGUoKTtcblxuICAgICAgICBpZiAoZm9jdXMpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNNZW51KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmN1ck1lbnUuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMubWVudUtleXByZXNzTGlzdGVuZXIpO1xuICAgICAgICB0aGlzLmN1ck1lbnUuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXNvdXQnLCB0aGlzLmhhbmRsZUJsdXIpO1xuICAgICAgICB0aGlzLmN1ck1lbnUuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm1lbnVDbGlja0xpc3RlbmVyKTtcbiAgICB9XG5cblxuICAgIHN0YXRpYyBjbG9zZU1lbnUoKSB7XG4gICAgICAgIGlmICghdGhpcy5pc09wZW4gfHwgIXRoaXMuY3VyQnV0dG9uIHx8ICF0aGlzLmN1ck1lbnUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY3VyQnV0dG9uLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jbGlja0xpc3RlbmVyKTtcbiAgICAgICAgdGhpcy5jdXJCdXR0b24ucmVtb3ZlRXZlbnRMaXN0ZW5lcignYmx1cicsIHRoaXMuaGFuZGxlQmx1cik7XG4gICAgICAgIHRoaXMuY3VyQnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuXG4gICAgICAgIHRoaXMuY3VyTWVudS5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5tZW51S2V5cHJlc3NMaXN0ZW5lcik7XG4gICAgICAgIHRoaXMuY3VyTWVudS5yZW1vdmVFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIHRoaXMuaGFuZGxlQmx1cik7XG4gICAgICAgIHRoaXMuY3VyTWVudS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMubWVudUNsaWNrTGlzdGVuZXIpO1xuXG4gICAgICAgIGxldCBvbGRNZW51ID0gdGhpcy5jdXJNZW51O1xuICAgICAgICB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICAgICAgb2xkTWVudS5yZW1vdmVBdHRyaWJ1dGUoJ3N0eWxlJyk7XG4gICAgICAgICAgICBvbGRNZW51LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RyYW5zaXRpb25lbmQnLCB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISk7XG4gICAgICAgICAgICBvbGRNZW51LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3dlYmtpdHRyYW5zaXRpb25lbmQnLCB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISk7XG4gICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyID0gbnVsbDtcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoJ3RyYW5zaXRpb25EdXJhdGlvbicgaW4gb2xkTWVudS5zdHlsZSkge1xuICAgICAgICAgICAgb2xkTWVudS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb24gPSAnMTkybXMnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2xkTWVudS5zdHlsZS53ZWJraXRUcmFuc2l0aW9uRHVyYXRpb24gPSAnMTkybXMnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCd0cmFuc2Zvcm0nIGluIG9sZE1lbnUuc3R5bGUpIHtcbiAgICAgICAgICAgIG9sZE1lbnUuc3R5bGUudHJhbnNmb3JtID0gJ3NjYWxlWSgwKSc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvbGRNZW51LnN0eWxlLndlYmtpdFRyYW5zZm9ybSA9ICdzY2FsZVkoMCknO1xuICAgICAgICB9XG5cbiAgICAgICAgb2xkTWVudS5hZGRFdmVudExpc3RlbmVyKCd0cmFuc2l0aW9uZW5kJywgdGhpcy50cmFuc2l0aW9uRW5kSGFuZGxlciEpO1xuICAgICAgICBvbGRNZW51LmFkZEV2ZW50TGlzdGVuZXIoJ3dlYmtpdHRyYW5zaXRpb25lbmQnLCB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISk7XG5cbiAgICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jdXJCdXR0b24gPSBudWxsO1xuICAgICAgICB0aGlzLmN1ck1lbnUgPSBudWxsO1xuICAgICAgICB0aGlzLmZvY3VzQ291bnQgPSBudWxsO1xuICAgIH1cblxuXG4gICAgc3RhdGljIHRvZ2dsZU1lbnUoYnRuIDogSFRNTEJ1dHRvbkVsZW1lbnQsIG1udSA6IEhUTUxNZW51RWxlbWVudCkge1xuICAgICAgICBsZXQgb3Blbk1udSA9IHRoaXMuY3VyTWVudTtcblxuICAgICAgICBpZiAodGhpcy5pc09wZW4gJiYgYnRuID09PSB0aGlzLmN1ckJ1dHRvbikge1xuICAgICAgICAgICAgdGhpcy5jbG9zZU1lbnUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcGVuTW51ICE9PSBtbnUpIHtcbiAgICAgICAgICAgIHRoaXMub3Blbk1lbnUoYnRuLCBtbnUpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBzdGF0aWMgZm9jdXNNZW51KCkge1xuICAgICAgICBpZiAoIXRoaXMuY3VyTWVudSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZm9jdXNDb3VudCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0NvdW50ID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBsZW5ndGggPSB0aGlzLmN1ck1lbnUuY2hpbGRyZW4ubGVuZ3RoO1xuXG4gICAgICAgIGlmICh0aGlzLmZvY3VzQ291bnQgPCAwKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzQ291bnQgKz0gbGVuZ3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1pID0gdGhpcy5jdXJNZW51LmNoaWxkcmVuW3RoaXMuZm9jdXNDb3VudCAlIGxlbmd0aF0gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIG1pLmZvY3VzKCk7XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHN0YXRpYyBjbGlja01lbnVJdGVtKCkge1xuICAgICAgICBpZiAoIXRoaXMuY3VyTWVudSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlbmd0aCA9IHRoaXMuY3VyTWVudS5jaGlsZHJlbi5sZW5ndGg7XG4gICAgICAgIGxldCBtaSA9IHRoaXMuY3VyTWVudS5jaGlsZHJlblt0aGlzLmZvY3VzQ291bnQgJSBsZW5ndGhdIGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIGlmICghbWkuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKSB7XG4gICAgICAgICAgICBtaS5jbGljaygpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHN0YXRpYyBhZGRNZW51U3R5bGUoKSB7XG4gICAgICAgIGlmICghdGhpcy5jdXJNZW51IHx8ICF0aGlzLmN1ckJ1dHRvbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1lbnUgPSB0aGlzLmN1ck1lbnUhO1xuICAgICAgICBsZXQgYnRuID0gdGhpcy5jdXJCdXR0b24hO1xuXG4gICAgICAgIC8vIEFkZCB0aGUgbWVudSB0byB0aGUgRE9NIGZvciBtZWFzdXJpbmdcbiAgICAgICAgbWVudS5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcbiAgICAgICAgbWVudS5zdHlsZS5wb3NpdGlvbiA9ICdmaXhlZCc7XG4gICAgICAgIG1lbnUuc2V0QXR0cmlidXRlKCdyb2xlJywgJ21lbnUnKTtcbiAgICAgICAgbWVudS5zZXRBdHRyaWJ1dGUoJ2RhdGEtb3duZXInLCAnYnV0dG9uJyk7XG5cbiAgICAgICAgLy8gVHJ5IHRvIHVuc2V0IHRoZSB0eXBlIHNvIEZpcmVmb3ggY2FuIG1ha2UgaXQgdmlzaWJsZSA6JyhcbiAgICAgICAgbWVudS5zZXRBdHRyaWJ1dGUoJ3R5cGUnLCAnJyk7XG5cbiAgICAgICAgLy8gRW5zdXJlIHRoZSBjaGlsZHJlbiBhcmUgZm9jdXNhYmxlXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbWVudS5jaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgbWVudS5jaGlsZHJlbltpXS5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJy0xJyk7XG4gICAgICAgICAgICBtZW51LmNoaWxkcmVuW2ldLnNldEF0dHJpYnV0ZSgncm9sZScsICdtZW51aXRlbScpO1xuXG4gICAgICAgICAgICBtZW51LmNoaWxkcmVuW2ldLnNldEF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcsIG1lbnUuY2hpbGRyZW5baV0uaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpLnRvU3RyaW5nKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgIGxldCBidG5TaXplID0gYnRuLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgbGV0IG1lbnVTaXplID0gbWVudS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGxldCB3bmRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XG5cbiAgICAgICAgICAgIGlmIChidG5TaXplLmJvdHRvbSArIG1lbnVTaXplLmhlaWdodCA+IHduZEhlaWdodCkge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUuYm90dG9tID0gYnRuU2l6ZS50b3AgKyAncHgnO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtZW51LnN0eWxlLnRvcCA9IGJ0blNpemUuYm90dG9tICsgJ3B4JztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG1lbnVTaXplLndpZHRoID4gYnRuU2l6ZS5yaWdodCkge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUubGVmdCA9IGJ0blNpemUubGVmdCArICdweCc7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUubGVmdCA9IChidG5TaXplLnJpZ2h0IC0gbWVudVNpemUud2lkdGgpICsgJ3B4JztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCd0cmFuc2Zvcm0nIGluIG1lbnUuc3R5bGUpIHtcbiAgICAgICAgICAgICAgICBtZW51LnN0eWxlLnRyYW5zZm9ybSA9ICdzY2FsZVkoMSknO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtZW51LnN0eWxlLndlYmtpdFRyYW5zZm9ybSA9ICdzY2FsZVkoMSknO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIGNsaWNrTGlzdGVuZXIoZSA6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgaWYgKCFNZW51TWFuYWdlci5jdXJCdXR0b24gfHwgIU1lbnVNYW5hZ2VyLmN1ck1lbnUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChNZW51TWFuYWdlci5jdXJNZW51LmNvbnRhaW5zKGUudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoTWVudU1hbmFnZXIuY3VyQnV0dG9uLmNvbnRhaW5zKGUudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBNZW51TWFuYWdlci5jbG9zZU1lbnUoKTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIG1lbnVDbGlja0xpc3RlbmVyKGUgOiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICghTWVudU1hbmFnZXIuY3VyQnV0dG9uIHx8ICFNZW51TWFuYWdlci5jdXJNZW51KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWkgPSBlLnRhcmdldCBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICBpZiAoIU1lbnVNYW5hZ2VyLmN1ck1lbnUuY29udGFpbnMobWkpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobWkuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBNZW51TWFuYWdlci5jbG9zZU1lbnUoKTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIGhhbmRsZUJsdXIoZSA6IEZvY3VzRXZlbnQpIHtcbiAgICAgICAgaWYgKCFNZW51TWFuYWdlci5jdXJCdXR0b24pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVsZW1lbnQgdGhhdCBmb2N1cyBpcyBtb3ZpbmcgdG9cbiAgICAgICAgbGV0IGFjdGl2ZUVsID0gZS5yZWxhdGVkVGFyZ2V0IGFzIEhUTUxFbGVtZW50IHwgbnVsbDtcblxuICAgICAgICBpZiAoIWFjdGl2ZUVsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoTWVudU1hbmFnZXIuY3VyQnV0dG9uID09PSBhY3RpdmVFbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKE1lbnVNYW5hZ2VyLmN1ck1lbnUgJiYgTWVudU1hbmFnZXIuY3VyTWVudS5jb250YWlucyhhY3RpdmVFbCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdhaXQgdW50aWwgYWZ0ZXIgZm9jdXMgaGFzIG1vdmVkIGJlZm9yZSBjbG9zaW5nIHRoZSBtZW51XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKE1lbnVNYW5hZ2VyLmlzT3Blbikge1xuICAgICAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCAwKTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIG1lbnVLZXlwcmVzc0xpc3RlbmVyKGUgOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGlmICghTWVudU1hbmFnZXIuaXNPcGVuKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFc2NhcGVcbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PT0gMjcpIHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVXAgQXJyb3dcbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PT0gMzgpIHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmZvY3VzQ291bnQtLTtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmZvY3VzTWVudSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRG93biBBcnJvd1xuICAgICAgICBpZiAoZS5rZXlDb2RlID09PSA0MCkge1xuICAgICAgICAgICAgTWVudU1hbmFnZXIuZm9jdXNDb3VudCsrO1xuICAgICAgICAgICAgTWVudU1hbmFnZXIuZm9jdXNNZW51KCk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vIEVudGVyIGFuZCBTcGFjZWJhclxuICAgICAgICBpZiAoZS5rZXlDb2RlID09PSAzMiB8fCBlLmtleUNvZGUgPT09IDEzKSB7XG4gICAgICAgICAgICBNZW51TWFuYWdlci5jbGlja01lbnVJdGVtKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiEgQ29weXJpZ2h0IDIwMTYgQXlvZ28gSGVhbHRoIEluYy4gKi9cblxuaW1wb3J0IHsgTWVudU1hbmFnZXIgfSBmcm9tICcuL21hbmFnZXInO1xuXG5leHBvcnQgY2xhc3MgTWVudUJ1dHRvbkJlaGF2aW91ciB7XG4gICAgcHJpdmF0ZSBlbDogbnVsbCB8IEhUTUxCdXR0b25FbGVtZW50O1xuICAgIHByaXZhdGUgbWVudSA6IG51bGwgfCBIVE1MTWVudUVsZW1lbnQ7XG5cbiAgICBwcml2YXRlIGNsaWNrSGFuZGxlciA6IG51bGwgfCAoKCkgPT4gdm9pZCk7XG4gICAgcHJpdmF0ZSBrZXlIYW5kbGVyIDogbnVsbCB8ICgoZSA6IEtleWJvYXJkRXZlbnQpID0+IHZvaWQpO1xuICAgIHByaXZhdGUgcmVzaXplSGFuZGxlciA6IG51bGwgfCAoKCkgPT4gdm9pZCk7XG5cbiAgICBjb25zdHJ1Y3RvcihidG4gOiBIVE1MQnV0dG9uRWxlbWVudCkge1xuICAgICAgICB0aGlzLmVsID0gYnRuO1xuXG4gICAgICAgIGxldCBtZW51SUQgPSB0aGlzLmVsLmdldEF0dHJpYnV0ZSgnbWVudScpO1xuICAgICAgICBpZiAoIW1lbnVJRCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1lbnUgPSBidG4ub3duZXJEb2N1bWVudC5nZXRFbGVtZW50QnlJZChtZW51SUQpIGFzIEhUTUxNZW51RWxlbWVudDtcbiAgICAgICAgaWYgKCFtZW51KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm1lbnUgPSBtZW51O1xuXG4gICAgICAgIHRoaXMuZWwuc2V0QXR0cmlidXRlKCdhcmlhLWhhc3BvcHVwJywgJ3RydWUnKTtcbiAgICAgICAgdGhpcy5lbC5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCAnZmFsc2UnKTtcblxuICAgICAgICB0aGlzLmNsaWNrSGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLnRvZ2dsZU1lbnUodGhpcy5lbCEsIHRoaXMubWVudSEpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMua2V5SGFuZGxlciA9IChlIDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5idXR0b25LZXlwcmVzc0xpc3RlbmVyKGUpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMucmVzaXplSGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLmNsaWNrSGFuZGxlciEpO1xuICAgICAgICB0aGlzLmVsLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLmtleUhhbmRsZXIhKTtcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMucmVzaXplSGFuZGxlciEpO1xuICAgIH1cblxuXG4gICAgLy8gQ2xlYW51cCBmdW5jdGlvblxuICAgIGRlc3Ryb3koKSB7XG4gICAgICAgIGlmICh0aGlzLmVsKSB7XG4gICAgICAgICAgICB0aGlzLmVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jbGlja0hhbmRsZXIhKTtcbiAgICAgICAgICAgIHRoaXMuZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMua2V5SGFuZGxlciEpO1xuICAgICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMucmVzaXplSGFuZGxlciEpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jbGlja0hhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLmtleUhhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZUhhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLm1lbnUgPSBudWxsO1xuICAgICAgICB0aGlzLmVsID0gbnVsbDtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgYnV0dG9uS2V5cHJlc3NMaXN0ZW5lcihlIDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICAvLyBFc2NhcGVcbiAgICAgICAgaWYgKE1lbnVNYW5hZ2VyLm9wZW4gJiYgZS5rZXlDb2RlID09IDI3KSB7XG4gICAgICAgICAgICBNZW51TWFuYWdlci5jbG9zZU1lbnUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERPV04gQVJST1dcbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PSA0MCkge1xuICAgICAgICAgICAgaWYgKCFNZW51TWFuYWdlci5vcGVuKSB7XG4gICAgICAgICAgICAgICAgTWVudU1hbmFnZXIub3Blbk1lbnUodGhpcy5lbCEsIHRoaXMubWVudSEsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBNZW51TWFuYWdlci5mb2N1c01lbnUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qISBDb3B5cmlnaHQgMjAxNiBBeW9nbyBIZWFsdGggSW5jLiAqL1xuXG5cbmltcG9ydCB7IE1lbnVCdXR0b25CZWhhdmlvdXIgfSBmcm9tICcuL2J1dHRvbic7XG5cbmNvbnN0IE1FTlVfU1RZTEVTID0gYFxubWVudVt0eXBlPVwiY29udGV4dFwiXSxcbm1lbnVbZGF0YS1vd25lcj1cImJ1dHRvblwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIyNW1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbn1cblxubWVudWl0ZW0ge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogTWVudTtcbiAgICBmb250OiBtZW51O1xuICAgIHBhZGRpbmc6IDAuMjVlbSAwLjVlbTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbm1lbnVpdGVtOjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihsYWJlbCk7XG59XG5cbm1lbnVpdGVtW2Rpc2FibGVkXSB7XG4gICAgY29sb3I6IEdyYXlUZXh0O1xufVxuXG5tZW51aXRlbTpub3QoW2Rpc2FibGVkXSk6aG92ZXIsXG5tZW51aXRlbTpub3QoW2Rpc2FibGVkXSk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IEhpZ2hsaWdodDtcbiAgICBjb2xvcjogSGlnaGxpZ2h0VGV4dDtcbn1cblxuYnV0dG9uW3R5cGU9XCJtZW51XCJdOjphZnRlcixcbmJ1dHRvbltkYXRhLXR5cGU9XCJtZW51XCJdOmFmdGVyIHsgY29udGVudDogJyDDosKWwr4nOyB9XG5cbmJ1dHRvblt0eXBlPVwibWVudVwiXTplbXB0eTo6YWZ0ZXIsXG5idXR0b25bZGF0YS10eXBlPVwibWVudVwiXTplbXB0eTphZnRlciB7IGNvbnRlbnQ6ICfDosKWwr4nOyB9IC8qIE5vIHNwYWNlIGNoYXJhY3RlciAqL1xuYDtcblxuXG5jb25zdCBQUkVGSVhfU1RZTEVTID0gYFxubWVudVt0eXBlPVwiY29udGV4dFwiXSxcbm1lbnVbZGF0YS1vd25lcj1cImJ1dHRvblwiXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAyMjVtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSk7XG4gICAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMjI1bXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpO1xufVxuYFxuXG5cbi8vIEluamVjdCBkZWZhdWx0IHN0eWxpbmdcblxubGV0IG1udVN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbm1udVN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKE1FTlVfU1RZTEVTKSk7XG5cbi8vIEFkZCBvbGQgcHJlZml4ZWQgc3R5bGVzIGZvciBvbGRlciBpT1MgYW5kIEFuZHJvaWQgZGV2aWNlc1xuaWYgKCEoJ3RyYW5zZm9ybScgaW4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jykuc3R5bGUpKSB7XG4gICAgbW51U3R5bGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoUFJFRklYX1NUWUxFUykpO1xufVxuXG5cbmxldCBpbnNlcnRQb2ludCA6IEhUTUxFbGVtZW50IHwgbnVsbDtcbmlmIChpbnNlcnRQb2ludCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2xpbmsnKSkge1xuICAgIGluc2VydFBvaW50LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG1udVN0eWxlLCBpbnNlcnRQb2ludCk7XG59IGVsc2VcbmlmIChpbnNlcnRQb2ludCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3N0eWxlJykpIHtcbiAgICBpbnNlcnRQb2ludC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShtbnVTdHlsZSwgaW5zZXJ0UG9pbnQpO1xufSBlbHNlXG5pZiAoaW5zZXJ0UG9pbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdoZWFkJykpIHtcbiAgICBpbnNlcnRQb2ludC5hcHBlbmRDaGlsZChtbnVTdHlsZSk7XG59IGVsc2Uge1xuICAgIGRvY3VtZW50LmFwcGVuZENoaWxkKG1udVN0eWxlKTtcbn1cblxuXG5sZXQgZ2NDYWNoZSA6IFdlYWtNYXA8SFRNTEJ1dHRvbkVsZW1lbnQsIE1lbnVCdXR0b25CZWhhdmlvdXI+IHwgbnVsbCA9IG51bGw7XG5pZiAoJ1dlYWtNYXAnIGluIHdpbmRvdykge1xuICAgIGdjQ2FjaGUgPSBuZXcgV2Vha01hcCgpO1xufVxuXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIE1lbnVCdXR0b24oZWwgOiBIVE1MQnV0dG9uRWxlbWVudCkge1xuICAgIGxldCBiZWhhdmlvdXIgPSBuZXcgTWVudUJ1dHRvbkJlaGF2aW91cihlbCk7XG5cbiAgICBpZiAoZ2NDYWNoZSkge1xuICAgICAgICBnY0NhY2hlLnNldChlbCwgYmVoYXZpb3VyKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYmVoYXZpb3VyO1xufVxuIiwiLyohIENvcHlyaWdodCAyMDE2IEF5b2dvIEhlYWx0aCBJbmMuICovXG5cbmltcG9ydCAqIGFzIGFuZ3VsYXIgZnJvbSAnYW5ndWxhcic7XG5pbXBvcnQgTWVudUJ1dHRvbiBmcm9tICcuL2luZGV4JztcblxuY29uc3QgbW9kTmFtZSA9ICdheU1lbnVCdXR0b24nO1xuXG5hbmd1bGFyLm1vZHVsZShtb2ROYW1lLCBbXSlcbi5kaXJlY3RpdmUoJ2J1dHRvbicsIGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIHJlc3RyaWN0OiAnRScsXG4gICAgICAgIGxpbms6IGZ1bmN0aW9uKF8kc2NvcGUsICRlbGVtZW50KSB7XG4gICAgICAgICAgICBsZXQgZWwgPSAkZWxlbWVudFswXSBhcyBIVE1MQnV0dG9uRWxlbWVudDtcblxuICAgICAgICAgICAgaWYgKGVsLmdldEF0dHJpYnV0ZSgndHlwZScpID09PSAnbWVudScgfHwgZWwuZ2V0QXR0cmlidXRlKCdkYXRhLXR5cGUnKSA9PT0gJ21lbnUnKSB7XG4gICAgICAgICAgICAgICAgbGV0IGJlaGF2aW91ciA9IE1lbnVCdXR0b24oZWwpO1xuXG4gICAgICAgICAgICAgICAgJGVsZW1lbnQub24oJyRkZXN0cm95JywgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBiZWhhdmlvdXIuZGVzdHJveSgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBtb2ROYW1lO1xuIl0sIm5hbWVzIjpbImFuZ3VsYXIubW9kdWxlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztJQUVBO0tBbVJDO0lBM1FHLHNCQUFXLG1CQUFJO2FBQWY7WUFDSSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7U0FDdEI7OztPQUFBO0lBRU0sb0JBQVEsR0FBZixVQUFnQixHQUF1QixFQUFFLEdBQXFCLEVBQUUsS0FBdUI7UUFBdkIsc0JBQUEsRUFBQSxhQUF1QjtRQUNuRixJQUFJLElBQUksQ0FBQyxvQkFBb0IsS0FBSyxJQUFJLEVBQUU7WUFDcEMsSUFBSSxDQUFDLG9CQUFxQixFQUFFLENBQUM7U0FDaEM7UUFFRCxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUVuQixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDM0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUs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 | ||
//# sourceMappingURL=angular1.js.map |
@@ -1,2 +0,2 @@ | ||
/*! Copyright 2016 Ayogo Health Inc. */ | ||
/*! Copyright 2017 Ayogo Health Inc. */ | ||
(function (global, factory) { | ||
@@ -158,2 +158,3 @@ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : | ||
} | ||
MenuManager.curButton.focus(); | ||
MenuManager.closeMenu(); | ||
@@ -172,2 +173,3 @@ }; | ||
} | ||
MenuManager.curButton.focus(); | ||
MenuManager.closeMenu(); | ||
@@ -200,5 +202,10 @@ }; | ||
if (e.keyCode === 27) { | ||
if (MenuManager.curButton) { | ||
MenuManager.curButton.focus(); | ||
} | ||
MenuManager.closeMenu(); | ||
} | ||
if (e.keyCode === 38) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.focusCount--; | ||
@@ -208,2 +215,4 @@ MenuManager.focusMenu(); | ||
if (e.keyCode === 40) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.focusCount++; | ||
@@ -213,2 +222,4 @@ MenuManager.focusMenu(); | ||
if (e.keyCode === 32 || e.keyCode === 13) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.clickMenuItem(); | ||
@@ -316,2 +327,2 @@ } | ||
}))); | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbIi4uL3NyYy9tYW5hZ2VyLnRzIiwiLi4vc3JjL2J1dHRvbi50cyIsIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgQ29weXJpZ2h0IDIwMTYgQXlvZ28gSGVhbHRoIEluYy4gKi9cblxuZXhwb3J0IGNsYXNzIE1lbnVNYW5hZ2VyIHtcbiAgICBwcml2YXRlIHN0YXRpYyBjdXJNZW51IDogSFRNTE1lbnVFbGVtZW50IHwgbnVsbCAgICAgICAgICAgICA9IG51bGw7XG4gICAgcHJpdmF0ZSBzdGF0aWMgY3VyQnV0dG9uIDogSFRNTEJ1dHRvbkVsZW1lbnQgfCBudWxsICAgICAgICAgPSBudWxsO1xuICAgIHByaXZhdGUgc3RhdGljIGlzT3BlbiA6IGJvb2xlYW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBzdGF0aWMgZm9jdXNDb3VudCA6IG51bWJlciB8IG51bGwgICAgICAgICAgICAgICAgICAgPSBudWxsO1xuICAgIHByaXZhdGUgc3RhdGljIHRyYW5zaXRpb25FbmRIYW5kbGVyIDogKCgpID0+IHZvaWQpIHwgbnVsbCAgID0gbnVsbDtcblxuXG4gICAgc3RhdGljIGdldCBvcGVuKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pc09wZW47XG4gICAgfVxuXG4gICAgc3RhdGljIG9wZW5NZW51KGJ0biA6IEhUTUxCdXR0b25FbGVtZW50LCBtbnUgOiBIVE1MTWVudUVsZW1lbnQsIGZvY3VzIDogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgICAgIGlmICh0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyICE9PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jdXJCdXR0b24gPSBidG47XG4gICAgICAgIHRoaXMuY3VyTWVudSA9IG1udTtcbiAgICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuY3VyQnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG4gICAgICAgIHRoaXMuY3VyQnV0dG9uLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jbGlja0xpc3RlbmVyKTtcbiAgICAgICAgdGhpcy5jdXJCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignYmx1cicsIHRoaXMuaGFuZGxlQmx1cik7XG5cbiAgICAgICAgLy8gQmVmb3JlIHdlIG9wZW4gdGhlIG1lbnUsIHdlIG5lZWQgdG8gbW92ZSBpdCBpbiB0aGUgRE9NIHNvIHRoYXQgaXNcbiAgICAgICAgLy8gaXMgZGlyZWN0bHkgYWZ0ZXIgdGhlIGJ1dHRvbiBlbGVtZW50IGZvciB0YWIgb3JkZXJpbmdcbiAgICAgICAgdGhpcy5jdXJCdXR0b24ucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodGhpcy5jdXJNZW51LCB0aGlzLmN1ckJ1dHRvbi5uZXh0U2libGluZyk7XG5cbiAgICAgICAgdGhpcy5hZGRNZW51U3R5bGUoKTtcblxuICAgICAgICBpZiAoZm9jdXMpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXNNZW51KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmN1ck1lbnUuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMubWVudUtleXByZXNzTGlzdGVuZXIpO1xuICAgICAgICB0aGlzLmN1ck1lbnUuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXNvdXQnLCB0aGlzLmhhbmRsZUJsdXIpO1xuICAgICAgICB0aGlzLmN1ck1lbnUuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm1lbnVDbGlja0xpc3RlbmVyKTtcbiAgICB9XG5cblxuICAgIHN0YXRpYyBjbG9zZU1lbnUoKSB7XG4gICAgICAgIGlmICghdGhpcy5pc09wZW4gfHwgIXRoaXMuY3VyQnV0dG9uIHx8ICF0aGlzLmN1ck1lbnUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY3VyQnV0dG9uLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jbGlja0xpc3RlbmVyKTtcbiAgICAgICAgdGhpcy5jdXJCdXR0b24ucmVtb3ZlRXZlbnRMaXN0ZW5lcignYmx1cicsIHRoaXMuaGFuZGxlQmx1cik7XG4gICAgICAgIHRoaXMuY3VyQnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuXG4gICAgICAgIHRoaXMuY3VyTWVudS5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5tZW51S2V5cHJlc3NMaXN0ZW5lcik7XG4gICAgICAgIHRoaXMuY3VyTWVudS5yZW1vdmVFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIHRoaXMuaGFuZGxlQmx1cik7XG4gICAgICAgIHRoaXMuY3VyTWVudS5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMubWVudUNsaWNrTGlzdGVuZXIpO1xuXG4gICAgICAgIGxldCBvbGRNZW51ID0gdGhpcy5jdXJNZW51O1xuICAgICAgICB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgICAgICAgb2xkTWVudS5yZW1vdmVBdHRyaWJ1dGUoJ3N0eWxlJyk7XG4gICAgICAgICAgICBvbGRNZW51LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RyYW5zaXRpb25lbmQnLCB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISk7XG4gICAgICAgICAgICBvbGRNZW51LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3dlYmtpdHRyYW5zaXRpb25lbmQnLCB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISk7XG4gICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyID0gbnVsbDtcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoJ3RyYW5zaXRpb25EdXJhdGlvbicgaW4gb2xkTWVudS5zdHlsZSkge1xuICAgICAgICAgICAgb2xkTWVudS5zdHlsZS50cmFuc2l0aW9uRHVyYXRpb24gPSAnMTkybXMnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb2xkTWVudS5zdHlsZS53ZWJraXRUcmFuc2l0aW9uRHVyYXRpb24gPSAnMTkybXMnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCd0cmFuc2Zvcm0nIGluIG9sZE1lbnUuc3R5bGUpIHtcbiAgICAgICAgICAgIG9sZE1lbnUuc3R5bGUudHJhbnNmb3JtID0gJ3NjYWxlWSgwKSc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvbGRNZW51LnN0eWxlLndlYmtpdFRyYW5zZm9ybSA9ICdzY2FsZVkoMCknO1xuICAgICAgICB9XG5cbiAgICAgICAgb2xkTWVudS5hZGRFdmVudExpc3RlbmVyKCd0cmFuc2l0aW9uZW5kJywgdGhpcy50cmFuc2l0aW9uRW5kSGFuZGxlciEpO1xuICAgICAgICBvbGRNZW51LmFkZEV2ZW50TGlzdGVuZXIoJ3dlYmtpdHRyYW5zaXRpb25lbmQnLCB0aGlzLnRyYW5zaXRpb25FbmRIYW5kbGVyISk7XG5cbiAgICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jdXJCdXR0b24gPSBudWxsO1xuICAgICAgICB0aGlzLmN1ck1lbnUgPSBudWxsO1xuICAgICAgICB0aGlzLmZvY3VzQ291bnQgPSBudWxsO1xuICAgIH1cblxuXG4gICAgc3RhdGljIHRvZ2dsZU1lbnUoYnRuIDogSFRNTEJ1dHRvbkVsZW1lbnQsIG1udSA6IEhUTUxNZW51RWxlbWVudCkge1xuICAgICAgICBsZXQgb3Blbk1udSA9IHRoaXMuY3VyTWVudTtcblxuICAgICAgICBpZiAodGhpcy5pc09wZW4gJiYgYnRuID09PSB0aGlzLmN1ckJ1dHRvbikge1xuICAgICAgICAgICAgdGhpcy5jbG9zZU1lbnUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcGVuTW51ICE9PSBtbnUpIHtcbiAgICAgICAgICAgIHRoaXMub3Blbk1lbnUoYnRuLCBtbnUpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBzdGF0aWMgZm9jdXNNZW51KCkge1xuICAgICAgICBpZiAoIXRoaXMuY3VyTWVudSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZm9jdXNDb3VudCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0NvdW50ID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBsZW5ndGggPSB0aGlzLmN1ck1lbnUuY2hpbGRyZW4ubGVuZ3RoO1xuXG4gICAgICAgIGlmICh0aGlzLmZvY3VzQ291bnQgPCAwKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzQ291bnQgKz0gbGVuZ3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1pID0gdGhpcy5jdXJNZW51LmNoaWxkcmVuW3RoaXMuZm9jdXNDb3VudCAlIGxlbmd0aF0gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIG1pLmZvY3VzKCk7XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHN0YXRpYyBjbGlja01lbnVJdGVtKCkge1xuICAgICAgICBpZiAoIXRoaXMuY3VyTWVudSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGxlbmd0aCA9IHRoaXMuY3VyTWVudS5jaGlsZHJlbi5sZW5ndGg7XG4gICAgICAgIGxldCBtaSA9IHRoaXMuY3VyTWVudS5jaGlsZHJlblt0aGlzLmZvY3VzQ291bnQgJSBsZW5ndGhdIGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIGlmICghbWkuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKSB7XG4gICAgICAgICAgICBtaS5jbGljaygpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBwcml2YXRlIHN0YXRpYyBhZGRNZW51U3R5bGUoKSB7XG4gICAgICAgIGlmICghdGhpcy5jdXJNZW51IHx8ICF0aGlzLmN1ckJ1dHRvbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1lbnUgPSB0aGlzLmN1ck1lbnUhO1xuICAgICAgICBsZXQgYnRuID0gdGhpcy5jdXJCdXR0b24hO1xuXG4gICAgICAgIC8vIEFkZCB0aGUgbWVudSB0byB0aGUgRE9NIGZvciBtZWFzdXJpbmdcbiAgICAgICAgbWVudS5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcbiAgICAgICAgbWVudS5zdHlsZS5wb3NpdGlvbiA9ICdmaXhlZCc7XG4gICAgICAgIG1lbnUuc2V0QXR0cmlidXRlKCdyb2xlJywgJ21lbnUnKTtcbiAgICAgICAgbWVudS5zZXRBdHRyaWJ1dGUoJ2RhdGEtb3duZXInLCAnYnV0dG9uJyk7XG5cbiAgICAgICAgLy8gVHJ5IHRvIHVuc2V0IHRoZSB0eXBlIHNvIEZpcmVmb3ggY2FuIG1ha2UgaXQgdmlzaWJsZSA6JyhcbiAgICAgICAgbWVudS5zZXRBdHRyaWJ1dGUoJ3R5cGUnLCAnJyk7XG5cbiAgICAgICAgLy8gRW5zdXJlIHRoZSBjaGlsZHJlbiBhcmUgZm9jdXNhYmxlXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbWVudS5jaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgbWVudS5jaGlsZHJlbltpXS5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJy0xJyk7XG4gICAgICAgICAgICBtZW51LmNoaWxkcmVuW2ldLnNldEF0dHJpYnV0ZSgncm9sZScsICdtZW51aXRlbScpO1xuXG4gICAgICAgICAgICBtZW51LmNoaWxkcmVuW2ldLnNldEF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcsIG1lbnUuY2hpbGRyZW5baV0uaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpLnRvU3RyaW5nKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgIGxldCBidG5TaXplID0gYnRuLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgbGV0IG1lbnVTaXplID0gbWVudS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIGxldCB3bmRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XG5cbiAgICAgICAgICAgIGlmIChidG5TaXplLmJvdHRvbSArIG1lbnVTaXplLmhlaWdodCA+IHduZEhlaWdodCkge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUuYm90dG9tID0gYnRuU2l6ZS50b3AgKyAncHgnO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtZW51LnN0eWxlLnRvcCA9IGJ0blNpemUuYm90dG9tICsgJ3B4JztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG1lbnVTaXplLndpZHRoID4gYnRuU2l6ZS5yaWdodCkge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUubGVmdCA9IGJ0blNpemUubGVmdCArICdweCc7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG1lbnUuc3R5bGUubGVmdCA9IChidG5TaXplLnJpZ2h0IC0gbWVudVNpemUud2lkdGgpICsgJ3B4JztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCd0cmFuc2Zvcm0nIGluIG1lbnUuc3R5bGUpIHtcbiAgICAgICAgICAgICAgICBtZW51LnN0eWxlLnRyYW5zZm9ybSA9ICdzY2FsZVkoMSknO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtZW51LnN0eWxlLndlYmtpdFRyYW5zZm9ybSA9ICdzY2FsZVkoMSknO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIGNsaWNrTGlzdGVuZXIoZSA6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgaWYgKCFNZW51TWFuYWdlci5jdXJCdXR0b24gfHwgIU1lbnVNYW5hZ2VyLmN1ck1lbnUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChNZW51TWFuYWdlci5jdXJNZW51LmNvbnRhaW5zKGUudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoTWVudU1hbmFnZXIuY3VyQnV0dG9uLmNvbnRhaW5zKGUudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBNZW51TWFuYWdlci5jbG9zZU1lbnUoKTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIG1lbnVDbGlja0xpc3RlbmVyKGUgOiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICghTWVudU1hbmFnZXIuY3VyQnV0dG9uIHx8ICFNZW51TWFuYWdlci5jdXJNZW51KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgbWkgPSBlLnRhcmdldCBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICBpZiAoIU1lbnVNYW5hZ2VyLmN1ck1lbnUuY29udGFpbnMobWkpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobWkuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBNZW51TWFuYWdlci5jbG9zZU1lbnUoKTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIGhhbmRsZUJsdXIoZSA6IEZvY3VzRXZlbnQpIHtcbiAgICAgICAgaWYgKCFNZW51TWFuYWdlci5jdXJCdXR0b24pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEVsZW1lbnQgdGhhdCBmb2N1cyBpcyBtb3ZpbmcgdG9cbiAgICAgICAgbGV0IGFjdGl2ZUVsID0gZS5yZWxhdGVkVGFyZ2V0IGFzIEhUTUxFbGVtZW50IHwgbnVsbDtcblxuICAgICAgICBpZiAoIWFjdGl2ZUVsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoTWVudU1hbmFnZXIuY3VyQnV0dG9uID09PSBhY3RpdmVFbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKE1lbnVNYW5hZ2VyLmN1ck1lbnUgJiYgTWVudU1hbmFnZXIuY3VyTWVudS5jb250YWlucyhhY3RpdmVFbCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdhaXQgdW50aWwgYWZ0ZXIgZm9jdXMgaGFzIG1vdmVkIGJlZm9yZSBjbG9zaW5nIHRoZSBtZW51XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKE1lbnVNYW5hZ2VyLmlzT3Blbikge1xuICAgICAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCAwKTtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgc3RhdGljIG1lbnVLZXlwcmVzc0xpc3RlbmVyKGUgOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGlmICghTWVudU1hbmFnZXIuaXNPcGVuKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFc2NhcGVcbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PT0gMjcpIHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVXAgQXJyb3dcbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PT0gMzgpIHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmZvY3VzQ291bnQtLTtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmZvY3VzTWVudSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRG93biBBcnJvd1xuICAgICAgICBpZiAoZS5rZXlDb2RlID09PSA0MCkge1xuICAgICAgICAgICAgTWVudU1hbmFnZXIuZm9jdXNDb3VudCsrO1xuICAgICAgICAgICAgTWVudU1hbmFnZXIuZm9jdXNNZW51KCk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC8vIEVudGVyIGFuZCBTcGFjZWJhclxuICAgICAgICBpZiAoZS5rZXlDb2RlID09PSAzMiB8fCBlLmtleUNvZGUgPT09IDEzKSB7XG4gICAgICAgICAgICBNZW51TWFuYWdlci5jbGlja01lbnVJdGVtKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiEgQ29weXJpZ2h0IDIwMTYgQXlvZ28gSGVhbHRoIEluYy4gKi9cblxuaW1wb3J0IHsgTWVudU1hbmFnZXIgfSBmcm9tICcuL21hbmFnZXInO1xuXG5leHBvcnQgY2xhc3MgTWVudUJ1dHRvbkJlaGF2aW91ciB7XG4gICAgcHJpdmF0ZSBlbDogbnVsbCB8IEhUTUxCdXR0b25FbGVtZW50O1xuICAgIHByaXZhdGUgbWVudSA6IG51bGwgfCBIVE1MTWVudUVsZW1lbnQ7XG5cbiAgICBwcml2YXRlIGNsaWNrSGFuZGxlciA6IG51bGwgfCAoKCkgPT4gdm9pZCk7XG4gICAgcHJpdmF0ZSBrZXlIYW5kbGVyIDogbnVsbCB8ICgoZSA6IEtleWJvYXJkRXZlbnQpID0+IHZvaWQpO1xuICAgIHByaXZhdGUgcmVzaXplSGFuZGxlciA6IG51bGwgfCAoKCkgPT4gdm9pZCk7XG5cbiAgICBjb25zdHJ1Y3RvcihidG4gOiBIVE1MQnV0dG9uRWxlbWVudCkge1xuICAgICAgICB0aGlzLmVsID0gYnRuO1xuXG4gICAgICAgIGxldCBtZW51SUQgPSB0aGlzLmVsLmdldEF0dHJpYnV0ZSgnbWVudScpO1xuICAgICAgICBpZiAoIW1lbnVJRCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IG1lbnUgPSBidG4ub3duZXJEb2N1bWVudC5nZXRFbGVtZW50QnlJZChtZW51SUQpIGFzIEhUTUxNZW51RWxlbWVudDtcbiAgICAgICAgaWYgKCFtZW51KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm1lbnUgPSBtZW51O1xuXG4gICAgICAgIHRoaXMuZWwuc2V0QXR0cmlidXRlKCdhcmlhLWhhc3BvcHVwJywgJ3RydWUnKTtcbiAgICAgICAgdGhpcy5lbC5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCAnZmFsc2UnKTtcblxuICAgICAgICB0aGlzLmNsaWNrSGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLnRvZ2dsZU1lbnUodGhpcy5lbCEsIHRoaXMubWVudSEpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMua2V5SGFuZGxlciA9IChlIDogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5idXR0b25LZXlwcmVzc0xpc3RlbmVyKGUpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMucmVzaXplSGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgICAgIE1lbnVNYW5hZ2VyLmNsb3NlTWVudSgpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZWwuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLmNsaWNrSGFuZGxlciEpO1xuICAgICAgICB0aGlzLmVsLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLmtleUhhbmRsZXIhKTtcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMucmVzaXplSGFuZGxlciEpO1xuICAgIH1cblxuXG4gICAgLy8gQ2xlYW51cCBmdW5jdGlvblxuICAgIGRlc3Ryb3koKSB7XG4gICAgICAgIGlmICh0aGlzLmVsKSB7XG4gICAgICAgICAgICB0aGlzLmVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jbGlja0hhbmRsZXIhKTtcbiAgICAgICAgICAgIHRoaXMuZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMua2V5SGFuZGxlciEpO1xuICAgICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHRoaXMucmVzaXplSGFuZGxlciEpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jbGlja0hhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLmtleUhhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLnJlc2l6ZUhhbmRsZXIgPSBudWxsO1xuICAgICAgICB0aGlzLm1lbnUgPSBudWxsO1xuICAgICAgICB0aGlzLmVsID0gbnVsbDtcbiAgICB9XG5cblxuICAgIHByaXZhdGUgYnV0dG9uS2V5cHJlc3NMaXN0ZW5lcihlIDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICAvLyBFc2NhcGVcbiAgICAgICAgaWYgKE1lbnVNYW5hZ2VyLm9wZW4gJiYgZS5rZXlDb2RlID09IDI3KSB7XG4gICAgICAgICAgICBNZW51TWFuYWdlci5jbG9zZU1lbnUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERPV04gQVJST1dcbiAgICAgICAgaWYgKGUua2V5Q29kZSA9PSA0MCkge1xuICAgICAgICAgICAgaWYgKCFNZW51TWFuYWdlci5vcGVuKSB7XG4gICAgICAgICAgICAgICAgTWVudU1hbmFnZXIub3Blbk1lbnUodGhpcy5lbCEsIHRoaXMubWVudSEsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBNZW51TWFuYWdlci5mb2N1c01lbnUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qISBDb3B5cmlnaHQgMjAxNiBBeW9nbyBIZWFsdGggSW5jLiAqL1xuXG5cbmltcG9ydCB7IE1lbnVCdXR0b25CZWhhdmlvdXIgfSBmcm9tICcuL2J1dHRvbic7XG5cbmNvbnN0IE1FTlVfU1RZTEVTID0gYFxubWVudVt0eXBlPVwiY29udGV4dFwiXSxcbm1lbnVbZGF0YS1vd25lcj1cImJ1dHRvblwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIyNW1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbn1cblxubWVudWl0ZW0ge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogTWVudTtcbiAgICBmb250OiBtZW51O1xuICAgIHBhZGRpbmc6IDAuMjVlbSAwLjVlbTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbm1lbnVpdGVtOjphZnRlciB7XG4gICAgY29udGVudDogYXR0cihsYWJlbCk7XG59XG5cbm1lbnVpdGVtW2Rpc2FibGVkXSB7XG4gICAgY29sb3I6IEdyYXlUZXh0O1xufVxuXG5tZW51aXRlbTpub3QoW2Rpc2FibGVkXSk6aG92ZXIsXG5tZW51aXRlbTpub3QoW2Rpc2FibGVkXSk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IEhpZ2hsaWdodDtcbiAgICBjb2xvcjogSGlnaGxpZ2h0VGV4dDtcbn1cblxuYnV0dG9uW3R5cGU9XCJtZW51XCJdOjphZnRlcixcbmJ1dHRvbltkYXRhLXR5cGU9XCJtZW51XCJdOmFmdGVyIHsgY29udGVudDogJyDDosKWwr4nOyB9XG5cbmJ1dHRvblt0eXBlPVwibWVudVwiXTplbXB0eTo6YWZ0ZXIsXG5idXR0b25bZGF0YS10eXBlPVwibWVudVwiXTplbXB0eTphZnRlciB7IGNvbnRlbnQ6ICfDosKWwr4nOyB9IC8qIE5vIHNwYWNlIGNoYXJhY3RlciAqL1xuYDtcblxuXG5jb25zdCBQUkVGSVhfU1RZTEVTID0gYFxubWVudVt0eXBlPVwiY29udGV4dFwiXSxcbm1lbnVbZGF0YS1vd25lcj1cImJ1dHRvblwiXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAyMjVtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSk7XG4gICAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMjI1bXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpO1xufVxuYFxuXG5cbi8vIEluamVjdCBkZWZhdWx0IHN0eWxpbmdcblxubGV0IG1udVN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbm1udVN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKE1FTlVfU1RZTEVTKSk7XG5cbi8vIEFkZCBvbGQgcHJlZml4ZWQgc3R5bGVzIGZvciBvbGRlciBpT1MgYW5kIEFuZHJvaWQgZGV2aWNlc1xuaWYgKCEoJ3RyYW5zZm9ybScgaW4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jykuc3R5bGUpKSB7XG4gICAgbW51U3R5bGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoUFJFRklYX1NUWUxFUykpO1xufVxuXG5cbmxldCBpbnNlcnRQb2ludCA6IEhUTUxFbGVtZW50IHwgbnVsbDtcbmlmIChpbnNlcnRQb2ludCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2xpbmsnKSkge1xuICAgIGluc2VydFBvaW50LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKG1udVN0eWxlLCBpbnNlcnRQb2ludCk7XG59IGVsc2VcbmlmIChpbnNlcnRQb2ludCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3N0eWxlJykpIHtcbiAgICBpbnNlcnRQb2ludC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShtbnVTdHlsZSwgaW5zZXJ0UG9pbnQpO1xufSBlbHNlXG5pZiAoaW5zZXJ0UG9pbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdoZWFkJykpIHtcbiAgICBpbnNlcnRQb2ludC5hcHBlbmRDaGlsZChtbnVTdHlsZSk7XG59IGVsc2Uge1xuICAgIGRvY3VtZW50LmFwcGVuZENoaWxkKG1udVN0eWxlKTtcbn1cblxuXG5sZXQgZ2NDYWNoZSA6IFdlYWtNYXA8SFRNTEJ1dHRvbkVsZW1lbnQsIE1lbnVCdXR0b25CZWhhdmlvdXI+IHwgbnVsbCA9IG51bGw7XG5pZiAoJ1dlYWtNYXAnIGluIHdpbmRvdykge1xuICAgIGdjQ2FjaGUgPSBuZXcgV2Vha01hcCgpO1xufVxuXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIE1lbnVCdXR0b24oZWwgOiBIVE1MQnV0dG9uRWxlbWVudCkge1xuICAgIGxldCBiZWhhdmlvdXIgPSBuZXcgTWVudUJ1dHRvbkJlaGF2aW91cihlbCk7XG5cbiAgICBpZiAoZ2NDYWNoZSkge1xuICAgICAgICBnY0NhY2hlLnNldChlbCwgYmVoYXZpb3VyKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYmVoYXZpb3VyO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0lBRUE7S0FtUkM7SUEzUUcsc0JBQVcsbUJBQUk7YUFBZjtZQUNJLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztTQUN0Qjs7O09BQUE7SUFFTSxvQkFBUSxHQUFmLFVBQWdCLEdBQXVCLEVBQUUsR0FBcUIsRUFBRSxLQUF1QjtRQUF2QixzQkFBQSxFQUFBLGFBQXVCO1FBQ25GLElBQUksSUFBSSxDQUFDLG9CQUFvQixLQUFLLElBQUksRUFBRTtZQUNwQyxJQUFJLENBQUMsb0JBQXFCLEVBQUUsQ0FBQztTQUNoQztRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBRW5CLElBQUksQ0FBQyxTQUFTLENBQUMs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 | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "ay-menu-button", | ||
"version": "1.0.0", | ||
"version": "1.0.1", | ||
"copyright": "Copyright 2016 Ayogo Health Inc.", | ||
@@ -33,3 +33,3 @@ "license": "MIT", | ||
"angular": "^1.5.8", | ||
"rollup": "^0.36.3", | ||
"rollup": "^0.40.2", | ||
"rollup-plugin-cleanup": "^0.1.4", | ||
@@ -44,4 +44,5 @@ "rollup-plugin-sourcemaps": "^0.4.1", | ||
"build:es5": "npm run build:es5:base && npm run build:es5:ng1", | ||
"build": "npm run build:es6 && npm run build:es5" | ||
"build": "npm run build:es6 && npm run build:es5", | ||
"version": "npm run build && git add -A dist dist-es6" | ||
} | ||
} |
@@ -8,4 +8,4 @@ /*! Copyright 2016 Ayogo Health Inc. */ | ||
format: 'umd', | ||
banner: '/*! Copyright 2016 Ayogo Health Inc. */', | ||
sourceMap: 'inline', | ||
banner: '/*! Copyright 2017 Ayogo Health Inc. */', | ||
sourceMap: true, | ||
globals: { | ||
@@ -12,0 +12,0 @@ 'angular': 'angular' |
@@ -74,6 +74,6 @@ /*! Copyright 2016 Ayogo Health Inc. */ | ||
if (insertPoint = document.querySelector('link')) { | ||
insertPoint.parentNode.insertBefore(mnuStyle, insertPoint); | ||
insertPoint.parentNode!.insertBefore(mnuStyle, insertPoint); | ||
} else | ||
if (insertPoint = document.querySelector('style')) { | ||
insertPoint.parentNode.insertBefore(mnuStyle, insertPoint); | ||
insertPoint.parentNode!.insertBefore(mnuStyle, insertPoint); | ||
} else | ||
@@ -80,0 +80,0 @@ if (insertPoint = document.querySelector('head')) { |
@@ -30,3 +30,3 @@ /*! Copyright 2016 Ayogo Health Inc. */ | ||
// is directly after the button element for tab ordering | ||
this.curButton.parentNode.insertBefore(this.curMenu, this.curButton.nextSibling); | ||
this.curButton.parentNode!.insertBefore(this.curMenu, this.curButton.nextSibling); | ||
@@ -199,2 +199,3 @@ this.addMenuStyle(); | ||
MenuManager.curButton.focus(); | ||
MenuManager.closeMenu(); | ||
@@ -219,2 +220,3 @@ } | ||
MenuManager.curButton.focus(); | ||
MenuManager.closeMenu(); | ||
@@ -260,2 +262,6 @@ } | ||
if (e.keyCode === 27) { | ||
if (MenuManager.curButton) { | ||
MenuManager.curButton.focus(); | ||
} | ||
MenuManager.closeMenu(); | ||
@@ -266,2 +272,5 @@ } | ||
if (e.keyCode === 38) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.focusCount--; | ||
@@ -273,2 +282,5 @@ MenuManager.focusMenu(); | ||
if (e.keyCode === 40) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.focusCount++; | ||
@@ -281,2 +293,5 @@ MenuManager.focusMenu(); | ||
if (e.keyCode === 32 || e.keyCode === 13) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
MenuManager.clickMenuItem(); | ||
@@ -283,0 +298,0 @@ } |
@@ -5,4 +5,2 @@ { | ||
"declaration": true, | ||
"inlineSourceMap": true, | ||
"inlineSources": true, | ||
"lib": ["es6", "dom"], | ||
@@ -21,2 +19,3 @@ "module": "es2015", | ||
"stripInternal": true, | ||
"sourceMap": true, | ||
"target": "es6" | ||
@@ -23,0 +22,0 @@ }, |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
30
120211
1512
1