tonightpass 0.0.33 → 0.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/constants/api.ts","../src/constants/regex.ts","../src/rest/dtos/index.ts","../src/rest/dtos/organizations/create-organization.dto.ts","../src/rest/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsEnum","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","OrganizationMemberDto","user","role","UpdateOrganizationDto","CreateOrganizationEventDto","title","organization","type","public","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsEnum,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport {\n OrganizationMemberRole,\n type Location,\n type OrganizationSocialLink,\n} from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @Length(1, 128)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: OrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n\nexport class OrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Base, Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = Base & {\n name: string;\n description?: string;\n price: number;\n displayPrice: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n vatRate: number;\n externalId?: string;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n};\n\nexport type OrganizationEventTicketType = \"e-ticket\" | \"other\";\n\nexport enum OrganizationEventTicketCategory {\n Entry = \"entry\",\n Package = \"package\",\n Meal = \"meal\",\n Drink = \"drink\",\n Parking = \"parking\",\n Accommodation = \"accommodation\",\n Camping = \"camping\",\n Locker = \"locker\",\n Shuttle = \"shuttle\",\n Other = \"other\",\n}\n\nexport type OrganizationEventTicketEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket[]\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket,\n CreateOrganizationEventTicketDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket,\n UpdateOrganizationEventTicketDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket[],\n null\n >;\n","import { Base } from \"../../..\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../dtos/organizations/events/events\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventStyle = Base & {\n type: OrganizationEventStyleType;\n emoji: string;\n name: string;\n slug: string;\n};\n\nexport enum OrganizationEventStyleType {\n Music = \"music\",\n Dress = \"dress\",\n Sport = \"sport\",\n Food = \"food\",\n Art = \"art\",\n}\n\nexport type OrganizationEventStyleEndpoints =\n | Endpoint<\"GET\", \"/organizations/events/styles\", OrganizationEventStyle[]>\n | Endpoint<\n \"GET\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle\n >\n | Endpoint<\n \"POST\",\n \"/organizations/events/styles\",\n OrganizationEventStyle,\n CreateOrganizationEventStyleDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle,\n UpdateOrganizationEventStyleDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle[],\n null\n >;\n","import {\n OrganizationEventStyle,\n OrganizationEventStyleEndpoints,\n} from \"./styles\";\nimport {\n OrganizationEventTicket,\n Organization,\n OrganizationEventTicketEndpoints,\n} from \"..\";\nimport { Base, Location } from \"../..\";\nimport {\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../dtos\";\nimport { Endpoint } from \"../../../endpoints\";\n\nexport * from \"./tickets\";\nexport * from \"./styles\";\n\nexport type OrganizationEvent = Base & {\n title: string;\n description: string;\n slug: string;\n organization: Organization;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:organizationSlug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { Base } from \"../..\";\nimport { OrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = Base & {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n OrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Base, Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = Base & {\n slug: string;\n identity: OrganizationIdentity;\n members: OrganizationMember[];\n location?: Location;\n events: OrganizationEvent[];\n savedTickets: OrganizationEventTicket[];\n verified: boolean;\n billing: OrganizationBilling;\n};\n\nexport type OrganizationBilling = {\n account: string;\n};\n\nexport type OrganizationBillingAccount = Stripe.Account;\n\nexport type OrganizationIdentity = Profile & {\n socialLinks: OrganizationSocialLink[];\n\n metadata: ProfileMetadata & {\n eventsCount: number;\n viewsCount: number;\n membersCount: number;\n };\n};\n\nexport type OrganizationSocialLink = {\n type: OrganizationSocialType;\n url: string;\n};\n\nexport enum OrganizationSocialType {\n Facebook = \"facebook\",\n Twitter = \"twitter\",\n Instagram = \"instagram\",\n Linkedin = \"linkedin\",\n Youtube = \"youtube\",\n Website = \"website\",\n}\n\nexport type OrganizationEndpoints =\n | Endpoint<\"GET\", \"/organizations\", Organization[]>\n | Endpoint<\"GET\", \"/organizations/:slug\", Organization>\n | Endpoint<\"POST\", \"/organizations\", Organization, CreateOrganizationDto>\n | Endpoint<\"PUT\", \"/organizations/:slug\", Organization, UpdateOrganizationDto>\n | Endpoint<\"DELETE\", \"/organizations/:slug\", Organization, null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/billing/account\",\n OrganizationBillingAccount\n >\n | Endpoint<\"GET\", \"/organizations/:slug/billing/link\", void>\n | Endpoint<\"GET\", \"/organizations/:slug/billing/dashboard\", void>\n | OrganizationEventEndpoints\n | OrganizationMembersEndpoints;\n","import { User } from \"../users\";\n\nexport type UserToken = {\n type: UserTokenType;\n value: string;\n createdAt: Date;\n expiresAt: Date;\n user?: User;\n identifier?: string;\n};\n\nexport enum UserTokenType {\n Authentication = \"authentication\",\n OrganizationInvite = \"organization_invite\",\n PasswordRecovery = \"password_recovery\",\n EmailValidation = \"email_validation\",\n PhoneValidation = \"phone_validation\",\n}\n","import {\n Base,\n Currency,\n Language,\n Location,\n Profile,\n ProfileMetadata,\n} from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = Base & {\n identifier: UserIdentifier;\n password: string;\n identity: UserIdentity;\n role: UserRole;\n addresses: Location[];\n preferences: UserPreferences;\n connections: UserConnection[];\n verified: boolean;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Base = {\n id: string;\n createdAt: Date;\n updatedAt: Date;\n};\n\nexport type ExcludeBase<T> = Omit<T, keyof Base>;\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { CreateOrganizationDto } from \"./create-organization.dto\";\n\nexport class UpdateOrganizationDto extends CreateOrganizationDto {}\n","import { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport { Location, OrganizationEventType } from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n title: string;\n description: string;\n organization: string;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(6)\n @MaxLength(130)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(15, 500)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { Client } from \"../../../rest\";\nimport { isBrowser } from \"../../../utils\";\n\nexport const organizationsBilling = (client: Client) => ({\n account: async (slug: string) =>\n client.get(\"/organizations/:slug/billing/account\", { slug }),\n link: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\"/organizations/:slug/billing/link\", {\n slug,\n });\n } else {\n throw new Error(\"Billing link is only available in the browser\");\n }\n },\n dashboard: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\n \"/organizations/:slug/billing/dashboard\",\n {\n slug,\n },\n );\n } else {\n throw new Error(\"Billing dashboard is only available in the browser\");\n }\n },\n});\n","import { Client } from \"../../../../rest\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\n\nexport const organizationsEventsStyles = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/events/styles\"),\n get: async (slug: string) =>\n client.get(\"/organizations/events/styles/:slug\", { slug }),\n create: async (data: CreateOrganizationEventStyleDto) =>\n client.post(\"/organizations/events/styles\", data),\n update: async (slug: string, data: UpdateOrganizationEventStyleDto) =>\n client.put(\"/organizations/events/styles/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/events/styles/:slug\", null, { slug }),\n});\n","import {\n Client,\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\n\nexport const organizationsEventsTickets = (client: Client) => ({\n getAll: async (slug: string, eventSlug: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets\", {\n slug,\n eventSlug,\n }),\n get: async (slug: string, eventSlug: string, ticketId: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets/:ticketId\", {\n slug,\n eventSlug,\n ticketId,\n }),\n create: async (\n slug: string,\n eventSlug: string,\n data: CreateOrganizationEventTicketDto,\n ) =>\n client.post(\"/organizations/:slug/events/:eventSlug/tickets\", data, {\n slug,\n eventSlug,\n }),\n update: async (\n slug: string,\n eventSlug: string,\n ticketId: string,\n data: UpdateOrganizationEventTicketDto,\n ) =>\n client.put(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n data,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n delete: async (slug: string, eventSlug: string, ticketId: string) =>\n client.delete(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n null,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n});\n","import { organizationsEventsStyles } from \"./styles\";\nimport { organizationsEventsTickets } from \"./tickets\";\nimport {\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (organizationSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events\", {\n organizationSlug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (organizationSlug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:organizationSlug/events\", data, {\n organizationSlug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles(client),\n tickets: organizationsEventsTickets(client),\n});\n","import { Client } from \"../../../rest\";\n\nexport const organizationsMembers = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/members\"),\n delete: async (id: string) =>\n client.delete(\"/organizations/members/:id\", null, { id }),\n});\n","import { organizationsBilling } from \"./billing\";\nimport { organizationsEvents } from \"./events\";\nimport { organizationsMembers } from \"./members\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../rest\";\nimport { sdk } from \"../builder\";\n\nexport const organizations = sdk((client) => ({\n getAll: async () => client.get(\"/organizations\"),\n get: async (slug: string) => client.get(\"/organizations/:slug\", { slug }),\n create: async (data: CreateOrganizationDto) =>\n client.post(\"/organizations\", data),\n update: async (slug: string, data: UpdateOrganizationDto) =>\n client.put(\"/organizations/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/:slug\", null, { slug }),\n billing: organizationsBilling(client),\n events: organizationsEvents(client),\n members: organizationsMembers(client),\n}));\n","import { sdk } from \"./builder\";\n\nexport const profiles = sdk((client) => ({\n get: async (username: string) =>\n client.get(\"/profiles/:username\", { username }),\n}));\n","import { sdk } from \"./builder\";\nimport { UpdateUserDto } from \"../rest\";\n\nexport const users = sdk((client) => ({\n getAll: async () => client.get(\"/users\"),\n get: async (id: string) => client.get(\"/users\", { id }),\n me: async () => client.get(\"/users/me\"),\n check: async (identifier: string, suggestions?: boolean) =>\n client.get(\"/users/check/:identifier\", { identifier, suggestions }),\n update: async (id: string, data: UpdateUserDto) =>\n client.put(\"/users/:id\", data, { id }),\n}));\n","import { Client, ClientOptions } from \"./rest\";\nimport { auth, careers, health, organizations, profiles, users } from \"./sdk\";\n\nexport class TonightPass {\n public readonly client: Client;\n\n public readonly auth;\n public readonly careers;\n public readonly health;\n public readonly organizations;\n public readonly profiles;\n public readonly users;\n\n constructor(options: ClientOptions) {\n this.client = new Client(options);\n\n this.auth = auth(this.client);\n this.careers = careers(this.client);\n this.health = health(this.client);\n this.organizations = organizations(this.client);\n this.profiles = profiles(this.client);\n this.users = users(this.client);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/constants/api.ts","../src/constants/regex.ts","../src/rest/dtos/index.ts","../src/rest/dtos/organizations/create-organization.dto.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/members/create-organization-member.dto.ts","../src/rest/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/members/update-organization-member.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsLowercase","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","UpdateOrganizationDto","UpdateOrganizationIdentityDto","CreateOrganizationEventDto","title","organization","type","public","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","IsEnum","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationMemberDto } from \"./members/create-organization-member.dto\";\nimport { type Location, type OrganizationSocialLink } from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: CreateOrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { UpdateOrganizationEventDto } from \"./events\";\nimport { OrganizationSocialLink } from \"../../types\";\n\nexport class UpdateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n @IsOptional()\n identity?: UpdateOrganizationIdentityDto;\n\n @IsOptional()\n @IsArray()\n members?: UpdateOrganizationEventDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class UpdateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n @IsOptional()\n displayName?: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n @IsOptional()\n description?: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n @IsOptional()\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport { Location, OrganizationEventType } from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n title: string;\n description: string;\n organization: string;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { IsEnum, IsNotEmpty, IsString } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class CreateOrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Base, Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = Base & {\n name: string;\n description?: string;\n price: number;\n displayPrice: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n vatRate: number;\n externalId?: string;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n};\n\nexport type OrganizationEventTicketType = \"e-ticket\" | \"other\";\n\nexport enum OrganizationEventTicketCategory {\n Entry = \"entry\",\n Package = \"package\",\n Meal = \"meal\",\n Drink = \"drink\",\n Parking = \"parking\",\n Accommodation = \"accommodation\",\n Camping = \"camping\",\n Locker = \"locker\",\n Shuttle = \"shuttle\",\n Other = \"other\",\n}\n\nexport type OrganizationEventTicketEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket[]\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket,\n CreateOrganizationEventTicketDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket,\n UpdateOrganizationEventTicketDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket[],\n null\n >;\n","import { Base } from \"../../..\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../dtos/organizations/events/events\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventStyle = Base & {\n type: OrganizationEventStyleType;\n emoji: string;\n name: string;\n slug: string;\n};\n\nexport enum OrganizationEventStyleType {\n Music = \"music\",\n Dress = \"dress\",\n Sport = \"sport\",\n Food = \"food\",\n Art = \"art\",\n}\n\nexport type OrganizationEventStyleEndpoints =\n | Endpoint<\"GET\", \"/organizations/events/styles\", OrganizationEventStyle[]>\n | Endpoint<\n \"GET\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle\n >\n | Endpoint<\n \"POST\",\n \"/organizations/events/styles\",\n OrganizationEventStyle,\n CreateOrganizationEventStyleDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle,\n UpdateOrganizationEventStyleDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle[],\n null\n >;\n","import {\n OrganizationEventStyle,\n OrganizationEventStyleEndpoints,\n} from \"./styles\";\nimport {\n OrganizationEventTicket,\n Organization,\n OrganizationEventTicketEndpoints,\n} from \"..\";\nimport { Base, Location } from \"../..\";\nimport {\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../dtos\";\nimport { Endpoint } from \"../../../endpoints\";\n\nexport * from \"./tickets\";\nexport * from \"./styles\";\n\nexport type OrganizationEvent = Base & {\n title: string;\n description: string;\n slug: string;\n organization: Organization;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:organizationSlug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { Base } from \"../..\";\nimport { CreateOrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = Base & {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n CreateOrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Base, Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = Base & {\n slug: string;\n identity: OrganizationIdentity;\n members: OrganizationMember[];\n location?: Location;\n events: OrganizationEvent[];\n savedTickets: OrganizationEventTicket[];\n verified: boolean;\n billing: OrganizationBilling;\n};\n\nexport type OrganizationBilling = {\n account: string;\n};\n\nexport type OrganizationBillingAccount = Stripe.Account;\n\nexport type OrganizationIdentity = Profile & {\n socialLinks: OrganizationSocialLink[];\n\n metadata: ProfileMetadata & {\n eventsCount: number;\n viewsCount: number;\n membersCount: number;\n };\n};\n\nexport type OrganizationSocialLink = {\n type: OrganizationSocialType;\n url: string;\n};\n\nexport enum OrganizationSocialType {\n Facebook = \"facebook\",\n Twitter = \"twitter\",\n Instagram = \"instagram\",\n Linkedin = \"linkedin\",\n Youtube = \"youtube\",\n Website = \"website\",\n}\n\nexport type OrganizationEndpoints =\n | Endpoint<\"GET\", \"/organizations\", Organization[]>\n | Endpoint<\"GET\", \"/organizations/:slug\", Organization>\n | Endpoint<\"POST\", \"/organizations\", Organization, CreateOrganizationDto>\n | Endpoint<\"PUT\", \"/organizations/:slug\", Organization, UpdateOrganizationDto>\n | Endpoint<\"DELETE\", \"/organizations/:slug\", Organization, null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/billing/account\",\n OrganizationBillingAccount\n >\n | Endpoint<\"GET\", \"/organizations/:slug/billing/link\", void>\n | Endpoint<\"GET\", \"/organizations/:slug/billing/dashboard\", void>\n | OrganizationEventEndpoints\n | OrganizationMembersEndpoints;\n","import { User } from \"../users\";\n\nexport type UserToken = {\n type: UserTokenType;\n value: string;\n createdAt: Date;\n expiresAt: Date;\n user?: User;\n identifier?: string;\n};\n\nexport enum UserTokenType {\n Authentication = \"authentication\",\n OrganizationInvite = \"organization_invite\",\n PasswordRecovery = \"password_recovery\",\n EmailValidation = \"email_validation\",\n PhoneValidation = \"phone_validation\",\n}\n","import {\n Base,\n Currency,\n Language,\n Location,\n Profile,\n ProfileMetadata,\n} from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = Base & {\n identifier: UserIdentifier;\n password: string;\n identity: UserIdentity;\n role: UserRole;\n addresses: Location[];\n preferences: UserPreferences;\n connections: UserConnection[];\n verified: boolean;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Base = {\n id: string;\n createdAt: Date;\n updatedAt: Date;\n};\n\nexport type ExcludeBase<T> = Omit<T, keyof Base>;\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { IsEnum, IsNotEmpty } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class UpdateOrganizationMemberDto {\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(8)\n @MaxLength(128)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 128)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { Client } from \"../../../rest\";\nimport { isBrowser } from \"../../../utils\";\n\nexport const organizationsBilling = (client: Client) => ({\n account: async (slug: string) =>\n client.get(\"/organizations/:slug/billing/account\", { slug }),\n link: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\"/organizations/:slug/billing/link\", {\n slug,\n });\n } else {\n throw new Error(\"Billing link is only available in the browser\");\n }\n },\n dashboard: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\n \"/organizations/:slug/billing/dashboard\",\n {\n slug,\n },\n );\n } else {\n throw new Error(\"Billing dashboard is only available in the browser\");\n }\n },\n});\n","import { Client } from \"../../../../rest\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\n\nexport const organizationsEventsStyles = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/events/styles\"),\n get: async (slug: string) =>\n client.get(\"/organizations/events/styles/:slug\", { slug }),\n create: async (data: CreateOrganizationEventStyleDto) =>\n client.post(\"/organizations/events/styles\", data),\n update: async (slug: string, data: UpdateOrganizationEventStyleDto) =>\n client.put(\"/organizations/events/styles/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/events/styles/:slug\", null, { slug }),\n});\n","import {\n Client,\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\n\nexport const organizationsEventsTickets = (client: Client) => ({\n getAll: async (slug: string, eventSlug: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets\", {\n slug,\n eventSlug,\n }),\n get: async (slug: string, eventSlug: string, ticketId: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets/:ticketId\", {\n slug,\n eventSlug,\n ticketId,\n }),\n create: async (\n slug: string,\n eventSlug: string,\n data: CreateOrganizationEventTicketDto,\n ) =>\n client.post(\"/organizations/:slug/events/:eventSlug/tickets\", data, {\n slug,\n eventSlug,\n }),\n update: async (\n slug: string,\n eventSlug: string,\n ticketId: string,\n data: UpdateOrganizationEventTicketDto,\n ) =>\n client.put(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n data,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n delete: async (slug: string, eventSlug: string, ticketId: string) =>\n client.delete(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n null,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n});\n","import { organizationsEventsStyles } from \"./styles\";\nimport { organizationsEventsTickets } from \"./tickets\";\nimport {\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (organizationSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events\", {\n organizationSlug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (organizationSlug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:organizationSlug/events\", data, {\n organizationSlug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles(client),\n tickets: organizationsEventsTickets(client),\n});\n","import { Client } from \"../../../rest\";\n\nexport const organizationsMembers = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/members\"),\n delete: async (id: string) =>\n client.delete(\"/organizations/members/:id\", null, { id }),\n});\n","import { organizationsBilling } from \"./billing\";\nimport { organizationsEvents } from \"./events\";\nimport { organizationsMembers } from \"./members\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../rest\";\nimport { sdk } from \"../builder\";\n\nexport const organizations = sdk((client) => ({\n getAll: async () => client.get(\"/organizations\"),\n get: async (slug: string) => client.get(\"/organizations/:slug\", { slug }),\n create: async (data: CreateOrganizationDto) =>\n client.post(\"/organizations\", data),\n update: async (slug: string, data: UpdateOrganizationDto) =>\n client.put(\"/organizations/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/:slug\", null, { slug }),\n billing: organizationsBilling(client),\n events: organizationsEvents(client),\n members: organizationsMembers(client),\n}));\n","import { sdk } from \"./builder\";\n\nexport const profiles = sdk((client) => ({\n get: async (username: string) =>\n client.get(\"/profiles/:username\", { username }),\n}));\n","import { sdk } from \"./builder\";\nimport { UpdateUserDto } from \"../rest\";\n\nexport const users = sdk((client) => ({\n getAll: async () => client.get(\"/users\"),\n get: async (id: string) => client.get(\"/users\", { id }),\n me: async () => client.get(\"/users/me\"),\n check: async (identifier: string, suggestions?: boolean) =>\n client.get(\"/users/check/:identifier\", { identifier, suggestions }),\n update: async (id: string, data: UpdateUserDto) =>\n client.put(\"/users/:id\", data, { id }),\n}));\n","import { Client, ClientOptions } from \"./rest\";\nimport { auth, careers, health, organizations, profiles, users } from \"./sdk\";\n\nexport class TonightPass {\n public readonly client: Client;\n\n public readonly auth;\n public readonly careers;\n public readonly health;\n public readonly organizations;\n public readonly profiles;\n public readonly users;\n\n constructor(options: ClientOptions) {\n this.client = new Client(options);\n\n this.auth = auth(this.client);\n this.careers = careers(this.client);\n this.health = health(this.client);\n this.organizations = organizations(this.client);\n this.profiles = profiles(this.client);\n this.users = users(this.client);\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tonightpass",
3
- "version": "0.0.33",
3
+ "version": "0.0.35",
4
4
  "description": "@tonightpass sdk and tools.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  IsArray,
