/* Options: Date: 2024-04-29 09:25:11 Version: 8.13 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://techstacks.io //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: SessionInfo.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using TechStacks.ServiceModel.Types; using TechStacks.ServiceModel; namespace TechStacks.ServiceModel { [Route("/my-session")] [ValidateRequest("IsAuthenticated")] public partial class SessionInfo : IReturn, IGet { } public partial class SessionInfoResponse { public SessionInfoResponse() { Roles = new List{}; Permissions = new List{}; TechStacks = new List{}; FavoriteTechStacks = new List{}; FavoriteTechnologies = new List{}; Members = new List{}; MemberInvites = new List{}; Subscriptions = new List{}; } public virtual DateTime Created { get; set; } public virtual string Id { get; set; } public virtual string ReferrerUrl { get; set; } public virtual string UserAuthId { get; set; } public virtual string UserAuthName { get; set; } public virtual string UserName { get; set; } public virtual string DisplayName { get; set; } public virtual string FirstName { get; set; } public virtual string LastName { get; set; } public virtual string Email { get; set; } public virtual DateTime CreatedAt { get; set; } public virtual DateTime LastModified { get; set; } public virtual List Roles { get; set; } public virtual List Permissions { get; set; } public virtual bool IsAuthenticated { get; set; } public virtual string AuthProvider { get; set; } public virtual string ProfileUrl { get; set; } public virtual string GithubProfileUrl { get; set; } public virtual string TwitterProfileUrl { get; set; } public virtual string AccessToken { get; set; } public virtual string AvatarUrl { get; set; } public virtual List TechStacks { get; set; } public virtual List FavoriteTechStacks { get; set; } public virtual List FavoriteTechnologies { get; set; } public virtual UserActivity UserActivity { get; set; } public virtual List Members { get; set; } public virtual List MemberInvites { get; set; } public virtual List Subscriptions { get; set; } public virtual ResponseStatus ResponseStatus { get; set; } } } namespace TechStacks.ServiceModel.Types { public partial class OrganizationMember { public virtual int Id { get; set; } public virtual int OrganizationId { get; set; } public virtual int UserId { get; set; } public virtual string UserName { get; set; } public virtual bool IsOwner { get; set; } public virtual bool IsModerator { get; set; } public virtual bool DenyAll { get; set; } public virtual bool DenyPosts { get; set; } public virtual bool DenyComments { get; set; } public virtual string Notes { get; set; } } public partial class OrganizationMemberInvite { public virtual int Id { get; set; } public virtual int OrganizationId { get; set; } public virtual int UserId { get; set; } public virtual string UserName { get; set; } public virtual DateTime? Dismissed { get; set; } } public partial class OrganizationSubscription { public OrganizationSubscription() { PostTypes = new string[]{}; } public virtual long Id { get; set; } public virtual int OrganizationId { get; set; } public virtual int UserId { get; set; } public virtual string UserName { get; set; } public virtual string[] PostTypes { get; set; } public virtual int? FrequencyDays { get; set; } public virtual long? LastSyncedId { get; set; } public virtual DateTime? LastSynced { get; set; } public virtual DateTime Created { get; set; } } public partial class Technology : TechnologyBase { public virtual long Id { get; set; } public virtual string Name { get; set; } public virtual string VendorName { get; set; } public virtual string VendorUrl { get; set; } public virtual string ProductUrl { get; set; } public virtual string LogoUrl { get; set; } public virtual string Description { get; set; } public virtual DateTime Created { get; set; } public virtual string CreatedBy { get; set; } public virtual DateTime LastModified { get; set; } public virtual string LastModifiedBy { get; set; } public virtual string OwnerId { get; set; } public virtual string Slug { get; set; } public virtual bool LogoApproved { get; set; } public virtual bool IsLocked { get; set; } public virtual TechnologyTier Tier { get; set; } public virtual DateTime? LastStatusUpdate { get; set; } public virtual int? OrganizationId { get; set; } public virtual long? CommentsPostId { get; set; } public virtual int ViewCount { get; set; } public virtual int FavCount { get; set; } } public partial class TechnologyBase { public virtual long Id { get; set; } public virtual string Name { get; set; } public virtual string VendorName { get; set; } public virtual string VendorUrl { get; set; } public virtual string ProductUrl { get; set; } public virtual string LogoUrl { get; set; } public virtual string Description { get; set; } public virtual DateTime Created { get; set; } public virtual string CreatedBy { get; set; } public virtual DateTime LastModified { get; set; } public virtual string LastModifiedBy { get; set; } public virtual string OwnerId { get; set; } public virtual string Slug { get; set; } public virtual bool LogoApproved { get; set; } public virtual bool IsLocked { get; set; } public virtual TechnologyTier Tier { get; set; } public virtual DateTime? LastStatusUpdate { get; set; } public virtual int? OrganizationId { get; set; } public virtual long? CommentsPostId { get; set; } public virtual int ViewCount { get; set; } public virtual int FavCount { get; set; } } public partial class TechnologyStack : TechnologyStackBase { public virtual long Id { get; set; } public virtual string Name { get; set; } public virtual string VendorName { get; set; } public virtual string Description { get; set; } public virtual string AppUrl { get; set; } public virtual string ScreenshotUrl { get; set; } public virtual DateTime Created { get; set; } public virtual string CreatedBy { get; set; } public virtual DateTime LastModified { get; set; } public virtual string LastModifiedBy { get; set; } public virtual bool IsLocked { get; set; } public virtual string OwnerId { get; set; } public virtual string Slug { get; set; } [StringLength(int.MaxValue)] public virtual string Details { get; set; } [StringLength(int.MaxValue)] public virtual string DetailsHtml { get; set; } public virtual DateTime? LastStatusUpdate { get; set; } public virtual int? OrganizationId { get; set; } public virtual long? CommentsPostId { get; set; } public virtual int ViewCount { get; set; } public virtual int FavCount { get; set; } } public partial class TechnologyStackBase { public virtual long Id { get; set; } public virtual string Name { get; set; } public virtual string VendorName { get; set; } public virtual string Description { get; set; } public virtual string AppUrl { get; set; } public virtual string ScreenshotUrl { get; set; } public virtual DateTime Created { get; set; } public virtual string CreatedBy { get; set; } public virtual DateTime LastModified { get; set; } public virtual string LastModifiedBy { get; set; } public virtual bool IsLocked { get; set; } public virtual string OwnerId { get; set; } public virtual string Slug { get; set; } [StringLength(int.MaxValue)] public virtual string Details { get; set; } [StringLength(int.MaxValue)] public virtual string DetailsHtml { get; set; } public virtual DateTime? LastStatusUpdate { get; set; } public virtual int? OrganizationId { get; set; } public virtual long? CommentsPostId { get; set; } public virtual int ViewCount { get; set; } public virtual int FavCount { get; set; } } public enum TechnologyTier { ProgrammingLanguage, Client, Http, Server, Data, SoftwareInfrastructure, OperatingSystem, HardwareInfrastructure, ThirdPartyServices, } public partial class UserActivity { public virtual int Id { get; set; } public virtual string UserName { get; set; } public virtual int Karma { get; set; } public virtual int TechnologyCount { get; set; } public virtual int TechStacksCount { get; set; } public virtual int PostsCount { get; set; } public virtual int PostUpVotes { get; set; } public virtual int PostDownVotes { get; set; } public virtual int CommentUpVotes { get; set; } public virtual int CommentDownVotes { get; set; } public virtual int PostCommentsCount { get; set; } public virtual int PinnedCommentCount { get; set; } public virtual int PostReportCount { get; set; } public virtual int PostCommentReportCount { get; set; } public virtual DateTime Created { get; set; } public virtual DateTime Modified { get; set; } } }