UNPKG

@omnia/fx-models

Version:
44 lines (43 loc) 1.99 kB
"use strict"; // create separate file to prevent circular reference. Object.defineProperty(exports, "__esModule", { value: true }); const AnonymousIdentity_1 = require("./AnonymousIdentity"); const DynamicGroupIdentity_1 = require("./DynamicGroupIdentity"); const ExtensionIdentity_1 = require("./ExtensionIdentity"); const GroupIdentity_1 = require("./GroupIdentity"); const Identity_1 = require("./Identity"); const IdentityTypes_1 = require("./IdentityTypes"); const RoleIdentity_1 = require("./RoleIdentity"); const UserIdentity_1 = require("./UserIdentity"); Identity_1.Identity["createIdentity"] = function (type, id) { switch (type) { case IdentityTypes_1.IdentityTypes.User: return new UserIdentity_1.UserIdentity(id); case IdentityTypes_1.IdentityTypes.Group: return new GroupIdentity_1.GroupIdentity(id); case IdentityTypes_1.IdentityTypes.Extension: return new ExtensionIdentity_1.ExtensionIdentity(id); case IdentityTypes_1.IdentityTypes.Role: return new RoleIdentity_1.RoleIdentity(id); case IdentityTypes_1.IdentityTypes.DynamicGroup: return new DynamicGroupIdentity_1.DynamicGroupIdentity(id); case IdentityTypes_1.IdentityTypes.Anonymous: return new AnonymousIdentity_1.AnonymousIdentity(id); default: throw new Error(`Can't create identity for unhandled type. -> ${type}`); } }; // export function createIdentity(type: IdentityTypes, id: GuidValue) { // switch (type) { // case IdentityTypes.User: // return new UserIdentity(id); // case IdentityTypes.Group: // return new GroupIdentity(id); // case IdentityTypes.Extension: // return new ExtensionIdentity(id); // case IdentityTypes.Role: // return new RoleIdentity(id); // default: // throw new Error(`Can't create identity for unhandled type. -> ${type}`); // } // }