3
- IsEnum,
3
+ IsLowercase,
4
4
  IsNotEmpty,
5
5
  IsObject,
6
6
  IsOptional,
@@ -9,23 +9,21 @@ import {
9
9
  Length,
10
10
  } from "class-validator";
11
11
 
12
- import {
13
- OrganizationMemberRole,
14
- type Location,
15
- type OrganizationSocialLink,
16
- } from "../../types";
12
+ import { CreateOrganizationMemberDto } from "./members/create-organization-member.dto";
13
+ import { type Location, type OrganizationSocialLink } from "../../types";
17
14
 
18
15
  export class CreateOrganizationDto {
19
16
  @IsOptional()
20
17
  @IsString()
21
- @Length(1, 128)
18
+ @IsLowercase()
19
+ @Length(1, 48)
22
20
  slug?: string;
23
21
 
24
22
  @IsObject()
25
23
  identity: CreateOrganizationIdentityDto;
26
24
 
27
25
  @IsArray()
28
- members: OrganizationMemberDto[];
26
+ members: CreateOrganizationMemberDto[];
29
27
 
30
28
  @IsOptional()
31
29
  @IsObject()
@@ -58,13 +56,3 @@ export class CreateOrganizationIdentityDto {
58
56
  @IsArray()
59
57
  socialLinks?: OrganizationSocialLink[];
60
58
  }
61
-
62
- export class OrganizationMemberDto {
63
- @IsString()
64
- @IsNotEmpty()
65
- user: string;
66
-
67
- @IsEnum(OrganizationMemberRole)
68
- @IsNotEmpty()
69
- role: OrganizationMemberRole;
70
- }
@@ -1,3 +1,4 @@
1
1
  export * from "./create-organization.dto";
2
2
  export * from "./update-organization.dto";
3
3
  export * from "./events";
4
+ export * from "./members";
@@ -0,0 +1,13 @@
1
+ import { IsEnum, IsNotEmpty, IsString } from "class-validator";
2
+
3
+ import { OrganizationMemberRole } from "../../../types";
4
+
5
+ export class CreateOrganizationMemberDto {
6
+ @IsString()
7
+ @IsNotEmpty()
8
+ user: string;
9
+
10
+ @IsEnum(OrganizationMemberRole)
11
+ @IsNotEmpty()
12
+ role: OrganizationMemberRole;
13
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./create-organization-member.dto";
2
+ export * from "./update-organization-member.dto";
@@ -1,3 +1,63 @@
1
- import { CreateOrganizationDto } from "./create-organization.dto";
1
+ import {
2
+ IsArray,
3
+ IsLowercase,
4
+ IsNotEmpty,
5
+ IsObject,
6
+ IsOptional,
7
+ IsString,
8
+ IsUrl,
9
+ Length,
10
+ } from "class-validator";
2
11
 
3
- export class UpdateOrganizationDto extends CreateOrganizationDto {}
12
+ import { UpdateOrganizationEventDto } from "./events";
13
+ import { OrganizationSocialLink } from "../../types";
14
+
15
+ export class UpdateOrganizationDto {
16
+ @IsOptional()
17
+ @IsString()
18
+ @IsLowercase()
19
+ @Length(1, 48)
20
+ slug?: string;
21
+
22
+ @IsObject()
23
+ @IsOptional()
24
+ identity?: UpdateOrganizationIdentityDto;
25
+
26
+ @IsOptional()
27
+ @IsArray()
28
+ members?: UpdateOrganizationEventDto[];
29
+
30
+ @IsOptional()
31
+ @IsObject()
32
+ location?: Location;
33
+ }
34
+
35
+ export class UpdateOrganizationIdentityDto {
36
+ @IsString()
37
+ @IsNotEmpty()
38
+ @Length(1, 32)
39
+ @IsOptional()
40
+ displayName?: string;
41
+
42
+ @IsString()
43
+ @IsNotEmpty()
44
+ @Length(16, 1024)
45
+ @IsOptional()
46
+ description?: string;
47
+
48
+ @IsUrl({
49
+ protocols: ["http", "https"],
50
+ })
51
+ @IsOptional()
52
+ avatarUrl?: string;
53
+
54
+ @IsOptional()
55
+ @IsUrl({
56
+ protocols: ["http", "https"],
57
+ })
58
+ bannerUrl?: string;
59
+
60
+ @IsOptional()
61
+ @IsArray()
62
+ socialLinks?: OrganizationSocialLink[];
63
+ }
@@ -32,8 +32,8 @@ export class UpdateUserDto {
32
32
 
33
33
  @IsOptional()
34
34
  @IsString()
35
- @MinLength(6)
36
- @MaxLength(130)
35
+ @MinLength(8)
36
+ @MaxLength(128)
37
37
  password?: string;
38
38
  }
39
39
 
@@ -75,7 +75,7 @@ class UpdateIdentityDto
75
75
  {
76
76
  @IsOptional()
77
77
  @IsString()
78
- @Length(2, 50)
78
+ @Length(2, 32)
79
79
  @Matches(NAME_REGEX, {
80
80
  message: "First name must be composed of letters only",
81
81
  })
@@ -83,7 +83,7 @@ class UpdateIdentityDto
83
83
 
84
84
  @IsOptional()
85
85
  @IsString()
86
- @Length(2, 50)
86
+ @Length(2, 32)
87
87
  @Matches(NAME_REGEX, {
88
88
  message: "Last name must be composed of letters only",
89
89
  })
@@ -96,7 +96,7 @@ class UpdateIdentityDto
96
96
 
97
97
  @IsOptional()
98
98
  @IsString()
99
- @Length(15, 500)
99
+ @Length(1, 128)
100
100
  description?: string;
101
101
 
102
102
  @IsOptional()
@@ -1,6 +1,6 @@
1
1
  import { Organization } from "..";
2
2
  import { Base } from "../..";
3
- import { OrganizationMemberDto } from "../../../dtos";
3
+ import { CreateOrganizationMemberDto } from "../../../dtos";
4
4
  import { UpdateOrganizationMemberDto } from "../../../dtos/organizations/members/update-organization-member.dto";
5
5
  import { Endpoint } from "../../../endpoints";
6
6
  import { UserToken } from "../../token";
@@ -35,7 +35,7 @@ export type OrganizationMembersEndpoints =
35
35
  "POST",
36
36
  "/organizations/:slug/members",
37
37
  OrganizationMember,
38
- OrganizationMemberDto
38
+ CreateOrganizationMemberDto
39
39
  >
40
40
  | Endpoint<
41
41
  "PUT",