tonightpass 0.0.46 → 0.0.47
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.
- package/.turbo/turbo-build.log +9 -9
- package/CHANGELOG.md +6 -0
- package/dist/index.d.mts +5 -2
- package/dist/index.d.ts +5 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/rest/types/index.ts +2 -3
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> tonightpass@0.0.
|
|
2
|
+
> tonightpass@0.0.47 build /home/runner/work/tonightpass/tonightpass/packages/node
|
|
3
3
|
> tsup
|
|
4
4
|
|
|
5
5
|
CLI Building entry: src/index.ts
|
|
@@ -9,13 +9,13 @@ CLI Using tsup config: /home/runner/work/tonightpass/tonightpass/packages/node/t
|
|
|
9
9
|
CLI Target: esnext
|
|
10
10
|
CJS Build start
|
|
11
11
|
ESM Build start
|
|
12
|
-
DTS Build start
|
|
13
|
-
CJS dist/index.js 22.90 KB
|
|
14
|
-
CJS dist/index.js.map 51.29 KB
|
|
15
|
-
CJS ⚡️ Build success in 487ms
|
|
16
12
|
ESM dist/index.mjs 19.61 KB
|
|
17
13
|
ESM dist/index.mjs.map 51.29 KB
|
|
18
|
-
ESM ⚡️ Build success in
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
ESM ⚡️ Build success in 413ms
|
|
15
|
+
CJS dist/index.js 22.90 KB
|
|
16
|
+
CJS dist/index.js.map 51.29 KB
|
|
17
|
+
CJS ⚡️ Build success in 413ms
|
|
18
|
+
DTS Build start
|
|
19
|
+
DTS ⚡️ Build success in 3611ms
|
|
20
|
+
DTS dist/index.d.ts 39.10 KB
|
|
21
|
+
DTS dist/index.d.mts 39.10 KB
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# tonightpass
|
|
2
2
|
|
|
3
|
+
## 0.0.47
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`284e987`](https://github.com/tonightpass/tonightpass/commit/284e987bd20b892a9f6444955379d21d68d21a72) Thanks [@AntoineKM](https://github.com/AntoineKM)! - Update array options types with pagination
|
|
8
|
+
|
|
3
9
|
## 0.0.46
|
|
4
10
|
|
|
5
11
|
### Patch Changes
|
package/dist/index.d.mts
CHANGED
|
@@ -3,6 +3,7 @@ import { ParamValue, Query } from 'pathcat';
|
|
|
3
3
|
export * from 'pathcat';
|
|
4
4
|
import * as stripe from 'stripe';
|
|
5
5
|
import stripe__default from 'stripe';
|
|
6
|
+
import * as _mikro_orm_core from '@mikro-orm/core';
|
|
6
7
|
import { Populate } from '@mikro-orm/core';
|
|
7
8
|
import { Options, Response } from 'redaxios';
|
|
8
9
|
|
|
@@ -497,7 +498,7 @@ type ArrayOptions<T> = {
|
|
|
497
498
|
* Populate relations
|
|
498
499
|
*/
|
|
499
500
|
populate?: Populate<T>;
|
|
500
|
-
};
|
|
501
|
+
} & ArrayPaginationOptions;
|
|
501
502
|
type ArrayResult<T> = {
|
|
502
503
|
items: T[];
|
|
503
504
|
total: number;
|
|
@@ -720,7 +721,9 @@ declare class Client {
|
|
|
720
721
|
}> | Extract<Endpoint<"GET", "/organizations/events/suggestions", ArrayResult<OrganizationEvent>, ArrayOptions<OrganizationEvent>>, {
|
|
721
722
|
path: Path;
|
|
722
723
|
method: "GET";
|
|
723
|
-
}> | Extract<Endpoint<"GET", "/organizations/events/nearby", ArrayResult<OrganizationEvent>,
|
|
724
|
+
}> | Extract<Endpoint<"GET", "/organizations/events/nearby", ArrayResult<OrganizationEvent>, {
|
|
725
|
+
populate?: _mikro_orm_core.Populate<OrganizationEvent> | undefined;
|
|
726
|
+
} & ArrayPaginationOptions & {
|
|
724
727
|
latitude: number;
|
|
725
728
|
longitude: number;
|
|
726
729
|
radius?: number;
|
package/dist/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { ParamValue, Query } from 'pathcat';
|
|
|
3
3
|
export * from 'pathcat';
|
|
4
4
|
import * as stripe from 'stripe';
|
|
5
5
|
import stripe__default from 'stripe';
|
|
6
|
+
import * as _mikro_orm_core from '@mikro-orm/core';
|
|
6
7
|
import { Populate } from '@mikro-orm/core';
|
|
7
8
|
import { Options, Response } from 'redaxios';
|
|
8
9
|
|
|
@@ -497,7 +498,7 @@ type ArrayOptions<T> = {
|
|
|
497
498
|
* Populate relations
|
|
498
499
|
*/
|
|
499
500
|
populate?: Populate<T>;
|
|
500
|
-
};
|
|
501
|
+
} & ArrayPaginationOptions;
|
|
501
502
|
type ArrayResult<T> = {
|
|
502
503
|
items: T[];
|
|
503
504
|
total: number;
|
|
@@ -720,7 +721,9 @@ declare class Client {
|
|
|
720
721
|
}> | Extract<Endpoint<"GET", "/organizations/events/suggestions", ArrayResult<OrganizationEvent>, ArrayOptions<OrganizationEvent>>, {
|
|
721
722
|
path: Path;
|
|
722
723
|
method: "GET";
|
|
723
|
-
}> | Extract<Endpoint<"GET", "/organizations/events/nearby", ArrayResult<OrganizationEvent>,
|
|
724
|
+
}> | Extract<Endpoint<"GET", "/organizations/events/nearby", ArrayResult<OrganizationEvent>, {
|
|
725
|
+
populate?: _mikro_orm_core.Populate<OrganizationEvent> | undefined;
|
|
726
|
+
} & ArrayPaginationOptions & {
|
|
724
727
|
latitude: number;
|
|
725
728
|
longitude: number;
|
|
726
729
|
radius?: number;
|
package/dist/index.js.map
CHANGED
|
@@ -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/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.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/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/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","IsDateString","IsEnum","OrganizationEventTicketType","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationEventVisibilityType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationEventDto","title","type","visibility","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","IsBoolean","IsNumber","Min","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","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","console","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","facebook","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","getSuggestions","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 @Length(16, 1024)\n @IsOptional()\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 @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 {\n IsDateString,\n IsEnum,\n IsLowercase,\n IsOptional,\n IsString,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport {\n Location,\n OrganizationEventType,\n OrganizationEventVisibilityType,\n} from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n @IsString()\n @Length(1, 64)\n title: string;\n\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsString()\n @Length(16, 2048)\n description: string;\n\n @IsEnum(OrganizationEventType)\n type: OrganizationEventType;\n\n @IsEnum(OrganizationEventVisibilityType)\n visibility: OrganizationEventVisibilityType;\n\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n\n @IsDateString()\n startAt: Date;\n\n @IsDateString()\n endAt: Date;\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 enum OrganizationEventTicketType {\n ETicket = \"e-ticket\",\n Other = \"other\",\n}\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 { ArrayOptions, ArrayResult, 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 visibility: OrganizationEventVisibilityType;\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 enum OrganizationEventVisibilityType {\n Public = \"public\",\n Unlisted = \"unlisted\",\n Private = \"private\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/events\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/events/suggestions\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/events/nearby\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent> & {\n latitude: number;\n longitude: number;\n radius?: number;\n }\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events\",\n OrganizationEvent,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { ArrayOptions, ArrayResult, 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<\n \"GET\",\n \"/organizations/members\",\n ArrayResult<OrganizationMember>,\n ArrayOptions<OrganizationMember>\n >\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/members\",\n ArrayResult<OrganizationMember>,\n ArrayOptions<OrganizationMember>\n >\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","import { Populate } from \"@mikro-orm/core\";\n\nexport * 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\nexport type ArraySortOptions = {\n /**\n * Field to sort\n */\n field: string;\n /**\n * Order to sort\n */\n order: \"asc\" | \"desc\";\n};\n\nexport type ArrayPaginationOptions = {\n /**\n * Page number\n */\n page?: number;\n /**\n * Number of items per page\n */\n limit?: number;\n /**\n * Offset to start from\n */\n offset?: number;\n};\n\nexport type ArrayFilterOptions = {\n /**\n * Field to filter\n */\n field: string;\n /**\n * Value to filter\n */\n value: string;\n /**\n * Operator to use\n */\n operator:\n | \"eq\" // Equal\n | \"ne\" // Not equal\n | \"gt\" // Greater than\n | \"lt\" // Less than\n | \"gte\" // Greater than or equal\n | \"lte\" // Less than or equal\n | \"in\" // In\n | \"nin\"; // Not in\n};\n\nexport type ArrayOptions<T> = {\n /**\n * Populate relations\n */\n populate?: Populate<T>;\n /**\n * Select only specific fields to display\n */\n // fields?: string[];\n};\n// & ArraySortOptions\n// & ArrayPaginationOptions;\n\nexport type ArrayResult<T> = {\n items: T[];\n total: number;\n page: number;\n limit: number;\n};\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n IsBoolean,\n IsDateString,\n IsEnum,\n IsNumber,\n IsOptional,\n IsString,\n Length,\n Min,\n} from \"class-validator\";\n\nimport {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n @IsString()\n @Length(1, 128)\n name: string;\n\n @IsString()\n @Length(1, 1024)\n description?: string;\n\n @IsNumber()\n @Min(0)\n price: number;\n\n @IsNumber()\n @Min(0)\n quantity: number;\n\n @IsEnum(OrganizationEventTicketType)\n type: OrganizationEventTicketType;\n\n @IsEnum(OrganizationEventTicketCategory)\n category: OrganizationEventTicketCategory;\n\n @IsEnum(Currency)\n currency: Currency;\n\n @IsBoolean()\n isVisible: boolean;\n\n @IsBoolean()\n isFeesIncluded: boolean;\n\n @IsDateString()\n @IsOptional()\n startAt?: Date;\n\n @IsDateString()\n @IsOptional()\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 { 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 if (!error.data) {\n console.error(error);\n }\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 facebook: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/facebook\", params || {});\n } else {\n throw new Error(\"Facebook 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 ArrayOptions,\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (slug: string) =>\n client.get(\"/organizations/:slug/events\", {\n slug,\n }),\n getSuggestions: async (options?: ArrayOptions) =>\n client.get(\"/organizations/events/suggestions\", options),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (slug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:slug/events\", data, {\n slug,\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/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/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/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","IsDateString","IsEnum","OrganizationEventTicketType","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationEventVisibilityType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationEventDto","title","type","visibility","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","IsBoolean","IsNumber","Min","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","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","console","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","facebook","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","getSuggestions","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 @Length(16, 1024)\n @IsOptional()\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 @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 {\n IsDateString,\n IsEnum,\n IsLowercase,\n IsOptional,\n IsString,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport {\n Location,\n OrganizationEventType,\n OrganizationEventVisibilityType,\n} from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n @IsString()\n @Length(1, 64)\n title: string;\n\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsString()\n @Length(16, 2048)\n description: string;\n\n @IsEnum(OrganizationEventType)\n type: OrganizationEventType;\n\n @IsEnum(OrganizationEventVisibilityType)\n visibility: OrganizationEventVisibilityType;\n\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n\n @IsDateString()\n startAt: Date;\n\n @IsDateString()\n endAt: Date;\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 enum OrganizationEventTicketType {\n ETicket = \"e-ticket\",\n Other = \"other\",\n}\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 { ArrayOptions, ArrayResult, 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 visibility: OrganizationEventVisibilityType;\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 enum OrganizationEventVisibilityType {\n Public = \"public\",\n Unlisted = \"unlisted\",\n Private = \"private\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/events\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/events/suggestions\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/events/nearby\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent> & {\n latitude: number;\n longitude: number;\n radius?: number;\n }\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events\",\n OrganizationEvent,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { ArrayOptions, ArrayResult, 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<\n \"GET\",\n \"/organizations/members\",\n ArrayResult<OrganizationMember>,\n ArrayOptions<OrganizationMember>\n >\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/members\",\n ArrayResult<OrganizationMember>,\n ArrayOptions<OrganizationMember>\n >\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","import { Populate } from \"@mikro-orm/core\";\n\nexport * 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\nexport type ArraySortOptions = {\n /**\n * Field to sort\n */\n field: string;\n /**\n * Order to sort\n */\n order: \"asc\" | \"desc\";\n};\n\nexport type ArrayPaginationOptions = {\n /**\n * Page number\n */\n page?: number;\n /**\n * Number of items per page\n */\n limit?: number;\n /**\n * Offset to start from\n */\n offset?: number;\n};\n\nexport type ArrayFilterOptions = {\n /**\n * Field to filter\n */\n field: string;\n /**\n * Value to filter\n */\n value: string;\n /**\n * Operator to use\n */\n operator:\n | \"eq\" // Equal\n | \"ne\" // Not equal\n | \"gt\" // Greater than\n | \"lt\" // Less than\n | \"gte\" // Greater than or equal\n | \"lte\" // Less than or equal\n | \"in\" // In\n | \"nin\"; // Not in\n};\n\nexport type ArrayOptions<T> = {\n /**\n * Populate relations\n */\n populate?: Populate<T>;\n /**\n * Select only specific fields to display\n */\n // fields?: string[];\n} & ArrayPaginationOptions;\n// & ArraySortOptions;\n\nexport type ArrayResult<T> = {\n items: T[];\n total: number;\n page: number;\n limit: number;\n};\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n IsBoolean,\n IsDateString,\n IsEnum,\n IsNumber,\n IsOptional,\n IsString,\n Length,\n Min,\n} from \"class-validator\";\n\nimport {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n @IsString()\n @Length(1, 128)\n name: string;\n\n @IsString()\n @Length(1, 1024)\n description?: string;\n\n @IsNumber()\n @Min(0)\n price: number;\n\n @IsNumber()\n @Min(0)\n quantity: number;\n\n @IsEnum(OrganizationEventTicketType)\n type: OrganizationEventTicketType;\n\n @IsEnum(OrganizationEventTicketCategory)\n category: OrganizationEventTicketCategory;\n\n @IsEnum(Currency)\n currency: Currency;\n\n @IsBoolean()\n isVisible: boolean;\n\n @IsBoolean()\n isFeesIncluded: boolean;\n\n @IsDateString()\n @IsOptional()\n startAt?: Date;\n\n @IsDateString()\n @IsOptional()\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 { 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 if (!error.data) {\n console.error(error);\n }\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 facebook: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/facebook\", params || {});\n } else {\n throw new Error(\"Facebook 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 ArrayOptions,\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (slug: string) =>\n client.get(\"/organizations/:slug/events\", {\n slug,\n }),\n getSuggestions: async (options?: ArrayOptions) =>\n client.get(\"/organizations/events/suggestions\", options),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (slug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:slug/events\", data, {\n slug,\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/dist/index.mjs.map
CHANGED
|
@@ -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/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.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/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/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","IsDateString","IsEnum","OrganizationEventTicketType","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationEventVisibilityType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationEventDto","title","type","visibility","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","IsBoolean","IsNumber","Min","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","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","console","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","facebook","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","getSuggestions","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 @Length(16, 1024)\n @IsOptional()\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 @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 {\n IsDateString,\n IsEnum,\n IsLowercase,\n IsOptional,\n IsString,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport {\n Location,\n OrganizationEventType,\n OrganizationEventVisibilityType,\n} from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n @IsString()\n @Length(1, 64)\n title: string;\n\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsString()\n @Length(16, 2048)\n description: string;\n\n @IsEnum(OrganizationEventType)\n type: OrganizationEventType;\n\n @IsEnum(OrganizationEventVisibilityType)\n visibility: OrganizationEventVisibilityType;\n\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n\n @IsDateString()\n startAt: Date;\n\n @IsDateString()\n endAt: Date;\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 enum OrganizationEventTicketType {\n ETicket = \"e-ticket\",\n Other = \"other\",\n}\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 { ArrayOptions, ArrayResult, 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 visibility: OrganizationEventVisibilityType;\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 enum OrganizationEventVisibilityType {\n Public = \"public\",\n Unlisted = \"unlisted\",\n Private = \"private\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/events\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/events/suggestions\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/events/nearby\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent> & {\n latitude: number;\n longitude: number;\n radius?: number;\n }\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events\",\n OrganizationEvent,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { ArrayOptions, ArrayResult, 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<\n \"GET\",\n \"/organizations/members\",\n ArrayResult<OrganizationMember>,\n ArrayOptions<OrganizationMember>\n >\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/members\",\n ArrayResult<OrganizationMember>,\n ArrayOptions<OrganizationMember>\n >\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","import { Populate } from \"@mikro-orm/core\";\n\nexport * 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\nexport type ArraySortOptions = {\n /**\n * Field to sort\n */\n field: string;\n /**\n * Order to sort\n */\n order: \"asc\" | \"desc\";\n};\n\nexport type ArrayPaginationOptions = {\n /**\n * Page number\n */\n page?: number;\n /**\n * Number of items per page\n */\n limit?: number;\n /**\n * Offset to start from\n */\n offset?: number;\n};\n\nexport type ArrayFilterOptions = {\n /**\n * Field to filter\n */\n field: string;\n /**\n * Value to filter\n */\n value: string;\n /**\n * Operator to use\n */\n operator:\n | \"eq\" // Equal\n | \"ne\" // Not equal\n | \"gt\" // Greater than\n | \"lt\" // Less than\n | \"gte\" // Greater than or equal\n | \"lte\" // Less than or equal\n | \"in\" // In\n | \"nin\"; // Not in\n};\n\nexport type ArrayOptions<T> = {\n /**\n * Populate relations\n */\n populate?: Populate<T>;\n /**\n * Select only specific fields to display\n */\n // fields?: string[];\n};\n// & ArraySortOptions\n// & ArrayPaginationOptions;\n\nexport type ArrayResult<T> = {\n items: T[];\n total: number;\n page: number;\n limit: number;\n};\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n IsBoolean,\n IsDateString,\n IsEnum,\n IsNumber,\n IsOptional,\n IsString,\n Length,\n Min,\n} from \"class-validator\";\n\nimport {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n @IsString()\n @Length(1, 128)\n name: string;\n\n @IsString()\n @Length(1, 1024)\n description?: string;\n\n @IsNumber()\n @Min(0)\n price: number;\n\n @IsNumber()\n @Min(0)\n quantity: number;\n\n @IsEnum(OrganizationEventTicketType)\n type: OrganizationEventTicketType;\n\n @IsEnum(OrganizationEventTicketCategory)\n category: OrganizationEventTicketCategory;\n\n @IsEnum(Currency)\n currency: Currency;\n\n @IsBoolean()\n isVisible: boolean;\n\n @IsBoolean()\n isFeesIncluded: boolean;\n\n @IsDateString()\n @IsOptional()\n startAt?: Date;\n\n @IsDateString()\n @IsOptional()\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 { 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 if (!error.data) {\n console.error(error);\n }\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 facebook: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/facebook\", params || {});\n } else {\n throw new Error(\"Facebook 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 ArrayOptions,\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (slug: string) =>\n client.get(\"/organizations/:slug/events\", {\n slug,\n }),\n getSuggestions: async (options?: ArrayOptions) =>\n client.get(\"/organizations/events/suggestions\", options),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (slug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:slug/events\", data, {\n slug,\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/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/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/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","IsDateString","IsEnum","OrganizationEventTicketType","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationEventVisibilityType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationEventDto","title","type","visibility","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","IsBoolean","IsNumber","Min","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","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","console","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","facebook","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","getSuggestions","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 @Length(16, 1024)\n @IsOptional()\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 @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 {\n IsDateString,\n IsEnum,\n IsLowercase,\n IsOptional,\n IsString,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport {\n Location,\n OrganizationEventType,\n OrganizationEventVisibilityType,\n} from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n @IsString()\n @Length(1, 64)\n title: string;\n\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsString()\n @Length(16, 2048)\n description: string;\n\n @IsEnum(OrganizationEventType)\n type: OrganizationEventType;\n\n @IsEnum(OrganizationEventVisibilityType)\n visibility: OrganizationEventVisibilityType;\n\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n\n @IsDateString()\n startAt: Date;\n\n @IsDateString()\n endAt: Date;\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 enum OrganizationEventTicketType {\n ETicket = \"e-ticket\",\n Other = \"other\",\n}\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 { ArrayOptions, ArrayResult, 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 visibility: OrganizationEventVisibilityType;\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 enum OrganizationEventVisibilityType {\n Public = \"public\",\n Unlisted = \"unlisted\",\n Private = \"private\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/events\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/events/suggestions\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/events/nearby\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent> & {\n latitude: number;\n longitude: number;\n radius?: number;\n }\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events\",\n ArrayResult<OrganizationEvent>,\n ArrayOptions<OrganizationEvent>\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events\",\n OrganizationEvent,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n OrganizationEvent,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { ArrayOptions, ArrayResult, 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<\n \"GET\",\n \"/organizations/members\",\n ArrayResult<OrganizationMember>,\n ArrayOptions<OrganizationMember>\n >\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/members\",\n ArrayResult<OrganizationMember>,\n ArrayOptions<OrganizationMember>\n >\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","import { Populate } from \"@mikro-orm/core\";\n\nexport * 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\nexport type ArraySortOptions = {\n /**\n * Field to sort\n */\n field: string;\n /**\n * Order to sort\n */\n order: \"asc\" | \"desc\";\n};\n\nexport type ArrayPaginationOptions = {\n /**\n * Page number\n */\n page?: number;\n /**\n * Number of items per page\n */\n limit?: number;\n /**\n * Offset to start from\n */\n offset?: number;\n};\n\nexport type ArrayFilterOptions = {\n /**\n * Field to filter\n */\n field: string;\n /**\n * Value to filter\n */\n value: string;\n /**\n * Operator to use\n */\n operator:\n | \"eq\" // Equal\n | \"ne\" // Not equal\n | \"gt\" // Greater than\n | \"lt\" // Less than\n | \"gte\" // Greater than or equal\n | \"lte\" // Less than or equal\n | \"in\" // In\n | \"nin\"; // Not in\n};\n\nexport type ArrayOptions<T> = {\n /**\n * Populate relations\n */\n populate?: Populate<T>;\n /**\n * Select only specific fields to display\n */\n // fields?: string[];\n} & ArrayPaginationOptions;\n// & ArraySortOptions;\n\nexport type ArrayResult<T> = {\n items: T[];\n total: number;\n page: number;\n limit: number;\n};\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n IsBoolean,\n IsDateString,\n IsEnum,\n IsNumber,\n IsOptional,\n IsString,\n Length,\n Min,\n} from \"class-validator\";\n\nimport {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n @IsString()\n @Length(1, 128)\n name: string;\n\n @IsString()\n @Length(1, 1024)\n description?: string;\n\n @IsNumber()\n @Min(0)\n price: number;\n\n @IsNumber()\n @Min(0)\n quantity: number;\n\n @IsEnum(OrganizationEventTicketType)\n type: OrganizationEventTicketType;\n\n @IsEnum(OrganizationEventTicketCategory)\n category: OrganizationEventTicketCategory;\n\n @IsEnum(Currency)\n currency: Currency;\n\n @IsBoolean()\n isVisible: boolean;\n\n @IsBoolean()\n isFeesIncluded: boolean;\n\n @IsDateString()\n @IsOptional()\n startAt?: Date;\n\n @IsDateString()\n @IsOptional()\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 { 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 if (!error.data) {\n console.error(error);\n }\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 facebook: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/facebook\", params || {});\n } else {\n throw new Error(\"Facebook 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 ArrayOptions,\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (slug: string) =>\n client.get(\"/organizations/:slug/events\", {\n slug,\n }),\n getSuggestions: async (options?: ArrayOptions) =>\n client.get(\"/organizations/events/suggestions\", options),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (slug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:slug/events\", data, {\n slug,\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
package/src/rest/types/index.ts
CHANGED
|
@@ -100,9 +100,8 @@ export type ArrayOptions<T> = {
|
|
|
100
100
|
* Select only specific fields to display
|
|
101
101
|
*/
|
|
102
102
|
// fields?: string[];
|
|
103
|
-
};
|
|
104
|
-
// & ArraySortOptions
|
|
105
|
-
// & ArrayPaginationOptions;
|
|
103
|
+
} & ArrayPaginationOptions;
|
|
104
|
+
// & ArraySortOptions;
|
|
106
105
|
|
|
107
106
|
export type ArrayResult<T> = {
|
|
108
107
|
items: T[];
|