UNPKG

vix-ui

Version:

A set of essential UI modules for your Angular application in ViSenze

71 lines (70 loc) 4.62 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} 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. * * @param 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 /** @type {?} */ 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 }; function UserGroups_tsickle_Closure_declarations() { /** @type {?} */ UserGroups.prototype.groups; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ncm91cHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly92aXgtdWkvIiwic291cmNlcyI6WyJ2aXgtc2VydmljZXMvYXV0aC9tb2R1bGVzL3VzZXItZ3JvdXBzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFHQTs7O0FBQUE7SUFHRTs7Ozs7Ozs7Ozs7O09BWUc7SUFDSCxvQkFBWSxjQUFtQjtRQUEvQixpQkFNQztzQkFyQmtCLEVBQUU7UUFnQm5CLEVBQUUsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7WUFDbkIsY0FBYyxDQUFDLE9BQU8sQ0FBQyxVQUFDLFNBQVM7Z0JBQy9CLEtBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDMUMsQ0FBQyxDQUFDO1NBQ0o7S0FDRjtJQUVEOzs7OztPQUtHOzs7Ozs7O0lBQ0gsa0NBQWE7Ozs7OztJQUFiLFVBQWMsYUFBdUI7UUFDbkMsR0FBRyxDQUFDLENBQUMscUJBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzlDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzlDLE1BQU0sQ0FBQyxJQUFJLENBQUM7YUFDYjtTQUNGO1FBQ0QsTUFBTSxDQUFDLEtBQUssQ0FBQztLQUNkO3FCQXhDSDtJQTBDQyxDQUFBOzs7O0FBdkNELHNCQXVDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXNlckdyb3VwcyBob2xkcyB0aGUgZ3JvdXBzIGluZm9ybWF0aW9uIG9mIGEgdXNlci4gSXQgaXMgbWFpbmx5IHVzZWQgdG8gY2hlY2sgcGVybWlzc2lvbnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBVc2VyR3JvdXBzIHtcbiAgZ3JvdXBzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBjb25zdHJ1Y3QgVXNlckdyb3VwcyBmcm9tIE9rdGFVc2VyR3JvdXBzXG4gICAqXG4gICAqIEBwYXJhbSBva3RhVXNlckdyb3VwcyBBcnJheSBvZiBva3RhR3JvdXBzXG4gICAqIG9rdGFHcm91cCBleGFtcGxlOlxuICAgKiB7IC4uLlxuICAgKiAgIFwicHJvZmlsZVwiOiB7XG4gICAqICAgICBcIm5hbWVcIjogXCJFdmVyeW9uZVwiLFxuICAgKiAgICAgXCJkZXNjcmlwdGlvblwiOiBcIkFsbCB1c2VycyBpbiB5b3VyIG9yZ2FuaXphdGlvblwiXG4gICAqICAgfSxcbiAgICogICAuLi5cbiAgICogfVxuICAgKi9cbiAgY29uc3RydWN0b3Iob2t0YVVzZXJHcm91cHM6IGFueSkge1xuICAgIGlmIChva3RhVXNlckdyb3Vwcykge1xuICAgICAgb2t0YVVzZXJHcm91cHMuZm9yRWFjaCgob2t0YUdyb3VwKSA9PiB7XG4gICAgICAgIHRoaXMuZ3JvdXBzLnB1c2gob2t0YUdyb3VwLnByb2ZpbGUubmFtZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgaW5zdGFuY2UgaGFzIGVub3VnaCBwZXJtaXNzaW9uIGZvciByZXF1aXJlR3JvdXBzLlxuICAgKlxuICAgKiBAcGFyYW0gcmVxdWlyZUdyb3Vwc1xuICAgKiBAcmV0dXJucyB0cnVlIGlmIHRoaXMuZ3JvdXBzIGNvbnRhaW5zIGFsbCBncm91cCBvZiByZXF1aXJlR3JvdXBzLCBlbHNlIHRoZW4gZmFsc2VcbiAgICovXG4gIGhhc1Blcm1pc3Npb24ocmVxdWlyZUdyb3Vwczogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJlcXVpcmVHcm91cHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmICh0aGlzLmdyb3Vwcy5pbmRleE9mKHJlcXVpcmVHcm91cHNbaV0pID4gMCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbn1cbiJdfQ==