UNPKG

vix-ui

Version:

69 lines 4.46 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ /** * UserGroups holds the groups information of a user. It is mainly used to check permissions. */ var /** * UserGroups holds the groups information of a user. It is mainly used to check permissions. */ UserGroups = /** @class */ (function () { /** * construct UserGroups from OktaUserGroups * * @param oktaUserGroups Array of oktaGroups * oktaGroup example: * { ... * "profile": { * "name": "Everyone", * "description": "All users in your organization" * }, * ... * } */ function UserGroups(oktaUserGroups) { var _this = this; this.groups = []; if (oktaUserGroups) { oktaUserGroups.forEach(function (oktaGroup) { _this.groups.push(oktaGroup.profile.name); }); } } /** * Check if instance has enough permission for requireGroups. * * @returns true if this.groups contains all group of requireGroups, else then false */ /** * Check if instance has enough permission for requireGroups. * * @param {?} requireGroups * @return {?} true if this.groups contains all group of requireGroups, else then false */ UserGroups.prototype.hasPermission = /** * Check if instance has enough permission for requireGroups. * * @param {?} requireGroups * @return {?} true if this.groups contains all group of requireGroups, else then false */ function (requireGroups) { for (var i = 0; i < requireGroups.length; i++) { if (this.groups.indexOf(requireGroups[i]) > 0) { return true; } } return false; }; return UserGroups; }()); /** * UserGroups holds the groups information of a user. It is mainly used to check permissions. */ export { UserGroups }; if (false) { /** @type {?} */ UserGroups.prototype.groups; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ncm91cHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly92aXgtdWkvIiwic291cmNlcyI6WyJ2aXgtYXV0aC91c2VyLWdyb3Vwcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBR0E7Ozs7SUFHRTs7Ozs7Ozs7Ozs7O09BWUc7SUFDSCxvQkFBWSxjQUFtQjtRQUEvQixpQkFNQztRQXJCRCxXQUFNLEdBQWEsRUFBRSxDQUFDO1FBZ0JwQixJQUFJLGNBQWMsRUFBRTtZQUNsQixjQUFjLENBQUMsT0FBTyxDQUFDLFVBQUMsU0FBUztnQkFDL0IsS0FBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMzQyxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7Ozs7Ozs7SUFDSCxrQ0FBYTs7Ozs7O0lBQWIsVUFBYyxhQUF1QjtRQUNuQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUM3QyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDN0MsT0FBTyxJQUFJLENBQUM7YUFDYjtTQUNGO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUgsaUJBQUM7QUFBRCxDQUFDLEFBdENELElBc0NDOzs7Ozs7O0lBckNDLDRCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXNlckdyb3VwcyBob2xkcyB0aGUgZ3JvdXBzIGluZm9ybWF0aW9uIG9mIGEgdXNlci4gSXQgaXMgbWFpbmx5IHVzZWQgdG8gY2hlY2sgcGVybWlzc2lvbnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBVc2VyR3JvdXBzIHtcbiAgZ3JvdXBzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBjb25zdHJ1Y3QgVXNlckdyb3VwcyBmcm9tIE9rdGFVc2VyR3JvdXBzXG4gICAqXG4gICAqIEBwYXJhbSBva3RhVXNlckdyb3VwcyBBcnJheSBvZiBva3RhR3JvdXBzXG4gICAqIG9rdGFHcm91cCBleGFtcGxlOlxuICAgKiB7IC4uLlxuICAgKiAgIFwicHJvZmlsZVwiOiB7XG4gICAqICAgICBcIm5hbWVcIjogXCJFdmVyeW9uZVwiLFxuICAgKiAgICAgXCJkZXNjcmlwdGlvblwiOiBcIkFsbCB1c2VycyBpbiB5b3VyIG9yZ2FuaXphdGlvblwiXG4gICAqICAgfSxcbiAgICogICAuLi5cbiAgICogfVxuICAgKi9cbiAgY29uc3RydWN0b3Iob2t0YVVzZXJHcm91cHM6IGFueSkge1xuICAgIGlmIChva3RhVXNlckdyb3Vwcykge1xuICAgICAgb2t0YVVzZXJHcm91cHMuZm9yRWFjaCgob2t0YUdyb3VwKSA9PiB7XG4gICAgICAgIHRoaXMuZ3JvdXBzLnB1c2gob2t0YUdyb3VwLnByb2ZpbGUubmFtZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgaW5zdGFuY2UgaGFzIGVub3VnaCBwZXJtaXNzaW9uIGZvciByZXF1aXJlR3JvdXBzLlxuICAgKlxuICAgKiBAcmV0dXJucyB0cnVlIGlmIHRoaXMuZ3JvdXBzIGNvbnRhaW5zIGFsbCBncm91cCBvZiByZXF1aXJlR3JvdXBzLCBlbHNlIHRoZW4gZmFsc2VcbiAgICovXG4gIGhhc1Blcm1pc3Npb24ocmVxdWlyZUdyb3Vwczogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJlcXVpcmVHcm91cHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmICh0aGlzLmdyb3Vwcy5pbmRleE9mKHJlcXVpcmVHcm91cHNbaV0pID4gMCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbn1cbiJdfQ==